Wondering if it's possible to hire a new set of developers to take on an existing project not completed by previous developers? Some complained it may be difficult to understand the codes developed by the incumbents and as sort, would prefer to start afresh.
Opinions are welcomed.
Yes, it is possible. If it is difficult depends on the work others have done. IF it is code and follows the "Clean Code" principles aswell as using standard frameworks then it should easy to take over the code.
If the previous programmers did not respect general coding conventions or use exotic frameworks, it might become difficult.
Personally I would never do a "fresh start" before investigating the codebase. Some programmers prefer "fresh starts" only because they are used to other frameworks or different styles (or languages).
If have worked on development projects for years (I mean, one project going on for years). The project team changed much since I joined. I was not the first one on the project and not the last one. Still it was possible to take over the project.
After all when a codebase grows it becomes more difficult and difficult to get into. But the risk to develop it newly is not to underestimate. Nobody can guarantee you it becomes actually better.
therefore I would look at the old code:
Then look at the new devs.
Ask them, why exactly they want a fresh start. There is a learning curve when adapting old software, but this cannot be the exact reaons. It must be something like circular dependencies, multithreading issues, exotic and not maintainable frameworks etc.
Only if I knew this I would decide if it is better to start over again. Remember, it is your money and they need to tell you why you should pay for the same work twice.
I've worked on projects where there was an existing codebase - and sometimes I had to start over from scratch, but usually not. If possible, I prefer to use the existing codebase unless there is a really good reason not to.
A competent programmer, or team of programmers, should be able to inherit code and build on it. This should be the preferred approach, as it reduces the number of errors re-introduced (after all, the existing codebase had some testing done on it) and avoids completely redoing the work of others.
That being said, on occasion, the existing code will be of such poor quality (whether this is because it is poorly written, poorly documented, or written in some esoteric framework or language) that a redo will be required.
If the new team is suggesting a redo - be sure to get other opinions to ensure that this is not a form of laziness on the part of the new developers to avoid learning the existing code.
Yes is posible.
The learning curve for them can be large or small depending on the previous team.
If a programmer already saw the codebase and said it is best to start fresh, keep that in mind, and ask others the same.
I would recommend to start fresh if the project allows, and use a open source framework to keep consistency over the project.