Ask Not What's Possible: the question is not what you can do, the question is how much the client is willing to pay for it and how long they will wait.

Time Substitutes for Money on a Logarithmic Scale: e.g cutting the time by 20% will require doubling the budget. Cutting the budget by 30% will quadruple the amount of time.

All Estimates are Optimistic: new application development will take three times as long as you expect, and cost twice as much. Or vice-versa.

(Emphasis in original.) Via Database Soup: 20 Rules of Software Consulting.

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.