Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

how do you express coding-pleasure?

by zetetes (Pilgrim)
on Nov 27, 2004 at 20:45 UTC ( [id://410742]=perlmeditation: print w/replies, xml ) Need Help??

well, it's saturday night, after a very busy week i was looking forward to do some coding tonight. i knew i had this bug in a privately used application and i wanted to solve it tonight. since i didn't have the time to go on with coding since weeks.

turns out i just found the thing in my code and i'm overwhelmed with pleasure. woohoo.

what leads me to this question: what do you do, when you found a bug you were looking for for a looooong time? how do you express your pleasure? d'you jump up and down? go out and run around your block? just go on coding (maybe with a smile on your face)?

me for myself put in some nice music (nirvana with their nevermind-album for tonight), turn up the volume and well, just go on coding (there's always something to finish...).

maybe a question for a poll?

anyways. have fun.

update: after thinking about the question a little bit more and expecially after readingmelora's post further down i maybe should extend the question a little bit more:
how do you express your coding-pleasure(s) (=happyness?) and what brings you back to earth later on?

Replies are listed 'Best First'.
Re: how do you express coding-pleasure?
by gaal (Parson) on Nov 27, 2004 at 21:12 UTC
    You can always take the opportunity and add a new feature. That is bound to give you more bugs to fix later on! :-)
Re: how do you express coding-pleasure?
by exussum0 (Vicar) on Nov 27, 2004 at 22:53 UTC
    My area's seating is in rows, with 3.. maybe 4 foot walls that your desk runs into. Symetrical on both sides. This pattern goes on for a good 50 feet or so. Whenever I find out something that turns things around? I pull a field-goal like call. Both arms, straight up, like two number 1's. not a peep.. just "field goal!" It confuses people around me. I like it like that. :)

    ----
    Then B.I. said, "Hov' remind yourself nobody built like you, you designed yourself"

Re: how do you express coding-pleasure?
by BrowserUk (Patriarch) on Nov 28, 2004 at 17:07 UTC

    Solving bugs is nice, but for me, the greatest pleasure in coding is reserved for those occasions when you suddenly see a way to simplify a piece of existing, working code.

    I was recently working on a piece of code that operated on overlapping substrings of a string, involving two nested for loops and 3 position counters. Getting it to work right took an inordinate amount of time trying to cater for all the overlaps and edge cases.

    Then the realisation dawned that Perl's habit of padding shorter arguments to match the longer ones in many of it built in routines and operators meant that all my carefully crafted edge detection and correction was unnecessary. I removed it and everything still worked. That was a distinct pleasure.

    Somemonk, I forget who, has or had a sig. that said something about knowing that you were moving in the right direction when you were throwing stuff away. That was the case here. Perl's default behaviour meant that a bunch of complicated tests and corrections could be eliminated.

    I like that. And it happens much more in Perl than any other langauge I've ever used. (With the possible exception of PL/1 (actually PLS-86) which had more options to every library call than any other I ever used, and most of them had defaults that usually meant you could skip them. The only trouble was trying to remember which optional arguments had which defaults)


    Examine what is said, not who speaks.
    "But you should never overestimate the ingenuity of the sceptics to come up with a counter-argument." -Myles Allen
    "Think for yourself!" - Abigail        "Time is a poor substitute for thought"--theorbtwo         "Efficiency is intelligent laziness." -David Dunham
    "Memory, processor, disk in that order on the hardware side. Algorithm, algorithm, algorithm on the code side." - tachyon
      moving in the right direction when you were throwing stuff away

      That would be princepawn/metaperl, whose sig says "Carter's compass: I know I'm on the right track when by deleting something, I'm adding functionality".

      I think this is a basic tenet that comes up time and again in human endeavour. Antoine de Saint-Exupéry said "You know you have achieved perfection in design, not when you have nothing more to add, but when you have nothing more to take away."

      Going back earlier in time, Blaise Pascal said, of a letter he had written, "I have made this longer than usual, only because I have not had time to make it shorter."

      - another intruder with the mooring of the heart of the Perl

        Indeed, and thanks for doing the legwork. I especially like the last(first) version.

        I have made this longer than usual, only because I have not had time to make it shorter."

        For me, that kinda sums up one of the best things about coding for oneself, instead of a client or company. One has the time to make things shorter.

        There are other pleasures (as well of plenty of downsides--mostly financial :() derivable from programming for the sake of it. Others include:

        1. No deadlines.
        2. No contradictions (barring Me and Myself arguing with I:).
        3. No onus to complete.
        4. The joy of be able to pursue interesting side issues. Even if they are ultimately dead-ends.
        5. Answering all those "what-ifs" that crossed your mind during interminable meetings (with clients or bosses), but went unanswered for fear of embarassment.
        6. The ultimate joy, is that of knowing you are wasting nobody's time, but your own.

        Examine what is said, not who speaks.
        "But you should never overestimate the ingenuity of the sceptics to come up with a counter-argument." -Myles Allen
        "Think for yourself!" - Abigail        "Time is a poor substitute for thought"--theorbtwo         "Efficiency is intelligent laziness." -David Dunham
        "Memory, processor, disk in that order on the hardware side. Algorithm, algorithm, algorithm on the code side." - tachyon
      Along those lines, I find it nice to have such well-factored code that adding a new feature involves a tiny code change, like it was just waiting to get expressed.

      /J

Re: how do you express coding-pleasure?
by parv (Parson) on Nov 27, 2004 at 21:28 UTC

    Lovely/Funny comment, gaal.

    I personaly feel content and statisfied; take a break or a coffee. Then, keep coding some more all the while smiling inside ... or what gaal wrote.

Re: how do you express coding-pleasure?
by l3nz (Friar) on Nov 28, 2004 at 09:06 UTC
    I usually stand up suddenly and start walking around the office with a grin. If any colleagues ask me why, I say "nothing" and keep grinning. I once used to light up a cigarette, but those days are fortunately over.
      I'm in the 'stand up and walk around smiling' camp.
Re: how do you express coding-pleasure?
by leriksen (Curate) on Nov 29, 2004 at 00:39 UTC
    My pleasure comes from seeing my code used in ways I never thought of. Why ?

    Two reasons

    • my code is being used - yay
    • its good/robust enough to be retasked to some area I didnt envision

    I think the 'stangest' feeling of pleasure I got was when I was told that the data entry operators had changed their work habits to maximise their 'statistics', as reported by my new performance management tool - somehow, without knowing anything about my code, but just seeing their performance reports, they started 'adapting' or 'evolving' new ways of doing their data entry (keying) so that their stats were higher without them actually working any harder - fascinating

    use brain;

Re: how do you express coding-pleasure?
by TedPride (Priest) on Nov 28, 2004 at 18:31 UTC
    I just feel relief when I finally locate a bug. What I really enjoy when coding is writing a particularly beautiful algorithm, or turning a messy piece of code into the fewest possible (while still retaining easy readability) number of lines. The latter is an art form which I have not yet mastered, but I'm getting closer :)

    In answer to your question though, I just inform the people around me that I'm a genius. They've gotten used to it by now, especially since they think I'm right. (HA)

Re: how do you express coding-pleasure?
by Steve_p (Priest) on Nov 28, 2004 at 06:42 UTC
Re: how do you express coding-pleasure?
by etcshadow (Priest) on Nov 29, 2004 at 02:17 UTC
    I actually tend to bounce a little bit.
    ------------ :Wq Not an editor command: Wq
Re: how do you express coding-pleasure?
by artist (Parson) on Nov 28, 2004 at 16:25 UTC
    I usually drink more coffee and add extra feature if possible for that code. The found-bug gives me added confidence for that time period for my mental abilitiy to do the things.
Re: how do you express coding-pleasure?
by hv (Prior) on Nov 29, 2004 at 15:01 UTC

    Happiness is not expressing, but being.

    (I'm fuzzy on the precise definitions, but I think this is the difference between Apollonian and Dionysian ecstasy.)

    Hugo

      Ah, but expressing one's happiness can, of itself, contribute to happiness.

      Observe:

      my $code = 'incomplete'; my $happy_level = 0; until ($code eq 'complete') { $code = check_code(); } print STDERR "Yay! Code is done!"; $happy_level++; my $drink = new Bev::Beer(-brand => 'Guinness'); $drink->imbibe(); $happy_level++ if $drink->is_tasty();

      So by expressing my happiness in the form of consuming a favorite malt beverage, I become happier. :-)


      radiantmatrix
      require General::Disclaimer;
      Perl is

Re: how do you express coding-pleasure?
by Mutant (Priest) on Nov 29, 2004 at 15:36 UTC

    I get pleasure from fixing bugs, creating cool systems that really work, and actually help people, and also from refactoring code. I just love when I can reduce code by 50% or more (even if the original code wasn't mine).

    I'm usually fairly minimal in my expression of that pleasure however :)

Re: how do you express coding-pleasure?
by nothingmuch (Priest) on Dec 01, 2004 at 09:30 UTC
    When i'm overwhelmed by a sense of accomplishment I usually like to slow my mind up, and sort of savor the moment. I like doing nothing for a while, just sitting, probably outside, with my dog. Occasionally I would enhance the slowness of it by maiming my perception with a generous quantity of alcohol. Sometimes rolling a drum is in order. But usually it's just a sort of reward, a free time, devoid of any content or task.

    But getting to this feeling usually involves about a week of hard work, riddled with mines and problems, which I've had the luck to get around in acrobatic percision. This does not happen often.

    Actually, most of these pleasures I derive from my music, my photography, and so forth...

    Nice post!

    -nuffin
    zz zZ Z Z #!perl
Re: how do you express coding-pleasure?
by melora (Scribe) on Dec 01, 2004 at 14:13 UTC
    I am in the habit of smiling, getting up, doing a little "sack dance", and taking a brief break. I also tend to make a Tim Tool-Man Allen "Huh huh huh" grunting noise.
    Then I try to explain to my husband what I just did that was great and, since he's not so technical (I was trying to persuade him last night that a number is the same whether it's written in hex, octal, decimal, or binary.), that normally brings me down to earth and reminds me that my victory is just an obscure little accomplishment that really doesn't matter in the grand scheme of things.
    Gee, that doesn't sound that great.
    I have noticed, like others here, that my code tends to grow as I'm developing, then shrink as I improve the design. There is a pleasure that comes with removing code while it improves. Elegance is something I rarely achieve, but it sure feels good when I do.
Re: back to earth
by l3nz (Friar) on Dec 03, 2004 at 20:03 UTC
    I already posted about the happiness.... then you get back to earth when the a number of big honcho client execs sees the result of months of your fatigues and comments things like "Yeah, but why is the background pale yellow? we want it striped yellow and pink!" or "Nice, but the captions have to be all lowercase".

    In at least one occasion in my life the team had to stay overnight to "fix" the ready-to-click icon that was not in the exact shape as someone desired.

    When sucjh things happen - and they DO happen, I dont have to tell you - I feel what I'm doing is rather worthless.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlmeditation [id://410742]
Approved by Arunbear
Front-paged by Old_Gray_Bear
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others perusing the Monastery: (6)
As of 2024-04-23 09:10 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found