Wednesday, April 15, 2009

The Joy of Programming


First there is the desire to create something useful. You might be doing something repetitive or tedious on your computer, like inspecting a log file, doing repetitive calculation or renaming a bunch of files, which you think is better done by a computer.

You then stop and analyze your problem logically. You fire up your text editor and list all that is required of your program. Check that the problem has been properly addressed and nothing has been left out.

Next, you move over to the creative part—figuring out a solution creatively. You start in the box and take a look around; after that, you are well-armed to transcend the box and do your thinking from there. While this part can be done analytically, creative solutions are best.

Now that a solution is in hand you go on to the next stage—design, another creative thing. You design the interface first then the overall architecture of your program next. The user always comes first, as they say, so it makes a lot of sense to start with how your program interacts with them. This step can also be done analytically—but we all know what has come out of that approach.

Finally, you implement the design analytically and logically. Creative implementation or creative coding had, in the past, only given us spaghetti code we cannot eat. Neither is it delicious to look at, read, or maintain. You now use your languages’ constructs and tools and race to the finish line.

And there it is! You have created something useful from nothing at all. What greater joy could there be?

Stumble Upon Toolbar Add to Technorati Favorites Delicious Add to Mixx!

2 comments:

  1. As developers utilize the power of OO design patterns and select the correct pattern to fit their problem. There will be even more joy and no spaghetti code :D

    ReplyDelete
  2. @Hussein, yeah, spaghetti should be on the plate not in the code. :)

    ReplyDelete

The main rule in posting comments here is simply to act the way responsible adults should and have fun.

Posts You Might Be Interested In