small refactr logo
At refactr we believe in the value of connection, the utility of agile processes, and the power of great ideas. We are creating the next generation of software for people who expect more from their web applications.
refactr
« Spending time in nature is good for the brain | Use PNG files without the guilt »


Laws of Software Development


Nat Pryce has compiled a list of Laws of Software Development (and an addendum). I hadn’t seen all of them before, but I enjoyed the entire list. Some of my personal favorites:

Brooks’ Law

… adding manpower to a late software project makes it later.

The Cardinal Fundamental Law of Programming

It’s harder to read code than to write it.

And here are some that are perfect reminders for why agile methods are a good idea:

Hartree’s Law

The time from now until the completion of the project tends to become constant.

Hofstadter’s Law

It always takes longer than you expect, even when you take into account Hofstadter’s Law.

Lehman’s Law of Continuing Change

A program that is used in a real-world environment must change, or become progressively less useful in that environment.

Lehman’s Law of Increasing Complexity

As a program evolves, it becomes more complex, and extra resources are needed to preserve and simplify its structure.

The Ninety/Ninety Rule

The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time.

There’s a lot of good stuff in there. Be sure to check out his full list.

This entry was posted by Scott Vlaminck on Tuesday, November 18th, 2008 at 6:13 am and is filed under Agile Processes. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Join the Discussion