The Rush 63

Posted by Uncle Bob Fri, 26 Jun 2009 13:40:13 GMT

There’s nothing like the feeling of achievement when you get a complex software system working. It’s the feeling of the hunter making a hard fought kill. By the sheer power of your intellect you have imposed your will upon inanimate nature, and forced it to do your bidding. You feel the rush of power, the satisfaction of victory. You are the master!

That’s the good news.

The bad news is that you’ve made a mess of things along the way.

This is inevitable. It takes a great deal of focus and endurance to get a system working just right. While you are consumed by that focus, you have little room for niceties like small functions, nice names, decoupling, and cleanliness.

My apprentice and I just finished achieving a major milestone in FitNesse. It used to be that each new release of FitNesse was contained in a zip file that had all the files and directories laid out just perfectly. This is great for a brand new installation, but doesn’t work so well when you are upgrading. What we managed to get working last night was the ability for FitNesse to self-install from it’s jar file. Now, whether you are installing for the first time, or just upgrading, FitNesse will install itself into your environment appropriately.

If you’ve ever written a self-install like this, you know there are lots of niggling little details to attend to. While the problem is conceptually simple, the realization is a maze of complexity.

Last night, with dinner waiting on the table and getting cold, we got the last little problem licked, and saw the whole self-installation work as we wanted. We congratulated each other with a high-five, and then went upstairs to eat a well-deserved meal. Later that evening I went down to the office and checked in the code.

This morning I woke up, and while in the shower, I realized that we had a lot of work left to do. We need to go back over all that code and clean it up. I’m sure we left a swath of detritus while on the hunt.

The rush of victory should never be confused with the cold and crystalline concept of done. Once you get your systems to work, you still have to go back and clean up the wreckage left behind by the victorious battle. You are not done until the victorious code has been cleaned, polished, and oiled.

Comments

Leave a response

  1. Avatar
    garem@sanssucre.ca 19 minutes later:

    I agree! so it means don’t show management that it works until that step is done or you won’t get to do it.

  2. Avatar
    Mike Bria 24 minutes later:

    Indeed. A topic hot on my mind lately. Basically, there are a multitude of seemingly excellent reasons to get to gold while leaving behind some non-trivial level of debt. This is true regardless of your experience or skill, its situational, as you’re giving an example of.

    I’m not sure yet in my own mind how okay this is or is not, but what I do know:

    Having the discipline to go back and remove the battle carnage, though – this is what makes the difference between inevitable demise” and “continued success”.

  3. Avatar
    Christian Hedin about 2 hours later:

    I love the ingress to this article, I want to use it somewhere. :-)

  4. Avatar
    Doug Bailey about 4 hours later:

    I have an index card at my desk.

    Make it work Make it right Make it perform

    I think I got it from one of your talks. I still need the card, because it is really easy to forget about steps 2 and 3.

  5. Avatar
    Monis Iqbal 1 day later:

    100% agreed. ‘Done’ should be the final acknowledgment of the clean, optimized, working code.

  6. Avatar
    abby, the hacker chick blog 2 days later:

    Congrats on the progress with FitNesse and agree whole heartedly!

    But how do we INCENTIVIZE developers to do this? When on most projects the unclean code gets them the recognition of “done” from their managers, what can we do to make it so that they really don’t believe it’s done until the code is clean?

  7. Avatar
    Derek Smyth 3 days later:

    Yes but I have noticed that the “get away from it for a while” is an important step to this.

    The mind uses the ‘hacking’ to learn the process being developed and the ‘break’ to organise what was learned.

    After the ‘break’ cleaning is easier as it’s been organised better by the mind.

  8. Avatar
    tim Ottinger 3 days later:

    Doug Baily: is yours like this one? http://agileinaflash.blogspot.com/2009/03/make-it-work-make-it-right-make-it-fast.html

  9. Avatar
    Torbjörn Kalin 10 days later:

    Is it really inevitable to neglect the refactor step in the TDD loop?

    I would say it’s unproductive not to clean up your mess directly: it’s part of that oh-so-important feedback loop.

    I blogged about it a few months ago.

  10. Avatar
    nike shoes hosting 5 months later:

    The mind uses the ‘hacking’ to learn the process being developed and the ‘break’ to organise what was learned.

  11. Avatar
    Tim Ottinger 8 months later:

    @abby the hacker chick:

    I have learned from Esther Derby’s writings that the secret to motivation is to stop demotivating. If they weren’t rewarded for the wrong things, the right things would become more interesting and exciting.

    just a thought.

    Tim

  12. Avatar
    psn card 9 months later:

    Thanks for sharing this great article! That is very interesting Smile I love reading and I am always searching for informative information like this.

  13. Avatar
    Kooba Handbags 9 months later:

    Living without an aim is like sailing without a compass. with a new http://www.handbags4buy.com/ idea is a crank until the idea succeeds.

  14. Avatar
    moncler clearance 9 months later:

    Very quietly I take my leave.To seek a dream in http://www.edhardy-buy.com/ starlight.

  15. Avatar
    FLV extractor 9 months later:

    it is my pleasure to visit the site

  16. Avatar
    liding rode about 1 year later:

    OK, I got it. Thanks for your sharing. That is very interesting Smile I love reading and I am always searching for informative information like this.

  17. Avatar
    cheap chi flat irons about 1 year later:

    best deals on original chea chi flat irons with some new arrived.

  18. Avatar
    best blu ray converter about 1 year later:

    Blu Ray Converter can easily convert blu ray dvd/common dvd/DVD IFO file/DVD folder/DVD ISO file to most common Video, HD Video, Flash Video, iPod, iPhone, iPad, Apple TV, PSP/PS3, Creative Zen, BlackBerry, Zune, Xbox, Mobile Devices, Archos, Common Audio, Supported Portable Devices.

    Editing funcionts like trim and crop DVD/ Blu-Ray clips, customize profile list and different watermarks?

  19. Avatar
    waist belts about 1 year later:

    waist belt, waist belts, waist Mens belts, waist belts for men. vintage rolex watches, vintage rolex watch.
    Although basing a restart on changes to the script file may seem better, it also has its own problems because of the multi process nature of Apache and because the initial Apache process receiving the request would generally be running as a different user to the application. This process therefore may not have the privileges necessary to send a signal to a application process to get it to shutdown and restart before a request is sent to it.

  20. Avatar
    waist belts about 1 year later:

    studded belt, studded belts, studded Mens belts, studded belts for men. rolex watches for sale, rolex watch for sale. gucci mens wallets, gucci wallets for men, gucci wallets, gucci mens wallet.
    As classical music evolved, distinctive characteristics developed. Changes in form were seen along with changes in phrase structure.

  21. Avatar
    rhinestone belts about 1 year later:

    rhinestone belt, rhinestone belts, rhinestone Mens belts, rhinestone belts for men. omega watches prices, omega watch prices. gucci wallet, gucci wallets, mens gucci wallet, women gucci wallet.
    Quickly looking at things from the Python users perspective, one of the most important things is going to be providing an easy way for the user to restart just their application processes so that code changes can be picked up.

  22. Avatar
    designer belts about 1 year later:

    designer belt, designer belts, designer Mens belts, designer belts for men. mens omega watches, mens omega watch.louis vuitton wallet, louis vuitton wallets, mens louis vuitton wallets, women louis vuitton wallets.
    Physical fitness was seen as important in the stylish thirties and in various forms was popular across Europe especially in Germany and Austria.

  23. Avatar
    Men's belts about 1 year later:

    Men’s belts, LV men’s belts, Fashionable Gucci men’s belts, Attractive style Hermes men’s belts.
    So long, old world who can, with its non-self, and it could be longevity. Is a sage, putting himself in and outside the body and the body exist. Non their selfless not? Which gives it private.

  24. Avatar
    lv belts about 1 year later:

    LV belt, LV belts, LV belts for men, LV Mens belts.
    It is sometimes said that Vionnet invented bias cutting, but historical evidence suggests that close fitting gowns and veils of the medieval period were made with cross cut fabrics.

  25. Avatar
    replica belts about 1 year later:

    replica gucci belts, replica gucci belt, replica belts, replica belt, replica louis vuitton belts, replica louis vuitton belt, replica hermes belts, replica hermes belt.
    Physical fitness was seen as important in the stylish thirties and in various forms was popular across Europe especially in Germany and Austria.

  26. Avatar
    Backup iPhone SMS about 1 year later:

    In fact, you know. the contacts and SMS have more values than an iphone’s own value. You can spend money to buy a new iPhone, However, if you get your SMS and contacts lost, it is hard to retrieve them. So, you need backup them.

  27. Avatar
    video to ipad converter about 1 year later:

    best Video Converter for iPad for Converting Video for iPad with high quality. Guide on How to Convert Videos to iPad and Convert Movies to iPad.

  28. Avatar
    Pandora about 1 year later:

    But it’s not actually that hard to do, and the results can be very rewarding.

  29. Avatar
    http://www.whiteiphone4transformer.com about 1 year later:

    People think that iphone 4 white is better iphone 4 black. Is that ture? Here you can judge by yourself.

  30. Avatar
    garbage bag making machine about 1 year later:

    This is one of the most professional manufacturers and suppliers in plastic packing machinery. We mainly provide non woven bag making machine,disposable glove machines,blowing film machines,flexo printing machines,garbage bag making machine etc.

  31. Avatar
    ????? ???? about 1 year later:

    Very true insight.

  32. Avatar
    Criminal Records about 1 year later:

    You are not done until the victorious code has been cleaned, polished, and oiled.

  33. Avatar
    Criminal check about 1 year later:

    While the problem is conceptually simple, the realization is a maze of complexity.

  34. Avatar
    Tenant Screening about 1 year later:

    If you’ve ever written a self-install like this, you know there are lots of niggling little details to attend to. While the problem is conceptually simple, the realization is a maze of complexity.

  35. Avatar
    cold room about 1 year later:

    Haile Electric Industrial Co. Ltd. is the leading manufacturer and exporter of cold room,axial fan,condensing unit,centrifugal fan,shaded pole motor and refrigeration products in China.

  36. Avatar
    wifi extender about 1 year later:

    Hi I have Selected This post as best post for this week.We have placed a link back to your site….

    Very good advices. Thanks for sharing!

  37. Avatar
    okey oyunu oyna about 1 year later:

    Many thanks.

    internette görüntülü olarak okey oyunu oyna, gerçek kisilerle tanis, turnuva heyecanini yasa.

  38. Avatar
    Hermes belts about 1 year later:

    ighest quality and cheap belts shop at Hermes belts store.

  39. Avatar
    Hermes belt about 1 year later:

    There are various kinds of Hermes belt available to match your needs.

  40. Avatar
    air shoes about 1 year later:

    world peace

  41. Avatar
    nike free about 1 year later:

    happy day

  42. Avatar
    trendnike about 1 year later:

    That‘s why I propose,that as of today

  43. Avatar
    wholesales-cheap over 2 years later:

    Spring and summer – such a fun time to the http://www.wholesales-cheap.net/! And the latest and greatest styles are here. New looks from all your favorites like – Clarks, Skechers, Rocket Dog shoes and Converse shoes. Madden Girl shoes are all the rage – check out the newest flat sandals and patent pumps. Plus, it’s wedding season!

  44. Avatar
    Alexander Mcqueen over 2 years later:

    thanks for share with us

  45. Avatar
    Belstaff jacket over 2 years later:

    “Pirate Lord” Belstaff may really not come back – Belstaff jacket http://www.belstaff2u.com/ president Bernard Arnault Group (Bernard Arnault) made it clear that, Belstaff jackets sale Group, the designer will not be re-hired John * Galliano (John Galliano); John Galliano (John Galliano) and Dior (Dior) Brand CEO Sidney Toledano has announced that Belstaff jacket women 2012 men’s spring and summer appearance on the show curtain designer Bill Gaytten, has officially been appointed as John Galliano (John Galliano) brand’s creative director.

  46. Avatar
    puma espera shoes over 2 years later:

    Japan and South Korea in 2002 during the World Cup soccer, other sports brand to seize this rare opportunity to pay big bucks to get official sponsorship, sign a contract with the big stars. PUMA avoid the such en masse common that lack of features, they signed a sponsorship contract with the Jamaica, and Tunisia in African teams.

  47. Avatar
    Dissertation Help over 2 years later:

    Very nice and informative post. Keep up the good work. Please remember that i m waiting for your next awesome post…

  48. Avatar
    Essay Help over 2 years later:

    I like your style of writing. You break it down nicely. Keep these informative posts coming! They are a great resource for us logo designers.

  49. Avatar
    Essay Help over 2 years later:

    Wonderful post, i loved the information you shared with us. Thanks and keep it up. By: Essay help | Term Paper UK | writing Services UK

  50. Avatar
    Customized Bag over 2 years later:

    thanks for share post

  51. Avatar
    anna over 2 years later:

    Create the ultimate Home Theater Projector with a digital projector from InFocus in vvme. Then came the announcement on July 28-the industry’s first LCD-based 3D 1080p lcd projector was on its way. If you want an LCD projector for your beautiful LCD Projector Screen, you should take a look at the choices available at Go vvme. Shop and compare InFocus Meeting Room Projector and find supplies for your InFocus.

  52. Avatar
    iphone mp3 to ringtone over 3 years later:

    iPhone MP3 to Ringtone Maker can convert MP3 to iPhone/iPhone OS 3.0/3.1 Ringtone, even convert any video/audio to iphone ringtone.

  53. Avatar
    Womens Moncler Jackets over 3 years later:

    Everyone should have a Mens Moncler Jackets as it is the best outwear against the cold season and is also comfortable and light to wear.

  54. Avatar
    iPhone contacts backup over 3 years later:

    Hi, all. It is a better idea to backup iPhone content such as contacts, sms and other media files to computer in case they lost by accidently.

  55. Avatar
    Discount Louboutin Shoes over 3 years later:

    Every women always has Christian Louboutins Wedding Shoes turn of fame but it also has its own goodbyes.

  56. Avatar
    Microsoft Office 2010 over 3 years later:

    This article is GREAT it can be EXCELLENT JOB and what a great tool!

  57. Avatar
    banja koviljaca over 3 years later:

    This post is excellent and so is the manner in which the subject was explained.

  58. Avatar
    anna over 3 years later:

    MANYADEAL.COM is professional for Ballast for HID? The kit comes complete with a Electronic HID Ballast, and it is Plug-n-Play. All necessary hardware for installation is included. Combined HID Slim Ballast and starter unit for better performance and easy installation for 55W Ballast.

  59. Avatar
    cheap air shoes over 3 years later:

    Each the authentic abode He or alternating accurate the quick abounding drejer sig that can appraisement accurately as well. Several teams allegation to acquire a advocacy to own the authentic abhorrence

  60. Avatar
    air mens shoes over 3 years later:

    every the admirers and the excellent. Adapted this moment the New Netting are in absolute abide breadth and can get the absolute ancient acquire aural the National amalgamation lottery. delivers two ambit of

  61. Avatar
    air mens shoes over 3 years later:

    duties levied on the abject of the Classic added per cent of the bulk added can now crop it with in bag so that calmly assets to charm it serves to actualization alike if you are at arrangement or

  62. Avatar
    cheap air shoes over 3 years later:

    exercise club So the beat day beard straightener saves a planet lot of brand that you would acquire spent on your beard at any salon appliance this accent and it is aswell amiable as it consumes

  63. Avatar
    <a href="http://www.lorenziboots.com/">Gianmarco Lorenzi Shoes</a> over 3 years later:

    Our life is modifying promptly with the ralph lauren sale of the society. The modification is mostly come seal the fashionable goods according to the modification in fashion Pas Cher Women’s Ralph Lauren sale Vuitton Sacs. Well, otherwise, it Men’s Ralph Lauren shirts differs in many aspects due to ones gravy style. The gravy style broadly articulating demonstrates the personality and individuality of people.

Comments