Having Software re-written
Having Software re-written
Author
Discussion

SteveC72

Original Poster:

155 posts

175 months

Wednesday 4th October 2017
quotequote all
Not sure if this is right place but...

I'm a computer programmer to trade and over the years I've written a lot of apps for my company. It all started in the late nineties so the software is DOS based and believe it or not we still use it now.

I need to update it and re-write it in a windows based language but I simply don't have the time. I don't want to bring in a software company or consultant as that will cost a fortune. Also, once it's done I want the source code for myself so I can adapt the software and add new facilities as the business and the users require without having to pay someone to do it.

I've made some basic inquiries but the software people I've spoken to won't entertain the idea, for obvious reasons. Is anyone aware of a service that's available for what I want? Or should I consider employing someone, perhaps a graduate looking for experience, but I'd have no idea what to look for or pay.

Any suggestions greatly appreciated. Thanks in advance.

plasticpig

12,932 posts

255 months

Wednesday 4th October 2017
quotequote all
My company has written software for clients where we don't own the source code and at least in one case we don't own the IP either. It's a difficult one though as most developers will have their own libraries written by themselves to speed up development. They would either have to start completely from scratch or you would have to negotiate a deal to licence their IP.

Without knowing what the software does it's difficult to advise further but one possible route is to identify software that is open source which achieves some of the functionality you require and pay a developer tailor it to your requirements.







easy_rider33

155 posts

135 months

Wednesday 4th October 2017
quotequote all
Take a look at this https://www.topcoder.com/

We use them at work to enable us to meet demand when we are maxed out. You have to be clear in the requirements but you could do a quick challenge to refactor the code in to a language of your choice. Loads of dev guys available who sign up to do the work. You decide who wins and gets paid.

Don

28,378 posts

314 months

Wednesday 4th October 2017
quotequote all
What's the software written in?

If you can get a compiler for whatever it is then an option might be to have the business logic code ported to a modern environment. Rewriting the user interface shouldn't be too bad.

So if it's in Pascal you could use Delphi. If it's C then a C++ compiler will do that for you. If it's in MS-BASIC then maybe VB.NET would be the simplest port.

You could probably hire a contractor on a day rate to do that. Or, as you say, a young graduate on a low(ish) salary for a year...

21TonyK

13,365 posts

239 months

Wednesday 4th October 2017
quotequote all
A grad student might not be a bad idea. They learn and you get them cheap and are able to vet and dictate the work as it progresses easily.

Many moons ago I did something similar albeit on day rate for nearly 10 years going from AS/400 to DOS and then OS/2 and Windows NT!

Flooble

5,756 posts

130 months

Wednesday 4th October 2017
quotequote all
Why a graduate? A keen 16 year old who has self-taught themselves programming could easily be just as good as someone who ended up doing Computer Science because they had no idea what they wanted (and a real Computer Science degree won't turn out someone who is that good at actual Software Engineering anyway).

If you don't have the time now, are you likely to have the time later? Or would it actually be useful to have someone around to grow with the software (and, hopefully, the firm)?

Vaud

59,747 posts

185 months

Wednesday 4th October 2017
quotequote all
anonymous said:
[redacted]
As a developer you might licence (rather than give) the IP and code to a customer. If you write a neat piece of code (say, data ingest from a bunch of sensors) you want to be able to reuse it with customer b/c/d/e/f?

SystemParanoia

14,343 posts

228 months

Wednesday 4th October 2017
quotequote all
interesting suggestions

Flooble

5,756 posts

130 months

Wednesday 4th October 2017
quotequote all
I'm inclined to agree with you midenginedcoupe, however, the OP already said he doesn't want to bring in a company or a consultant that will "cost a fortune". He's also still running this DOS-based software (which he has stated only started being developed in the mid-90s, when DOS was already dead!) and thus we can infer the budget available and the chances of adjusting it.

A decent experienced contractor is going to be a minimum of ~£350-500 a day and realistically unless the codebase is tiny and business problem basic, sticking a finger in the air you would be looking at a minimum of three months to get a handle on the situation and problem, design a proper solution, develop it, test it and migrate things over. While I can't be sure, obviously, I am reasonably confident that the problem is at least of that scale and that the OP does not have £20K lying around for the project. Plus, the OP wants to be able to fiddle with the code afterwards, which suggests that anyone brought in to do it is not going to be able to just put their head down and hammer through the code but will also have to ensure everything is extremely well documented (beyond the normal level) in order to allow for the later "adaption". Hence the timelines go out further plus the OP is either going to have to be involved in the rewrite or there will be an extended transition period at the end.

So all that said, I believe that only leaves the option of getting it done on the cheap and probably having more than one go at a rewrite while the cheap and cheerful permie (probably on £20K p.a. so costing ~£30K for a year) learns on the job and most likely messes up the first couple of attempts.


Vaud

59,747 posts

185 months

Wednesday 4th October 2017
quotequote all
OP, rather than look to re-write, what functions does the software perform?

If we understand that better there may be other options.

eltawater

3,543 posts

209 months

Wednesday 4th October 2017
quotequote all
What do the various parts of the software collection do?

Do you have any clear cut, recently documented and accurate user requirements, specifications, operating manuals, user stories, test cases, known defects backlog etc?

The problem is that any third party is going to see this for what it is: organically developed software which has likely been tweaked and modified over the years and may be riddled with unknown defects and workarounds. It's potentially a massive can of worms which is going to require a significant effort to analyse, reverse engineer, redevelop and test before the inevitable "oh we used to use the old one differently with this shortcut, why have you made it more complicated?".

Ultimately, even if it is redeveloped and delivered to you, do you have the time and budget to support and further develop it in the future or would you rather get on with the day job?

plasticpig

12,932 posts

255 months

Thursday 5th October 2017
quotequote all
anonymous said:
[redacted]
You must have lived a very sheltered existence then. Some software houses use their own in house application framework So it isn't just some tiny little library but a whole collection of libraries. Probably rarer for developers using Visual Studio and .Net but that isn't the only development environment out there.












Chris Type R

8,954 posts

279 months

Thursday 5th October 2017
quotequote all
Depending on complexity, making the time to re-code yourself, but using tools like Entity Framework or DevExpress ExpressApp Framework ( https://www.devexpress.com/Products/NET/Applicatio... )might save some significant time if the applications are mainly database related.

"Proper development", with an understanding of the specification, unit tests, documentation, code held in repository, etc is not cheap.

CountZero23

1,288 posts

208 months

Thursday 5th October 2017
quotequote all
Plenty of reasonable contractors out there at the £300 per day range, if it's mainly working from home then you might find a good one for £200/£250.

Do not hire a grad to do this as they will know nothing about writing maintainable, testable production code.

Can punt you over the details of an excellent contractor I've worked with, if you're interested then drop me pm smile




Flooble

5,756 posts

130 months

Thursday 5th October 2017
quotequote all
anonymous said:
[redacted]
Take off the programmer head and put on the business one. The reason places get in a mess is because of the constraints I just outlined - but you'll never win the argument to do it right first time.

KevinCamaroSS

13,848 posts

310 months

Thursday 5th October 2017
quotequote all
Best advice I can offer is to look for a standard product that meets your requirements. So many options out there it is highly likely you will find something at reasonable cost.

SwissJonese

1,555 posts

205 months

Thursday 5th October 2017
quotequote all
Any grad/skill schemes around where you work? I did a Welsh Government supported skill trailing program when at university. The Gov paid half my wage and the company paid the other, I had 8 weeks in the summer and completed some code re-writes they wanted. They offered me a job for a year re-writing their old Unix FoxBase code into a windows based language which I did and they used it for over 10 years. The IT Manager had all the source code, and tweeked it when I left. It also kick started my career as a coder so helped me no end having that 1st coding job on my CV.

Vaud

59,747 posts

185 months

Thursday 5th October 2017
quotequote all
KevinCamaroSS said:
Best advice I can offer is to look for a standard product that meets your requirements. So many options out there it is highly likely you will find something at reasonable cost.
This. Until the OP shares the high level functions we can't advise.

It is often cheaper to take off the shelf and change the business process for the last 10%.

Unless we are talking about some bespoke machine control systems, hence DOS.

Tankrizzo

8,025 posts

223 months

Thursday 5th October 2017
quotequote all
anonymous said:
[redacted]
I'm guessing you're only talking about custom developer-built libraries, else companies like Telerik would have a rather difficult time of it!

SlidingSideways

1,345 posts

262 months

Thursday 5th October 2017
quotequote all
eltawater said:
Do you have any clear cut, recently documented and accurate user requirements, specifications, operating manuals, user stories, test cases, known defects backlog etc?
This is rather important. If your requirements are simply "as per the existing system", then anyone actually worth dealing with will be out the door faster than you can blink.