Needs Driven Programming

This is a concept that was introduced to me by Wilf Lalonde, Professor at Carleton University in Ottawa.

The concepts are very similar to most of the concepts of XP. Although I would say that the Needs Driven Programming is a subset of the ideas of XP.

Wilf came up with this theory a few years ago. There was a special browser developed in Smalltalk that let you program in a needs driven fashion. Although no special browsers are required to program his way, but it was nice to use.

Some of the key points in a Needs Driven Programming environment are:

Build it when you need it. Therefore you only build it if you need it.

Don't leave the project in the "State of Broke" for more than half an hour. This means that you will be able to run code no matter when, provide stubs if you have to.

Keep refactoring as the need arises.

Keep methods simple. If they need comments, they have to be refactored.

etc.

I found a lot of these ideas are also shared in XP.


It seems that the work that you do with an IDE is a bit different when you write your tests first. Your mention of a special browser reminded me that I've been thinking about a Test Driven Browser. -- Michael Feathers

See original on c2.com