I’ve been working with a legacy framework the last couple of weeks. It’s something that’s been in production for over 6 years and you can definitely tell. There are files checked in with dates as extensions, always a sure sign of legacy. It’s obvious that there hasn’t been any new developers coming onto the project because the documentation is out-of-date and the entire process is wonky.
A very large problem is that everything needs to be setup with production paths or it is almost impossible to get up-and-running. I’ve been spoiled by how Rails handles the environments. Being able to separate what is for local development, what is QA testing and what is for production is an amazing way of allowing developers to get involved quickly and easily.
If you don’t have that, developers will flail around, searching thru config files or trying to follow stack traces, hoping some information can be gleaned from error messages. It isn’t easy and very frustrating and generally causes someone to lose all interest in future development.