You are NOT a Software Engineer!
The engineering metaphor has had its time in the sun, and maybe it even used to be accurate, but now it really only serves to help non-technical people have unrealistic expectations about how software gets built.
Via You are NOT a Software Engineer! - chrisaitchison.com, hat tip to Theo Schlossnagle (who once said to me that web development is "the easy part" ;-)..
Are you stuck with a legacy PHP application?
You should buy my book
because it gives you a step-by-step guide to improving you
codebase, all while keeping it running the whole time.