http://qs321.pair.com?node_id=134834


in reply to Virtues of Software Engineering

Many good things have already been stated in this Meditation so I'll stick with a little real-life tale of how i learned to appreciate Software Design:

As some of you may know I'm one of those guys who often goes to LAN-Parties. I even helped organizing some and during that I learned to appreciate the Design-Prototype-Redesign cycle.

The actual case was, that myself and a friend of mine have been in the organization team of DSK-Lan II, a little Lan-Party (approx. 100-130 people) here in Germany. Since we both had some Perl experience we got the ttask of building the inter/intranet site and the scripts for the organizing of tournaments etc.
Of course we had a list of features in our head that we liked to have implemented and so we startet coding soon. During coding we got aware of some problems with our code and the database table (things that could be optimized or done a better way even some things that HAD to be changed in order to make it work). As a result our code was quite a mess but finally we got it to work (well sort of). But then another problem arose as we tried to merge the different parts of our code and got all the hell of problems with our different naming conventions etc.

As you can clearly see, this was a very bad way of doing things. But I'm not feeling sorry that I did it that way cause it taught me a valuable lesson: Never underestimate Design issues!
Meanwhile I have read the book The Pragmatic Programmer (which i can truly recommend to everyone) and learned a lot from it. And since I want to learn from my errors I declared the messed up script as a prototype and started to redesign. Which means that we are now creating a feature list (simply a brain storming of what features would be cool to have) which will be categorized and transformed in a roadmap (covering which feature will be implented in the differend phases of the project and till when this has to happen).

Well I'm curious if it will work out this time ;-)
fengor

--
"WHAT CAN THE HARVEST HOPE FOR IF NOT THE CARE OF THE REAPER MAN"
-- Terry Pratchett, "Reaper Man"