Jakub Steiner from Planet Gnome mentioned an old article written by Joel Spolsky on the importance of writing software specifications before actually coding. It is a very light and interesting read and I strongly urge people to take the time to absorb his “pearls of wisdom.” It doesn’t matter if you’re a programmer or just a couch potato. You may learn how to knock a lot of possible headaches out of the way, either by avoiding dealing with an angry user who wants a certain button shapped as a heart or making sure all your snacks are within reach so you don’t have to miss your favorite soap. Joel’s main reasons for learning to incorporate specifications into your work habits can be summed up by the following 3 simple rules (in no specific order):
- when you design your product in a human language, it only takes a few minutes to try thinking about several possibilities, revising, and improving your design.
- When you write a spec, you only have to communicate how the program is supposed to work once.
- without a detailed spec, it’s impossible to make a schedule.
Don’t just take my word for it and read the article…