Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×

Where's Your Coding Happy Place? 508

jammag writes "Cranking out code — your very best code — requires being in the optimal environment, muses developer Eric Spiegel. He explores the pitfalls and joys of the usual locales, cubicle, home, the beach. He claims he's done his best coding on an airplane. In the end, though, he suggests that the best environment is a matter of the environment inside yourself, your internal mood — and to hell with the cubicle or wherever. You have to be focused on quality, regardless of the idiot clients. It's all inside your mind. Where's your coding happy place?"
This discussion has been archived. No new comments can be posted.

Where's Your Coding Happy Place?

Comments Filter:
  • by eldavojohn ( 898314 ) * <eldavojohn@noSpAM.gmail.com> on Monday April 20, 2009 @03:28PM (#27650711) Journal
    Nearly every location on this list is full of distractions. True, I can multitask while the TV is showing something I've seen or do not care about. Unfortunately, if it's a movie out of my Netflix queue, it greatly hampers my progress.

    Some of these places are just plain uncomfortable like public transportation or an airplane.

    Your bed?! The place where you sleep? Seriously? Granted there aren't a lot of places to suggest, this list blows. I'd be swimming if I were near a pool.

    For me the biggest factor is nice studio quality headphones covering my ears producing low volume music. Maybe it's my favorite non-talk radio station (The Current [publicradio.org] or Radio K [umn.edu]) or maybe it's some classical/jazz/rock album I just picked up. My hands and eyes are busy only with the task at hand. An internet connection will help break the monotony for short periods of time and keep me at full operating power. After that, I like to have hot tea, coffee or water at hand to drink and maybe some raw almonds to munch on. A relaxed position and a bathroom within short distance makes for the optimum coding environment.

    Assuming I have no questions about requirements or technology, this is the state I usually like to be in.
  • Oddly enough... (Score:5, Interesting)

    by yorgo ( 595005 ) on Monday April 20, 2009 @03:30PM (#27650735)
    ...it was while waiting (and waiting, and waiting) to be called to sit on Jury Duty. I sat outside on the smoking patio (middle of summer) near an outlet with my laptop and generated some of the best code of my life. Perhaps I should start volunteering for Jury Duty...
  • by Swizec ( 978239 ) on Monday April 20, 2009 @03:38PM (#27650929) Homepage
    It would seem that no matter where I am, the best coding I do is at about two to four in the morning. It's that time of the day when the internet is somewhat at rest because aussies are going home from work and having dinner, americans are just starting to actually work, or are getting to work and europe is mostly at sleep.

    Then just put a movie or some tv show on the second screen and code away. Nirvana.

    However about writing fiction or any sort of prose, I'm very picky as to the locale. It has to be a busy coffee shop or better yet, a club event. No idea why, just has to.
  • by PolygamousRanchKid ( 1290638 ) on Monday April 20, 2009 @03:49PM (#27651147)

    For me, when I am really seriously coding, I could just about be anywhere; nothing would disturb me. As a matter of fact, a couple a weeks ago a colleague grabbed me on the shoulder at work, while I was hacking away, and said, "We have to get out of here. There's a fire alarm. Didn't you hear the alarm?"

    Um, no, and I wasn't wearing any headgear.

  • by mkcmkc ( 197982 ) on Monday April 20, 2009 @03:49PM (#27651155)

    True, I can multitask while the TV is showing something I've seen or do not care about.

    Actually, I do fairly well watching episodes of TV shows that I've already watched into the ground (e.g., MASH). Because I know exactly what's going to happen, I can tune in and out at any time without missing anything. It's kind of meditative.

    I also agree about the headphones. Perhaps these two are related.

  • by Red Flayer ( 890720 ) on Monday April 20, 2009 @03:51PM (#27651183) Journal

    After the best quality code? The best place is a quiet place, free of distractions, where the problem can be easily and clearly understood.

    I'm not sure that's a universal truth. I concentrate best, for example, where there is a constant murmur (or even din) of background noise. It doesn't matter if it's quiet or loud, but both silence, and variations in the volume of noise, are bad.

    I've produced some of my best code next to a loud brook, birds chirping, etc -- but I've also produced some of my best code in a noisy bar at happy hour and in Grand Central Station at rush hour.

    Silence is anathema to good quality code for me -- constant subtle distractions are a great way of grabbing my focus when necessary so that my subconscious can work out a problem.

  • Not really coding... (Score:5, Interesting)

    by immakiku ( 777365 ) on Monday April 20, 2009 @03:54PM (#27651257)

    I was once designing an algorithm to do something at a lower running time, combining a mixture of data structures and graph theory. I had stayed up almost 22 hours in front of a computer to get it done because I thought I was "almost there".

    Then I fell asleep, jerked awake 4 hours later because I had actually solved it in my dream. When I woke up I realized that the solution in my dream was not complete and that there was a flaw with it. With another hour of modification I finished it up.

  • In a good team (Score:5, Interesting)

    by decipher_saint ( 72686 ) on Monday April 20, 2009 @03:59PM (#27651347)

    A tight team of bright progressive individuals has always brought out the best in my work.

    Crappy co-workers, moronic "hands in" managers, noise and meetings that don't produce anything are utter poison. Obviously interruptions of any kind are deadly to productivity, but sometimes that's part of the job and is usually profitable.

    I guess what I'm saying is my productivity is directly related to who and not where.

  • by kevingolding2001 ( 590321 ) on Monday April 20, 2009 @04:09PM (#27651529)
    And Eno! Lots of Eno.
  • Anywhere, really (Score:5, Interesting)

    by Tyr_7BE ( 461429 ) on Monday April 20, 2009 @04:11PM (#27651581)

    Back when I was in my undergrad I bought into the whole idea that "I need conditions to be pristine in order to create". Now, a few years spent working in industry, looking back on this view makes me feel like I was a bit of a diva. My brother is a musician and he claims something similar - when he was first starting off, he subscribed to the view that he needed his environment to get into a "creative zone". But the more he wrote music, the easier it got, to the point where he can do it just about anywhere without being affected too much.

    I mean really, if you're focusing that much on loop constructs and variable names that you can't do it anywhere except places where conditions are ideal, then I guess that's you. But for me, the really important parts like architecture strike me when they strike me. Usually when I'm going about my business doing the groceries, or in the shower, or on a bus, or something like that - whatever's been tumbling around in the back of my mind takes on some semblance of form, and pops to the forefront when it's damn well ready, not when the ambient light is at a certain strength and the atmospheric pressure is just so. I don't subscribe to the view that I need a "creative zone" in order to produce properly. Once I get hit with an idea, getting it out into code is just drudgery. That can be done anywhere.

  • Re:Silence (Score:5, Interesting)

    by networkBoy ( 774728 ) on Monday April 20, 2009 @04:19PM (#27651709) Journal

    I like coding in my lab, after hours when nearly everyone has gone home.
    Janitor comes by around 7:30/8:00 and I thank him, listening to techno or classical, depending, I'll get more done in that span between 5:30 and 9:30 then many others in my department will get done in an entire week. Alas, the powers that be have banned overtime, so now I don't pump out as much code. To witt, here I am, as always in the afternoon...

    -nB

  • You'd love google (Score:5, Interesting)

    by Wee ( 17189 ) on Monday April 20, 2009 @04:20PM (#27651737)
    They pack 4-5 developers inside these glass-walled cubes. So there's no end to the visual distractions. And then you have overcrowding in conference rooms, so people routinely host meetings in the offices. Or they merely dial in using their speakerphone. Lunch is always a good time because they make it super easy to grab a tray and take it to your office to eat. So if you get an office mate who likes to work through her lunch by slurping incredibly stinky Indian food, you're a very lucky guy.

    Most unproductive place in the world to try and think about coding, expect maybe a steel foundry or a slaughterhouse or a circus big tent.

    The only bright spot is that if you ask about places that might be a little quieter, they give you these really nice Sennheiser headphones. Not so good if you dislike having something on your head 10 hours a day, though.

    Toward the end there it got to where you'd instinctively know which interview rooms or whatever weren't take. If you dim your screen all the way down and shut off the light, you can get maybe four hours straight work in before it's back to the sights, sounds and smells of the cubicle zoo.

    Sounds like you'd fit right in. You should apply.

    -B
  • by twistedsymphony ( 956982 ) on Monday April 20, 2009 @04:21PM (#27651749) Homepage
    I can see that, I hate absolute silence, I code best when I'm listening to music, anything really. At home it's usually some kind of techno, but at work I'm not allowed to listen to music at all.

    Interestingly enough my most productive week at my job ever was when I stayed to work while the company was shut down for construction, the construction noises combined with some FM radio, comfortable clothes and no distractions from chatty co-workers was the perfect storm for getting work done quickly and effectively.
  • by MBGMorden ( 803437 ) on Monday April 20, 2009 @04:36PM (#27651997)

    Personally I've found that I get a lot more done at work, but late at night or on a weekend. If I'm on my home machine coding in my spare time, then I'm easily distracted. Something interesting comes on TV, I decide to log onto WoW for a bit, I get hungry and go for a snack, etc, etc. When I'm actually trying to work on a project I can wring MAYBE an hour to an hour and a half per night out of myself. And that's often done while tabbing back and forth between iTunes and other assorted apps.

    At work, during standard business hours, I have more legitimate distractions, but still distractions. Seems like somebody is always calling, or I have meetings to attend, etc.

    The times when I've noticed that I really tear through a to-do list is when I'm in my office late at night. The building is quiet, there is nobody to bug me, and my work machine has virtually no "fun" software installed on it. About all there is to compete with there is Slashdot and Penny Arcade :), which don't take up much time to check. I've literally had things that I figured would take me 2 weeks to complete that I've stayed an extra 4-5 hours one afternoon and completed in one swoop.

  • Coffee Shop (Score:2, Interesting)

    by morgauxo ( 974071 ) on Monday April 20, 2009 @04:37PM (#27652007)
    Not too original as it's already in the article but it's the coffee shop for me. The office is too quiet, home is too distracting. Coffee shop is just right. It takes some good code to make a profit though with all those overpriced treats around.
  • Re:Work! (Score:3, Interesting)

    by johnlcallaway ( 165670 ) on Monday April 20, 2009 @04:47PM (#27652183)
    I prefer my sad little office cubicle also. Both my home and work computers are similar, but I like my tiny little cubicle with no distractions. (I was recently asked if I wanted to move to a larger cubicle and said no, the extra space just mean more room to pile crap.) I can tolerate some of the low level voices I guess because I've worked in this type of environment for so long. I can't really deal with headphones on all day.

    However .. many years ago (25??) my favorite place to debug was Pizza Hut. I would take a couple stacks of green-bar memory dumps, order up a pizza and pitcher of Pepsi, and sit for hours pouring over them with a highlighter, pencil, and steel ruler. The place would let me take over a booth and filled the pitcher when it ran out. The waitresses were always attentive because I always left a good tip and was polite.

    Ahhh....the good ole days.
  • by mmaniaci ( 1200061 ) on Monday April 20, 2009 @04:49PM (#27652215)
    My best code is produced when the pressure is on. Just last weekend I was participating in a robotics contest and coded a crude OS for a micro-controller in the 5 hours leading up to the competition. It was very simple, but worked well and I was even able to provide simulation outputs when run on a normal PC.
  • by Hatta ( 162192 ) on Monday April 20, 2009 @04:53PM (#27652277) Journal

    All depends on motivation. If I care, I can tune out any distraction. If I don't, any distraction is fatal to my effort.

  • Re:Silence (Score:5, Interesting)

    by Like2Byte ( 542992 ) <Like2Byte@@@yahoo...com> on Monday April 20, 2009 @04:55PM (#27652295) Homepage

    listening to techno or classical, depending, I'll get more done in that span between 5:30 and 9:30 then many others in my department will get done in an entire week.

    I totally agree. When I was able to listen to my iPod (before I lost my tunes - doom on me) I listened to Classical, techno and trance. Wow! Depending on my mood, I'd get more code written than at any other time. It didn't matter what idiot-fest was going on around me, either. Plug me in and BAM! I'm gone. I feel I got more work done in a year at one of my coveted jobs than at 4 years at others.

    Music is where it's at. And, no - I wasn't in band in high school.

  • Re:Silence (Score:5, Interesting)

    by Alexandra Erenhart ( 880036 ) <saiyanprincess@gma i l . c om> on Monday April 20, 2009 @05:03PM (#27652429) Homepage
    Agree. When I'm in silence, I have so much stuff inside my head that I end up being in my own way when it comes to thinking. Music puts my ideas in order and it lets them flow, like the spice, oh yeah. Also it has to be music with no lyrics, cause I end up singing and I can't sing and code. Must be something in my brain :P.
  • Re:Silence (Score:3, Interesting)

    by commodore64_love ( 1445365 ) on Monday April 20, 2009 @05:51PM (#27653165) Journal

    >>>Anywhere there is silence.

    Anywhere there is noise.

    Noise helps distract me from the voices in my head. Just joking. ;-) But seriously, I like my television turned-on to something random like Animal Planet or the History Channel, while I lounge in my recliner. It helps me feel like I'm just doing a hobby, like when I was a teenager, instead of doing work. The code flows.

    I hate silence; it's boring.

  • Re:In the shower (Score:2, Interesting)

    by jmccarty ( 1510147 ) on Monday April 20, 2009 @06:02PM (#27653315)
    Amen to that. I too have had several programming solutions come to me in the shower. Ever just wake up in the middle of the night with insight to a problem you were working with during the day? I need to find a way to prefect TCMP [xkcd.com] since so many solutions seem to come to me subconsciously.
  • by xaxa ( 988988 ) on Monday April 20, 2009 @07:40PM (#27654269)

    in Grand Central Station at rush hour

    I once did a load of work on the Circle Line (subway) in London. It was busy, but I had a seat and knowing no one else would interfere with me was good.

    That's the difference with an office: in an office, some of the noise might be for me -- someone coming to talk to me, or a phone call, or a conversation about something I know about.

    In any other busy place I don't need to listen for anything, so it's much easier to block out.

  • by ajlisows ( 768780 ) on Monday April 20, 2009 @09:50PM (#27655259)

    I have to agree with the not where but WHEN being important. For whatever reason, my synapses fire the best between 10PM and 2AM. On the other side, the 8AM to 11AM block has to be the worst. I'll take shortcuts, use non-descriptive variables (Uhhh, i think I used a and b already. I'll go with d), and avoid commenting anything.

    Of course it could be that if I am working in the morning I am at work and if I am working at night I am at home. At work I face countless interruptions and a rather uncomfortable desk setup. At home I have my "Office" where I have a comfortable chair, an old wooden chair if I need to switch to something solid, and "Papasan" chair if I get really desperate. I have a air purifier for some ambient noise or some music quietly in the background. If I am in here with the door closed the wife knows not to come in unless someone we know is dead/dying or if she means business. A break to get frisky can really put me in focused mindset.

Solutions are obvious if one only has the optical power to observe them over the horizon. -- K.A. Arsdall

Working...