An investment in knowledge always pays the best interest.
Programmers are constantly in maintenance mode.
Just be aware that you reach a point of diminishing, or even negative, returns as the specifications get more and more detailed.
Don't leave broken windows (bad designs, wrong decisions, or poor code) unrepaired. Fix each one as soon as it is discovered. If there is insufficient time to fix it properly, then board it up. Perhap...
In an article in the April 1999 CACM, Robert Glass summarizes research that seems to indicate that, while code inspection is effective, conducting reviews in meetings is not.
In some ways, programming is like painting. You start with a blank canvas and certain basic raw materials. You use a combination of science, art, and craft to determine what to do with them. You sketc...
Documenting the reasons behind requirements will give your team invaluable information when making daily implementation decisions.
An investment in knowledge always pays the best interest. • Benjamin Franklin
We who cut mere stones must always be envisioning cathedrals.
The amount of surprise you feel when something goes wrong is directly proportional to the amount of trust and faith you have in the code being run.
A good idea is an orphan without effective communication.
You Can't Write Perfect Software. Did that hurt? It shouldn't. Accept it as an axiom of life. Embrace it. Celebrate it. Because perfect software doesn't exist. No one in the brief history of computing...
Great software today is often preferable to perfect software tomorrow.
Kaizen is a Japanese term that captures the concept of continuously making many small improvements.
Tools amplify your talent. The better your tools, and the better you know how to use them, the more productive you can be.
There is a simple marketing trick that helps teams communicate as one: generate a brand. When you start a project, come up with a name for it, ideally something off-the-wall. (In the past, we've named...
In addition, build dependencies may not be the same as test dependencies, and you may need separate hierarchies.
Have you noticed how some project teams are efficient, with everyone knowing what to do and contributing fully, while the members of other teams are constantly bickering and don't seem able to get out...
Every day, work to refine the skills you have and to add new tools to your repertoire.
The greatest of all weaknesses is the fear of appearing weak.