Stories
Slash Boxes
Comments

SoylentNews is people

posted by LaminatorX on Tuesday April 21 2015, @11:42PM   Printer-friendly
from the start-today dept.

My father, a Naval officer, was quite fond of shouting "Do something, even if it's stupid!" I expect that, in the heat of battle, indecision is worse than nothing at all.

Back in the day I worked for Dave Johnson's Working Software. We scored a big contract to port Random House Webster's Electronic Dictionary And Thesaurus College Edition - yes that was its real name - from MS-DOS to Mac OS System 7. Included in our contract was $5,000 "Timely Completion Bonus" of which I would receive $3k but only if I completed the work in the allotted time.

I found myself strangely unable to get started. Dave from time to time would politely ask me whether I had, then finally he got very assertive that I should start.

"Look: if you write anything at all, even if it crashes then you can debug it."

I remembered this recently, and it is working well for me. One must not implement too much buggy code or you will never get it debugged, but writing something bad then fixing it may well be better than not implementing anything at all.

(I got my bonus.)

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 3, Insightful) by lizardloop on Wednesday April 22 2015, @12:35PM

    by lizardloop (4716) on Wednesday April 22 2015, @12:35PM (#173927) Journal

    Thank you for posting this story. It's made me think a bit about my own approach to large projects.

    When I was younger I was very guilty of the "write something, anything" start. This usually resulted in a "working" but poor implementation that was a nightmare to maintain or expand. Very rarely did they get a rewrite.

    Recently I tasked myself with rewriting one of my companies main products so that we could add functionality easier and reduce the difficulty for new programmers working on it. I easily spent two weeks just researching how to structure a modern web application. I have a notes file that would easily cover several sides of A4 just discussing things like "how would a help system work? how would custom fields work? How would permissions work?" Each question generated a lot of notes and research as I looked at how other projects tackled this and weighed that against my own experiences (5 years as a full time developer). I'm now producing prototypes based upon my research. I've already discarded several of them.

    Fortunately my company has enough monthly revenue that I can spend as long as I like on this without feeling it in the wallet. Rarely is that the case on a project. When time is of the essence you end up in a delicate balancing act of "thinking this through more" and producing your prototypes, one of which ends up being the finished project.

    One of the best developers I ever worked with wasn't particularly clever but he did think through very thoroughly all the work he did. His code was a joy work with as it was usually well documented, sensible and rarely needed changing. This is in stark contrast to my other colleague who seemed to follow the motto "why write a piece of code once when you can rewrite it a thousand times!".

    Starting Score:    1  point
    Moderation   +2  
       Insightful=2, Total=2
    Extra 'Insightful' Modifier   0  

    Total Score:   3