Some of my own .. some lifted from collegues – again stored to review later.
Dont get sucked into trends, build what you need not whats fashionable.
A prototype speaks volumes, if you don’t know what you want to build, build something fast and be prepared to throw it away.
Don’t throw good design on top of bad, deletion is a refactoring pattern.
Consider non functional requirements at the start, of a build – can you support the product post delivery
Not all programmers are created equal some develop some design, some do both use them to their strengths DON’T consider change of working practice to be a promotion (ie don’t promote good developers into designers as a matter of course)
Manage the process not the technology, managers manage developers develop don’t get the two confused.
Educate the development group, the more developers know about the problem space the better the solution. HOWEVER the flip side is to be clear as to the requirements don’t point a developer at a business problem.
Refactor business process alongside code, supporting flawed business process with development is always costly. Sometimes its cheapear and easier to change the way the business work rather than changing an application.