Slashdot Mirror


Finding the Programming Zone?

SlashDotDashDot asks: "As a developer for 20+ years, I've developed a fairly fine tuned way to find 'The Zone' for optimal programming - a combination of furniture arrangement (PC and chair), lighting and music. I also have a pretty good sense of what time of day is best for working on a particular set of problems. But this is what works for me. My company is growing and I'm needing to mediate working conditions between my clients and consultants. This has me wondering what others have found important for finding 'The Zone' in their programming lives. How fast can you get there? How long does it last? What do you do that helps keep that state? What are the major interrupters?" We also touched on this issue in a similar article, last year. However, many of you may have ways of attaining "the zone" that don't depend on any of the factors listed above. If you have a method that works for you, please share. It may work for others.

577 comments

  1. Window, not windows! by WetCat · · Score: 4, Funny

    Window please! A real window!

    1. Re:Window, not windows! by deadmonk · · Score: 4, Insightful

      Bah! Screw daylight. The Zone in which good things happen (for me, at least) is one in which just about any marked input to the senses is reduced - the room is warm enough to be comfortable sitting still, no bright light to distract the eyes and ambient tunes to cover rude neighbors or people in the hall. My penchant for darker inside offices (no glass) earned me the title Caveman in at least one past position.

      The key here is four walls and a door. I've heard the lame excuse that 'an open environment promotes communication' - what you end up with is being pinned like a bug under glaring lights listening to the dork in the next cube yack at his wife eternally. Sure you can communicate until you're sick of each other, but nobody can concentrate on code..

    2. Re:Window, not windows! by wbajzek · · Score: 3, Interesting
      Windows are overrated. I didn't ask for one at this company, since I was one of the newest employees when we moved to a real office, but they gave me one.

      I spent 2 weeks trying to figure out how to keep the horrible glare from the sun off my screen. We have these pin-holed blinds that allow enough light in to burn out my eyes, and my boss doesn't like it when I stack up a bunch of boxes to block out the light... I've had to move my huge and unwielding to an ergonomically suboptimal position so I can stand to look at it during the day. People always joke that they can find me a windowless cube, and unfortunately they always think I'm joking back when I tell them that I would love it.

    3. Re:Window, not windows! by rmohr02 · · Score: 4, Funny

      I've got real windows. Somewhat barren terrain. Ahh, there's zerglings storming my command center! Build marines! Oh, wait, that's not my window. Never mind.

    4. Re:Window, not windows! by Anonymous Coward · · Score: 0

      I agree totally about the open environment thing...one phone ringing throws me out. Although I've found headphones to help if you must work in an open space ;)

    5. Re:Window, not windows! by Anonymous Coward · · Score: 0

      or a skylight

    6. Re:Window, not windows! by blue+trane · · Score: 1

      problem is offices cost more money than open environments...

    7. Re:Window, not windows! by MasterLu · · Score: 1

      if your boss doesn't like boxes stacked up, I doubt he'd like this either, but I suppose it's worth a shot. If you spritz some water on the windows, tinfoil will stick pretty much forever, and come down with no trouble. it's entirely opaque, too.

    8. Re:Window, not windows! by lannocc · · Score: 1

      Well, from my desk I have the very distracting yet beautiful view of Lake Washington. I find myself having to close the blinds in the summer if I ever intend to get any work done. I only wish I didn't have to wear headphones to listem to music at work. While I'm at home, blasting my music is what effectively puts me into "the zone".

    9. Re:Window, not windows! by Anonymous Coward · · Score: 0

      In the eyes of the accountants and CEO's who see the world quarter-to-quarter or year-to-year, perhaps. If one looks beyond that and takes into account productivity, employee satisfaction, and retention and all related costs and benefits, it is an entirely different story. Cube farms are an abomination. It is not human. Office factories - the equivalent of the modern pig and chicken farms. I'd like to go back in time and find the architect who designed the abomination they call the modern office building and smother the little bastard in his crib.

    10. Re:Window, not windows! by blue+trane · · Score: 1

      ya I totally agree I'm giving you the response I usually get when I say what you're saying.

  2. Excuse me? by Anonymous Coward · · Score: 1, Insightful

    I hate to tell you, but coding isn't like writing a novel. There are set ways to approach and solve a problem, and if you tell your boss that you can't work right now because it just isn't coming to you, you're out of a job. This is ridiculous.

    1. Re:Excuse me? by tenman · · Score: 3, Insightful

      We get these types in here all the time. They are fresh out of college and have no real world expr writing code. They talk of intellectual freedom, and then sit down and write the most brain dead code I have ever seen. And the consultents are even worse, cause they know in a couple of months they will be gone, and you will be holding the bag of funnel cake type code.

    2. Re:Excuse me? by Ivan+Raikov · · Score: 5, Funny

      I hate to tell you, but coding isn't like writing a novel.

      You're a VB "programmer," I presume?

    3. Re:Excuse me? by Anonymous Coward · · Score: 3, Interesting

      You obviously are not a coder. Coding is much more difficult than writing a novel, in complex programs it can be very difficult on how to implement functions. You definately have to be in a certain mindstate to do it, depending on the complexity of the issue. Sometimes the fact that it just needs to be done, isn't enough for you to have the concentration to work on the more difficult problems. Often I find revising a flowchart on the issues, making them look easier, gives some motivation. However, there are somedays where I just can't get into the mindstate, and thats when I do physical chores. Sometimes coffee helps, but for motivation doesn't last long, and you crash hard after it wears off.

    4. Re:Excuse me? by coene · · Score: 3, Interesting

      First, thats off topic -- but I'll comment anyways seeing as i like how my keyboard is being nice and tactile right now (an effect of enviroment).

      The discussion is what makes you more efficient, not if you can or cannot complete the task. We all know that non completion results in bad things, this is about doing it faster and/or better.

      Coding isnt like a novel, but in a way coming up with a plan for coding is. This approach (your word) is the hard part, coding is just dry implementation.

      "The Zone", be it based on enviroment, or whatever gets you going, is a necessary component in effective coding.

      Essentially formulating the solution in your mind is coming up with the theme and plot of a novel, and implementing is like scratching it to paper. Though not equally demanding of non-interrupted time, both do require that special something to be done right.

    5. Re:Excuse me? by sethdelackner · · Score: 2, Interesting

      there are set ways to approach and solve a problem

      Yep, generally.

      if you tell your boss that you can't work right now because it just isn't coming to you, you're out of a job.

      So I take it you love solving known problems with 60hz florescent lighting flickering in your eyes while your cube mate pounds out high-decibel "Cirque du Soleiel" music and your folding chair stabs you in the back? Are you sure you aren't a robot?

      Programming is a mental activity. It is thus appropriate to make all distractions disappear for the thinking individual. For some, special music (ambient!), good furniture, and good lighting are essential.

      And to hell with a window. Hands up everyone sitting in a beautiful office with cardboard taped to the monitor and large objects sitting in the window to avoid being blinded at 3pm sharp.

    6. Re:Excuse me? by super-flex-o-matic · · Score: 1

      yeah this depends allways on what task you have to accomplish, what problem to solve. if its a creative one its ok i think else sooner or later, this company will ahem have some problems with their product.

    7. Re:Excuse me? by harmless_mammal · · Score: 1

      Problems that do not easily fit into existing categories have no set methods for approaching them. What you are describing is identical to the turn-the-crank methods used to teach algebra in high-school and doesn't work for problems that require truly creative solutions. You may tell your boss that you're starting on the problem right away, but I'll bet you're more productive when you don't have 10 meetings a week and aren't constantly interrupted by cow-orkers and phone calls.

    8. Re:Excuse me? by rnicey · · Score: 1

      I agree with what you're trying to say, but not your comparison.

      The typical answer on how an author writes a book is that they sit down and start typing. They force themselves to do it every day in order to succeed. Discipline.

      Sure it's nice, and often more productive if the secretary is giving you a foot massage and the lighting is perfect. However this just doesn't cut it very far in the corporate world. They're looking for good steady turnout, not perfect turnout when your karma feels like it.

      Not aimed at you, I just remembered I'm agreeing with you :)

    9. Re:Excuse me? by jgilbert · · Score: 1

      I have no windows. No chance of light slipping through cracks.

      jason

    10. Re:Excuse me? by jsprat · · Score: 2, Troll

      I'd put $1,000 down right now - there are more people writing code for a living than writing novels. Which one is easier?

      Let's stretch this a little farther, shall we? Which is harder, being a surgeon or a programmer? I'd put $5,000 down on that one, right now. But somehow, the surgeons end up motivating themselves to go to work and do their job whenever it's required, not just when they "can get into the mindstate".

      When working with other people, professionals find a way to just do it.

    11. Re:Excuse me? by jsprat · · Score: 1

      If I had mod points, I'd mod you up. I just tore into someone else (upthread). You said it much better than I did ;)

      Discipline and professionalism - boring, but _way_ underrated.

    12. Re:Excuse me? by Anonymous Coward · · Score: 0

      I'd put $1,000 down right now - there are more people writing code for a living than writing novels. Which one is easier?

      Hmm no use for economics either. There is a much larger demand for programming than for novels. The fiction publishing industry is much smaller than the Oracle alone let alone the rest of the software industry including in house custom code.

    13. Re:Excuse me? by John_Booty · · Score: 3, Insightful

      I'd put $1,000 down right now - there are more people writing code for a living than writing novels. Which one is easier?

      Whether you're right or wrong, your analogy isn't the least bit apt. Most programmers work on software that's customized for a particular client, or a small number of clients in a specific field. Do any novel-writers write customized novels for 3 or 4 clients? The surgeon analogy doesn't even begin to make sense. Unlike surgery, do people really need life-and-death software support? 99.9% of the time, no. In the fields where software IS a life-and-death matter (air traffic control, nuclear power plants) you can bet the software companies have engineers on call at all times much like doctors.

      Also, it's not a matter of programmers "just doing it". The question is not, "should my programmers have to work if they don't feel like it?" The question is: "how can I place my programmers in an environment where they'll be the most productive?"

      If you even think about the question asked in the story, you'll realize it's about squeezing more productivity out of programmers by creating a favorable environment for them.

      Your response is pretty sick. I'm sensing some built-up hostility there. It's true, there's a lot of whiny, overpaid, pampered programmers in the world, but that's not what this person is seeking to create.

      I believe it's possible to create a comfortable work environment for programmers and still demand maximum productivity and deadline adherence...

      --

      OtakuBooty.com: Smart, funny, sexy nerds.
    14. Re:Excuse me? by Ironpoint · · Score: 1

      Ok, maybe you haven't worked in an OR, but doctors are way more anal than programmers. They schedule operations at 4am, or 10pm, or 2am, they listen to classical, they listen to rock, they listen to whatever, they have to have the right instruments and the right people, they need the right kind of headlamp.

      Perhaps trauma doctors don't worry as much, but you can bet the trauma room is configured meticulously.

    15. Re:Excuse me? by Anonymous Coward · · Score: 0

      Why is this so funny to everyone? Writing code IS NOT like writing a novel. Writing code in a business setting is all about problem solving. If it isn't, you're doing it wrong.

    16. Re:Excuse me? by Anonymous Coward · · Score: 1, Interesting

      There are set ways to approach and solve a problem that has already been solved! If you are solving the same problem over and over again, you aren't doing a very good job.

      I prefer to make my code reusable, as to not have to ever solve the same problem twice. Of course it rarely works out, but I try.

    17. Re:Excuse me? by Henry+Stern · · Score: 2, Funny

      You're a perl "programmer," I presume?

    18. Re:Excuse me? by NormalVisual · · Score: 1

      Ever sat there for two hours with an oscilloscope or bus analyzer trying to figure out exactly why your driver code isn't working properly while the phone is ringing off the hook and people are constantly bugging you in your cube? Problem solving requires thinking, and for most people it's difficult to focus on the problem at hand if there are distractions constantly being put in the way.

      --
      Please stand clear of the doors, por favor mantenganse alejado de las puertas
    19. Re:Excuse me? by kbonin · · Score: 5, Insightful

      I'd have to make some exceptions to this position...

      Being a surgeon is like being a very talented mechanic, with an excellent memory and fine motor skills. Additionally, the rigors of internship filter out those not qualified or capable. The creative muse has little place in a field where a few fractions of a mm slip in the right place can kill someone. A surgeon can get by with zero creativity other than adapting to "normal variation" in anatomy and being able to recall what procedures to apply, and still function very, very well.

      OTOH, programming covers a wide breath of skills and abilities. Programming batch file processing scripts requires little creativity. Designing realtime attitude control systems requires grasp of many mechanical, electronic, control-theory, and scientifc fields beyond programming, and creativity to figure out how to acheive your goals. Bleeding edge 3d game engines require obscene amounts of creative design skills encompassing and correlating traditional CS, as well as physics, lighting, perceptual psychology, game theory, and much, much more.

      A sr. programmer with a design responsibility on a bleeding edge project with 'creative block' can be unable to do their job "well", even if a "professional". Sure, you can sit down and hack something out anyway, and I've seen the results of that. Unfortunately, many companies can get away with crap code, and I guess yours is one of them...

      Creativity results in elegant programming. Those who claim otherwise, likely do not write elegant code...

    20. Re:Excuse me? by sharkey · · Score: 2

      your folding chair stabs you in the back

      Your chair stabs you in the back? Wow. Around here, it's usually my cow-orkers that try that. Never worried about my chair before. Looks like I'm gonna have a sleepless night, or three.

      --

      --
      "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
    21. Re:Excuse me? by rmitz · · Score: 1

      Obviously, you don't realize that many authors write novels in the same way. Different people work in different ways.

    22. Re:Excuse me? by Darth_Burrito · · Score: 2

      Interesting you should mention that... I'm a perl/C++ guy whose current job entails lots and lots of VB. I almost always have trouble finding the Zone while working in VB. Today I spent an hour writing a little perl script and the time past so fast I hardly noticed. Most of the VB work I do tends to be superficial upper level interfaces and stuff. I think to get in the zone, you need a topic you can sink your teeth into and a language you are comfortable with.

    23. Re:Excuse me? by psavo · · Score: 4, Insightful

      I'll tell you a thing.
      Writing code is very much like writing a novel. One day it's flowing out of you. Then on another day, it just stops. And there's no way you can easily tap it back 'ON'.
      It's not about 'formal methods'. With all your bag of formal method tricks, if you can't visualize (in some personal way) problem you're facing, then you can't apply anything to it. Nothing, nada.
      This is why CAP will never really take off. You need to really understand what is going on, and what one should do. Computer just can't do it.

      --
      fucktard is a tenderhearted description
    24. Re:Excuse me? by magead7 · · Score: 1

      I think the surgeon reference is a bit off. A surgeon's job, for the most part, is following a set procedure. You cut open a certain part of the body to do procedure X. If Y goes wrong, you do Z. It's all relatively predictable. Start being creative, and you've got a lot of danger to your patients (gee, what if I cut the neck open to get to the heart today...another ridiculous stretch though). I'm not saying that surgery is easy though, I would never do it because it is complex and I wouldn't trust myself to remember every detail.

      Computer programming is much more creative, as far as I see. Seeing problem x may have several million possible solutions. The art of programming is being able to pick one of the better solutions to the problem.

      Now yes, I know that I too am stretching out what I'm saying to extremes. Oftentimes a programmer may very well be doing little more than writing a for loop for a method, which is far less creative than a surgeon. But as a whole, a programmer will probably be thinking of much more original solutions than a surgeon.

      As for the writing novels vs. writing code, I think that saying one is easier is just silly. Quantity doesn't mean difficulty. How many people are raising goldfish to eat? None, I'd guess. Is raising goldfish harder than writing a novel or code? No. But even though the argument you chose to prove novels are more difficult than code, I agree that writing a novel is not a braindead task. It may even be more creative than code, if it's a high quality novel (meaning it has a unique world and unique characters and such).

    25. Re:Excuse me? by joshki · · Score: 1

      Surgeons do make mistakes... so do programmers

      What do you want to put down on which is worse?

      There have been studies recently regarding the loss of sleep and how it affects surgeons and ER doctors in the performance of their duties. So when you say that "professionals find a way to just do it" maybe they "just do it" and people die.

      A surgeon does a completely different job than a programmer. Even in conditions such as air traffic control and nuke power plant control, the situation is completely different. A surgeon can't always call on a second, and third, and fourth opinion -- he's got to make life and death decisions, right now, immediately. Sometimes they make the wrong decisions -- it happens -- and I'd be willing to bet they have some days and times when they make better decisions than others.

      --
      I do not read or respond to AC's. If you want a discussion, log in. Otherwise, don't waste your time.
    26. Re:Excuse me? by Anonymous Coward · · Score: 0

      > It's all relatively predictable.

      So is writing code if you do it long enough.

    27. Re:Excuse me? by spectecjr · · Score: 1

      Ever sat there for two hours with an oscilloscope or bus analyzer trying to figure out exactly why your driver code isn't working properly while the phone is ringing off the hook and people are constantly bugging you in your cube? Problem solving requires thinking, and for most people it's difficult to focus on the problem at hand if there are distractions constantly being put in the way.

      Welcome to my life.

      In fact, I anticipate doing EXACTLY what you've described next week - I'll be debugging my driver code then when we get the new hardware in our prototype :-)

      Si

      --
      Coming soon - pyrogyra
    28. Re:Excuse me? by cpparm · · Score: 1

      Coding isn't like writing a novel. But beautiful code is like beautiful literature. It makes you weep in awe.

    29. Re:Excuse me? by Cenam · · Score: 0, Flamebait

      you can do alot of powerful stuff in vb, and when compiled it can be made to work as fast as a well written c program or faster, its just that not very many people have the attention span to learn vb so in depth..

      --

      The Truth: There is no string:)
    30. Re:Excuse me? by joshki · · Score: 2, Interesting

      One more thing -- I'm not a programmer, I'm a military technician. In some ways, my job is more like a Surgeon's job than a "coder." And, yes -- I am a professional, and yes, I do get the job done. Regardless of time, day or night, whether I've been up for 18 hours or 3, whether I got a good night's sleep the night before, whether I have nice music to listen to, etc... you get the point. But... if I've gotten that good night's sleep, if I've had the time to relax, think through the problem(sometimes not an option -- tactical situations don't have a lot of room for downed equipment), I'll have a much better response to the problem, and I'll be better able to come up with the most expedient solution to get the equipment operational again. The point wasn't being a professional -- the point was how your environment affects your productivity.

      --
      I do not read or respond to AC's. If you want a discussion, log in. Otherwise, don't waste your time.
    31. Re:Excuse me? by HydroCarbon10 · · Score: 2

      It's true, there's a lot of whiny, overpaid, pampered programmers in the world Read: Those guys that are in it solely for the money and, despite the fact they spent 4 years "learning" CS in some college, they still don't fully understand what they're doing.

      --
      The best way to accelerate a windows box is at 9.8 meters per second square.
    32. Re:Excuse me? by jsprat · · Score: 1

      I think the analogies stand - both of them. The market for novels is bigger than the market for software - specialized or unspecialized. Professionalism is important in any career.

      I believe it's possible to create a comfortable work environment for programmers and still demand maximum productivity and deadline adherence...

      I never said it wasn't possible. Hell, I didn't even argue against it! I disagreed with what I felt was a primadonna attitude. I guess I was trolled... damned Anonymous Coward!

      But I do agree with the gist of your message.

      I am _for_ a safe, comfortable environment that lets you do your job. Because we are people - not because it gives management a bigger bang for the buck. Any good company will make sure that they provide such an environment.

      We should have a healthy workspace, a high quality monitor, ergonomic chair, the ability to listen to the music of our choice (so long as it doesn't disturb others or prevent us from doing our job). We just need to be professional enough to do what needs to be done in a timely manner.

    33. Re:Excuse me? by letxa2000 · · Score: 3, Interesting
      There are set ways to approach and solve a problem, and if you tell your boss that you can't work right now because it just isn't coming to you, you're out of a job.

      Hahah, you aren't a programmer are you? Probably are a poorly paid manager.

      Truth is, I have yet to find ANYONE (thank God) in a position of any managerial importance that agrees with you. Everyone I've ever known recognizes that there are days that a programmer just can't crank out code, and there are days that in a single day he'll crank out 4 days worth of "slow days."

      Programming isn't an exact science. It DOES require being in "the zone."

      When you're in the zone the code will just flow and it'll normally be much better code. A programmer who isn't in the zone but feels "forced" by management (or, more often, by himself) to crank out code will produce poor code, will have low morale, will probably tend to take a long lunch break and probably frequent "cigarette breaks," and probably leave right at 4:30pm. Basically an unproductive day whose output is of little value.

      On the other hand, a programmer that is in the zone may easily forget about lunch or eat his lunch in 5 minutes at his desk while he codes. He might remember to go to the bathroom. And it is doubtful he'll leave before 5pm. And the code he produces will be some of his best.

      When I'm not in the zone, I tend to do non-programming work. Returning calls, writing up documentation, meeting with those that may have been wanting a meeting for some time. There's no reason to waste time on programming when you're not in the zone.

      If you really think it's as simple as "pay the programer and he'll produce 500 quality lines of code a day, every day" you're sadly mistaken. While you can't have a non-productive programmer and being "out of the zone" isn't an excuse to avoid working, it is equally unreasonable to expect programmers to be 100% productive every day. Aint gonna happen. Some days they'll be at 50% and other days at 150%. Every manager I've worked with or for knows that and accepts it.

      I suspect those that don't know or accept it are hiring code monkeys in a sweat-shop environment. I've never worked in those environments, though, so I wouldn't know.

    34. Re:Excuse me? by edrugtrader · · Score: 2

      comparing a novelist to a programmer is fair. comparing a surgeon to a programmer is not fair.

      in either case, their is more DEMAND for programmers than novelists or surgeons. Writing a novel is easier to a novelist, doing surgery is easier to a surgeon and coding is easier to a programmer. common sense. which is easier to learn? is that your question?

      writing a novel requires a creative skill that is not obtainable to some. programming requires a problem solving mindset and desire to learn not obtinable to some. surgery requires steady hands, concentration and much schooling.

      are there more people that qualify to learn how to program. yes. does that mean it is easier? who knows.

      the problem with novel writing and coding is you spend the VAST amount of your time siting in front of a CRT staring at text and altering it to your satisfaction. THIS GETS VERY REPETITIVE! surgeons are walking (running) around and dealing with things in the real world that affect peoples lives. if they don't perform, people die. that is motivation enough. if there was someone put in my cube, and if i was told that they would be killed if i didn't perform, and their family was waiting in a conference room down the hall, I WOULD PERFORM.

      --
      MARIJUANA, SHROOMS, X: ONLINE?! - E
    35. Re:Excuse me? by Ivan+Raikov · · Score: 2

      Let's stretch this a little farther, shall we? Which is harder, being a surgeon or a programmer? I'd put $5,000 down on that one, right now. But somehow, the surgeons end up motivating themselves to go to work and do their job whenever it's required, not just when they "can get into the mindstate".

      I can still can go in and fix software bugs, or do other kinds of technical support at any time, without having to be "in the mood." But this is not a creative process. This is just fixing a certain mechanism, using my knowledge of it.

      Designing and implementing this mechanism, on the other hand, is in fact a creative process and bears many similarities to writing a novel.

    36. Re:Excuse me? by baka_boy · · Score: 3, Insightful

      Really, formal methods are just another way of tapping into a developer's existing knowledge of the problem, and re-stating it in a way the computer can understand. The difference between "formal" and "informal" styles of programming is mostly that formal methods offer languages, tools, and techniques for modeling a program as a mathematical system, and then analyzing that model to look for obvious problems.

      Every time you use a compiler, you're already half way to the side of formal methods -- letting the computer analyze and make assumptions about your code, in exchange for not having to write assembly routines yourself every time. Similarly, if you work in a strongly-typed language like C, C++, or Java, you're relying on a very "formal" means of error-correction: type checking.

      That doesn't change the fact that programming is a creative process, simply because the concepts being thrown around by a "formal methods" user are more functional. Personally, I think that good math is every bit as aesthetically pleasing and creative as a great novel, and have personally met a number of quite talented mathematicians who were among the most creative, individualistic people I know.

    37. Re:Excuse me? by Joel+Ironstone · · Score: 1

      This whole thread sounds like a bunch of people trying their best to justify themselves.
      Programming is harder than surgery
      Programming is harder than writing a novel...

      Sheesh

      Most of the work in programming should come before any coding is done anyways. Design your algorithms, design your module actions and interactions and then fill in the blanks.

      For important software (that beign used by say a nuclear reactor safety feature), the coding should be like 10% of the work.

    38. Re:Excuse me? by baka_boy · · Score: 3, Insightful

      Ugh...flourescent lights...truly the bane of the working class. I find that I'm at least twice as productive when I'm working in good, natural lighting, or at least under decent full-spectrum bulbs.

      Strangely enough, I'm also usually much happier working on a full-size laptop (often actually in my lap, no less!) than a desktop machine; something about the ability to shift posture regularly, and have the computer move with me, does me more good than any number of ergonomic keyboards and back-supporting-chairs.

    39. Re:Excuse me? by phossie · · Score: 1

      i hate to say it, and not to invalidate anything you're saying about programming, but your comment demonstrates a lack of understanding of the medical profession in general, not just surgery.

      there are reasons for the constant stream of development of new techniques and devices in surgery, and there are reasons some surgeons merely make lots of money while others are called "great"... much like programming.

      you've got basic skills, then you've got the ability to react the right way, with millisecond timing, in a life-or-death situation that you couldn't see coming, and probably haven't seen before... all this in an active, semi-chaotic system. don't put down medicine with regard to programming - it's a different field, with different requirements, and there aren't that many people with the breadth of ability and education to function well in both.

      --

      [|]
    40. Re:Excuse me? by Anonymous Coward · · Score: 0

      its just that not very many people have the attention span to learn vb so in depth..

      Or it could just be the annoying syntax.

    41. Re:Excuse me? by kbonin · · Score: 2

      I wasn't trying to disparage the medical profession...

      But the fact remains that as a general rule, the practice of medicine is more about remembering which procedures to apply in response to the presented situation. There are even licensing and liability constraints that prevent significant variation from said 'established practice' without significant paperwork.

      Expressed in terms of expert system design, the practice of medicine involves a mostly quantatative analysis resulting in the identification of a very small list of procedures or treatements. While there is a reasonable degree of art in the mechanics of surgical procedure, the rate of innovation is driven more from the creation of drugs and tools, than by the identification of new surgical methodologies. First principles are applied in the labratory, not the surgical center.

      On the other hand, programming is an art where any given problem may be addressed by a nearly infinite number of approaches, of which a very large percentage are feasable. The decision tree for software design is many orders of magnitude larger, with a correspondingly larger degree of possible application of creative thought.

      Again, I'm not disparaging the medical profession, I just think that as a general rule, creativity has more room for application in the practice of programming than in the practice of medicine.

      I do agree that it is a different realm, and I do understand what you mean - I've been a first responder in a few severe traumas in the past, including one in which radical and creative intervention was required to keep at least one of the people alive until the helicopter arrived...

    42. Re:Excuse me? by Anonymous Coward · · Score: 0

      Coding is very much like writing a novel; in some ways it can be very similar to the creative process. I've had good days where I can write and have it working by the end of the day, and other days where I don't feel like coding and.. well, I end up fragging on UT all day because of that feeling.

    43. Re:Excuse me? by NorthDude · · Score: 0

      Yeah, like where I work now... We are 6 programmers in a 12 by 10 foot room. With the entrance door of the office right in front of me and a big window facing south in my back. Try to be productive in those condition! I do my best, by I know I will never achieve my real true 110% there, it's just to disturbing. Kind of trying to study in the living room with a Canadian-Boston game going on, no much concentration!

      --


      I'd rather be sailing...
    44. Re:Excuse me? by dvdeug · · Score: 2

      The reason why there are more people writing code for a living than novels is two fold. First, the market demands more man-hours worth of software than it does novels, and pays better for software than novels.
      Whether it's simpler is a complex question; almost everyone who can code can write a novel, and many novel authors could code after a few lessons. The question is whether they could do a decent job at it. I would guess there's a lot more crap code than crap writing on the market, because of the above mentioned marketplaces, and the fact writing gets checked better than code.

    45. Re:Excuse me? by GunFodder · · Score: 2

      I get from your comment that a worker should just put up with whatever equipment the company gives them and learn to like it. Well, that doesn't really leave any room for what an employee likes or dislikes.

      The best coders are much more productive than the worst coders. If the best coders know they are the best then they will choose to work for the company that best satisfies their needs. Suddenly employee happiness is a major part of the productivity equation.

      And even the worst coders do better work when they are happy than when they aren't. If I am a cheapskate employer and I give everyone 486s and 15" monitors for development then development will be slow because compiles take a long time and my coders can't see enough code at a time to make good decisions. And my turnover will be high because coders will become dissatisfied over time and quit.

    46. Re:Excuse me? by Anonymous Coward · · Score: 0

      I wish you worked for me. I'd love to fire you for taking a week off from work because you didn't feel like it and couldn't come up with a reason.

    47. Re:Excuse me? by Egonis · · Score: 1

      How is coding unlike writing a novel?

      - Both require structure
      - Both require alot of thought to prepare

      In my opinion, novelwriting and coding are essentially the same, as far as mindset is concerned; which, you learn in time as a seasoned programmer.

      There are opportune times for clear thought processes, and there are bad times.
      There is never a 'it isn't coming to me' time... atleast not in my experience, with myself or ANY programmer I have ever worked with.

    48. Re:Excuse me? by Anonymous Coward · · Score: 0

      I forget my passowrd. Oh well.
      I couldn't agree more with this:

      "And even the worst coders do better work when they are happy than when they aren't. If I am a cheapskate employer and I give everyone 486s and 15" monitors for development then development will be slow because compiles take a long time and my coders can't see enough code at a time to make good decisions. And my turnover will be high because coders will become dissatisfied over time and quit. "
      I may only be a student but at school I am forced to code on a 350 Mhz Gateway(which I swear somehow run slower than my 60Mhz) with a 15" monitor, where at home I code on an AMD XP 2000+, with a 17" monitor. The machine is all the difference. When you are used to an insta-compile a 30-60 second one can kill your patience and thought process, that alone takes me out of the zone.
      I tend to compile about once every 60 lines of code on those machines where as here I do it about every 5 or 10. It degrades the coding a lot because if you write 60 lines of code then the machine points out that something won't work. and you can't debug it you are fucked, you may have to rewrite all 60. And from expirience, that sucks.

    49. Re:Excuse me? by rnicey · · Score: 1

      I get from your comment that a worker should just put up with whatever equipment the company gives them and learn to like it. Well, that doesn't really leave any room for what an employee likes or dislikes.

      Err no. I'm saying that it's unacceptable to phone up in the morning claiming a sicky because your karma is not aligned or something.

      The best coders are much more productive than the worst coders. If the best coders know they are the best then they will choose to work for the company that best satisfies their needs. Suddenly employee happiness is a major part of the productivity equation.

      I work for a company that bills for a lot of porn and has a lot of fun. Work for us and we'll get you laid. Trouble is most people can't program with double Ds in their face, so it's not always the 'perks' which aid productivity.

      To cut a sarcastic post short, equipment and surroundings should be at least acceptable in any job. After that the mental prepardness of the employee is their own responsibility.

    50. Re:Excuse me? by Anonymous Coward · · Score: 0

      I'm right there with you on that. Sounds like a bunch of primadonnas to me. In the real world, stuff breaks, stuff needs fixing, sometimes you have time to bash out some neat stuff.

      If someone thinks that combining 50 to 100 statements and some numbers requires some sort of meditative state that "brings out a creative muse" in them, maybe they should have taken more literature classes.

      If you can't solve a problem while being distracted, maybe a different career might be in order.

    51. Re:Excuse me? by letxa2000 · · Score: 2
      I wish you worked for me. I'd love to fire you for taking a week off from work because you didn't feel like it and couldn't come up with a reason.

      Well, you'd be the first. I've never been fired, layed-off, or downsized. Ever.

      I've also never taken a week off because I didn't "feel like it." I don't know where you came up with that response. Granted, you posted as AC so I guess that pretty much explains it.

    52. Re:Excuse me? by Anonymous Coward · · Score: 0

      >> When working with other people, professionals find a way to just do it.

      Don't "just do it", my friend. This is not THE RIGHT THING (TM). Either do it with passion or skip it.

    53. Re:Excuse me? by Cenam · · Score: 0

      i actually like the syntax, it keeps you from pressing more than one key at a time most the time, and therefore helps you type faster, it is also a much nicer format after you write a few addins to mod the ide.

      --

      The Truth: There is no string:)
    54. Re:Excuse me? by jsprat · · Score: 1
      The question is whether they could do a decent job at it.


      Bingo! Any profession worth doing is worth doing well.

    55. Re:Excuse me? by ebyrob · · Score: 2

      Damn, they're premadonna's. I should have guessed

      After spending only 3 days in hack mode the last 12 months, I was hoping I was just in the wrong career or something. That's what you get for hoping!

      Back to the read, read, read, fix wheel of despair for me!

    56. Re:Excuse me? by Artful+Codger · · Score: 1

      >Hands up everyone sitting in a beautiful office

      (HAND UP) Yeah I've become adept at closing the blinds in the afternoon, but my 18th floor view of the Toronto harbour is definitely a perq of the job.

      Hands up those who enjoy working in a sea of putty-coloured cubicles in some windowless IT veal pen. Ewwwww.

      --

      ... plans that either come to naught, or half a page of scribbled lines...
    57. Re:Excuse me? by gotak · · Score: 1

      That an interesting point of view.

      I think most of us know the feeling cramming the night before the exam. When alot is at stake it's suddently very easy to concentrate as long as you don't freak out.

    58. Re:Excuse me? by Anonymous Coward · · Score: 0

      Just like problem solving can be defined by a fix set of rules, haha.

    59. Re:Excuse me? by mshiltonj · · Score: 1

      Sometimes coffee helps, but for motivation doesn't last long, and you crash hard after it wears off.

      That's when I switch to Mountain Dew ;)

    60. Re:Excuse me? by Anonymous Coward · · Score: 0

      It sort of is and sort of isn't like writing a novel.

      It is like writing a novel in the sense that sometimes you can get things done very efficiently and sometimes you can't.

      It is different from writing a novel in that even in a state of mind when you can't work efficiently, you can force yourself to get things done and the results aren't necessarily useless crap.

      When I'm not in the right state of mind, I can waste my working time reading slashdot or whatever, because I know that when I'm in the mood, I'm very efficient (and, on average, far more efficient than most programmers). My boss doesn't have time to worry about what I spend each hour doing; it's much more useful for him to just make sure that I get things done on time (I'm usually the only one on projects who doesn't miss deadlines). My own conscience is a good enough meter of getting enough useful stuff done to be a much better resource for the company than most other employees.

    61. Re:Excuse me? by Anonymous Coward · · Score: 0

      >> And tell me, do they insist on using Linux and other Open Source tools?

      Hmmm... either a troll or a moron. Denigrating OS tools as a class is as stupid as denigrating M$VS as a class of tools. In generaly anyone who INSISTS on using any particular set of tools is either too green or too lazy and stupid to look around.

      >>Sounds like the programmers we have here, it's our VB programmers that really get the work done.

      Depends on what you define as work. Personally, I'd go friggin' nuts if my main job was to sit down and write little apps to solve somebody elses well defined problem -- I'm at a large institution and most of the IT jobs here are like this. Fortunately, my job is to write apps and algs that help understand problems that are fundamentally poorly understood or just plain hard-- it's a research support gig. I thank everyday that I don't have a code monkey job. By the way, I do largely use *nix/Linux and OS tools because it meets my needs. That's because it's what I know the tools inside and out and it makes cross porting to big iron clusters relatively easy.

      >>Looking for REAL professionals? Hire MCSE's!

      See previous section. REAL professional code monkeys sure get MCSE's. BTW, there's nothing wrong with being a M$-based code monkey. I know, however, if I tried doing that I'd burn out quickly due to boredom.

    62. Re:Excuse me? by Anonymous Coward · · Score: 0

      >>>large objects sitting in the window to avoid being blinded at 3pm sharp.

      Nope. 845 am on the dot -- but it varies seasonally.

    63. Re:Excuse me? by botik32 · · Score: 1
      you can do alot of powerful stuff in vb, and when compiled it can be made to work as fast as a well written c program or faster

      Yeah, but inheritance is not one of them : ((((

    64. Re:Excuse me? by phossie · · Score: 1

      "The decision tree for software design is many orders of magnitude larger"

      well put, thanks... point taken. :-)

      --

      [|]
    65. Re:Excuse me? by broonie · · Score: 1

      The basic actions involved in surgery are extremely precise - but the same could be said of programming. Knowing which actions to perform and being able to cope when things go wrong would seem to be areas where there is much more room for lateral thinking.

    66. Re:Excuse me? by Anonymous Coward · · Score: 0
      Programming batch file processing scripts requires little creativity. Designing realtime attitude control systems requires grasp of many mechanical, electronic, control-theory, and scientifc fields beyond programming, and creativity to figure out how to acheive your goals. Bleeding edge 3d game engines require obscene amounts of creative design skills encompassing and correlating traditional CS, as well as physics, lighting, perceptual psychology, game theory, and much, much more.

      Hey, but I've been writing bleeding edge 3d game engines using nothing but batch scripts. Let me tell you, that takes some degree of creativity!

    67. Re:Excuse me? by Cenam · · Score: 0

      i take it you are not very familiar with a little thing called api?

      --

      The Truth: There is no string:)
  3. Timing by furchin · · Score: 1

    Nothing consistently gets me into a programming mood. Sometimes I want to code, sometimes I don't. I think the best way in a corporate environment to encourage people to code is to give them the freedom to decide when to code. Of course, the project needs to be done by a certain date, but perhaps this week the coders want to work from 2am to 6am, and that's it. Don't make them come in during regular business hours if they don't want to. Maybe next week they'll code from 6am to 6pm, and make up the time they lost this week. Also, if you absolutely must have coders around during the day, be lenient about when they can arrive and leave, and if they don't feel like coding, allow them some distractions. Buy a couple arcade machines or allow counter strike games on the LAN. For me, if I don't feel like working, I won't work. If I have to sit around somewhere and don't feel like working, I don't want to be bored.

    1. Re:Timing by zaffir · · Score: 1

      That's exactly how it is for me. I love to code, so when i don't feel like doing it, i really don't feel like doing it. But if i get a new idea, or just feel like being creative (as opposed to blowing someone to bits), i get into "the zone." Of course, it takes one whiny person to get me out, but if i can enjoy peace and quiet, i'm gone for hours.

      --
      "Upon attaching the waterblock to my penis, I began to notice that I know nothing about computers." -- JRockway
    2. Re:Timing by Anonymous Coward · · Score: 0

      You're kidding me right? The rest of us live in the real world where the dot com bubble has burst and the video games were auctioned after the company went broke (probably because the coders were playing counterstrike all day long instead of doing anything). I get so sick of prima donna attitudes like that, it makes the rest of us (who are willing to work a normal work day and be productive) look bad.

    3. Re:Timing by jimjamjoh · · Score: 1
      the "willing to work a normal workday and be productive" mentality is far from when the real genius coding takes place...

      the post asks about a programming "zone," not a willingness to program...the fundimental difference is that, when you're in said zone, you're likely to be that much more productive/creative/brilliant than if you're just munging your brain away at the keyboard, waiting for 5 so you can slide down the brontosaurus's back and scurry on home

      coders in a programming "zone" don't give one hell about time or any other external stimuli...if you're worried about your normal workday (or anything else, for that matter), then you're being a half-assed programmer.

    4. Re:Timing by letxa2000 · · Score: 2
      You're kidding me right? The rest of us live in the real world where the dot com bubble has burst and the video games were auctioned after the company went broke (probably because the coders were playing counterstrike all day long instead of doing anything). I get so sick of prima donna attitudes like that, it makes the rest of us (who are willing to work a normal work day and be productive) look bad.

      Why should he be kidding?

      Brilliance and inspiration are both required in programming, neither of which were created nor destroyed by the "dot com bubble." We're not accountants. What we do requires creativity AND logic and not all days are created equal. I've spent an entire day on a problem with no particular success only to come in fresh the next morning, enter "the zone," and knock the thing out in 30 minutes.

      If you truly can produce brilliant and creative code every hour you are at work every day, kudos to you.

      More likely than not, however, I suspect that the "prima donna" gets more done in his one "zone day" then you do all week. Don't get pissed because he can work one day and play Doom for 4 days and still produce more and better code than you.

    5. Re:Timing by Anonymous Coward · · Score: 0

      Hey never mind that people pay you to get a job done, and you have to be present to communicate with your project leads and your coworkers. Everyone would love to make their own schedule; unfortunately, the world doesn't work this way. I will never understand why programmers feel that their jobs are any different from the rest of the world's jobs. Everyone feels like the man is placing restrictions on their creativity (I know I do), but sometimes you just need to shut your f*cking mouth, tell your coworkers to shut their cakeholes and work through the boredom. When you find a client that pays you to do only what you want to do and when you want to do it, then you can talk to me about this freedom your employer should give you.

      This of course is IMHO

    6. Re:Timing by Anonymous Coward · · Score: 0

      Attitudes like this really annoy me. If a bricklayer said he didn't feel like laying bricks this week his manager would sack him. If he asked for a few hours off in the middle of the day to play football his manager would sack him.

      Programming is a science - not an art - by and large. Yes, there is artistic involvement, but continuing my example... There is artistic involvement when laying bricks but you don't call a bricklayer an artist - it's not their primary role.

      When programming for yourself - follow your own rules. When programming for a company which is paying you a salary to work like all of it's other employers - toe the line and work when you are being paid to work.

      If you can work when told you can be paid an excessive amount of money. I'm paid to produce results in very limited time frames and that's what I do. I wouldn't dare say "I don't feel like coding today - sorry"

    7. Re:Timing by furchin · · Score: 1

      It's great that you can work starting at 8, and stop at 5. Its just not the way I work. There is a problem with your brick analogy. A bricklayer needs to work during the daytime, for safety's sake, so he can see what he is doing. A programmer sitting in a building can work at day or at night equally well. Moreover, I think that bricklaying isn't quite as skilled a profession as programming. If you had a master brick layer who could work like mad some weeks and do the work of five men that week, I'm pretty sure that if he wasn't in the brick-laying zone one week, he would still have his job.

    8. Re:Timing by Anonymous Coward · · Score: 0
      For me, if I don't feel like working, I won't work. If I have to sit around somewhere and don't feel like working, I don't want to be bored.
      Where did you work again? I'm thinking of applying for a job. Your job!
    9. Re:Timing by Zinch · · Score: 1

      Absoloutely. A lot of people assume that the dot-com bubble burst has everything to do with lazy programmers who were too busy playing games and not busy enough programming. If this were the case, all the companies that went bust would have had crappy applications. This isn't true - there are lots of good hardware/software companies with hard working people who went bust because of financial and not technical reasons. The best software in the world won't make you any money with a bad business plan.

    10. Re:Timing by Anonymous Coward · · Score: 0

      Err, the "prima donna" attitudes should make you look better in comparison because you should be achieving better results if what you claim is true.

      However, in my experience, the best programmers are 10x more productive than "normal" ones, and they generally do their best work at strange times.

      I work normal hours myself, though, but I often spend the day at the office attending meetings, reading slashdot etc. and write code in the evening after I get home.

    11. Re:Timing by furchin · · Score: 1

      If you're really interested in where I work, why don't you email me? I don't think you'd be eligible for my position, however, so don't get your hopes up.

  4. Here's how I do it. by ciryon · · Score: 5, Informative

    Optimal condition is:

    * Rather dark and gloomy room
    * Big monitor at high resolution and many xterms prepared
    * Huge MP3 playlist set to random
    * One big cup of coffee (machine close by)
    * Unlimited supply of colas in the fridge

    I'm at optimal performance just when I normally should go home from work. Or when I work home, just before I really should go to bed.

    Ciryon

    1. Re:Here's how I do it. by shades66 · · Score: 1

      I assume you mean many xterms prepared 'on each of the desktops!'

      Apart from that I am just the same. (It's just really annoying and the end of the day when you've just got in the mood to code and they want to shut the office.).

      Mark

      --
      ---- There are 10 types of people in the world. Those that understand binary and those that don't
    2. Re:Here's how I do it. by Bouncings · · Score: 5, Funny

      One more thing: Add the following entry in /etc/hosts

      127.0.0.1 slashdot.org

      --
      -- Ken Kinder ken@_nospam_kenkinder.com http://kenkinder.com/
    3. Re:Here's how I do it. by Anonymous Coward · · Score: 0

      I'm at optimal performance just when I normally should go home from work.

      I couldn't agree more. Especially on days when i've wasted a couple hours surfing and taking a two and a half hour lunch.
      At about 4:30 i seriously start working, next thing I know its 8pm and the wife is calling my cell asking where the hell I'm at.
      I tell her I'm cheating on her, but she's like "yeah right, you're coding still"
      Since I'm in the zone I reply "Ok, well I was just on my way out the door" and I proceed work for another 45 minutes or so.

      I really got to start coming into work later. Maybe that way I can do 8 hours instead of 12.

    4. Re:Here's how I do it. by dfiguero · · Score: 1

      I hear you bro'!

      --
      My penguin ate my sig
    5. Re:Here's how I do it. by Tack · · Score: 5, Interesting
      It's interesting to see how much in common a lot of people have, and also how widly varying it can be. Here's what works for me:
      • Most importantly, the problem has to be interesting to me. I can't enter The Zone unless I truly am determined to solve the problem. Sometimes even boring problems can be made interesting once you spend a couple hours tackling them, but typically you'll get better results if the problem is genuinely interesting. (This is why the scratch-the-itch motivation of free software works so well.)
      • I don't hack on coffee; I hack on diet coke. Lots of it.
      • My musical mood changes from hour to hour, so I don't ordinarily set up playlists for more than 45-75 minutes, but I do normally listen to music the whole time I'm in the zone.
      • Agreed: big monitor and many terminal windows are a must. If you can't have at least 6 terms on screen at once, you'll get distracted by toggling between virtual desktops. Sometimes I have up to 12 windows on screen.
      • You just need a fast computer. No one wants to wait long for compiling simple changes.
      • Lighting for me has to be dim, but not dark. I prefer a single, tungsten 60W bulb with a lamp shade on my desk. It provides a nice, cozy warm light and offsets the light from my monitor to prevent eye strain.
      • Everyone has certain things they do when they're thinking about a solution to a particular tough problem (or sub-problem). Maybe you lie down for a few minutes; maybe you pace around the room; maybe you go to the gym and work out. Me? I take a long, hot shower. This yields very excellent results for me. And I have come up with some pretty damn clever solutions under the nearly-scaulding hot water. :)

      How long does this last? This often depends on a few things also:

      • External motivation: do I have others around motivating me? I don't mean a boss squawking at me about deadlines, but rather other hackers I can bounce ideas off of, to help keep the problem into perspective, and help keep me interested. Or, am I getting paid?
      • Running into roadblocks: when the hacking goes smooth and I don't come across any major bugs or roadblocks, I can hack for weeks. But if I hit a serious bug that even a hot shower can't solve, a lot of times I wind up putting the project on the back burner. (Of course, if this is a project that I'm getting paid to do, the motivation keeps me going).
      • Distractions: if I am without uninitiated distractions, I can hack for much longer periods of time. Some distractions are okay, as long as I am the one who initiated them. Sometimes I'll stop hacking to go to the movies, or go out to dinner with some friends. Sure, when I do that, I'm typically mentally detached from what I'm doing, but I usually force myself to have fun. Then when I return to the problem, I often have a fresh perspective that helps me continue.

      When am in The Zone, it is a curse. I can't think of anything else but what I'm hacking on. (This is a problem when I am hacking on a personal project and go to work.) I usually just have to ride it out, keep hacking, until something happens that I put the project aside for a while, and then I usually repeat the whole process again in the future some time.

      So that's how it works for me. :)

      Jason.

    6. Re:Here's how I do it. by subsimian · · Score: 0

      This is why a lot of coders are fat, wear glasses, and end up dead at 45.

    7. Re:Here's how I do it. by zpengo · · Score: 2
      My optimal programming environment:
      • Laptop on the beach
      • Tall glass of lemonade.
      • Attractive young lady who doesn't speak English rubbing my feet
      --


      Got Rhinos?
    8. Re:Here's how I do it. by zpengo · · Score: 2
      One more thing: Add the following entry in /etc/hosts

      C'mon, get motivated!

      127.0.0.1 f*ckedcompany.com

      --


      Got Rhinos?
    9. Re:Here's how I do it. by emodgod · · Score: 1

      keep the stupid users away!!!!!

    10. Re:Here's how I do it. by tot · · Score: 1
      Better yet, two screens attached to your workstation. I have been using this configuration for the last ten years, and I find it difficult to work on a single screen. Left for the documentation/browser/mail whatever is needed, and the right one for the emacs, terminals etc for the actual work.

      I don't mind the light, I prefer good sunshine, but during the evening/night, some small desktop lamp is the most I can have, no overhead lights.

      You are wrong about Diet Coke. Coffee, Evian and cigarettes are mandatory, otherwise nothing works :-) Teemu

    11. Re:Here's how I do it. by agm · · Score: 1

      I highly recommend having a dual-head display for developing. My productivity has increased quite a bit since adding a second monitor.

      This does partly depend on what development tools you use, some tools favour multiple monitors more than others.

    12. Re:Here's how I do it. by Hard_Code · · Score: 1, Offtopic

      Uh, wouldn't ANWR give us only 6 months of oil? Ok, let's say it gives us a whole year of oil. We'll be SOL after that, so what exactly would it accomplish? Wouldn't investment in alternative (preferably renewable) energy sources be a better idea?

      --

      It's 10 PM. Do you know if you're un-American?
    13. Re:Here's how I do it. by Anonymous Coward · · Score: 0

      I have to have people asleep to get in my zone, or at least doing something that's quiet. If there's no one in the house, I can't get in the zone for some reason, I have no idea why, it's weird. People sleeping, or knowing that someone is around allows me to get in the zone. IF they annoy me though, or snap me out of it, they know I'll hurt them, so they stear clear.

      Also, music REALLY helps me get in the zone. I just shove all my songs on a play list and away I go, but for those times where you have to really concentrate and work something out I usually go upstairs and get something to eat or drink. By the time I come downstairs I usually have the next 2 hours of code worked out in my head, and then away I go.

      I have to have the lights on as well... I hate coding in the dark.. I also have to have my ICQ on as well, whenever I'm stuck on something, or finish a little code burst, I like just pressing a button and having a small few second distraction before I get back to it.

      Longest single-sitting coding session : 7 hours (binary triangle tree engine).

    14. Re:Here's how I do it. by cheese_wallet · · Score: 1

      That's the biggest load of bullshit I've read all day.

    15. Re:Here's how I do it. by Requiem · · Score: 1

      Personally, I find that I have to fit music to the task at hand. My pet project for the last year has been writing a fairly complex fantasy roguelike in C (mostly to solidify my knowledge of C...if I was using the best language for the job, I'd probably use Eiffel or Java).

      Anyhow, I find that for this, fantasy- or dark- themed music works best, and gets me 'in the mood', so to speak. Try Johan De Meij (Lord of the Rings), Colin McPhee (Concerto for Wind Orchestra), and all the heroic romantic stuff - Wagner, Mahler (sp), Bruckner, etc.

      Just a thought.

    16. Re:Here's how I do it. by Anonymous Coward · · Score: 0

      Phillips has been pumping oil from alaska since 1952, at a rate of about 400,000 barrels per day. That figure alone comes out to about 18% of america's total usage (right now anyway).

      You can rely on moronic congressmen to provide you with information.

      Lieberman has been saying that even if we do produce more oil from alaska, it won't affect the world market price. Good god, what does the world market have to do with anything? We're talking about the US. We aren't planning on drilling in alaska for exports! We're doing it to gain independence from the world market.

      It hurts just listening to crap from those people. It is even more painful to realize how many people believe it.

    17. Re:Here's how I do it. by Anonymous Coward · · Score: 1, Insightful

      And for me, a big bag of weed!

    18. Re:Here's how I do it. by jtakker · · Score: 1

      Basically sensory deprivatoin: Total silence Total darkness (except for a small desk lamp) Full (but not too full) stomach No food, only water close by No music A hard chair No window And financial or deadline pressure works great. I have trouble concentrating/staying awake....

      --
      I have no sense of Irony.
    19. Re:Here's how I do it. by Anonymous Coward · · Score: 0

      Hell !

      A hot shower does wonders for my thought process also. I seem to be able to formulate and create programming strategy while under the water.

      tom

    20. Re:Here's how I do it. by Pentagram · · Score: 2

      A shower is a lot of people's choice for when they're trying to solve a hard problem (myself included.) My theory as to why it works is that it a) makes you more relaxed, allowing you a better interface to your subconscious, and b) the "white noise" of the water acts as a random number seed for your brain.

    21. Re:Here's how I do it. by JordanH · · Score: 3, Funny
      • One more thing: Add the following entry in /etc/hosts

        127.0.0.1 slashdot.org

      This particular piece of advice is not recommended if you are an employee of OSDN working on the production Slashdot machines.

  5. Liquid Crack.... by SuperCal · · Score: 1

    I need liquid crack to get me in the Zone... BTW Liquid Crack is Diet Coke. I gave it that name when I tried to quit. When you first try to quit its easy, but an hour later, the beast is on your back and you give in, weeker then befor. Now I just feed the beast and try to keep it from growing...

    --
    Business News and Resources: www.usasource.net
    1. Re:Liquid Crack.... by fmileto · · Score: 1

      this is so TRUE!!!

    2. Re:Liquid Crack.... by bleckywelcky · · Score: 1


      Blllleeehhhh!! Ewww, sick! Diet coke, mmmrpphh. Diet anything is so nasty. I swear, people always tell you, oh it doesn't taste any different at all, or it at least tastes better. I've tasted diet a couple times here and there, and all I can say is that stuff prolly tastes worse than the bottom of a hobo's foot. Diet anything is nasty. Now, regular stuff is good. Pretty much regular anything of whatever your favorite flavor will do, but I don't seem to notice any of the addiction problems you talk of. If I have a CS project due, I'll stay going for several hours of pure programming, chugging *insert non-Diet flavor here* and then just stop after I'm done. I won't have another pop to drink for a couple weeks even, until the next project comes up that is. And even then, I only chug em if they are avilable. If they aren't, I'l just go for some juice or something, or even water if there's nothing else or I am feeling like going for the healthy stuff. :)

    3. Re:Liquid Crack.... by iocat · · Score: 1

      You mention a CS project, implying you are in school. You opinions vis-a-vis diet vs. non-diet cola will probably change in a few years as your metabolism slows. An all night session fueled by diet coke leaves you jittery, done, and happy. An all night session fueld by classic coke leaves you jittery, done, and feeling bloated. Does diet coke taste like crap? Of course, but a) you get used to it, b) it has no calories, and c) it is significantly "lighter" than straight coke, making it ideal for aging (I'm 30! I remember before the Simpsons!) hackers.

      --

      Dude, I think I can see my house from here.

    4. Re:Liquid Crack.... by NorthDude · · Score: 0

      I much prefer diet, low-in-fat girls. Some other people don't, it's only a matter of taste (I feel a -1 off-topic coming... again... I'll never learn!)

      --


      I'd rather be sailing...
    5. Re:Liquid Crack.... by bleckywelcky · · Score: 1


      Most of the time the projects are done late at night, in a room that I share with no one, with a bed near by as well as other comforts. Feeling bloated in these situations doesn't bother me. And when I say chug, I don't mean like 20 or 30 of em. I'm talking maybe 5 or 6 at most. Sure, I may get bloated as a result of whatever else I'm feeding myself at the time, but I'll just head straight to sleeping afterwards, so it doesn't bother me. But if all I do is drink a couple cans, then I'll be alright. I guess if I was addicted to pop/soda, then I could see your point, but I really only drink the stuff once in a great while - not always carrying around a can or bottle like you see some people doing.

    6. Re:Liquid Crack.... by Anonymous Coward · · Score: 0

      diet pepsi is MUCH better.
      everyone always says, "Hey, you are so skinny, you don't need diet pepsi!" and i say "EXACTLY".
      I actually believe diet pepsi has NEGATIVE calories, it's truely amazing.

      Anyway, doritos and diet pepsi has always served me well. I also noticed I only really enter the zone overnight.

      -xmod2@toolazytolookuppassword.com

    7. Re:Liquid Crack.... by Anonymous Coward · · Score: 0

      Actually, I'm from the south (Atlanta)... Coke, therefore, has been bred into me. In fact, I no longer use geographical location to designate which states are in the south. I use a soft drink consumption formula. If the State's residents consume more Coke then Pepsi, then that state is in the south. If how ever they drink more Pepsi it is not the south. For example: Florida, under the old system would be considered part of the south. Under my new and improved system, Florida is no longer the south (I'm sorry to the citizens of the Panhandle as I understand that you do in fact drink more Coke there, but alas we cannot split the state.)

  6. Comforts of home by bdigit · · Score: 2, Funny

    I personally find programming more comforting in my house. I can sit in my own chair and lean back and prop my feet up on my desk and not deal with a chair that keeps my back perfectly straight for 10 hours at a time. I have my computer setup the way I want it with no admin restrictions set forth on me. You dont have to worry when you accidentally click that goatse.cx link that everyone will look at your monitor. Also nothing beats shitting in your own toilet without worrying if your boss is in the stall next to you when you have a case of the runs.

    1. Re:Comforts of home by dimator · · Score: 2

      I love taking shits while on the clock. If you do it often enough, you can honestly say that you took a shit to pay for all your income taxes.

      --
      python -c "x='python -c %sx=%s; print x%%(chr(34),repr(x),chr(34))%s'; print x%(chr(34),repr(x),chr(34))"
    2. Re:Comforts of home by GunFodder · · Score: 1

      Ditto, although shitting on the clock is even better if you have a mini-game system (I only have a Palm but it works).

    3. Re:Comforts of home by Anonymous Coward · · Score: 0

      Ditto, although shitting on the clock is even better if you have a mini-game system (I only have a Palm but it works).

      If you're going to spank the monkey, do it on your own time. (Wait - maybe you have to do it at work - I bet it's hard to get dates with only a "mini system")

    4. Re:Comforts of home by Anonymous Coward · · Score: 0

      I dunno about comforts of home, but a good, clean, comforatble bathroom is really important to me. SOunds weird, but I have solved many a problem on the can.

    5. Re:Comforts of home by Eil · · Score: 2


      Good god, man, your truthful perspective sickens me.

  7. Environment doesn't matter by SuperHighImpact · · Score: 2, Insightful

    I think your working environment is less important than the right state of mind. If I like my work, I can focus on it in the middle of an elementary school playground. I have a friend who codes from home; whenever I call him it sounds like he's working in a jungle. I ask him what the noise is and he asks me what I'm talking about. His kids are screaming and crying all over the place.

    Just like great athletes, conditions don't matter. They get in the zone and it's game over. Anyone see Steve Yzerman in the Red Wings v Canucks game last night? He's hobbling around on one leg making everyone else look like grade schoolers. Amazing

    --
    sHi
    1. Re:Environment doesn't matter by NormalVisual · · Score: 2, Insightful

      But Steve Yzerman wasn't having his game interrupted 20 times per day with phone calls from customers bitching about features that are broken because management felt it better to shove the product out the door instead of spending the up-front time to get it right, and the meetings that follow that mostly consist of management hand-wringing and complaining that the product has too many bugs. Forcing your engineers to take regular customer service calls that would not be necessary if they had been given the proper time to write the code is one sure way to kill productivity.

      --
      Please stand clear of the doors, por favor mantenganse alejado de las puertas
    2. Re:Environment doesn't matter by Ian_Bailey · · Score: 1

      No, Steve Yzerman had to ignore the sharp pains coming from his knee as Vancouver refused to give up and forcing him to keep pushing to keep (and later extend) the lead. This is after the fans were no doubt booing and hissing at him (not to mention all the !@#$ing sports-interviewers asking what went wrong) after they had lost the past two games on their home ice, no doubt complaining that they weren't doing their job right, which they arguably might not have been able to do properly anyways at the time, and he probably had to listen to the coaches complaining at some of the team members (perhaps asking Yzerman to try a bit harder, work out those problems).

      Do you think that Yzerman can just say, "I need enough time to heal me knee, then I can do it properly"? No. He has to perform at all costs.

      Interesting how your comparasion falls apart.

      As an aside though, I think he probably has one of the best jobs, probably a big productive gain! :-)

  8. It's all about the chair.. by antis0c · · Score: 4, Interesting

    I can't sit down and program for hours unless I have a good chair.. I have to feel as if I'm sitting on nothing.. Uncomfortable pressure points will surely annoy me the entire time I'm attempting to program. It's the key to getting into the zone entirely.

    Next to that is a good mouse (if you're doing any GUI work or Graphics with the program) and Keyboard that has that great feel. It's different for everyone, I like my keyboards to click where I can feel I've hit a key. I find I have less typos that way.

    And finally, ample supply of drinks and snacks readily available within an arms reach, otherwise I'm forced to break my concentration to get up and to refill my drink or snack. Some good music helps too, with headphones if you aren't alone, it helps you tune out the rest of the world around you.

    --

    ..There's a-dooin's a-transpirin'
    1. Re:It's all about the chair.. by phossie · · Score: 1

      "And finally, ample supply of drinks and snacks readily available within an arms reach, otherwise I'm forced to break my concentration to get up and to refill my drink or snack."

      i find i'm most productive when i am compulsive about getting up frequently: to prepare some food, take a shit, walk around the block, take a shower, stretch, clean house, etc. i work about half the time, but i get twice as much done as i would if i tried to work the whole time. different kinds of thinking lead me down more option-paths than i would normally explore staring at the CRT. if i feel like i'm getting something done, i'm more likely to get something done. if i'm bored, watch out.

      --

      [|]
  9. all I need... by L-Wave · · Score: 1

    all I need is some caffiene (coffee or mt.dew depending upon the temperature of the room), and headphones and loud music (disturbed is the best so far), this way I can listen to the music, focus on coding, and avoid distractions. This usually keeps me in "the zone" until either 1) The caffiene wears off, or 2) I have to pee.

    --
    I SURVIVED THE GREAT SLASHDOT BLACKOUT OF 2002!
    1. Re:all I need... by Dave_bsr · · Score: 1

      Beautiful sig. i always have to pee after a long programming session, i have a bad habit of waiting until deadline and coding like a madman. its for school...but i need to learn to start sooner.

      Disturbed....hmmm....no coffee though, yuck.

      --


      Who is this Anonymous Coward character, how does he post so much, and why is he always such a whore?
  10. No distractions by MiTEG · · Score: 4, Interesting
    As has been mentioned in some of the above posts, one of the most important things (for me, anyway) is avoiding distractions. Things like snack machines, pool tables in the office, etc, may improce employee morale, but they also tend to be a distraction from real work. Once I get focused and start working, temptations such as those really aren't much of a problem.

    Probably my biggest issue is with noise. It could be my farely ADD-type tendencies, but almost any noise beyond what is found in a normal office environment makes it really hard for me to work. Music may be great for the mood, but I just can't work unless the music is classical or something else really light. Also, if I have an office near a window, it could be a problem if the the windows aren't soundproofed enough and I have to listen to the conversations all the smokers have on their breaks.

    --
    The future isn't what it used to be.
    1. Re:No distractions by hey! · · Score: 2

      It could be my farely ADD-type tendencies, but almost any noise beyond what is found in a normal office environment makes it really hard for me to work.

      You know, it's the same for me too. I think of myself has having borderline ADD tendencies, but perhaps what it is a hightened sensitivity to stimulation. On the other hand, once I've "bitten into" a problem, I can go for prodigious amounts of time on it, in my younger (and unattached) days sometimes days without rest. I've often wondered whether these two things, sensitivity to stimulation and the ability to enter a kind of programming trance state were interrelated.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    2. Re:No distractions by Hotsphink · · Score: 2, Interesting

      I am the same way, except the lighter the music is, the more it distracts me. I much prefer something like Nine Inch Nails -- anything that's noisy and sounds like utter crap is good. If I like the music, then I'll start paying attention to it instead of my code. Stuff I don't like is good for drowning out background noise. Vocals are bad unless they're so mangled I can't make out anything they're saying.

    3. Re:No distractions by Darth_Burrito · · Score: 4, Interesting

      Things like snack machines, pool tables in the office, etc, may improce employee morale, but they also tend to be a distraction from real work.

      Yeah they are a distraction, but sometimes that's just what you need in order to get out of a rut and back in the zone. When I've been beating my head on a problem for a while, the best thing is often to stop, turn off the monitor, and go for a 5-10 minute stroll outside. The first half of the walk I don't think about anything. After the halfway point, I start thinking about the problem and I've usually got a good guess on how to solve the problem by the time I get back in the office.

      When I was in college, I used to do the same thing using the pool tables in the dorms. First game clear your head, second game solve the problem. Maybe it's just me, but I'm usually in best form after a break physically away from work.

      The kinds of things which bother me are interruptions, not being able to play my music sans headphones, sharing an office with someone, loud servers/noise, and bad flourescent lighting. The worst for me though, is sitting near a high traffic area where people are constantly talking outside your door or moving by the periphery of your vision.

    4. Re:No distractions by dimator · · Score: 5, Funny

      it could be a problem if the the windows aren't soundproofed enough and I have to listen to the conversations all the smokers have on their breaks.

      Smoker 1: So, we started smoking to be cool and popular, but now all our clothes stink, our lungs are charred and black, and we're the only two dipshits standing out here feeding our addictions while everyone else is inside.
      Smoker 2: Yep.
      Smoker 1: (takes a puff) Is this what you expected?
      Smoker 2: (takes a puff) Nope.

      --
      python -c "x='python -c %sx=%s; print x%%(chr(34),repr(x),chr(34))%s'; print x%(chr(34),repr(x),chr(34))"
    5. Re:No distractions by Anonymous Coward · · Score: 0

      >>First game clear your head, second game solve the problem.

      The problem is you have a beer with the first game.

      Then another with the second.

      By then I am saying "Screw work" and turn into a pool shark, lining up suckers to bilk.

      THAT is the zone.

    6. Re:No distractions by Anonymous Coward · · Score: 0

      I'm the same way, thats why I use a big ass set of headphones to drown out all surrounding noise.

    7. Re:No distractions by Anonymous Coward · · Score: 0

      >If I like the music, then I'll start paying
      >attention to it instead of my code.

      Oh yes, ttc is starting. I can see it. thgsb is proving to be more than just a boycott. it is a creative revolution.

      when the lights go out, the creatures come out to play...

    8. Re:No distractions by HydroCarbon10 · · Score: 1

      I would say yes to that. Given that I am unable to sit and gain anything at all from a class due to my mind wandering, and yet I can sit down and code for 15 hours straight. The classes I enjoy the most are the ones in which the professor doesn't teach...I don't need some braindead monkey copying problems on a blackboard, I need to figure out the problem myself! While I can't pay attention to the monkey for an hour, I can easily lose track of time trying to work out a problem on my own.

      I really think ADD type people's brains work faster than normal peoples. I can't prove it, but it makes sense given the experiences of people I've talked to.

      --
      The best way to accelerate a windows box is at 9.8 meters per second square.
    9. Re:No distractions by mini+me · · Score: 1

      While I can't pay attention to the monkey for an hour, I can easily lose track of time trying to work out a problem on my own.

      I'm the same way. In school I'd always find myself learning something other than what was being taught. Math class was the worst since I had a calculator to play with. I'd figure out math calculations before we were even taught them by just playing with my calculator.

      Unfortunately that meant not learning what was being taught.

    10. Re:No distractions by Lurgen · · Score: 1

      Snack machines aren't a distraction - they're fuel.

      Pool tables, video games, TV's, etc are distractions. Mind you, I have worked in a company where there was a playstation and TV in the rec room, and it didn't see a hell of a lot of use. It got used a lot after working hours, or during lunch breaks, but people rarely used them during the day.

      Munchie machines (and coke machines) should be mandatory in all workplaces!

    11. Re:No distractions by Klowner · · Score: 1

      Amen to that, noise drives me insane when I'm trying to code, although it depends what KIND of noise..

      Here is my formula:

      MUSIC: I'll listen to System of a Down, etc at extremely loud volumes while driving, but I simply cannot code with anything but classical, or slow like Enya or something. And even at that, I'll usually only listen to music for the first half hour, then get so into what I'm coding that I don't notice the music is there, THEN, I notice the music, get angry, and turn it off.. and continue coding.

      ENVIRONMENT:
      I'm currently debating if my big leather chair is counter-productive considering its so comfortable it makes me sleepy. I also keep two small fish tanks on my desk near my monitors, my favorite is on the left with my two Dwarf Puffers in it (they're very calming, they swim like hummingbirds, if that makes sense), if I get really frustrated with a problem I just stare at them, they stare back, and I'm instantly calmed down, THEN, back to coding.

      My room is also dark (I'm in the basement), and sometimes I bring my laptop up to the kitchen table and work from there, where I can see outside and look at trees, that also calms me down and makes me work better.

      TIME:
      Any time after noon it seems, at night is best because I don't get distracted or have to stop for anything (except sleep eventually).

      FUEL:
      I do amazing things if I go to a book store (B&N or Borders in my case), get a nice latte with vanilla, sip on it, and write down about 4 pages of ideas for my code I'm about to write, then drive home while listening to very loud music, let the ideas cook and settle in, then start coding like a madman..

      Thats how I do it :)

      Klowner

    12. Re:No distractions by Semi-Psychic+Nathan · · Score: 1

      That is SO true. I once wrote an elaborate program to calculate annuity tables, even though I knew the teacher wouldn't give me extra credit. She had me run it on her computer to demonstrate it to the class.

      --
      I have nothing to allude to, and I am alluding to it.
    13. Re:No distractions by Eil · · Score: 2


      Probably my biggest issue is with noise. It could be my farely ADD-type tendencies, but almost any noise beyond what is found in a normal office environment makes it really hard for me to work. Music may be great for the mood, but I just can't work unless the music is classical or something else really light.

      I hate to sound like a 'me too' but me too.

      I was actually diagnosed with ADD in like 9th grade, but I have seen ADD kids, and I don't think I even come close. But for the short time they put me on Ritalin, hoo-boy. I won't even go there. That stuff is way too crazy to give to kids.

      My main concern when coding is one of two things: 1) noise 2) reference materials. I happen to live in dorms currently, so the former is a real productivity killer. But I can't just crank up the stereo or else that distracts me far more than all the other noise going on. However, I have had some success with listening to streaming hard house music to drown out everything else. I have five more months of this hell left and then I move in with my fiance. I hope that by the time I reach that point, house doesn't make me fatally ill a la Clockwork Orange.

      Reference materials: More important than a compiler to me. I've done some interesting stuff but I still consider myself a novice programmer, and thus have to look one thing or another up every few lines it seems.

    14. Re:No distractions by Anonymous Coward · · Score: 0

      Heh. Actually smoking is relevant to the discussion at hand. Taking a smoking break is an excellent way of getting in, and staying in the zone. A smoker generally associates smoking with relaxation, so in practice it is a really good way to forget about the rest of the world, prior to a coding session. This isn't just psychological, since nicotine does give a very nice, but small "hit" which physically relaxes you, and clouds your mind for a minute or two.

      And as some people said, sometimes forgetting about a problem, often helps in solving it, so a small smoking break when you are getting frustrated forcebly moves your mind away from it, so getting you back into that calm and detached "zone" feeling, where everything goes your way.

      Also, nicotine keeps you up like caffeine, so if you can smoke in your office (i'm england, i don't know if you guys in america can) you don't need coke, hence no bathroom breaks.

      Finally, once you smoke enough, you can't do anything physically strenuous for very long! This helps in training you to forget the needs and desires of the body, and concentrate fully on the mental tasks at hand!!! You'll have to trust me on this, but when people say "when i'm physically fit i work at my best", they are spouting crap. As long as you aren't physically ill or something, it really doesn't matter. (As a smoker i've worked at both sides of the spectrum).
      So in conclusion, long live big tobacco! At least its cheaper than crack.

  11. Sanity... by jkakar · · Score: 1

    I can make myself work if I have to, but I don't enjoy it. I've found the best way to keep my motivation up is to make sure I devote some time to do something that's only for me. In my case, I play the drums and practice daily for about two hours.

    My point is- it's important not to only have one thing (work) to be excited about or you get caught in the ups and downs of that one thing. If you have a couple things they help balance each other out.

  12. My work environment by vrmlguy · · Score: 2

    Igloo cooler full of assorted caffinated beverages
    Shoe-box full of Butterfingers, Snickers, and beef jerky
    Enya playing in the background.

    --
    Nothing for 6-digit uids?
    1. Re:My work environment by dasmegabyte · · Score: 2

      Whoa there Feng Shui. I'm of the school that says work shouldn't resemble a polsci frat house picnic. Once you start getting above a bare minimum of ammenities, you get into the realm of goofing off. Work should be fun, but that doesn't mean it should be massages and comfort food. A lot of the work involved with computers can be avoided by making a well informed decision with a level head, which is trumped when addled by sugar and caffeine.

      In fact, we've got a guy who, just like you, stocks his area with goodies in an attempt to produce more. He bangs away at his keyboard from 9 to 5, then finds himself here on the weekends when his spaghetti code turns out to be undercooked.

      Don't do what Donnie Don't does.

      --
      Hey freaks: now you're ju
    2. Re:My work environment by vrmlguy · · Score: 2

      Having sugar and caffine near to hand doesn't turn your workplace into a frat house. Having your desktop images automagically selected from alt.binaries.erotica, OTOH...

      --
      Nothing for 6-digit uids?
  13. The "Zone" is.... by Kenja · · Score: 1

    Sitting in my boxer shorts in a nest of cables surrounded by RAID and System towers pumping out enough heat to poach an egg. The fiber-optic network in my bead room has been a sore point in more then one attempted relationship.

    --

    "Have you ever thought about just turning off the TV, sitting down with your kids, and hitting them?"
    1. Re:The "Zone" is.... by Anonymous Coward · · Score: 0

      Dude! You have a room devoted entirely to beads! That's soooo cool!

  14. My experience by nite_warrior · · Score: 1

    What I've found is that I wouldn't ever be happy with a job wheree I have to code for preasure. My favorite time is at nigth, listening to some alternative or rock music, a big mug full of Iced Tea, some candy bars or cookies and just do whatevere i like...

    That's why I preffer not to have a programming job anymore, I hate when being preasure of doing something and I just can't get in the mood to have it done in that moment...

    1. Re:My experience by NorthDude · · Score: 0

      I 100% agree with you. This is my main problem for something like a year now. I work in a "consultant" places where we code for a client (to help its own team of coders). I hate it! we are 6 in a small room, to much noise, to much glare on my screen and theworst part of it, I am not allowed to think! The clients coder and grrr "architects" have done a soooo awfull job with their project, now, we are doing some new modules and we have to follow their stupid "standard". Standards like: "We don't want to use struts and mvc because it adds complexity!" Grrrrr. If I was not so chiken, I would reorient my career and program as a hobby.

      --


      I'd rather be sailing...
  15. Vampire hours by kirkb · · Score: 1

    What are the major interrupters?

    Telephone calls, background noise, and other people. Working odd hours tends to resolve this.

    --
    Slashdot: come for the pedantry, stay for the condescension.
    1. Re:Vampire hours by Hagmonk · · Score: 1
      Priority interrupts, for example requests for sex, can occur at any time.

      --
      Ash OS durbatulk, ash OS gimbatul, ash OS thrakatulk, agh burzum-ishi krimpatul! Uzg-MS-ishi amal fauthut burgulli.
  16. My technique by GreenPhreak · · Score: 1

    I think music/noise is the biggest constructor/destructor of the zone for me. I will listen to either music I know really well (so I don't get caught listening to the lyrics and hence distracting me), or wordless music (classical, trance, ambient, etc). This tends to work well for me. I also have to take my phone off of the hook, disconnect any IM programs or auto-email checkers. Any little thing on my machine that can pull me out of the zone while I'm coding I need to purge. Light doesn't seem to have much of an effect on me. I also like to code alone, but with some sort of person/advisor/boss/mentor within walking distance...in case I really get stuck.

    --
    I drink to prepare for a fight; tonight I'm very prepared. -Soda Popinksi
  17. different things... odd things by BeneathTheVeil · · Score: 3, Interesting

    well... the one thing I find, is that my monitor can't be near a wall... ie, I have to have it so that, when I look past the monitor, I don't see a wall right behind it. If I do, I find that my creativity tends to hit a block. If there is no wall, it tends to flow a bit, and circulate around the room (much like a virus? perhaps). Strange? Maybe... but it works.

    Music wise... it has to be something that doesn't require active listening, but it can't be boring either. Classical and opera tend to work very well as good background music. If it's a game I'm coding, I'll usually put on the soundtrack to a game, as I find that gets me thinking about games, which helps me to make the game.

    Finally, the chair is something I don't have a preference for. As long as I can sit it, and don't find myself fidgiting too much, it's good enough.

    1. Re:different things... odd things by ssheth · · Score: 2

      I think I am the opposite. If my monitor is not against a wall, it would be facing towards the room where visually there is a lot more information for my brain to process.

      I.e. with my monitor against the wall, I mainly just see the monitor. When looking out at the room, I am also seeing various other things in the room like books, people going/coming, the window, etc. Some small chunk of my brain seems to monitor what is going on out there instead of letting me just work uninterrupted.

  18. Crystal Meth by MemeRot · · Score: 4, Funny

    Need I say more?

    1. Re:Crystal Meth by grmoc · · Score: 3, Insightful

      you forgot the od-
      Crystal MethOD ...
      =)

    2. Re:Crystal Meth by G-funk · · Score: 4, Interesting

      Althought the parent was modded funny, I have to add my 2 cents - I like to code, but I'm not a marathon sit-at-the-pooter-for-2-days-straight kinda guy, like a lot of the people here are. Except when I have to, and I get a little speed. A small dose of speed (usually drunk in a shot of water, enough so you barely notice you've taken any) actually works wonders for my productivity. When the deadlines come up, it can often help me work all night at home, then go to work and work all day, and still be doing something useful until 5 o'clock.

      Good stuff really, although we should be thankful it's illegal or we'd all have 25 hour days all the time ;-)

      --
      Send lawyers, guns, and money!
    3. Re:Crystal Meth by beowulf_26 · · Score: 1

      Agreed, I've yet to find any album that comes close to matching Crystal Method's Vegas for coding. It's compelling without being intrusive on my thoughts.

      --

      --I hate big sigs.
    4. Re:Crystal Meth by Quirk · · Score: 2, Interesting

      Paul Erdos (sp) the prodigy mathematician was famous for his daily intake of speed and Retalin (sp). Also in post WWII Japan speed became a national staple and was widely and cheaply available. While the productivity boost helped propel Japan in to an industrial, world leadership role, the speed intake also contributed to significant health problems and was shut down.

      We're, metabolically, biochem plants just churning out one upper/downer after another. We just haven't fine tuned the pharmaceutical industry to our productivity needs but we're getting there. In the alternative a good work out will pump out enough endorphines to brighten anyone's day.

      cheers
      --
      "Academicians are more likely to share each other's toothbrush than each other's nomenclature."
      Cohen
    5. Re:Crystal Meth by rnd() · · Score: 2

      Speaking of stimulants... I have mild ADD and I was on ritalin for a while. I found that it helped me focus on a specific goal and get results. The most startling (and perhaps embarassing) result was that when I was on Ritalin I suddenly had the patience to read man files and documentation like never before.

      In terms of solving problems, however, I think I do better without Ritalin. Often it is the tangential thought that turns into a key insight that solves the problem.

      --

      Amazing magic tricks

    6. Re:Crystal Meth by Wocko · · Score: 1

      IIRC from The Man Who Loved Numbers (a fascinating read by the way), it was Benzadrine, not Ritalin.

    7. Re:Crystal Meth by samoa · · Score: 1

      well, yes and no

      i just finished an 18 shift on speed
      (no marathon but no walk in the park either)

      had a lot of problems to solve, managed to get
      through them through brute force rather
      than inspiration, but today (the day after) i
      can't bring myself to focus on even the smallest
      of incidental problems left over from last night. i just
      sit here reading articles on slashdot that i would
      normally never look twice at.

      besides which, i dont think illegal narcotics are going
      to be of much use to the guy asking the original question.
      depends what his staff are into i guess

    8. Re:Crystal Meth by Quirk · · Score: 1

      Thnx for taking the time to post the link. :)

      --
      "Academicians are more likely to share each other's toothbrush than each other's nomenclature."
      Cohen
    9. Re:Crystal Meth by tobi_pinkjuice.com · · Score: 1
      Just to give a different perspective:
      • One guy I knew killed his friend on christal meth.
      • Several guys I knew went to the psychiatric hospital because of prescription drugs, and also because of hashish/marijuana.
      Make your own decisions, but see reality.
      --
      peace, love, respect
    10. Re:Crystal Meth by Anonymous Coward · · Score: 0

      Ritalin is speed. It may focus your attention, but will also cause you to forget a lot of what you have learnt.

  19. There's the right way and theres..... by Anonymous Coward · · Score: 0

    Sure, anyone can go from zero to hero in a matter of seconds if they want to knock some code out, but I disagree with anyone who says that writing code isn't an art form. Tell me to come up with a picture of a person and someone might scribble a smiley on a napkin, someone else might paint the Mona Lisa........sure they both do the trick, and taking a balanced view one may be overkill, it all depends on the purpose. My point is however, any monkey can bash code out at the keyboard, but is it the most efficient/elegant/etc. code that could have been used to accomplish the task??

  20. My environment... by Matrix12 · · Score: 1, Interesting

    I too am a developer (for 8 years).

    From college CS on, I have worked best from about 11PM to about 4AM with blaring techno (Richie Hawtin, Cari Lekebusch, Christian Vogel, etc). However, I will never be able to reconcile these habits with my current employer. So, I estimate my schedules given my current productivity, and if needed I work during the day, and then work later at night. I'm certainly comforatable with that.

    Working those odd hours does not enable the company to manage me effectively, and I can't be a resource for my fellow employees. If I signed my paychecks it would be a different story.

    1. Re:My environment... by nite_warrior · · Score: 1

      I think that most of the programmers like working at night, I'm one of them. I guess that companies could realize this and let people some flexibility with the schedule, and I'm thinking that most of the programmers might chosse working late at night rather than in the morning.

    2. Re:My environment... by christfokkar · · Score: 0

      Working those odd hours does not enable the company to manage me effectively, and I can't be a resource for my fellow employees.

      Well then you are probably doing something wrong huh? At my last job we worked all hours and our productivity was fine. Being in the office with the team is fun, but this is the 21st century already, there are alternate forms of communication. You should be able to get by just fine with email, aim, and web, otherwise i suspect you are probably not much of a computer geek. Look at open source, that has pretty much disproved the theory that the office environment is necessary for good software development.

  21. Avoid all negative thoughts! by Mode+Frozen · · Score: 1

    The Zone seem to be evasive when you can't decide what the best solution is. Even a tiny amount of indescision will mess u up. Oh, and for me, absolute silence is best. One of tose nice noise cancelling headphones are best, since a house in the country with noone around is not the best environment.

  22. Recipe by 4of12 · · Score: 2
    • Wake up very early.
    • Heavy aerobic exercise.
    • Brew large pot of dark coffee.
    • Start work 2 hours before everyone else gets there.
    • Midmorning break for a snack.
    • Knock off at 3 to beat the rush home and have time to relax before bed.
    --
    "Provided by the management for your protection."
    1. Re:Recipe by Anonymous Coward · · Score: 0

      I'm timeshifted a bit...

      Wake up very early.
      Well, technically, it's "waking up very late."

      Heavy aerobic exercise.
      Trust me, for heavy people, any movement at all qualifies as aerobic exercise.

      Brew large pot of dark coffee.
      Ok, chill large bottle of Coke...

      Start work 2 hours before everyone else gets there.
      Well, start about 2 hours after everyone else leaves...

      Midmorning break for a snack.
      At 4am, nobody can hear you jam a bent clothes hangar up the vending machine.

      Knock off at 3 to beat the rush home and have time to relax before bed.
      Knock off at 8am, rush "hour" traffic is going the other way and "coworkers" (I like to call them unproductivity drones) start filtering in.

    2. Re:Recipe by dfiguero · · Score: 1

      You are joking right?

      --
      My penguin ate my sig
    3. Re:Recipe by mike_the_kid · · Score: 2

      This is the post I agree with. I am slightly different:
      Ride my bike to work, shower at the office. Get there at least an hour before my boss. Its also crucial to do the ride before traffic gets too heavy. I just try to brew one really good pot of coffee. I have the coffee grinder, I have the gourmet beans, etc.

      Aerobic exercise is key. Relieves the nervous energy, clears the mind, and is fun.

      --
      Troll Like a Champion Today
  23. What are the major interrupters? by quantaman · · Score: 5, Funny

    What are the major interrupters?!?

    Hello??

    You just asked the major interrupter!!!!

    --
    I stole this Sig
    1. Re:What are the major interrupters? by Froobly · · Score: 2, Funny

      At the same time, maybe procrastinators will come across this article and think, "hey, maybe I should be coding."

      Worked for me...

    2. Re:What are the major interrupters? by zCyl · · Score: 2

      At the same time, maybe procrastinators will come across this article and think, "hey, maybe I should be coding."

      Worked for me...


      You need to come up with more clever ways to deceive yourself. I came across this article and thought, "Maybe I should spend lots of time reading this carefully in order to motivate myself to do the work that I need to complete by yesterday."

  24. What's important by Raven1 · · Score: 1

    Good lighting, not being pissed off at my boss. A whiteboard, room to pace and some quiet. I was happy working 30 hours on and 6 off when I had my happy bottle of rum sitting on my desk and no phone. Of course, going from time and a half to doubletime on the third "day" at work was pretty nice too. But a good chair, a 4'x8' whiteboard, halogen lamps and a pair of headphones worked great. Shared the office with a rather strange person. We got along well so it was all good.

    1. Re:What's important by Lurgen · · Score: 1

      Now there's a thought. The more I read this thread, the more interested in the subject I'm getting...

      Whiteboards are definitely good in grouped areas - we had one in my teams area until somebody (a programming team) stole it!

      Pacing seems to be a common theme amongst good techs. All my best geeks are restless buggers. Most of them stand when they're on a tricky phone call, and most walk around while considering solutions.

      Here's another factor though - surrounding yourself with likeminded, skilled workers. Nothing kills my mood as fast as incompetence.

    2. Re:What's important by Anonymous Coward · · Score: 0

      A whiteboard! Yes. I cannot possibly express how important that is to me. An ample whiteboard at that, I want to draw HUGE diagrams to work with. I am a student and I love when whatever lab I am in has a whiteboard. In fact, I plan on buying one for my apartment.

  25. My zone... by kzinti · · Score: 2

    I find that the zone is primarily a matter of having reasonably good tools to work with (I get irritable if I'm not given a fairly recent version of XEmacs, for example) and the chance to work with few interruptions. I don't multitask well and having to constantly context switch to handle questions asked by others really ruins my zone. As I have become a senior member of staff and project lead, these interruptions have grown dramatically.

    The best answer to my zone problem would be to have a door that I could shut when I'm working on something that requires intense focus, and open when I feel like I can handle a question (think of the door as a literal interrupt mask). Sadly, I don't have a door; I live in cubeland. I'm senior enough to rate a door, but there aren't enough doors to go around.

    As for the lesser important elements to establishing the zone, I like a comfortable chair, a decent set of speakers or headphones, and a carpeted floor so I can take my shoes off. I hate shoes and kick mine off as the first step to getting to work. I'd go barefoot if I could.

    I like to keep the lighting low, and my preference is to work with the lights off, with only natural light through my window and my pair of flat-panel monitors to light the room. Again, because I live in cubeland, it's hard to work with the lights off; even getting to work at 6 AM doesn't help because some of my lights-on coworkers also arrive early and don't understand why I want to work in the dark (these coworkers include one fellow who analyses code by printing it out and coloring the paper with many different colors of highlighter).

    --Jim

    1. Re:My zone... by Anonymous Coward · · Score: 0

      Ah Slashdot, the place where people need to explain the concept of "door" in terms of interrupt masks.

    2. Re:My zone... by Anonymous Coward · · Score: 1, Funny

      Umm.. Yeah....

      Did you get the memo regarding the cover page on the new TPS reports? I'll make sure you get another copy.

    3. Re:My zone... by rbeattie · · Score: 2


      After 5? Nonononono.

      My zone's between 11:00 and 5:00, but think 24 hour time. I go to bed around 6:00 just when the sun's coming up.

      -Russ

      --
      Me
    4. Re:My zone... by Anonymous Coward · · Score: 0
      (these coworkers include one fellow who analyses code by printing it out and coloring the paper with many different colors of highlighter)

      What, that seems weird to you? Works for me. Big chunks of fanfold pinned to the wall. Scribble all over them in pen, highlighter, whatever - working standing up.

      Meanwhile, your colleague is probably waxing lyrical about this oddball he works with who wanders around having apparently forgotten where his shoes are...

    5. Re:My zone... by kzinti · · Score: 1

      What, that seems weird to you?

      It seems... quaint. Like an abacus or a flow chart. But the reason I mention it is that people who work with paper tend to like the lights on and don't understand those of use who prefer to work with them off, or dimmed.

      And if my colleagues think I'm an oddball, well, it's not the worst thing anyone's ever called me!

      --Jim

  26. My zone... by dasmegabyte · · Score: 4, Insightful

    ...is sometime after 5.

    Seriously. I get most of my work done after everybody leaves...nobody shooting the sh_t or asking me questions or for status reports. There's an emotion around here that open floors equate productivity, but that's just not true...I get more done the hour after the boss walks out than I do in an entire day of his polling and sneaking.

    Speaking of which, this post is cutting into that time...gonna make it short.

    --
    Hey freaks: now you're ju
  27. Recipe for success... by MonkeyBot · · Score: 2
    Judging from most of the programmers I've talked to (including myself), I think that the morning is definitely not the time to be in the zone. The night-time is the right-time for programming success. It brings CS graduates back to their late-night programming sessions trying to tie all the loose ends up in their current project.

    I'm not saying that this is a steadfast rule, I'm just saying that perhaps allowing different workday shifts like 9-5 and 3-11 would be good. You'd have two hours of overlap for collaberation, and people who fear mornings would be more apt to be in the zone in their "primetime."

    1. Re:Recipe for success... by Zurk · · Score: 1

      yeah but it aint gonna happen. too many clueless PHBs wandering around who equate 9-5 with getting stuff done.
      cant blame em too..most people love being in a box their whole lives while the average programmer hates it. something about herding cats...

    2. Re:Recipe for success... by Anonymous Coward · · Score: 0

      I actually have to disagree. I find that I get up in the morning, get my coffee and prepare for the hour+ commute. During that time, the first 20 minutes or so I'm waking up, and then the last 40 minutes I'm planning on what I'm going to work on, and how I'm going to approach things once I get to work. I get to work, and I usually know exactly what I want to do, and I can just tear through it for a few hours before that morning inspiration/coffee wears off.

  28. EXTREME PROGRAMMING! by eVarmint · · Score: 5, Interesting

    When programming alone, I find that the "zone" is an elusive beast that can be found for about an hour or two each day, on average. Some days more, some days less.

    Pair programming, a subset of extreme programming, largely eliminates this problem for me. When I pair up with another developer, I can regularly find the zone each day and stay in it for 4-6 hours. As a project manager, I introduced extreme programming and my team quadrupled their output overnight. And this is with six of us sitting in a garage with cheap office furnature.

    1. Re:EXTREME PROGRAMMING! by christfokkar · · Score: 2, Insightful

      As a project manager, I introduced extreme programming and my team quadrupled their output overnight. And this is with six of us sitting in a garage with cheap office furnature.

      Right. I think what you are saying is that when you stopped whipping them in your garage and gave them some actual human contact, they were a little happier huh? Maybe you learned a lesson that treating programmers like human beings pays off in the end.

      A good office environment meets the needs of the workers. Good social contact, this is why nerf toys are popular. Some time to relax, play games, free perks like soda don't hurt either. If you make it fun, you can expect a lot. Quadrupal is nothing. Next try fixing your furniture.

    2. Re:EXTREME PROGRAMMING! by Anonymous Coward · · Score: 1, Funny

      Good social contact, this is why nerf toys are popular.

      We were supposed to use NERF toys? I guess that's why "Smith&Wesson Wednesdays" didn't go over well...

    3. Re:EXTREME PROGRAMMING! by Anonymous Coward · · Score: 1, Interesting

      I haven't understood the geek fascination with soda. A cooler of water is all I need (I drink tons and actually get a little water high from it).

      Excessive soda just makes you look like Cowboy Neal after a few years. Which makes contact with members of the opposite sex difficult.

    4. Re:EXTREME PROGRAMMING! by Cenam · · Score: 0

      there is no such thing as extreme or pair programming, only one person can code at once unless you have a nice little networked ide; and the idea of the zone only being a couple hours a day just shows how simple your mind works..

      --

      The Truth: There is no string:)
    5. Re:EXTREME PROGRAMMING! by spectecjr · · Score: 2, Funny

      I haven't understood the geek fascination with soda. A cooler of water is all I need (I drink tons and actually get a little water high from it).

      Excessive soda just makes you look like Cowboy Neal after a few years. Which makes contact with members of the opposite sex difficult.


      Or easier, if your building has narrow corridors.

      Simon

      --
      Coming soon - pyrogyra
    6. Re:EXTREME PROGRAMMING! by WindowsTroll · · Score: 1

      Perhaps it is just me, but I have found almost nothing less productive than pair programming. If I am the person sitting at the keyboard, I spend so much time explaining what I am doing, or being interrupted by their questions, that I can't ever get into the zone. If I am the person sitting in the catbird seat, I get so frustrated watching the person at the keyboard fuddle around, that I just want to grab the damn keyboard from them and type the thing myself. My personal experience is that I can get work done in 1/2 to 1/3 of the time working by myself.

      --
      "Microsoft has made computing accessible to a population who would otherwise not be able to use computers" - B. Kernigha
    7. Re:EXTREME PROGRAMMING! by Anonymous Coward · · Score: 0

      As a project manager, I introduced extreme programming and my team quadrupled their output overnight.

      Yes, but how well do they work during the day? ;-)

    8. Re:EXTREME PROGRAMMING! by Anonymous Coward · · Score: 1, Insightful

      Some (a lot of?) managers think extreme programming is to team up experienced with in experienced coders. This is wrong, stupid and will piss of the good programmers. Point is that you should be equally good so that the co-driver only has intelligent and productive remarks. One must work as a team and respect each other, this won't work if you think the other guy is a moron.

      This way you can spot errors faster and find new ways to solve problems. Probably won't work for everyone anyhow but it's good if it's implemented right.

      /J

    9. Re:EXTREME PROGRAMMING! by Boss,+Pointy+Haired · · Score: 1

      We all know that the performance of two developers, all other things being equal (education, qualification, experience etc.) can vary enormously. Some people claim this can be as much as a factor of 10.

      How does XP / Pair Programming cope with two developers who are at opposite ends of this scale, or do you have to be pretty evenly matched in ability?

    10. Re:EXTREME PROGRAMMING! by pathwayX · · Score: 2, Insightful

      I have to agree with this and add that it has to be a developer that's ...compatible with you. You know how you sometimes work with somebody else and you can't get along no matter what? Not just on a personal level, but code-wise. And then you work with someone else, and you think /so/ much alike, that when you take your separate pieces of developed code at the end of the day and try to integrate them, they just fit like a jigsaw, on their own.

      I find that when paired with a person like that, we can whip out code like nobody's business. We also inevitably end up drinking Guinness while coding, but I think that's a fringe benefit. (Mental note: Conduct tests concerning the zone with and without guinness. Report on /.)

      --
      So long, and thanks for all the fish
    11. Re:EXTREME PROGRAMMING! by jpbelang · · Score: 1

      How does XP / Pair Programming cope with two developers who are at opposite ends of this scale, or do you have to be pretty evenly matched in ability?

      It doesn't, really. Sometimes you'll work with a slow junior, and you gotta live with that. But you should change partners pretty much with each task and should do so promiscuously.

      Mind you, working with juniors will often get you out of blindly using techniques: chances are your partner will ask you why you are doing such and such, and you are going to have to justify it.

      Keep in mind that XP wants to achieve the simplest design possible, not the most flexible. So overuse of patterns is a bad thing.

      --
      JP http://www.wearerite.com
  29. Slashdot by yoderm · · Score: 1

    Browsing Slashdot for hours on end often helps me...

    (yeah, right :-))

    -Mike

    --
    This sig no verb.
  30. Personally speaking... by cygnusx · · Score: 2

    I find that IRC helps.

  31. Quiet! by dghcasp · · Score: 2
    I need quiet - pure unadultered quiet, which unfortunatly *never* happens here in cubicle-land.

    What I want to know is: Those $300 Bose noise cancelling headsets - Can you use them without piping a signal into them to get pure and clean quiet? Or are there any other alternatives other than those massive earmuffs that construction workers wear?

    1. Re:Quiet! by T3kno · · Score: 3, Interesting

      Absolutely, I used to have a pair of those $100 Sony Noise Cancelling headphones (before I stopped travelling 38 weeks a year, and after my dad stole them from me) that I would wear without a cd-player sometimes just for the noise cancelling. They could turn a 737-500 with a screaming kid next to me into a very quiet relaxing environment that I could read without distraction in.

      The Bose headsets look REALLY nice, and I'm thinking about gettting a set, but I work from home now, and am alone listening to techno or a dvd, which is the optimal work environment if you ask me.
      --
      (B) + (D) + (B) + (D) = (K) + (&)
    2. Re:Quiet! by dogbowl · · Score: 2, Informative

      yea, I've got a middle of the road Sony noise canceling headphones, and I've probably used them just as much without music as I have with music.
      Theres a switch to turn the cancleing on/off.

      One time, I had them on (with no music) and a stardess walkup to me and asked a question directly towards me .. I couldn't hear a word she was saying! Ahh .. bliss!

      --

      These pretzels are making me thirsty.
    3. Re:Quiet! by Anonymous Coward · · Score: 0

      Check out Koss' "The Plug" earbuds.

      Have you ever used foam earplugs? You know, the disposable ones that you have to squeeze and roll up tight before you put them in your ears?

      If you have, then you've got the idea behind these $12 earbuds.

      They're regular earbuds, except that the sound travels down a little pipe that goes through the middle of some of that earplug material. You squeeze the foam, put it into your ear, and it expands to fill the space. So, minimal external noise gets in, but the sound comes right through.

      I've found that I turn the volume way down with those things in. I just don't need it very high any more. Also, they have the best bass response of any earbud I've ever tried - that's not saying much, but I'll add that they have better bass than a lot of much more expensive headphones I've tried.

      With that said... I want a pair of the Bose noise-canceling headphones too.

    4. Re:Quiet! by abischof · · Score: 2

      See also this Slashdot thread on controlling noise. There're quite a few comments there on the various noise-cancelling headphones available.

      --

      Alex Bischoff
      HTML/CSS coder for hire

  32. My Zone by gmplague · · Score: 1

    My zone involves a 6-pack of Cherry Coke (or Dr. Pepper, or Root Beer) A box of crackers, party mix, goldfish, etc. Xmms open with my playlist (a good trance song really gets me coding). I like my blinds closed with as little glare as possible. And probably my doors closed so that I have fewer distractions. It is also good (though not required) for it to be very late at night. I do like some background light, but just no glare. Non-Flourescent over-head lights really do the trick. It is also a necessity that I've got a good project to work on. I don't get into coding unless I'm genuinely interested in what I am coding. If all the above requirements are met, by the time I am halfway done my second cherry coke and a quarter of the way done my goldfish, I am riveted by what appears on the screen and won't get up until I've either got to pee real bad, or am being yelled at by roommates.

    --
    __________________________________________
    Take comfort in your ignorance.
    Grandmaster Plague
    1. Re:my zone by Banjonardo · · Score: 1

      complete dark, one screen on? Sorry dude, but that's REAL bad for your eyes. If you do this a lot, you really should call an oftamologist and find out.

      --

      -----

      Score 3? For what? Being wrong, at length? - smirkleton

    2. Re:my zone by ealar+dlanvuli · · Score: 1

      I've found an important part of the zone for me is lots of red ink and printouts. If you can get a printer that prints the connected paper (I dono what its called, 'printer paper'?), and a good red pen; then you have just added the most efficent thought holding template.

      So I always have readable ambient 'natural' light, I use a desklamp from thinkgeek and floor lighting to achieve it (I had a local expert help me select the right floor lamps).

      --
      I live in a giant bucket.
  33. keep out of my dog zone by falsemover · · Score: 1
    Here are the prime ingredients:

    1. continuous filtered coffee, of the the good Italian kind
    2. my illuminated aquarium to my left
    3. my TV to the right playing clips of Britney Spears
    4. my ADSL on continuous standby, as you never know when the urge to play online chess will overcome you
    5. Kazza Light running in the background stealing stuff from the net
    6. my loyal dog at my feet, of the Cocker Spaniel kind
    7. oh yeah, and when I go to work I give all this up sit in a boring cubicle - they might wonder why I'm never in the zone there
    8. did I read somewhere that you can take your dog to work at Google?
    ma vie est un équilibre sensible de vin, de nourriture et de la programmation
    --
    consider coffee a lubricant that helps one penetrate the coding zone
    1. Re:keep out of my dog zone by Anonymous Coward · · Score: 0

      Only if you share your dog with the Pakistani Google employees. They are into hardcore beastiality.

  34. it's all about the distractions by psamuels · · Score: 1

    I must be some sort of AD because any distractions at all will seriously mess me up. Closed room, no colleagues / games / TV / web access / etc seems to work best for me. The trouble is enforcing this sort of environment ... for myself alone, never mind enforcing it for multiple people who work this way..

    Oh yeah, large quantities of caffeinated and insanely-sugared beverages always helps.

    --
    "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
    1. Re:it's all about the distractions by Dave_bsr · · Score: 1

      I'd congradulate your sister but her email is messed up. help?

      --


      Who is this Anonymous Coward character, how does he post so much, and why is he always such a whore?
    2. Re:it's all about the distractions by psamuels · · Score: 1
      I'd congradulate your sister but her email is messed up. help?

      Hmmm, not sure ... it's the right address, but I notice their servers don't accept VRFY or EXPN, and they refuse with 500 [command unrecognized] instead of 550 [access denied / service not available]. I think this is RFC821-compliant, but it's not common practice. Perhaps your mailer is trying to VRFY the address before sending, or something, and getting confused. Oh well, thanks for trying.

      --
      "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
  35. Finding the zone by hey! · · Score: 2

    (1) Get plenty of rest. You can't get the creative juices flowing if you're tired and thinking in a rut. Once they start flowing, you won't be needing the rest.

    (2) Avoid interruptions. No beeper, no cell phone, nobody dropping by to chat. Get away from the internet if you can. A laptop is good for this. I move to the local coffee emporium to get started, then when my laptop is discharged and I'm fully charged with caffeine, I move to the public library's quiet study area, where i can plug in power. When the library closes I move to a loft over my garage. It's a short trip between each one and it gives just enough of a break. Since I've had children, the days of multi-day hacking sessions are gone though; I pretty much have to take some time in the early evening with them, then after they're in bed it's back to the old ball and chain.

    That's pretty much all I need: rest and privacy. There is one third aspect that is helpful to me, although maybe not to everyonhe.

    (3) Customer contact. Not during the programming debauch, of course, but before hand, to clarify exactly what I want to achieve, and put a human face on the problem. Of course, if you hate your customers, its better to avoid this ;-) In any case, some incubation time to have clear and well chosen objectives is good.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  36. Leave Me Alone!!!!! by mo · · Score: 5, Interesting

    Ok, on the whole I like dark lighting, private offices, headphone music (classical). But I'd sell all of this for one thing. Leave me alone. It takes me up to 45 minutes after sitting down to really get into what I'm coding. If I have an interruption every 30 minutes I will get nothing done. Of course it's very diffucult to structure an environment where people can ask questions when they want without bothering all of the other coders who are in the zone. Here's some ways to make this easier:

    * set up an irc server or get everyone on IM. If you have a question, IM it to somebody instead of interrupting them with a phone call or personal visit. If they are in the zone, they can wait until their train of thought winds down to answer.

    * Catered, delivered meals are a diabolical way to squeeze more zone time out of your employees. Nothing is better for me (and the company) when somebody brings in a bag of burritos when I'm in the zone. Delivered dinner is the best way to explioit me for more unpaid work.

    * Good CM and documentation limit the amount of interruptions because people can consult the docs instead of, "Ask Bob, he's the only guy who knows how that works."

    * Let me work funky hours. We've got one guy who gets here at 7:30 AM, another who shows up at noon and stays till 10:00 PM. Why? Because there are large chunks of time where nobody is around to interrupt them. This can wreak havoc at your company if you don't do the above documentation, but it can work out very well if you do.

    Yeah, private offices, screen real-estate and Aeron chairs are cool, but I'd throw them all away for a full day without interruptions.

    1. Re:Leave Me Alone!!!!! by WetCat · · Score: 1

      For me - completely reverse! DO NOT leave me alone! My performance stalls if I have nobody to talk with.
      If I can explain my problem to a friendly person - I usually can
      find a solution. If nobody is near me - I can spend hours and hours trying to get it solved...

    2. Re:Leave Me Alone!!!!! by betis70 · · Score: 1

      You need to move to marketing. They like to have meetings and talk about problems for hours.

      --
      I forget...are we at war with Eurasia or East Asia?
    3. Re:Leave Me Alone!!!!! by GorgarWillEatYou · · Score: 1

      I totally agree. I cannot count the times when I've said to someone "Can you come and look at this for me. I've been sitting here for hours and can't find a .... Nah dont worry found it".

    4. Re:Leave Me Alone!!!!! by Anonymous Coward · · Score: 0

      I agree, working two persons together makes me really productive. While I discuss the problem with the other person I also solve it 'automagically' (with the help of the other person)

    5. Re:Leave Me Alone!!!!! by lostguy · · Score: 1

      I'm in my first open-plan office in three years, after having a private office. I'm also dealing with a bunch of type-a consulting types, who need their questions answered NOW NOW NOW. For them, I wear open-air headphones that fit over my ears, so they think I can't hear them. This encourages them to use IM (still an interruption, but they don't type as much as they talk) or email. It also leaves me able to hear peripheral conversations, so I can take the headphones off and jump in when necessary.

      The only time I listen to music is to drown out excessive noise or lyrics-laden music from elsewhere in the office. The CEOs think music == good working environment, and have an amp stack in the corner of the main office area. When the music comes on, it's time to go home, because no work is going to get done. If the volume isn't high (rare), I crank up repetitive techno as white noise, so my brain doesn't kick into language parser mode when it should be in code generation mode.

      The other big big big issue is tools availability. I've been using VisualAge/Java for years, and am in the process of switching to IntelliJ IDEA. Decent method, field, argument, class, keyword, and template completion, and a decent classbrowser with hierarchy browsing support, are essential for coding without having to switch context to look through javadoc, when you just need to find out if the method is toUpper(), toUpperCase(), upper(), etc.

      Drink a lot of water, diet coke, whatever, so you have to take a lot of pee breaks, hopefully every 20-30 minutes or so. Gives the hands a rest, and gives you that essential "time away from the keyboard" so you can refocus on the problem and see it from another point of view. Sometimes it's hard to think of the solution if you're coding it up.

  37. good book... by salmo · · Score: 1

    No to sound cheesy but I really enjoyed _Zen and the Art of Archery_, the story of an American who is a professor of German philosophy teaching in Tokyo. He studies Zen through archery (as opposed to swordsmanship, tea ceremony, flower arangement, etc) and has a perspective that is fairly easily digestable to the average Western reader. It made me move past my perception of Buddhism as just a religion for crystal wearing, new age music loving, aging hippies. And without a doubt it has helped me find my coding "zone".

    1. Re:good book... by Anonymous Coward · · Score: 0

      actually, he is a german, not american. he was born in germany in 1885. for the curious, his name is Eugen Herrigel.

    2. Re:good book... by salmo · · Score: 1

      Woops! You're right. I screwed it up trying to rewrite the sentence so it made sense. He was a German, and a German Philosophy professor in the US (I don't remember what school off hand and I don't feel like grabbing the book), then he got offered a job in Tokyo. The Japanese were generally very interested in German Philosophy at the time.

  38. I used to have a zone by s4ltyd0g · · Score: 2, Insightful

    But working as a consultant you learn to get used to working in all kinds of situations. You are fortunate indeed to be able to mediate work environements for your consultants.

    Heck in one place I spent a week working in a hallway and if it wasn't for my trusty laptop I would have been twiddling my thumbs. Other than that I do my most productive work off site at home where there are less meetings and other such interuptions.

  39. Motivation, not objects by Thurn+und+Taxis · · Score: 1

    For me, the way to get into the zone is to have a good definition of the problem I'm solving and to have an immediate deadline (positive deadlines work, too; e.g., "finish this by five and you get an extra $250"). If I've got those two things, I can work while sitting on a bed of nails, with a strobelight behind my head and a copy of Metal Machine Music blaring over the speakers, with my feet soaking in a tub full of piranha and electric eels. You should try it sometime; it's exhilirating.

    --
    On stereophonic equipment, the monaural sound obtained through multiple channels will enhance your listening pleasure.
  40. A big long list... by coene · · Score: 1

    WARNING -- this is a seriously unsorted rant with just scattered facts, it may need some analyzation to understand ;)

    Im most effective when i am in a clean enviroment, plenty of room to just look around, also i find im more effective and "inspired" if the enviroment around me has changed. IE moved furniture, something that keeps me motivated and happy in thought ;)

    If someone disrupts me, that ruins the happy thought and I must kill them, that or invoice them for the time they have caused me, and the time im going to take to get back into my comfortable enviroment zone thingy

    Caffine helps, but only for so long.

    Big meals beforehand ruin my concentration.

    Idle noises and video that wont draw me in, but keep the world around me sane (IE TV on low volume, watching something interesting, however that that i've seen before -- Check HBO comedy channel (HBOC)) help immensly.

    Music that i've heard and am comfortable with helps, new music hurts.

    Being at night helps, not because of the darkness, more because its quiet and nobody can bother me.

    Lighting should reflect my mood

    Having pants and socks on helps -- shorts and no socks ruin my work ethic for some reason -- this is only applicable to when im working at home. for some reason i'm fine in shorts @ office.

    there's probably more, but its all rotating around my comfort and happiness zone.

  41. The Father of Distraction: Websurfing by geoffsmith · · Score: 5, Insightful

    Nothing is more distracting than a web browser. And virtually every programmer has got one. How many people reading this comment right now should be working?

    It's even worse if you do web programming for a living. There is no hope.

    1. Re:The Father of Distraction: Websurfing by qslack · · Score: 2

      As a Web programmer myself, I completely agree. I'm testing my stuff, and the "SD" button looks so appealing. :)

      I've found that if I use a different browser, like Opera, just as long as it doesn't have those buttons, everything is fine.

    2. Re:The Father of Distraction: Websurfing by Anonymous Coward · · Score: 0

      i absolutely agree... I get distracted by new /., k5 and various mac site's articles

    3. Re:The Father of Distraction: Websurfing by Darth_Burrito · · Score: 2

      My browser probably does more to extend my zoning than anything. Seriously, when working on a real problem, I'm always needing info off of deja (err google groups) or other online sources. Of course if I can't find the answer after 10-15 minutes, all hope is probably lost and soon the browser magicly finds its way to slashdot. Part of the key to preventing this from happening is to set your browser's home page to something that won't distract you from your work (google groups).

    4. Re:The Father of Distraction: Websurfing by Bob+Uhl · · Score: 2
      Part of the key to preventing this from happening is to set your browser's home page to something that won't distract you from your work (google groups).

      Usenet something that won't distract one?!? Man have times changed...

    5. Re:The Father of Distraction: Websurfing by beowulf_26 · · Score: 1

      That's why I recently set my work browser's homepage to the current project I'm working on. That, and I got sick of having to "stop" slashdot.org from loading and then pulling up my project. Kill two birds with one stone ;)

      --

      --I hate big sigs.
    6. Re:The Father of Distraction: Websurfing by mckwant · · Score: 2

      Actually, so long as you're doing web sites, it's really, really simple. Get a notebook, install some version of linux/bsd, get some reasonable facsimile of your production environment (tomcat, in my case) and postgresql going, and (here's the useful bit) NO CONNECTED NIC.

      Fun? No. Problematic? Occasionally. Productive? You betcha. Do the vast majority of your coding on the notebook, connect to upload your files, change the JDBC drivers and connection strings, and you should be pretty close.

      --
      ceci n'est pas un sig.
    7. Re:The Father of Distraction: Websurfing by laxrox · · Score: 1

      I'd have to disagree. I can't even count the number of times I have found the answer to the question that was keeping me from moving on and out of "the Zone". To sum it up in one word...Google. Enough said.

  42. Read Peopleware by Anonymous Coward · · Score: 1, Informative

    By Tom Demarco and Tim Lister. It gives real world examples, research and solutions. It isn't extreme but makes the case the most corporate cube farms do not lead to productive work envronments.

    Don't enforce start/stop time rules but enforce the rule that you have to attend the meetings you say you are going to attend and you do the work you say you are going to do. If a problem arises, don't wait a few days to tell the PM, because the PM needs to mod the schedule ASAP in order to keep client expectations in line with reality. Telling your team mates where you are (in your coding) is just plain and simple manners.

  43. The Programming Room by dewboy · · Score: 1

    I've found that I really have a hard time programming with a lot of other people around me, because I tend to get distracted easily, especially when they're working on and talking about the same (or similar) project as the one I'm working on.

    I need a programming room, one that I only enter when I need to sit down and do some serious coding or design. Under no other conditions may I enter the room... When I enter, I wholly concentrate on the task at hand, and when I leave, I un-focus. The walls are covered with whiteboards and there must be a high but comfortable chair, plenty of space to spread out and walk around, and most importantly, music, with the ability to turn it off and change the song on a whim.

    And of course, a tennis ball to bounce off the walls while I think...

  44. If you design before you code... by jeffsix · · Score: 1

    ...this isn't a problem. Once you have the solution for a problem, writing the code for it is straightforward. If you're working on a large problem (or any even somewhat complex problem), you need to DESIGN your solution first. This means making flow charts, diagrams, and assorted things. Then, you need to create pseudocode for the project (most of the time...if you have done the design stage well enough, this usually isn't necessaey). Once you have a design like that, the code should be straightforward in ANY language. Coding is not THAT difficult. It's the design that is. Once you've figured out the problem and its solution, you're 9/10 of the way there. Coding it up is the EASY part.

    1. Re:If you design before you code... by Anonymous Coward · · Score: 0

      I usually get stuck plugging in numbers until things look good (graphics). One often forgets that it is usually just easier to draw what youre doing with a grid so you know what the x,y,z coordinates are supposed to be, rather then trying every single possible combination of numbers and still not getting it right.

  45. Complete elimination of distractions by drew_eckhardt · · Score: 1

    Most notably cow-orkers who aren't there as part of a pair-programming process. With office mates having conferences in the same room one is trying to get work doine productivity is easily 25% of what it can be otherwise.

  46. Better Living Thru Chemistry by cyphgenic · · Score: 1
    There was an issue of 2600 that talked about "hacking consciousness" in order to be more leet and alert on those nights when you just have to stay up.

    The article had/advised the following:

    • Protein Meal before caffeine makes caffeine stay in your body longer.
    • Grapefruit juice has enzymes that inhibit the breakdown of caffeine in your body thus making a cup of coffee last 1 to 2 hours longer. Drink that before caffeine
    • Use gingko biloba for focus. I guess there's also Ritalin these days.
    • Use valarian root to steady jittery hands from Caffeine when doing electronics.
    • Ginseng turns out to be pure BS according to the guy who wrote the article.


    I think the author noted that you eventually reach a tolerance level with all this stuff, so use in moderation, or when you absolutely have to.

    If anyone knows the volume and issue number please let me know.
    1. Re:Better Living Thru Chemistry by christfokkar · · Score: 0

      Ginseng turns out to be pure BS according to the guy who wrote the article.

      Yeah I am not surprised. If that stuff worked then there would probably be some awarness of it by now. I usually just drink caffeine and take a ritalin before deadlines. Really, how is grapefruit juice supposed to do anything? It is just sugar water, not much different than soda except for the caffeine.

      Better living through chemistry, that sounds nice, you should probably stick with that. But maybe you need some better chemistry.

    2. Re:Better Living Thru Chemistry by Anonymous Coward · · Score: 0

      Valerian Root is an herbal tranquilizer and muscle relaxant. I guess as long as you've got more caffeine in you than Valerian Root, you're okay.

      I'll try the grapefruit juice.

  47. lava lamp by JDizzy · · Score: 2

    For me.... I need to have my favorit lava lamp going. Some atmospheric drum and bass for the ambiance. Soft lighting, with a gental colour temp (aka not flourecent). My Herman Miller Aon chair, my Bush desk.... and 68 degrees faranheight. Oh and did I mention this groove period must either be at the first 3 hours after I wake up, or the last hour 1/2 before know must go to bed. Seems the mind is most creative at the extream ends of the day.

    --
    It isn't a lie if you belive it.
  48. My zone by Anonymous Coward · · Score: 1, Funny

    Involves a comfy chair, loud mozart, a big monitor, and a bag of doritos. Oral sex when the wife is willing

  49. Enviromental Variables by Tokerat · · Score: 1
    ...no not those kind.

    • It should be a comfortable tempature. Warm but not real hot.
    • Have food and plenty of drinks nearby (with caffene, prefereably).
    • Allow music as long as it doesnt' disturb others (i.e. speakers on low or headphones, maybe even one loud stereo with something everyone likes).
    • No one lieks to feel cramped, make sure coders have room.
    • Make sure the computers have real good, large, flicker-free (if CRT) monitors on them.
    • I've always kind of been against having a top of the line machine for development, because the code tends to end up working out poorly on lower machines. (i.e. "It's not slow on my box, what's wrong with yours?" doesnt' mean much if your box is a 2.4GHz with a gig of RAM...) but then compile times are higher and such, and work eifficiency decreases... a catch 22. I'll leave this one up to you, it really depends on the project. YMMV.
    • LAN games are nice for slow days, dont' let any Team Fortress addicts get away with not working, tho!
    • Having an internal IRC server would be a really unique and useful way to help make the office productive, paste the code to a channel and everyone can look at it, that way no one has to leave their station to help others, and everyone remains within access of a machine. Moderation required, of course.
    --
    CAn'T CompreHend SARcaSm?
  50. MY solution, may not work for everyone by gr8fulnded · · Score: 1

    Ok, I'm not a programmer, I'm an admin but a zone is a zone.

    First, it depends on what i'm working on and my mood. If I'm working from home, it goes like this: Pepsi or coffee, 2 packs of cigarettes, BIG ashtray, and (here's the important part), some Grateful Dead on the player.

    If I'm in the office, I like the quiet so I wont be distracted. [this is the part that wont work for everybody], I turn off my hearing aid. Absolute silence, just me and the keyboard. No phone, no conversations, no nothing. Just turn my Ear off until I need it again.

    Still gotta have the Pepsi or coffee though.

    Being deaf has its advantages.

  51. sunshine from jamacia by Anonymous Coward · · Score: 0

    for me... myers's rum, and coca cola, with lemon and ice... the more the better... oh yea, and a big ToDo.txt file that outlines the future methods and members of my classes...

    OS X rocks!!!

  52. Zone??? We don't need no stinkin' zone! by Green+Light · · Score: 1

    As a developer for 18+ years, I have developed good enough work habits that I don't need any artificial "zone", or whatever, to get or keep me motivated. If a developer cannot sit down and start being productive in whatever environment that they find themselves in, then the person either does not have a challenging enough assignment, or enough training or experience for the challenge.

    --
    "Send an Instant Karma to me" - Yes
    1. Re:Zone??? We don't need no stinkin' zone! by Anonymous Coward · · Score: 0
      Yes, but those of us who aren't COBOL programmers do our best work when we're concentrating intensly.

  53. caffiene by Anonymous Coward · · Score: 0

    The perfect ammount of caffiene. too little and I don't start. Too much and I'm fucked, I'll stare into space for too long.

    Same goes with irc, slashdot, and other news sites. You need a little bit of destraction, but keep it to a minimum. If you find you're constantly flipping between your code and slashdot waiting for the next article, it is time to put '127.0.0.1 slashdot.org' in your /etc/hosts file.

    Lists also help me consentrate on what is needed. Do not get sucked into writing a library which will make everything much easier. Let the library write itself. Hack your code up, then when you see yourself reusing it, yah you have a library!

    Remember to get a little bit of killing in every day. I like to kill yuppies, as they often have cool gadgets in their apartments. Also they tend to live alone. It is helpful if you put plastic down before you kill them. Makes it easier to clean up the mess. If you are worried about the mess, don't be afraid to burn their place down.

  54. My Zone by Meowharishi · · Score: 1

    Still working on perfecting this as only recently have I begun to really start paying attention to "activating" that "Zone" you speak of.

    The most important factor for me being able to enter the zone is my emotional health. Any drama from home and such can quickly render me completely useless.

    The second most important factor to me is people staying out of my face and just letting me work. When I get sucked into the "status meeting" bullshit and have a bunch of little weenies watching over my shoulder (and getting jealous and snitty and backstabbing) then that'll fuck my game up for sure.

    Of course my work environment is important but my biggest complaint with this is the noise level that can rise in cubicle land.

    Wish I could have a private office but I'm not a manager so I'm relegated to the "pit".

    Finally, one last big thing -- I have a habit, particuarly these days, of compulsively look again and again at news sites, expecting the End of the World to happen at any second. This generally raises my anxiety level the longer I do it and requires some self discipline and control to break out of this habit.

    --
    mje0w!!!1!
  55. music by InsaneCreator · · Score: 2

    Music is a very important part. I always need something playing in the background - silence is absolutely killing me.
    It seems that the best kind of music for programming is something without any lyrics, because they tend to draw you attention from the problem. My personal choice is electronic music - techno, drum&bass, ... . I have lots of live sets from various DJs (hawtin, liebing, umek, cox, ishino..) and listen to them all the time. Instrumental heavy metal and classical music also work just fine.

  56. Depends on what you're doing by dant · · Score: 5, Insightful
    For bugfixing or pounding out an implementation of an existing design, I have pretty much the same formula as everybody else seems to (massive caffeine overdose, dark, familiar music, and ZERO interruptions--work from home if you can).

    But for design work, I find I do my best stuff in a completely different environment.

    First of all, get away from your computer. If you're doing design, you should be envisioning shapes, graphs, and so on--you should not be thinking about code. Do not look at; do not touch it. Look at a whiteboard or stare at the sky while you're doing this.

    Next, do something (other than caffeiene) to stimulate your metabolism. Play a few games of foosball, or take a shower, or have a cigar. I've done some of my best design work while standing in the shower.

    Finally, let your subconscious work on it. Keep thinking about the problem as you go about your day, but don't stress out about not making any progress. A day or two into it, you'll have an epiphany and realize that it's all very simple.

    1. Re:Depends on what you're doing by Aerog · · Score: 2

      First of all, get away from your computer

      I couldn't agree with that any more. I can't count the number of times that I've gotten so fed up with a little bug in some abstract function and not 3 minutes after walking away to do something else (usually coffee-related) the answer just jumps out and it was so simple! It almost makes me want to not go back to the computer, unfortunately that's where the problems start, and we get to the next topic I wanted to cover: prime coding hours:

      Yeah, I do some of my most productive work between the hours of 12:00AM and 3:00AM on a Sunday night, but that's usually due to the fact that an assignment is due the next morning (since I'm still apparently "learning" this stuff). However, the only reason that this is happening is because I wasted the weekend with other pursuits.

      Finally, music is everything. I personally like to start off with whatever's been going through my head for the last week, but by the time some serious coding comes up, it's time to kick on the Hard House radio streams, and get something with a lot of mindless bass going. Personally, I think I do better coding then, but that's just an opinion.

      --

      - Relativistic? That's barely Newtonian!
    2. Re:Depends on what you're doing by sconeu · · Score: 2

      Finally, music is everything.

      I'm not sure what the best music for putting me into the Zone for coding is, but when I have to crank out documentation, nothing works better than ZZ Top!

      --
      General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
    3. Re:Depends on what you're doing by rotor · · Score: 1

      I've done some of my best design work while standing in the shower.

      Yeah, I've done some of my best work in the shower too, but that's not really what I'm reading slashdot to discuss...

      --
      Addlepated - punk & metal
    4. Re:Depends on what you're doing by SamTheButcher · · Score: 1
      I'm glad to see other "shower" comments here. I think about a huge range of things while in the shower, and while it's tempting to read into this shower-time more about "what you're doing in the shower to help you relax" (wink, wink, nudge, nudge), it's not about that.

      I do have to say, though, that you need to have some way of keeping what you think about/problem you solve in mind after you get out. There have been (unfortunately) many times I've gotten out of the shower after having a brilliant idea and then the kids run in, or that damned music from "Unsolved Mysteries" sends me into a rage and the brilliant idea is *poof*, gone.

  57. You read hardy boys, don't you? by PsiPsiStar · · Score: 2

    There are also set ways to write a novel.
    This is fine if you want a formulaic novel.

    There are set ways to doing matematics...
    but that dosen't mean that creativity is never involved in mathematics when developing a new solution or heuristic and creativity is not nessicarily reliable.

    --

    ___
    It's the end of my comment as I know it and I feel fine.
    1. Re:You read hardy boys, don't you? by Anonymous Coward · · Score: 0

      re: your sig- i think you'd enjoy _public sex_, auth: pat califia. (sub "the culture of radical sex".) sounds academic, and i guess it is, but isn't written that way, just really well. problems? of course. wrong? not all of it, not even close.

  58. Newbie by lowtekneq · · Score: 1

    I have been programming for about 3 months now, even though i am still learning a lot when i did my first real project i learn a lot on what helps me get from point A to point B. I like to have my desk cleared with a sheet of loose leaf and a pencil. This comes in handy if i need to plan something out. As for music something like epic trance is probably the best for the job. Since i goto school durring the week the best time is around 4-6 on friday, i have the weekend to look forward to yet i can still go out to a movie or what have you. As for drinking, red bull is the shits for doing any sort of work. Anyone else have a setup like this?

    --
    Carpe meam simiam!
  59. Best Time... by ZeLonewolf · · Score: 1

    Probably the best time to code is when slashdot goes down :) THAT's my biggest distraction...

    --
    "If at first you don't succeed, lower your standards."
  60. Lysergic Acid Diethylamide by Anonymous Coward · · Score: 1, Funny

    Programmed for what seemed like days, started in the afternoon, then looked out the window and saw that it was dawn. Looked at my code for what seemed like the first time, and for the first time, compiled and ran.

    Zarro boogs!

    The code looked like kobold cobblers threw it together, but it worked.

  61. The state of mind matters, not the environment by tot · · Score: 2, Interesting
    At least for me, the state of mind is the most important thing. The environment is unimportnant, secondary thing that I don't even notice. Switching between bug fixing/question answering state and development state is a big one, and it takes time.

    In bug fixing state, I can multitask efficiently between multiple small size tasks, do them together, answer a question in a middle, etc.

    In development state, I am really concentrated, and if someone asks something, it is very difficult to concentrate a sudden support question, and if interrupted, it takes time to get really back into development state.

    If the development state is difficult to reach, I need music. Something heavy, Metallica seems to work best.

  62. The Route by TheLastUser · · Score: 1

    Lunix - check
    Problem thought through - check
    Time line - short
    VIM - ready
    ...

  63. It's all in your head by OblongPlatypus · · Score: 2

    I could list some of the conditions I prefer when I'm in the zone (some good loud music in my headphones, a bottle of caffeinated beverage nearby, etc). But none of that matters. The short story is: When I'm in the zone, I could be outside in cold weather with poor lighting conditions and on a crappy laptop, and it wouldn't stop me from doing some great work. If I'm having trouble reaching the zone, no amount of external stimuli is going to bring me there.

    "The zone" is in your head. For me what brings me there is usually motivation of some kind. It can be money (as in salary), but it usually isn't. Most of the time I'm just excited to see how it's going to turn out when I'm done; once I'm in the zone and start coding, I'm not going to stop until I can see some sort of tangible result.

    When I'm having problems reaching the zone it's usually because that tangible result is too far away in time. What really causes problems is if a part of a project is so big it's going to take two days of coding before I'll produce anything useful; I try to avoid those.

    --
    -- If no truths are spoken then no lies can hide --
    1. Re:It's all in your head by jeske · · Score: 1

      I feel the same way. Once I'm in the zone the details of the environment do not matter. Before that happens, however, there are definetly things you can do to help people create their zone. Here are three of them:

      1) Build conventions for avoiding interruption.
      2) Provide easy access to an energetic, yet practical programmer/system architect.
      3) Provide detailed short term deliverable lists.

      Here is some justification for each:

      1) Build conventions for avoiding interruption

      Questions and phone calls are a serious distraction and must be kept away forcefully. Voicemail to email gateways and phones that don't ring are a godsend. Another poster lamented the lack of a door in his cubeland. I've seen people use yellow police-line style warning tape to create the convention of a barrier in the office.

      Noise is also a problem. I generally just turn up the techno music, although I know some people who need to have real quiet to get work done. There really are few things you can do which will help more than creating a quiet work environment.

      If you don't stop interruptions and noise, then your great people will create that environment for themselves using techniques mentioned in other posts (i.e. headphones, odd work hours, work from home, etc), and your not-so-great people will be unproductive.

      2) Provide easy access to an energetic, yet practical programmer/system architect.

      The best thing to help me get in the zone is excitement about how the next mini-milestones will turn out, and a clear concept of how to get there. When I'm having trouble finding the zone on new code, it's usually because I have a foggy idea of what it's going to do today, or how I'm going to make it to that. To relieve this, I need to talk out these issues with an energetic coworker. This is not time for a visionary! It's time for someone who is positive and encouraging, but who is immenensly practical. The goal here is to simplify and figure things out, not to expand the vision.

      This is the strongest part of eXtreme Programming's pair programming techniques, as you always have someone to do this with. Although not everyone can successfully play that encouraging yet practical architect role.

      If you are not pair-programming, there should be someone who pro-actively runs around to see who needs to be jump started and then does it without being asked. When I'm managing others, this is what I spend a good deal of my time doing. When I'm programming, I routinely need someone to do this for me.

      3) Provide detailed short term deliverable lists.

      When I'm having trouble working on bugs or misfeatures, it's normally because I don't know where to start. Most small bugs don't take very long to fix, and most large bugs become interesting in the search for truth. However, when the list is really big and un-prioritized working on any one of them feels very arbitrary.

      Eliminate this confusion by delivering a SHORT list of which of these bugs are the most important, and assign them to SPECIFIC people. Bug tools which make all bugs accessable to everyone are great resources, but they are not necessarily good task lists. Give me a list of 5 bugs you want fixed this week before I do anything else and I can probably fix them today. Give me a list of 40 open bugs to look at myself, and I'll just work on my other projects unless one of these bugs gets in my way.

      Again, when I'm managing, I spend lots of my time doing just this. Keeping the list of stuff each person "needs to do this week" really small. This also makes it much easier for them to see whether they are making any headway.

  64. What does it for me by yogi · · Score: 1

    Doing something interesting. That's a sure fire way to get me in the zone. It's not too hard for me to acheive, since I can find anything interesting -- even mowing the lawn.

    The trick is to stay in the zone for as long as possible. I listen to music on the iPOD, which keeps me out of the flow of conversation in the office around me. Normally rock or dance music, but to be truthful, although something a bit more classical and soothing does make me more productive - I've seen a number of people who swear by Mozart. Listen to internet radio, or a big MP3 collection so you don't have to change CD's / minidiscs etc. Having to pick the next tape can throw you.

    Contrary to other many other programmers, I prefer to work during the day, since I don't have the problems getting terminal time. At night, you start to fall asleep. Unless it's really interesting.

    Take a break to eat / drink / leak etc when you hit a gumption trap. The distraction nearly always gives you the perspective to get going again. Don't take a break to go to a meeting

    Make you desk comfortable. Make your desk big. That way you can fit keyboard, mouse, monitor and the manuals in from of you. Use a good monitor, mouse and keyboard. No good trying to program with a bad back. The chair is probably more important here than the desk. Make sure it has arms. Work in a room with a window.

    And finally -- work with a rubber chicken on your desk. Those guys rock at GUI design.

  65. One Short Month... by ignatzMouse · · Score: 1

    There was this period when I was working for a startup before we had an office. I had a nice fat laptop and did almost all of my work at this Irish style pub in Albany. Black and Tan; good Churchill cigar; it was heaven. Even the meetings I had there were fun.

    Then they got an office in downtown SF. Suddenly it was nothing but pure headaches. The only way I could get anything done was to pull all-nighters.

    At least I had that one short month.

    --
    No artist tolerates reality. -- Nietzsche
  66. Lack of distraction by Codifex+Maximus · · Score: 2

    Distraction in the form of interruptions, physical discomfort - hunger, thirst, cold, heat, ergonomics, additional responsibilities like supporting users, meetings, worrys about money, lack of research materials, stability of and ease of use of integrated development environment... all these things detract from the coding experience and getting in The Zone(tm).

    Things that make getting in the zone easy:
    Tools that make sense and are powerful.
    A keyboard that is intuitive.
    Easy to use programmer's reference.
    Stable OS that doesn't crash all the time taking yer whole programming setup down with it

    --
    Codifex Maximus ~ In search of... a shorter sig.
  67. As I get older, different things do it for me by Anonymous Coward · · Score: 0

    When I was a teen, just being awake was conducive to hacking and writing code and working on hardware. As I get older, I find myself more and more preoccupied by daily "life stuff".

    I find a good walk, or bike ride, or workout (vertical or horizontal ;) ) often lets me refocus more clearly later on.

    There's no set of rules, though. Sometimes just good night's sleep helps.

  68. different zones for different mindsets by Anonymous Coward · · Score: 0

    "The zone" is a mental state and so what you're really trying to do is influence your emotional and psychic state to be one conducive to programming. Although furniture and lighting make a difference I think the more important aspect is to create the right type of mood, or rather to affect your mood to move towards programming. At different times I can have tremendous nervous energy, be sleepy, vacuous or relaxed. It's about making those states work for you. When I have a lot of nervous energy I have to be sitting in a chair that lets me sit tall and direct myself forward. When I'm in a relaxed mood I honestly program best sitting on a couch or reasonably comfortable chair with the television on in the background. I can program 90 quality hours a week like that with no problem. So if your workers cannot work at home, make the work environment adjustable to a person's mood. Then talk with your employees about their ability to concentrate, what would help them concentrate and suggest to them ways to reminds themselves why it is their doing what they are doing (money, stock, or some silly belief in what the product stands for - whatever works for them). The best thing for me is to just think for split second about the fact that I'm programming to keep my job and I'm trying to keep my job for the money. Great motivator, especially in this economic clime.

  69. Retirement by N8F8 · · Score: 3, Insightful

    I figure in another 12 or so years my kids will be grown and out of the house and my wife will finally stop talking to me. Short of that I figure I'm sill "practicing" my craft till conditions become ideal.

    Even after ten yeas of marriage my wife still doesn't "get it" that each interruption costs me at least 20 minutes to get back into the groove. Thank god the programming I do for a living isn't really complicated.

    I find my ideal times for working are from 10am-noon and 5PM to 1AM. Not particularly good when you have a family.

    --
    "God fights on the side with the best artillery." - Napoleon, Marshal of France - speaking truth to power
    1. Re:Retirement by 0x20 · · Score: 1

      I know. My wife still doesn't get it that each interruption costs me at least 5 frags. Thank god I play against a bunch of losers.

  70. It's different for everyone by saddino · · Score: 1

    For me, I need a well lit room, with absolutely no sounds (i.e. no music, no telephones) and a steady supply of snacks and soda. If you're like me, and work from home in an apartment building or townhouse, then the quietest time is midnight to five in the morning....ah, bliss. :-)

  71. Go with what works by Anonymous Coward · · Score: 0
    As someone who suffers (and benefits) from ADD, getting into the zone is a huge issue for me. Here are a few things that work for me. Your mileage may vary.

    - Live in a small town: I found that city life -- and city traffic -- adds several hours a day of frustration to my life. I commute five minutes to work and anywhere else I need to go. My cars last longer, my money goes further, and life is just generally simpler. Admittedly, more than a little luck was involved in finding a good high tech job in a small town. Try a college town.

    - Casual wear: I avoid work environments where I need to wear a suit and tie. Dressing and laundry are harder for me than most people would believe (though not most ADD people). I can wear jeans and a tshirt every day of the week.

    - Exercise: I've found that a moderate amount of exercise in the morning clears my brain. Sloth make programming harder and high-end exercise doesn't seem to improve anything.

    - One yellow sticky: This is one of my favorite ADD-busters. I always keep one yellow sticky posted next to my computer reminding me of what I'm working on. (No, not the same yellow sticky, I rotate them through. :-) ) That sticky has a single short sentence saying what task I'm trying to accomplish. My mind tends to wander, and office-mates, phone calls and Slashdot make it wander even further. My yellow sticky helps me come back to the task at hand.

    - The right combination of caffeine, sugar, and ramen: Just in case the exercise statement above made you think I'm a health-nut, this should dissuade you. If I find that I can't get my wheels turning, a latte or hot-chocolate usually helps. Ramen is also an important part of my brain helpers... it just seems to perk me up and sustain me for several hours.

    - Break problems down into ever-smaller problems: when I hit the wall with one of those nasty programming tasks, I avoid panic (a big problem for me) by breaking it down into ever-simpler tasks. Sometimes they become as simple as "log in". I find that as long as I continue to make some progress -- however slow -- I can usually slog through any problem.

    - When the going gets tough, quit: If I really just can't get my wheels turning, I just give up for a while. I peruse Slashdot, go exercise, or (if politically possible) take a nap. I usually find that if I get away from it all for a couple hours I come back rejuvenated, often with the problem already subconsciously solved.

    - When I get into a groove, go with it: If my wheels are turning and the code is flying, I go with it, all night often. It's hard enough to get into the groove without throwing it away when I find it.

    - Most important of all, go with what works: Throughout my life I've had to listen to people tell me what I really need to do to concentrate. They were all full of shit. None of them understood the difficulty of having ADD. One of the most important epiphanies of my life was when I realized that I study and worked better than most people if I just do it my way. I tend to work in ten minute bursts and then screw around for a couple minutes. That works for me and the hell with the people who say "pace yourself, don't work in bursts". I stay up all night often even though most people find that somehow "wrong". Go with what works for you and the hell with everything else.

  72. headphones... by BrodieBruce · · Score: 1
    I've got to say headphones. When I need to program, I always turn off the speakers and switch to headphones. That way you can listen to music soft enough to "hear" yourself think, and you can block out noise from elsewhere.

  73. Still haven't found it, but... by cylence · · Score: 1

    I'm still experimenting in trying to find the optimal conditions, but I at least note that the Zone differs very greatly depending on what I am doing.

    For design work, which typically involves heavy analysis and general thinking, I need it very quiet, and lots and lots of light. Big freakin' notepad (white is best), with mech pencils.

    For coding, after all the really heavy thinking has been done, I typically want blaring music - almost invariably I play stuff from The Prodigy; especially from "The Fat of the Land"; especially "Breathe", "Smack My B---- Up", "Funky S---", and "Mindfields". Something with a fast beat sets a good pace for my fingers on the keyboard, but I simply can't think if I play that stuff while trying to design. And I haven't tried it, but I wouldn't be surprised if I'd like dark for coding as much as I like light for design - but it'd have to be at least light enough to read by, in case I need to refer to something in the design. Maybe some sort of twilight'd be best.

  74. Shoes by obiwade · · Score: 1

    I always program better when I am wearing shoes. As soon as I take them off my brain turns off.

  75. My zone= 4 or 5 programmers that can fix my probs by taya0001 · · Score: 0

    This has always worked really well for me :)

  76. 2 things.... by phear51 · · Score: 1

    Mt. dew and a snickers!

  77. Da zone... by Corporate+Drone · · Score: 2, Interesting
    * a comfortable enough workstation that I don't get uncomfortable in 20 minutes or so of intense activity

    * a source of music just loud enough to block out office noise, but not loud enough to make me notice it. (If it's music I really *like*, I'm in trouble, since I'll pay attention to the music.)

    * A phone with a ringer that I'm able (and allowed) to shut off and/or let calls go straight to voice mail.

    * an email client that I'm allowed to configure to not notify me of arriving emails

    * a cubicle out of the way of major foot traffic

    * orientation in the cubicle so that I don't feel that people are looking over my shoulder (I don't care if i can see them coming -- what i hate is the feeling that i'm being "vultured" -- a sure fire productivity killer for me).

    * the ability to get up, walk around, and think through things. given a 5-minute walkaround (not, mind you, an excuse to visit my neighbors), i can begin to get in the zone before I start coding / debugging / whatever.

    phone and email are the worst -- especially when they're combined with a mandatory response time standard set by the company.

    --
    mmm... yeah... You see, we're putting the cover sheets on all TPS reports now before they go out...
  78. I sort of agree... by Da+VinMan · · Score: 2

    To my way of thinking, the only barrier to the zone is physical deprivation of some sort (e.g. sleep) or fear. Sometimes, working on the problem can be hard because you've let it intimidate you. If that happens, then it's time to turn off the computer and work on the problem on paper. Go back to the computer when you've developed some idea of how to start.

    "The zone" isn't artificial, but it may come more naturally to some than others. Consider yourself lucky.

    --
    Please mod this post only if you think others should/n't read this. I have enough ego^H^H^Hkarma. Thanks!
  79. The StrudleZone by Strudleman · · Score: 1

    Many slashdotter's have referenced their environment (dark, quiet, your own chair, your own machine, etc..), and these are very important. But the problem is, after a few days at your new job, or in your new office, you've already got these things set up and you're still not in the 'zone' from 8 to 5.

    Mental preparations need to be in place if you really want to achieve something. I start out my day with a healthy dose of slashdot. Read about techy things, read up on the latest programming project, get those wheels spinning. And then take 5 minutes, grab a random piece of code, and optimize it. I find that the moment that I pull off something clever, I'm in the Zone.

    Also, once you get to the zone, leave it often. Smokes work great here. Hit a snag? Run into a road block? PHB's getting you down? Take 5 minutes and have a smoke. 5 minutes away from your computer, staring at something other than your code, often free's the mind up. Leaving the cubicle helps you 'think outside the cubicle'. And that my friends, is where the Zone is.

    --
    Do it doug.
    1. Re:The StrudleZone by Jonny+290 · · Score: 1

      On the contrary, I find that smoking is a HORRIBLE detriment to productivity. I'm a six-year smoker, desperately trying to quit. Why? Because like Pavlov's dog, every time that clock comes close to the top of the hour, I start to fiddle with stupid shit and just read slashdot until the hour comes, then I go take a break. Sure, for 45 minutes, it's all good, but 25 percent of my workday is spent going "Well, fuck, I need a smoke."

      Quit now, and go out and have a piece of gum or candy, or something like that for your interruptions. Don't treat such an addictive chemical like a "diversion" - it's a slave master. And you're the slave.

      --
      Hey Taco! Looks like you're using the "infinite monkeys and typewriters" scheme to generate Ask Slashdots again...
  80. the zone is inside by unk1911 · · Score: 1

    the zone is something internal and comes spontaneously, like a good hair day. the immediate surroundings are of no consequence in my opinion. if only there was a way to steer that "good wave" , make it last longer...

  81. Tune out the world by div_2n · · Score: 1

    All I need is a set of headphones and music to tune out conversation, ringing phones and the like.

    That and a constant IV drip of some flavor of caffeine.

  82. EXTREME PROGRAMMING! YEAH! by JMZero · · Score: 2

    EXTREME PROGRAMMING is edgy!

    And it's already well advertised here. I think anyone who's been programming for 20 years has probably heard about it - here if nowhere else.

    For me, "finding the zone"=="taking the phone off the hook". But unfortunately that's a super extreme way of losing my job.

    .

    --
    Let's not stir that bag of worms...
  83. sound problems by Anonymous Coward · · Score: 0

    if some of you need absolute silence then why dont you just get one of those headphones that produce white noise.

  84. Help! by CaptainCarrot · · Score: 2
    When I was just starting out, I'd slip into the Zone almost without effort. Now, after nearly 20 years as a professional, it's becoming more and more difficult. I can still turn out some fairly spectacular code when I'm on, but getting there now involves so much caffeine that my stomach reacts badly. I only do it for emergencies these days.

    It doesn't help that Whoop-Ass, which is the only energy drink I've found that really works for me without tasting like, well, ass at the same time is apparently no longer sold in California. (Neither is any other Jones Soda product AFAIK.) I think I'm going to have to import my own supply.

    Distractions certainly don't help. /. is among the worst. :/

    --
    And the brethren went away edified.
  85. To the zone by Anonymous Coward · · Score: 0

    1. An office with a door.
    2. The phone ringer off.
    3. The email client shutdown.
    4. My web browser shutdown.

    I have ADD and just seeing someone walk by my office is enough to distract me.

    5. Lots of empty desk space.

    It doesn't stay empty for long, when I'm in deep code I have manuals open, scrach paper all over, and it looks like a bomb went off.

    6. A really comfortable desk and chair, the monitor at the right height...

    It really sucks when you develop a major knot in your neck from bending over to look at the monitor.

    7. Room for the feet to strech out. I hate kicking machines, and pulling cables when I strech out.

    8. A fast machine, a big monitor, and a good editor (Visual Slickedit preferred).

    The more text I can fit on the screen at once the happier I am. The faster the machine, the faster I am.

    9. A bunch of scratch paper.

    I'm always needing to write down small things. A variable name here, memory address there, variable values from the debugger, the stack pointer right now. I always need paper.

    10. Liquids - Water, soda, whatever, it needs to be the appropriate temperature and on my desk.

    11. Food - When I'm having to work late food better be provided. I'm not staying late if I'm hungry, and I'm not spending my money for dinner when the company is getting free overtime, and I'm not doing chasing things down to do the re-imbursement paperwork. If the deadline isn't important enough for the manager to make it easy to work on the project then the project isn't important enough for me to work overtime on it.

  86. Tube socks and a cock ring.. by Anonymous Coward · · Score: 0

    are all i need for optimal coding conditions.

  87. My Two Cents: by John_Booty · · Score: 2

    Most of the posts so far have focused on creature comforts. The NUMBER ONE THING that gets me out of the zone, though, isn't a creature comfort or lack thereof. It's FUCKING SPEC CHANGES (or a lack of specs). Holy crap, nothing else even comes close.

    I'm most in the zone when a lot of time is spent defining a good spec up front, and having good management that doesn't allow the client to break it with constant changes after coding has already begun. Then I can just bear down and WORK and turn out a clean, easily-maintainable piece of software, as well. Otherwise, it's spaghetti crap code that is hell to write, maintain, and debug.

    On the creature comfort side of things, a nicely-equipped computer is nice. It doesn't have to be a dual-SCSI, dual-CPU monster, but a 512MB of RAM and a nice monitor go a long way. With cheap RAM and monitors these days, this shouldn't be a problem... only another $200 or so over a barebones setup. Also, make sure the vid card and the monitor can both work together at high resolutions and refresh rates, please! Some offices "splurge" and buy cheap 19" monitors, but workers are still stuck at 1024x768 at 60hz or some shit. ;-)

    Being able to wear headphones to block out office noise is a must, too. That sounds like a silly demand, but I once worked at a place where headphones were verboten!

    --

    OtakuBooty.com: Smart, funny, sexy nerds.
  88. nice topic by sniggly · · Score: 3, Interesting
    • Dont laugh - I got the music midi files from descent 1 (the game) and have been coding to that - brings back memories from when programming wasnt work
    • Comfy chair!
    • 19" or greater monitor!
    • Code when you want/need!
    • Code at Home!
    • Take your fav keyboard & mouse along with your laptop
    • When you get an idea, GO AFK, once the idea gets some time to ripen you'll be all charged to tackle it
    But most of all make whatever you program a positive experience for your users. There's nothing like a "wow dude well done" from a happy user.
    --
    Of those to whom much is given, much is required.
    1. Re:nice topic by Banjonardo · · Score: 1
      midi files are a good one.

      I loooooove listening to the secret of monkey island 1 midis, plus the Mario Concerto, which you can find right here.

      --

      -----

      Score 3? For what? Being wrong, at length? - smirkleton

    2. Re:nice topic by sniggly · · Score: 1

      I should have done a bit of research :) Descent 1 music is here

      Anyone into descent check out Descent4.net

      --
      Of those to whom much is given, much is required.
  89. no distractions == in the zone by extrarice · · Score: 1

    "No distractions, no distractions, no distractions, no distractions"
    I can't harp on that point enough. It takes upwards of 30 minutes or so of munging code around to get in the groove and spit out decent code, whether that code be C, C++, Java, HTML, you name it. If I get interrupted, that's another 30 minutes or so to trace back a few pages of code, sometimes going back a few files as well, to pick up my train of thought again.

    --
    "Jesus saves, but everyone else in a 10 foot radius takes full damage from the fireball."
  90. I get in the zone when there are no /. articles... by orichter · · Score: 1

    I haven't been in the zone for about 3 1/2 years.

  91. This is an easy one for me by millz · · Score: 1

    Two words: "Mountain Dew"

  92. Zone Optimization by Anonymous Coward · · Score: 0

    Thanks for the post - Much to my surprise, I have also described this state as being "In the Zone" and I found it odd that someone else has referred to this state of high development productivity with the same terminology.
    I work in a small office with 2 support people and a lot of foot traffic and phone ringing. I found it so "zone state destructive" that I purchased a pair of noise cancelling headphones. I highly recommend noise cancelling headphones in a noisy environment.
    A. Coward.

  93. I know what you mean. by sideshow · · Score: 1

    Even when my boss sneaks up on me and find me fucking around I'm able to makes some excuse like: "I'm just trying to find examples!"

    --

    Hollow words will burn and hollow men will burn.

    1. Re:I know what you mean. by T3kno · · Score: 2, Funny

      Heh, I'm trying to convince my boss that /. is a snazzy front end for CPAN :)

      --
      (B) + (D) + (B) + (D) = (K) + (&)
  94. Comfort zone by tz · · Score: 2, Insightful

    In the afternoon or evening, I can get in the zone almost immediately. And I can often stay nearly indefinitely, as long as I'm not forced out. I can handle only so many interruptions - the worst are those that pose another problem that I can't immediately work on but can think about. My mind will try forking and multitasking. Other interruptions are less severe (to get something to eat, etc.), especially when I can control when to do them - after finishing a major section instead of in the middle.

    An office with lots of linear desk space to each side with a printer nearby (which supports the HP small lineprinter font) and highlighters (when I refactor, I usually take the listing to another room and start marking). A nearby caffeine supply, usually a large cup of coffee, or something else so I don't have to feel thirsty. A way to silence my phone or otherwise insure only critical calls get through. Basically freedom from external or internal distractions.

    A large, LCD screen. Something like the Apple 22" Cinema is optimal, but a large CRT with subdued lighting is also OK. I want to see several pages of information onscreen. Overlapped or iconified windows don't count. Otherwise subdued lighting, full spectrum, and/or task lighting. Especially with CRTs - they tend to bloom and blur at higher brightness. A comfortable chair - this might be a posture chair or stool. The idea here is to prevent fatigue, generally, and from having to fiddle with the UI to view what I need to.

    A reasonably fast computer. My train of thought derails if I break too often. The toolset I use is fast at grepping or otherwise searching and editing and recompiling. When I finish with a set of changes I should be able to keep focus.

    Flexible time. Some people are morning people, others are afternoon people. I am a night person. This is good in that I can work productively until 4am if needed, and in fact I can't sleep much earlier if I keep thinking of solutions or things I want to try. Often I can keep going until I finish something then realize how tired I am and realize that the eastern horizon is rather bright. But if it is too early, I can't get started. I can find 60 ultraproductive hours per week, and sustain that, but few of them occur between 9 and 5.

  95. what works for me.. by Cenam · · Score: 0

    .. is to sit at the computer and start coding, no need to arrange anything anywhere..

    --

    The Truth: There is no string:)
  96. the anti-zone by kisrael · · Score: 3, Interesting

    Lately I've been having some intermitent trouble with the anti-zone; where you just can't get jack-squat done. You hit slashdot, Usenet, go through various sites, anything but the task as hand.

    I'm getting it under control, but sometimes there's just this huge inertia you have to overcome. But luckily that's intertia in both the difficult-to-start form AND the easy-to-keep-going senses of the term.

    --
    SO YOU'RE GOING TO DIE: The Comic for Dealing with Death
    1. Re:the anti-zone by beowulf_26 · · Score: 1

      I've been having this same problem as well. Any thoughts on how to fend off the anti-zone?

      --

      --I hate big sigs.
    2. Re:the anti-zone by mojo-raisin · · Score: 1

      I think the key is not try to multitask. During the internet boom people who could multitask well were considered amazing. I've tried to keep a bunch of things in my head at once (keeping up on /., etc), but it doesn't work - I get nothing done.

      I'm going to have to pick one and only one thing to work on at a time and focus on that. Once I finish that, I'll make the decision of what to work on next.

      That's the play, anyway.

    3. Re:the anti-zone by Anonymous Coward · · Score: 0

      For me, it wasn't a lack of things to do, by any means. My problem turned out to be not having a clear place to start.

      I finally "solved" the problem (well, one area, at least) by making a huge web page that was one massive unordered list. Every item on the to-do list and beyond got an entry, and then I sorted it according to release goals.

      Previously, the list of stuff to do was scattered all over the place - archived mails, notes in the source tree, a TODO file somewhere else, and so on. It was just too fragmented to really track properly.

      Since I created that file, that project has been a whole lot easier to push along. Whenever I feel it needs more done to it, I just pull up that page, knock out some items, scratch them out, and move on to something else.

    4. Re:the anti-zone by mojo-raisin · · Score: 1

      I should add, that I realized this aftering reading that the batch method is the way Knuth works.

    5. Re:the anti-zone by Tomster · · Score: 1

      I've found lots of possible causes, listing what I can think of at random:

      Burnout. Solution: take a vacation during which you do as little as possible. Get your mind back in working order. Enjoy yourself.

      Stress. This could be work stress, or personal-life stress. I'm fighting a lot of both right now. Solutions: one, find a (healthy) way -- or ways -- to relieve the stress. For me, it's a combination of relaxing, physical activity, and giving myself little treats. This doesn't address "root cause", but it makes life much more bearable and helps give you the energy to carry on. A vacation can be a temporary help here too, but it's a bandaid -- it won't solve the issues causing you stress. Two, think about what's causing the stress. It's either something you can do something about, or it's something you can do nothing about. If it's the former, do what you can. If it's the latter, forget about it. If it's the "I'm afraid [something bad] is going to happen" anxiety, come up with a couple of strategies for handling that situation. Just having a plan helps. Finally, sometimes you can change your attitude -- the way you think about the thing that's causing you stress. Sometimes this is just taking a new perspective: yes, it would be a bummer if you get laid off -- it's not a great time to be looking for work. But it's not such a big deal compared to, say, being in a car accident and losing two fingers.

      The work is "stupid", "boring", a "waste of time", etc. The problem here is one of rewards. You get paid for being at work and getting the job done... but that's sometimes not enough motivation to actually do the work. Solution: set up your own reward system. For example, saying Okay, I'll work on this for two hours, and then I'm gonna browse Slashdot for twenty minutes. If you have a good manager, maybe he can help here -- for instance by giving you something more interesting to work on.

      Getting overwhelmed. You have so much on your plate you don't even know where to start, and it feels like there's no point in starting because you'll never get it cleared. Solution: first, accept that the plate will never be cleared. Second, accept that this is not just okay, but it's perfectly normal. Third, work with your manager to prioritize your tasks and time. If he can't/won't help, come up with your own scheme. If it doesn't work, your manager will come around and help :). Fourth, break things down into tasks that are do-able in a "unit-of-effort" timespan that works for you -- whether it's two hours or two days.

      Depression. Go see a therapist or psychologist. In fact, a therapist can be an awfully good idea regardless of what you think is the cause of your "anti-zone". Forget about the stereotypes and the fear of being stigmatized. There are people out there who can figure out your brain and improve how it works just like you or I can work on a program. (Well, just like I can; I don't know about your coding skills.... ;-) And that's actually a pretty apt analogy: they can help you debug, optimize, and rewrite the code that runs your brain.

      Whew. Well, hope you get something useful out of all that. :)

  97. the conherent music theory :) by fandelem · · Score: 1

    i must concur: if you can understand the music,
    enough to sing along or have it register as anything
    beyond 'just music' you are taking away from your overall
    concentration.

    this is why ambient / electric-ish type of music
    is preferred among people, because there's nothing
    really to pay attention to beyond 'just good music'
    or 'just good beats'.

    my .02 cents :)

    kyle

    --

    --even a broken watch is correct twice a day.
    1. Re:the conherent music theory :) by Dave_bsr · · Score: 1

      JAZZ!!! nothing like good ol' boppin music for me. from a slashdot link:

      Jazz, from germany, it's so good. especially if you have bandwidth for it.

      --


      Who is this Anonymous Coward character, how does he post so much, and why is he always such a whore?
  98. The Zone by ruckc · · Score: 1

    I get into the zone for my development, when its late at night and i was almost on the virge of sleep. My best programming is done from midnight to 4:00 am. Also, i do it laying in bed with my trusty HP laptop that is running XP (linux has hardware problems). Phone calls & emails ruin the zone. Also music, it needs to be rock & rap, something with a good strong beat, stuff i am decently familar with and can sing along to.

  99. The zone is in the mind... by agent+oranje · · Score: 1

    Personally, I think that most of "the zone" is just a state of mind, not necessarily what is around you. Personally, I have two phases of tearing through code, hardware design, whatever...

    1) Chain-smoking thought phase: Pretty self-descriptive. I essentially get a bunch of white paper, a good writing surface, and chainsmoke in front of my fishtank, tearing through whatever planning and basic design needs to be done.

    and then,
    2) Production: Once I'm confident my plan will work, and I can assemble it all without having to think too much, I plop myself on my machine, put on some good tunes(Akira soundtrack, something energetic that makes you want to destroy), and go at it. Assuming part 1 went well, debugging is usually quick.

    Eh, it works for me. Just chunk up everything into manageable pieces, and tear them a new one in a quick swoop.

    Of course, my most productive hours are 3am-6am. So, I could just be insane.

    -- i could eeeeven eat a baby deer. falalalaalalala lala!

    --
    -agent oranje.
  100. ... weed. by edrugtrader · · Score: 2

    weed and beer. mostly weed. well, and beer.

    --
    MARIJUANA, SHROOMS, X: ONLINE?! - E
  101. What works for me by Anonymous Coward · · Score: 0
    As someone who suffers (and benefits) from ADD, getting into the zone is a huge issue for me. Here are a few things that work for me. Your mileage may vary.

    - Live in a small town: I found that city life -- and city traffic -- adds several hours a day of frustration to my life. I commute five minutes to work and anywhere else I need to go. My cars last longer, my money goes further, and life is just generally simpler. Admittedly, more than a little luck was involved in finding a good high tech job in a small town. Try a college town.

    - Casual wear: I avoid work environments where I need to wear a suit and tie. Dressing and laundry are harder for me than most people would believe (though not most ADD people). I can wear jeans and a tshirt every day of the week.

    - Exercise: I've found that a moderate amount of exercise in the morning clears my brain. Sloth make programming harder and high-end exercise doesn't seem to improve anything.

    - One yellow sticky: This is one of my favorite ADD-busters. I always keep one yellow sticky posted next to my computer reminding me of what I'm working on. (No, not the same yellow sticky, I rotate them through. :-) ) That sticky has a single short sentence saying what task I'm trying to accomplish. My mind tends to wander, and office-mates, phone calls and Slashdot make it wander even further. My yellow sticky helps me come back to the task at hand.

    - The right combination of caffeine, sugar, and ramen: Just in case the exercise statement above made you think I'm a health-nut, this should dissuade you. If I find that I can't get my wheels turning, a latte or ho-chocolate usually helps. Ramen is also an important part of my brain helpers... it just seems to perk me up and sustain me for several hours.

    - Break problems down into ever-smaller problems: when I hit the wall with one of those nasty programming tasks, I avoid panic (a big problem for me) by breaking it down into ever-simpler tasks. Sometimes they become as simple as "log in". I find that as long as I continue to make some progress -- however slow -- I can usually slog through any problem.

    - When the going gets tough, quit: If I really just can't get my wheels turning, I just give up for a while. I peruse Slashdot, go exercise, or (if politically possible) take a nap. I usually find that if I get away from it all for a couple hours I come back rejuvenated, often with the problem already subconsciously solved.

    - When I get into a groove, go with it: If my wheels are turning and the code is flying, I go with it, all night often. It's hard enough to get into the groove without throwing it away when I find it.

    - Most important of all, go with what works: Throughout my life I've had to listen to people tell me what I really need to do to concentrate. They were all full of shit. None of them understood the difficulty of having ADD. One of the most important epiphanies of my life was when I realized that I study and worked better than most people if I just do it my way. I tend to work in ten minute bursts and then screw around for a couple minutes. That works for me and the hell with the people who say "pace yourself, don't work in bursts". I stay up all night often even though most people find that somehow "wrong". Go with what works for you and the hell with everything else.

    1. Re:What works for me by christfokkar · · Score: 0

      I suffer from the inverse problem, which is AAS, or Abnormal Attention Span. When most of my fellow programmers are gee-whizzing the soda delivery, I'm usually stuck in a brain-loop over some programming problem. When they go home at five, I can't resist the urge to stick around and run more tests.

      It sounds like a blessing, but it's a curse in disguise. My teammates usually like me at first, but over the long run it's difficult not to show them up. Managers like me even less, because five minutes into a conversation it becomes apparent that I've thought through their business model much more than they have. Interviewing is even worse, try explaining to an interviewer that programming is essentially irrelevant and that most coding problems will resolve themselves if everyone simply slows down and concentrates on the task at hand.

      I do love myself, but it's not entirely my fault. I went to school for CS and it just made my problem worse. After taking a few CS classes, I found myself really able to plan and articulate a project in advance. I took this skill into the workplace and now everyone looks at me like I'm some sort of alien.

      My behavior is all weird to them. I fix bugs without being told, I iterate software and add features as needed. I test a lot, my documentation is more interesting than the code, and the code itself is fast and virtually bug-free. With all my crazy ideas about 'planning' and 'taking the long view,' people are always surprised when I get my work done. It's usually better than theirs, and it pisses them off.

      Thus, AAS is a serious condition for me, because it means I am always one step away from insubortinating myself out of a job. I need coping mechanisms, and these, I find, work the best:

      1. Avoid management. The less they know about me, the more they will assume that I'm just another mindless drone.

      2. Let the weird guy run the project, even if it hurts. Might suck for the customer, but hey, I'm just here to do a job.

      3. Dress down, leave fashion, taste, and lifestyle at home. No reason to scare the zoo animals at the office with the idea that I'm even better at living than I am at programming.

      4. Work the social aspect. Like I said, my workmates tend to look up to me at first, so if I can make friends with them they become great allies. But in some workplaces, there is so little social networking that this isn't even an option.

      So really what it boils down to is remaining inconspicuous. It's impossible over the long-term. Sometimes I wish I could give myself a lobotomy. If only I could find a way to be stupider, I could build myself a killer career.

    2. Re:What works for me by Anonymous Coward · · Score: 0
      If only I could find a way to be stupider, I could build myself a killer career.

      ... that or you could stop being an arrogant jackass who's convinced himself that his only problem is that he's smarter than everyone else. (Worked for me.)

  102. The way to reach the zone by Anonymous Coward · · Score: 0

    is to get out of your mind. Focus on your work with no agenda. Your mind limits you in many ways but it can be overcome by getting out of it. The mind is not a useless tool but rather only part of the complete tool and it is time to integrate every part of you.

    Tom E

  103. Worst distraction. by Anonymous Coward · · Score: 0

    Being able to see anyone nude with a mouse click away. So i think the overall answer for this would be "Being a male.".

  104. Prone Position Please by mccotter · · Score: 4, Interesting

    I work from home and code on the ground. There is something comforting about being close to the earth.

    I don't see how people can code while sitting at a desk for 10 hours straight.

    All I need is a bean bag, a six pack of diet pepsi, and a few exercise 'pep' pills with ephedrine (I ususally code after working out....yes there are bodybuilding geeks out there).

    If you get tired you just mute your computer and plop your head on the laptop. I promise you that it is PURE joy.

    Don't knock it till you try it....

  105. My own list.. by Forkenhoppen · · Score: 2, Insightful

    I find that, of all things, listening to cheesey pop music, or something with a good beat helps me function through the day... though I should point out that the main and major component that gets me in the zone is headphones. Get yourself a good pair of high-quality headphones, and only wear them while you work. Pump something through them that'll keep you awake, and the blood pumping, preferably something either without lyrics (Crystal Method, maybe Moby) or with really stupid, cheesey lyrics that you've heard over and over again already. (I prefer Aqua myself.) If a slow song comes on, take a break! Just the fact that the song has come on will have already altered your mood, so take the break while you can. (Unless, of course, you're really in the zone, in which case you won't care and you'll just skip ahead..)

    I should point out that if you're using winamp, you really need to get one of those hotkey plugins so that your windows-c is mapped to pause and windows-b is mapped to skip ahead. Otherwise, you'll spend too much time when skipping the slow tunes, and it'll knock you outta the zone. (Besides being helpful in skipping songs, it'll also help if you're too deep into the zone, and really need to think about something.)

    Last thing I'll mention; water. Make sure you have water nearby, and you're drinking it. Besides it being healthy for you, keeping you dehydrated, and keeping you from drinking caffiene, (which despite what most people'll tell you, will actually drain you of energy and shorten your zonage) it'll also force you to take regular breaks (to use the washroom) that won't affect your zoneage! (I have discovered that this is perhaps one of the few ways to force oneself to take regular breaks that doesn't continuously break my zoneage. As amusing and silly as it may sound, I highly recommend it. : )

    So anyways, to summarize, my tips:
    - good high-quality headphones
    - up-beat music (not too up beat, though; avoid raver stuff that messes with your aural depth perception; it'll just distract you..)
    - good winamp plugin for hotkeys
    - water!

    Oh yeah.. and I find that being in a bad posture helps too. But I'm not gonna recommend that to anyone; I'm already experiencing the negative effects of that one, so..

  106. A tight deadline.. by unorthod0x · · Score: 1

    There's few things I hate more, but what incredible motivation to have to get something done by a certain date/time. I'm sure a bunch of you will agree that you find yourself forced in to "the zone" when your work is due the next morning.

    I suppose it all has to do with how you deal with pressure and how self-disciplined you are, but I found that I could harness the power of said "zone" when I set deadlines for even the smallest tasks that otherwise would only be in the form of a to-do list in my head. Granted, it makes life easier when I've got a lot of Iced Tea, Jolt or Cola at arms reach, have little or no distractions, am comfortable and have the repetitive beat of some fine techno playing in the background.. But when you come to that point where you're afraid to look at the clock because you just know you're running on limited time -- boy do things click!

    Of course it all falls apart in to a horrible disaster of dreaming up excuses (be it to your boss or yourself) and your stomach eventually knotting up in to a big ball of stress when you just can't find that 'catalyst of motivation' (tm) to get you in to that "zone".. But hey, it comes with the territory!

  107. Upgrade by prsabc · · Score: 1

    I I hit a streak where I can not get motivated I buy something new, I guess I get excited to use my new mouse or sit in my new chair and then I can relax and hack away, Note the more expensive the better,

  108. Pulling Tubes by Anonymous Coward · · Score: 0

    an icy mug straight from the freezer
    a 2 liter of Pepsi
    lighter
    sack of some really kind ganja
    1.5 foot bong
    pack of cigarettes
    and finally, queue up a few bitchin' live Grateful Dead shows in xmms

    This puts me in 'the zone' every time, YMMV.

  109. back burner by eternlvoid · · Score: 1

    im still undecided about this.

    my current method is:

    when i find a particularly twisted problem, i'll think about it, then do something else or nothing at all for a day or two .. get some sleep ... then when it comes to me, or time is running out, i sit down and write it out, talking outloud, sometimes explaining it to people who may or may not understand, and then i write it.

    I don't know if all of that could be condensed into just talking/writing it out in the first place and doing it, though i often convince myself i need the "back burner" thinking time.

    as for the environment, when im just starting, i need absolute silence, not a lot of people moving around, and i need to be at a desk or similar setup.

    but once I start going, it doesn't really matter .. the biggest part is getting the 'mindshare', and then you can just live in your own little world and pump it out.

  110. Streaming Internet radio! by SteelX · · Score: 1

    When I need to get into the zone, I need a semi-dark room, my laptop,... and streaming Internet radio! That is a must. And depending on what my mood is at that time, I can change radio stations when I wish. I've got a whole list of stations for different moods.. from groove and indie rock, to smooth jazz, to alternative. I can't stand a repetitive MP3 playlist.. I always need "new music", and Internet radio fits that bill just fine. Of course, that assumes you're bandwidth-endowed. :-)

    And yes I agree with some of you that web browsers are the prime distraction! Ok gotta get back to work... :-)

  111. Y'all hate feedback? by Anonymous Coward · · Score: 0

    I respect much of what is said - but hacking real systems requires you to listen to the users. Yup, close the door from time to time but always be willing to listen to your users the rest of the time (too many users? nominate an elite group).

    Even when they talk crap you are confidence building, and learning stuff that should be passwed on to trainers etc. even if you can't incorporate it.

    Without their feedback you aign't gotta chance. (Sorry for the anon coward, I'll create an account next time).

  112. Extreme Programming Books? by wbajzek · · Score: 1
    I've been very interested in this idea. Unfortunately, there are apparently 3000 books on the subject, not a single one of which has a name that indicates that it is the first in the series. In fact, the names don't even seem to indicate that they are a series.

    So, where do I start?

    1. Re:Extreme Programming Books? by bharlan · · Score: 2, Informative

      Kent Beck's "Extreme Programming Explained" is the first book to read -- and the first in the excellent Addison Wesley series. Also see http://www.extremeprogramming.org/

      --
      (Reality reasserts itself sooner or later.)
  113. Dude, you have to define the problem properly. by crovira · · Score: 2

    otherwise you're not programming. You're just coding. I get my machine to grind out code.

    Since I program in Smalltalk and write code generators for other languages (or even for Smaltalk,) you're obviously talking about a lower level of productivity that I have progressed far beyond.

    God, it must suck to be you.

    --
    MSBPodcast.com The opinions expressed here are my own. If you don't like 'em... Think up your own stuff.
  114. the Zone by ulbador · · Score: 1

    The zone for me is always achieved when the pressure is at it's highest, the cigarettes taste the sweetest, and there nothing in the world that can interrupt me. I'm not sure this is something that can be sought but rather just happens when most needed.

  115. For boring projects, it's difficult... by Bamafan77 · · Score: 1

    For interesting things, motivation isn't a factor. But for the most part, we are coding uninteresting things, even when we're coding stuff we want to code. Sounds like a conflicting statment, but it's true.
    I don't know about other people, but for me, I become very demotivated when I think about large boring projects with many boring moving parts. So I have to force myself to sit down and hack away at the boring moving parts in a "brainless" manner.(note: When I say "hack away", I mean the thought process of designing solutions to later be implemented, not the actual process of coding itself) Sometimes I get into the zone, other times I don't. Regardless, progress is being made either way, even if it means I'm designing and discarding bad ideas.

  116. "the zone" is all in your head... by Anonymous Coward · · Score: 0

    My guess is spend less time trying to find "the zone" and more time trying to produce "results." There are such things as brain food, chocolate, red bull, and coffee that may help someone reach their zen like state. There are also things called regular sleep, 3 meals a day, and getting to work on time that work just as well... BTW - get rid of the X-tReMe programming book.

  117. Change is a good thing by kLaNk · · Score: 0

    I have found a lot that change is often a really good thing.

    Perhaps laughable, but I have three keyboards that i keep connected to my dev machine (one split, one regular, and a touch type) and use each one on average at least once a week. The change in keyboard, since it is the main interaction that I have with my computer, keeps things feeling "fresh". Now, I throw this about keyboards out there, but even the rest of my coworkers laugh me for it. ;-)

    Also, in keeping with the general idea of change I normally change at least every 30 minutes how I sit in my chair. As sitting in the same position for too long causes me to feel fatigued and tired much faster than moving positions.

    Lighting. Basically, when I start a long stint of programming I like to have little to no light. But as time drags on and I become tired I progressively add more light as it helps to keep my focus and from falling asleep.

  118. I *need* a browser to code by TrixX · · Score: 2

    Sometimes is a distraction, but it's usually an excelent tool: My bookmarks menu is:

    * GTK+ Documentation
    * GTK+ Tutorial
    * GConf manual
    * Guide to teTeX documentation
    * Python 2.1.1 Documentation

    Besides, I use several automatic documentation tools for my code which generate HTML. They are a big plus to productivty.

    1. Re:I *need* a browser to code by curunir · · Score: 2

      LYNX!

      I find every source of information I need to program can be rendered pretty well by lynx. I also find that my urge to waste time browsing the internet is less when I'm using lynx. You can easily setup bookmark aliases in your shell's startup script to replace those in your graphical browser.

      Just deny yourself a graphical browser when you program and you won't have nearly as many distractions.

      --
      "Don't blame me, I voted for Kodos!"
  119. All about gettin' comfortable by Anonymous Coward · · Score: 1, Funny

    See we really just need to relax the rules about viewing porno on work machines and all those silly ideas about "public decency". A well-timed "release" can do wonders for one's focus. Good thing I work from home...

  120. Entering "Zone" by MegaGremlin · · Score: 5, Insightful

    For me, maximizing my time in the "Zone" is dependant on one major thing - physical fitness. The more energy I have, the longer I can work - and work well.

    I have a fairly easy system for achieving this.

    1.) I get up every morning at 5:00am and run 3-5 miles,
    2.) Shower (very important step, do not omit.)
    3.) Eat a good breafast (generally a piece of fresh fruit and some "healthy" cereal.)
    4.) Eat a healthy lunch.
    5.) Get out of the office during lunch, for a mental break.

    I avoid artificial stimulants at all costs.

    I find that I generally have much more productive time than the other people in my team, and don't spend 10 minutes on the hour servicing a coffee habit. My mind is clear all day. I don't suffer from the afternoon slowdown.

    Granted, I do fall asleep fairly early in the evening (around 10:00pm) but I provide more work to my employer, on a time schedule that is convenient to him.

    Think about that when the next round of layoffs begin.

    --

    .sig
    1. Re:Entering "Zone" by Anonymous Coward · · Score: 0

      Yeah, he's gonna fire you because you're creepy and also a cereal killer (as you've just confessed). My pet rabbit eats ceral, runs all day and he can't code worth shit.

    2. Re:Entering "Zone" by GunFodder · · Score: 5, Funny

      Sorry, I didn't make it past "get up at 5:00am" :)

    3. Re:Entering "Zone" by Anonymous Coward · · Score: 0
      Granted, I do fall asleep fairly early in the evening (around 10:00pm) but I provide more work to my employer, on a time schedule that is convenient to him.

      Think about that when the next round of layoffs begin.

      I think a self-aggrandizing, arrogant fuck like yourself would be the first target of the fat guy that got laid off when he came in with an Uzi. But that's just me.

      ~~~

    4. Re:Entering "Zone" by Anonymous Coward · · Score: 0

      Think about that when the next round of layoffs begin.

      Quite possibly the most self-satisfied post I've ever seen. What's even more laughable is your dellusional notion that employers actually give a shit about anything you just said when they start laying people off.

    5. Re:Entering "Zone" by Ledskof · · Score: 1

      I couldn't believe how ignorant the people were who responded to this.

      What was arrogant about this guys post?

      It's more like you true losers see someone who is actually deciding how they want to run their life, doing it, and then describing, and you immediately go into attack successful person mode.
      That's pathetic.

      The thing about layoffs. Well my company is about to do a lot of layoffs. I established myself as a valuable member of our team, so my odds are a little low of getting laid off. It's not like we work in mills. It's true, no matter how good you are at pushing carpet around or how much the other workers like you, you might get laid off anyhow, but it's different when you are a key member to a companies money making department, or a companies stability, even if there are 30 of you. Your effort matters. Keep that attitude that your effort doesn't matter and see how good that does you.

      That thing about the rabbit was pretty damn funny.

      --
      This is my sig. The post is over.
    6. Re:Entering "Zone" by Anonymous Coward · · Score: 0

      BWAHAHAHAHAHA!!!

    7. Re:Entering "Zone" by superyooser · · Score: 1
      Probably all the Anonymous Cowards (the name is perfectly appropriate here) who responded to the parent post are actually the same person. Notice how all the AC posts are short, vulgar flames. Some angry troll just went on a mad astroturfing binge to prop up his own viewpoint.

      This is a typical troll trick/attack. Watch for it.

    8. Re:Entering "Zone" by Xouba · · Score: 1
      I avoid artificial stimulants at all costs.

      I cannot stress this enough. I was a typical "2 coffees a day" guy, and after reading that it was, in fact, an energy drainer, I stopped taking caffeine at all.

      The result? Great. I thought I was not going to change much, but now I feel much more awake, and (though it seems strange) bear much better the loss of sleep. I'm usually sleeping between 6 and 7 hours a day (which is nothing I'm proud of; I'm trying to change it for the better, but real life keeps getting in the middle), and before I had terrible headaches everytime I slept less than 8 hours. Now I don't even remember when was the last time I had a headache. I don't feel that horrible feeling of tireness that many times I had. Well, except for the fact that I have too little sleep sometimes :-)

      What I've realized is that I have changed my day rythms. Before, I was pretty active and awake the first hours in the morning (just after having my first coffee), and then at mid-morning I was a little tired. Now it's almost as if I had a "slow start" engine, and though I'm quite bitchy in the early morning, I'm all right at lunchtime. Of course, having less or more work can change this :-)

      So, my advice would be stop taking caffeinated drinks AT ALL. You'll spend a few days quite sleepy and tired, but after that (only two days for me, easily bearable) you'll feel great. And I don't do any sport, but I'm sure that would be the next step to almost unlimited energy :-)

    9. Re:Entering "Zone" by Anonymous Coward · · Score: 0

      My version:

      1.) I get up every morning at 9:00am, smoke a joint and drink a cup of perculated coffee; should cook for about one hour.

      2.) Do not shower (very important step, do not omit.)

      3.) Substitue food products with caffeinated products (generally nine cups of a tripple expresso or a six pack of "Red Bull" and some "Penguin Mints").

      4.) No food at lunch; it spoils the buzz; maybe a six pack of beer to keep you from emaciating.

      5.) Get out of the office during lunch, to smoke a joint.

    10. Re:Entering "Zone" by Penis · · Score: 1

      run 3-5 miles,

      Given the physical fitness of many coders, the next step would be: die.

      Granted, I do fall asleep fairly early in the evening (around 10:00pm) but I provide more
      work to my employer, on a time schedule that is convenient to him.

      Think about that when the next round of layoffs begin.


      So, what's it feel like being a slave?

  121. The damn phone! by qslack · · Score: 2
    I find I do my best work between 8pm and 3am. I simply can't work when:
    • Other people are looking at my screen, asking me what I'm doing (!!!!!!!! ARGH)
    • Someone is talking right next to me
    • The heat isn't working (brrr)
    • The light is on (my office has shades that block out all glare, but the light is a crappy one from 1719 that pulsates annoy beams through your skull)
    • I'm being interrupted every 10 mins (I always lose my train of thought - more like matchbox car of thought, but whatever :)
    • I'm being ICQed every second (when I want to work, I set it to Occupied...is that too hard to understand? :)
    • A crappy song comes on (my MP3 playlist has every Final Fantasy song, and there are some pretty funky ones)
    • There's ambient noise, like lawnmowers. Even with my $4,000,000 noise-canceling headphones, I can still hear 100dB sounds. These headphones ARE great for droning out my fans and HDs, so, even with the music off, I can't hear a thing


    But the one thing that COMPLETELY annoys me and slices my train of thought in half...
    THE PHONE

    Argh! Brrrrrrring...brrrrrrrrrring....brrrrrrrring. Can anything be more annoying than the phone? Yeah, when the people on the other end are relentless in their quest to sell me a new mortgage opportunity (I wish I could tell them to look elsewhere than a 14-year-old who spends 100% of his income on computer stuff).

    Anyways...interesting thread. I hope it doesn't become a "write-only" one like these show-off ones often do. :)
    1. Re:The damn phone! by tetsuo13 · · Score: 1

      Other people are looking at my screen, asking me what I'm doing (!!!!!!!! ARGH)

      Jesus I hate that too!! At my work I usually (most always) have my boss hounding over my shoulder watching me, asking me, "What's that? How'd you do that? What's that do? Why are you doing it that way, instead of this way??"

      Maybe someone oneday will invent a monitor who's image is only viewable to the person directly in front of it.

  122. I find that by Anonymous Coward · · Score: 0

    two or three weeks of pr0n, Flash games, noodling around with "play" projects, and /. set me up for 1.5-2 solid hours of really productive work.

  123. Creativity vs book writing. by MicklePickle · · Score: 1

    Some of you seem to be missing the point that coding is very similar to book writing.

    There are several similarities:

    Creativity - if you don't have this, then neither coding nor writing will succeed.

    Finding the zone - most, (if not all), book writers PREFER to NOT be disturbed. This disturbes their train of thought. Writers, (like coders), like to envelop themselves in their story so that they can write better. Similarly, if a coder is on a train of thought they don't want to be disturbed either.

    Style - whether you're writing a novel, or cutting code your opinion and style will ALWAYS surface. Whatever you write will always be an extension of yourself.

    Debugging - You debug code, you proof read books. Same thing!

    The only differences I can readily think of, (correct me), is the fact that on big projects you have several coders, as opposed to writing books you always, (almost always), have one.

    Of course this highlights the question, "Are you talking about novels or other books?". Well, I think both apply.

    Also, all this doesn't mean to say that a good book writer will be a good coder - it's a different thing. Coders need to have both sides of the brain well developed, (technical AND creative).

    --
    -- main(s){printf(s="main(s){printf(s=%c%s%c,34,s,34) ;}",34,s,34);} $p='$p=%c%s%
    1. Re:Creativity vs book writing. by FyRE666 · · Score: 1


      Creativity - if you don't have this, then neither coding nor writing will succeed.

      Erm, not to burst your bubble here, but didn't Jon Katz write a novel?

      :-)

  124. It's all attitude by beyond_the_blue · · Score: 1

    First off, there's gotta be a need. Example:

    "Code-Boy, we need the web-page updated"
    "Code-Boy, I've gotta get my DNS bindings back up"
    "Code-Boy, where's my fscking database?"

    Then, there's the frame of mind. Usually it hits the best level just after dusk, after dinner, on a night that is not a school/work night. Complete relaxation, with the creativity flowing, nowhere to be, the day is officially over.

    It's best if I've got a tall, cold glass of Cherry Coke at hand, and also a glass of water, just for health concerns.

    Next of course, music is Über-Important: some Chemical Bros. and Gorrilaz sets it up nicely. That plus my patent-leather chair makes it comfy.

    Lastly, and MOST important, it's best if the girlfriend is not in the house at the time. I feel like too much of an @$$ sitting there in Da Zone while she sits there and stares at the back of my neck in boredom.

    All in all, it comes down to several key factors that come together to create a shell of complete and total immersion into my work. Comfort, relaxation, and no distractions.

    --
    "Sometimes you have fun, and sometimes the fun has you"
  125. Music (was Re:Crystal Method) by Grail · · Score: 1

    My favourite/most-productivity-inducing music comes from:

    • The Prodigy (Firestarter, Breathe)
    • Apocalyptica (anything)

    I find I program slowest when listening to:

    • Dixie Chicks (anything)
    • Boy bands
    • Girl bands
  126. My Boss by bobdown2001 · · Score: 1

    ...he's the biggest interrupter you could imagine!!

    Whenever I get anywhere near the zone he's gotta come and talk to me for ages about things that are totally unrelated to what I'm working on and then it takes even longer to get back to the zone after he's finished.

    I think it's import for managment to realise that they can't just barge in and interrupt production staff at a whim whenever they choose to.

    What we've tried to do in our office is to regularly set aside some time when production staff can be interrupted ..... but of course it jsut doesn't work like this :0p

    Oh well back to work .....um where was I?

    --
    Why do today what you can put off until tomorrow?
  127. smoke by Anonymous Coward · · Score: 0

    I fall out of the zone if I have to wander outside and stand in the rain/snow/cold to have a cigarette...nonsmokers really don't know the value of a smoking room.

  128. Programming or truly creating? by Ledskof · · Score: 2, Insightful

    I can understand the need to get into some kind of perfect frame of location to go with your frame of mind, but the kind of stuff I program at work are simple straight forward network tools. It would be about as necessary for me to have the "zone" set by live strippers and James Brown to write network tools as it would for me to an LDAP search on an orphan in our Active Directory.

    A lot of angles come into this as well. Some people really need to focus on something to be able to learn it. Some of us don't, we just read the syntax, try the code, try some sample code, and see how it works, then use it. Generally it comes back to how well you know your language I feel.

    But then you have to work out a problem that is damn right crooked. There's no straightforward apporach to it, perhaps because it's never been done before(I haven't found a project like this yet). Or maybe you are just trying to code something and you aren't really looking for any help from those who have mastered it. So you crank up the legs on your lazy boy, get your Spinal Tap on the stereo, get 3 live llamas standing around you, yank out your prised microsoft split key keyboard that reduces yor typing speed by 60WPM, flip on your pride and joy 21 inch ultra barrel screen mitsubishi 12 year old monitor, and then you are finally ready to code gorilla.bas, without help of any kind. Just you, whats in your head, and maybe an old turbo basic book by Sams.

    --
    This is my sig. The post is over.
    1. Re:Programming or truly creating? by Anonymous Coward · · Score: 0

      er how is this 5?

      I read it as a /. user bashing troll..

      perhaps I'm just crazy

  129. Actually, I find limited distractions important by ringrose · · Score: 1

    Many people here have listed "no distractions" as their #1 requirement for zoning.

    I agree, with the following two caveats:
    1. I need a minor distraction every 45-60 minutes to remind me to give my hands a break. Otherwise, I'll get an RSI relapse.
    2. Sometimes, I end up thinking very hard about a problem - so hard that I fail to see the obvious "almost as good" alternative. I am stuck down in the weeds, when I should be looking for a solution in the bigger picture. I do have the bigger picture in my head but I am concentrating so hard on a small part of it that hard I do not realize I should step back.

    My solution? CD player and headphones.
    Every 45-60 minutes, you have to change the CD. Time for a hand break if you haven't taken one.
    If I am concentrating on something too hard, eventually the music will distract me enough to make me reevaluate the situation. I find music, used this way, a gentle enough distraction that I slip back into coding extremely quickly.

    Of course, listening to music doesn't address problems related to co-workers bothering you... other people have good ideas there.

    I also find a well-chosen set of headphones filters out a lot of the ambient noise, even if you aren't listening to music.

    --
    There's always one more bu6
  130. A List - Literally by Erwos · · Score: 1

    As a college student who regularly throws together 1000 lines of code every two weeks for CS projects (no, 1000 lines isn't much in absolute terms, but it is when you've got four other classes to deal with), I find that I do my best work when I have a list of tasks in front of me, and I can move down that list and knock them off one by one. Obviously, this is somewhat difficult to do sometimes, but having something like:
    1. Write class Movie blahblahblah
    2. Write class ArtsyMovie:public Movie blahblahblah
    3. Write class Theater blahblahblah
    That's what makes me go into the zone. It's that feeling that I'm making clearly definable progress. Generally, if I can keep moving for 3 or 4 steps, I'm good for 3 hours of work. However, if I get interrupted before then, the process starts all over.

    Obviously, lots of Mountain Dew and big monitors are useful, too. If I'm working on a particularly bad-ass project, I'll flip on my second monitor so I have somewhere to stash extra windows.

    -Erwos

    --
    Plausible conjecture should not be misrepresented as proof positive.
  131. One word by jjoyce · · Score: 1

    I have one word for you: "Opeth" and lots of it.

  132. Turn the volume off by kimbly · · Score: 1

    Just turn the volume all the way down. Works for me.

  133. Everything is a distraction. by magister · · Score: 1

    At least for me. Until I'm in The Zone. Then once I'm in The Zone, its just things in my peripheral vision or people talking around me.

    Best thing I have found is a good pair of head phones that act like ear plugs when you don't have any music playing in them and facing your desk to a wall.

    Low lighting helps keep visual distractions down as well. The right music keeps my mind on the task at hand. Also the kind of music depends on what I'm working on.

    I find that trance CD's that have been mixed all the way through are the best. Having the same or similar beat through an entire CD keeps my mind focused. Singing on tracks will also distract me, so just instrumental. On the plus side I played drums when I was in high school so the constant beat helps time my key strokes :).

    --
    -magister-
  134. You're Coddling Them by John+Hasler · · Score: 1

    Give them monochrome monitors, flourescent lights, Muzak, and steel chairs. No cubicles: you need to see what they are up to. Chain them to their desks and if they don't produce give them a touch of the whip. When they do produce reward them by shutting off the Muzak.

    --
    Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
  135. Re:EXTREME PROGRAMMING! YEAH! by Paradise+Pete · · Score: 1
    EXTREME PROGRAMMING is edgy!

    Pardon me for being such an old fogey, but is being edgy good or bad?

  136. Cheerleaders for Programmers by rsteele19 · · Score: 1

    This guy that was in one of my comp sci classes had this great idea for providing cheerleaders for programmers at his workplace. He had some problems convincing management of the productivity benefits, however.

    --

    This sig is umop apisdn.

  137. ever since I quit smoking I've been screwed by Anonymous Coward · · Score: 0

    I used to code, smoke & think, code & test, smoke & think,.

    I'd code till I got stuck, I'd smoke and think about it till I got an answer, I'd then go back and try it, and move on until I got stuck.

    I coded about 90% of the time and smoke about 10% of the time. I always had a whiteboard or a piece of paper with me when I smoked, and I wrote almost as much code out there as i did in here.

    but ever since I quit smoking I've been screwed. It just isn't the same.

    plus I can't stay up as late without the nicotine, no matter how much caffeine I have.

    I'm thinking about changing careers now.

  138. Caffination by ironfroggy · · Score: 1

    Dark room, radio blaring, few liters of pepsi. thats all it takes for me. oh, and the clock saying 3 AM.

  139. Get me out of the "Zone"! by oGunner · · Score: 1

    The "Zone" a trance like state I remain in despite bodily needs. I WELCOME distractions! Don't try to break apart coding, creativity, the iterative process and learning. Coding on the edge involves on-the-fly creativity. Don't forget that the code you write is leveraging that third party API that you are trusting to work. Be ready to change your architecture, be scared, very scared. You may have to write the driver yourself! Best music for programming: http://www.somafm.com/ Use stream ripper to load up your hardrive when the net is slow or you need a fix unconnected. Brian

  140. Caffeine? Babies! Cannabis. by Anonymous Coward · · Score: 0

    nope, caffiene won't do it alone. I don't mind a cup of coffee or two, but two much and I get scattered and easily distracted. Tons of weed is what we've used here for about 5-6 years. For me, I need a few hours of non-stoned coding, but once I start getting fatigued, a joint an hour is the only way I can keep coding until the early morning. Great for finding bugs. It's not just me either, a lot of other coders I know break pretty regular and they all hit the roof for a joint, or if they're at home, even better, you don't have to break (except maybe to roll)

  141. Haven't seen this issue mentioned by brink · · Score: 2
    [insert variations on previously posted methods]

    Having said that, if my desk has papers, pens, phones, and knicknacks scattered across it, it seems to quarter the chances of me getting into the right frame of mind. Not that I'm a super organized person by any stretch of the imagination, but if I have a ream of printouts scattered across the desk in a disorganized fashion, I begin to feel anxious and claustrophobic. I don't know why, maybe it's visually distracting or something.

    At one point I had one of those L-shaped desks where the monitor sits in the corner with a bookshelf on one side. One night I had to actually stop what I was doing and remove all the books from the shelf cause it felt so confining.

    Coding with that anxiety feeling sucks.

    --
    - Jonathan
  142. A zone? by Tadrith · · Score: 1

    Hmm, I can understand how one might find certain environments or moods to be more suitable than others for programming, but in general I've never found I had a "zone". Of course, I haven't really put much thought into this... I arrange my furniture in the most logical and aesthetically pleasing way possible. My computer goes on my desk, wherever my desk might be, and that's where I program.

    Certainly many things affect my mood and how I think, but I find that if I had a zone, it would simply be wherever I feel my mood is best expressed. The environment doesn't necessarily make it easier or better for me as far as thinking goes, but if my environment doesn't fit my mood, it tends to be a distraction.

    Although, that one guy is right too - when your boss tells you to code something, he doesn't care much about your personal mood or ideas. ;)

  143. Maybe like in "Pi" without the burning ants by Mandelbrute · · Score: 2

    Or maybe not - must have room to swing cat.

  144. The holy trinity by PureFiction · · Score: 2

    Chemical: Red Bull, Adderall (dextroamphetamine HCL), Lots of Water, Healthy Food snacked on at least once per hour.

    Aural: Chemical Brothers, Crystal Method, Prodigy, etc, etc. Some good punk and rock is nice to mix in.

    Visual: 19"+ Sony Trinitron E400 with a decent amount of light coming from behind and to the side of my desk. No flourescent, nothing directly behind causing glare. Muted sunlight may also work.

  145. on the rare occassion... by hatrisc · · Score: 0

    coding? HA! if i ever got the chance too... (well, i guess i get to do SOME, but not as much as i'd like too)

    --
    I write code.
  146. Any excuse to waste time! by Anonymous Coward · · Score: 0

    Stop stalling around and start programming, you lazy fuck.

  147. What works for me by CoolGopher · · Score: 1

    Here's what works for me:

    Design:
    When doing design there are a number of things I consider critical for me to be efficient.
    o) Having the exact input specs available (either knowing them or being able to look them up very quickly).
    o) Knowing what output is expected, what the end user will want out of this project.
    o) Someone to bounce ideas off when I want to.
    o) No interruptions, including meetings, newbie questions (sign on door works well for that), or incoming nerf fire.
    o) When the above have been met, either
    a) dark room, music loud enough to drown out the surrounding world, or
    b) long walks, preferrably in average weather where I don't really notice what the weather really is like (i.e. not too sunny, not rainy, etc)

    As for coding, my recipe is fairly "standard":
    o) Dark room, and if really dark, turn down the brightness on the monitor as well
    o) Lots of screen real estate
    o) Virtual desktops. Code on #1, reference code on #2, misc stuff on #3, browser on #4 (for instant net lookups of RFCs and what not). And, of course, xmms on all :)
    o) Hotkeyed E-term (or other transparent terminal) so that I can quickly run a couple of "intrusive" commands
    o) Vi (let's not get in a fight over vi vs emacs, but I can tell you that vi runs fine (6sec startup time) on my 386. Emacs doesn't ;P )
    o) Music. Normally one or two songs on infinite loop. The intro (and install) tune to the pc version of Magic the Gathering is a favorite. Only ~30 seconds long, but perfect on infinite repeat, especially when crossfaded. Other than that, techno is a good choice for me. As can Enya be. Depends on mood, although fast paced is normally most effective.
    o) Phone off hook (or used for dialup access).
    o) Doorbell disconnected (well, it always is anyways).
    o) Huge supply of chilled Coca Cola, within reach.
    o) Something to munch on (choc sultanas are good). Chips don't cut it, it gets the keyboard all greasy.
    o) A comfy chair (there is a reason I spent $400US on mine!)
    o) Having something interesting to code. That, would be the most important thing of all.

    I think that pretty much sums it up though. Once in the zone I can stay there for 12-20 hours without a problem (unless interrupted of course).

  148. pressure by fiiz · · Score: 1

    My only zone is pressure....somehow it's much easier to "solve problems" when you have no other choice: a deadline in an unreasonably short time just does it.
    I have done stuff in exams I would have no idea how to do normally!

    ah well--if only it was different, if only I could finish the thing 2 weeks in advance and then better it in the remaining time...

    f

    --

    yours ever, fz.
  149. Zone-Killing Interruptions by travail_jgd · · Score: 1
    These are the main environmental factors I've seen that can not only kill the Zone, but also make working difficult:

    * PA/Paging System. Make sure that there are no speakers overhead if the paging system is used regularly -- or that the volume can be adjusted. Some of my co-workers cut the wires to a speaker because it was too loud and couldn't be turned down.

    * Hall traffic. Around break time, lunch time, and quitting time, the main hallways can become noisy. A few thousand people exiting the building will raise the noise level. Depending on location, the developers may end up becoming admin assistants for the clueless. ("Tell so-and-so to call me when he gets back.")

    * "'Scuze Me" Syndrome. Sometimes it's easier for a non-tech person just to walk over to developers and make a request (or demand). Whether it's due to close proximity or lack of procedure, having a user in your cube and waiting for attention can knock most people out of the Zone fast. Water coolers are the biggest motive; no one wants to put on a new jug, so the closest person usually gets harrassed continually.

    * Meetings. Knowing that there are only a few minutes before a (pointless) meeting makes it hard to focus on anything, much less get involved in anything detailed. (Ignore this one if a deadline is approaching :)

    * Lack of space. Developers need enough desk space for open manuals, code listings, and output printouts. Ideally there should be enough space in a cube for two people to work together on a problem. Having to comandeer a meeting room for a design or debugging session is a time-waster.

    * Centralized Resources put "way over there". Manuals, printers, and office supplies should be kept near developers and easily accessible. A three-minute walk to get a printout is good exercise, but something of a damper for productivity. Having to scrounge for pens, post-its, notebooks and other inexpensive office supplies wastes time and energy.

  150. Does Ritalin really work? by Anonymous Coward · · Score: 0

    focused, but you got your wits about you? or is it more like when you smoke pot and start scrubbing the tile with a toothbrush, while the house burns down. because all you can see is the tile. and only the 3 inch square in which you are scrubbing...but boy, can you see that 3 in square in amazing 3-D realizm...that is, until the song changes or the CD ends. Then you forget what it was you were thinking about in the back of your head and realize you are really freakin hungry. Krispy Kreme anyone..man I could go for some Oreos right now.. Oh yeah, man cookies and creme ice cream.

  151. I'm sure its different for everyone by litewoheat · · Score: 1

    For my zone I need:
    An old style IBM clickety-clack keyboard without the stupid Windows key
    Heavy Metal Blasting in my face
    Lots of daylight during the day and dim light at night
    Ample Floor and deskspace for notepad and books
    More Heavy Metal blasting in my face
    Lots of squishy things to play with
    Lack of any quiet

    Interuptions Include:
    E-Mail
    Slashdot
    Junior Engineer's Questions
    Senior Engineer's Questions
    Dumb Questions from a sales guy
    QA's Illusions
    Picking a new Heavy Metal CD when the last one finished
    Pointless Touchy Feely meetings
    Unexpected INT3s
    Windows XP trying to help me by asking if it can delete my desktop shortcuts

  152. OT: about writing novels by GunFodder · · Score: 1

    Actually I don't think writing a novel is like writing a novel either, in many cases. Piers Anthony liked to include little snippets of his personal life in the back of his books for a while. Maybe he still does it, I don't read his stuff anymore.

    After reading those snippets and looking at the sheer volume of his writing you get the impression that he pretty much churns out novels like VB forms. And when you look at the output volume of other commercially successful writers you realize that they do the same thing.

    These writers don't suck; in fact they have worked on their professional writing to the point that the creative juices are a smaller part of the process.

    1. Re:OT: about writing novels by MisterBlister · · Score: 1
      These writers don't suck; in fact they have worked on their professional writing to the point that the creative juices are a smaller part of the process.

      They don't suck but their writing is far from inspired genius. IMO when writing either prose or code, there IS such a thing as 'writers block' but in either case you can trudge through it and produce pretty decent results -- not your best results, and they come far slower than on good days, but good workmanlike results.

    2. Re:OT: about writing novels by Anonymous Coward · · Score: 0

      You sorry bastard; my company does not pay for inspired genius code. We want code that is on time, correct, and readable. Take your inspired bull-shit and blow it out of your ass. What this means is that I want you to write the simplest code to do the job. BTY, the people who write simple code are much smarter than the people who write pretty code. You bastards write code just so you can pat yourself on the back and think how smart you are.

    3. Re:OT: about writing novels by MisterBlister · · Score: 1

      MY DICK IS ON YO' MAMAS LIPS

  153. here's what I found by Anonymous Coward · · Score: 0

    http://www.drugs.indiana.edu/publications/iprc/fac tline/ritalin.html

    Anyone snorting or injecting Ritalin is crazy in the head.

  154. Re:Liquid Crack....40oz! by Anonymous Coward · · Score: 0

    Liquid Crack means Malt Liquor!

    ...the more you know!

  155. right now.... by joeldg · · Score: 1

    I wish I was in the "zone".. but alas.. I am reading slashdot (which is what I do when I am *not* in there)..

  156. Well we've seen Hollywood's idea of the 'zone' by Neologic · · Score: 1
    What about Hugh Jackman's 'zone' in the movie Swordfish? The scene with the girl and the gun...

    --

    "I hate quotations. Tell me what you know." -Ralph Waldo Emerson

  157. Coffee shops. by bhendrickson · · Score: 2

    I work almost exclusively at coffee shops, but not that I like coffee or anything.

    When I take a break in an office, I spent a few minutes reading slashdot and feel slightly refreshed.

    But in the coffe shop, I spend a few minutes talking to some hot girl studying. And then I feel really refresehed.

    And I work more. I'm much more willing to think "Yeah, lets go back to the coffee shop for anouther couple hours" as oppose to "lets go work in our slightly dark offices again"

    In fact, I'm pretty sure if I ever own my own company, I'll just give the employees starbucks cards, cell phones, and laptops. Screw this whole office or cubical bullshit.

    Ben

  158. Either you are very lucky, or you are not a coder by Anonymous Coward · · Score: 0

    Coding IS like writing a novel, and requires an almost precise mind set for a coder to produce brilliant code. Good code is not far off this mind set... And if you aren't anywhere near that... Just forget it... You will come back the next day and spend 50% of your time working out just WTF that function was written for, and YTF you did it in such an abstract way.

    In many respects, coding is harder than writing a novel. For a start, the constraints of a novel are rather wide. It has no direct task to perform, and a reader will read it regardless of how strangely it is written... Its just called "Style".

    Code however is very much different. If it runs like a biach on your system, people begin to get uphappy. If it is bloaty, people get unhappy. If it is not user friendly, people get unhappy. Poor code is a biach to the system, bloaty or/(often AND) not user friendly.

    You cannot simply say "Just code" unless you either work on small simple tasks in BASIC in your spare time, or you have no code experience full stop. Code IS an art, and good code is a very precise art. In many respects, the concentration, care and effort put into good code is as great, if not more, than fine art such as the Mona Lisa.

    Ofcourse, you could also just be one of the 0.5% of people who can code like robots, and spew out good code no matter what mind state you are in...

  159. a glass of water? by zoftie · · Score: 1

    Developers do alot of mental lifting, so there are different 'paths' I take, planning day ahead:
    1. continuing programming:
    a. get out of bed and start coding, working at home, 1-2.5 hrs after starting, have breakfast, but only eggs and bread, something hearty, avoid meat.
    b. get up, run, have hot/cold shower, have a glass of juice, dress casual, but make a point of wearing coordinated pieces - dressy stuff. While commuting figure out my plan for the day. Get to work, start programming right away, do not have music or anything on. Maximum - a glass of water. Having desk tidy, helps.
    2. planning projects - it does not matter how you show up for work, just get there, doodle on the paper until business type will figure out the requirements.
    3. Deathmarch - cold showers(every 1hr), very very plain food, avoid caffeine, until necessary ... but by then you should take a nap anyway, getup take cold shower continue coding. minimal distractions. Make sure to have alot of good sleep before weeks of deathmarch.

    2c.

  160. Chemical composition of Grapefruit Juice by cyphgenic · · Score: 1

    Really, how is grapefruit juice supposed to do anything? It is just sugar water, not much different than soda except for the caffeine.

    Grapefruit juice contains naringin which I believe is said to inhibit the breakdown of caffeine, thus giving you a longer buzz.

    The link below goes into detail on grapefruit's chemical composition:

    http://www.ars.usda.gov/is/np/phenolics/comp/grape fr.htm

  161. What beautiful timing! by theblacksun · · Score: 1
    I have to get the biggest program I've ever tackled done in the next week or so, and I want my weekend free (for sleep, mostly). Now I can get advise on how to get it done (getting into that programming state of mind has been difficult on this one).

    Whatever would I do without /.

    --
    Ignorance kills, complacency kills, hatred kills, but usually not the ones guilty of them.
  162. What keeps me in the Zone by RevDobbs · · Score: 1

    What keeps me in the zone is shutting of AIM & and not reading slashdot.

    Damn. Gotta get back to work now...

  163. Zone's Gone ! by bc3-au · · Score: 1
    I used to have a great zone that I could get into once I'd settled myself down. It started at about 22:00 and went through to about 6:00. I had massive productivity and great quality.

    These days with family, and change of work - I'm having to manage part time - my zone is gone. I'd be lucky to hit the zone for a couple of hours in the evening maybe once a week, certainly can't work effectivly on a larger project because my concentration's not there.

    I was looking at some of my old code last night and was amazed at how well written, clear and robust it was. I realise that I'm now not writing very nice code at all, it just does the job and is a bicth to work on.

    Enjoy that zone while you've got it people, because you *really* miss that creativity when it's gone.

  164. Has anyone performed a... by DavisNet · · Score: 2, Funny

    Demographic study of the average slashdot reader's weight. Based on the responces to this posing, I'm buying stock in Frito Lay... Not that I am not just as guilty as anyone else on this.

    1. Re:Has anyone performed a... by Requiem · · Score: 1

      5'10", 145lbs.

      Sorry.

    2. Re:Has anyone performed a... by ealar+dlanvuli · · Score: 1

      5'11", 185lbs.

      thighs of steel, and an upper body to match.

      --
      I live in a giant bucket.
  165. Proper zonage... by Anonymous Coward · · Score: 0

    Generally, I'm the most in the zone after working on a problem or piece of code for quite a while. It's the strongest while I'm putting something else off. For example... I need to be up at 7, it's 2:30... I've got a big cup of green tea and can of the pop of the week in me. I've got another tea in line. Right then, when I'm thinking.. I've gotta get to bed, I'm flying through the code. Also, a hot dinner ready is a great catalyst. You can usually finish an ugly function or two in about 10 minutes if you've got food on the table. :P

  166. simple by Seth+Golub · · Score: 1

    sudo echo "127.0.0.1 slashdot.org www.slashdot.org" >> /etc/hosts

  167. Oops by wbajzek · · Score: 1

    I did preview this, but I apparently forgot something. That should have read "My huge and unwieldy monitor" :)

    1. Re:Oops by dylan_- · · Score: 2

      Perhaps, but "I've had to move my huge and unwielding to an ergonomically suboptimal position" is a wonderful phrase that you can't help inventing contexts for.

      --
      Igor Presnyakov stole my hat
  168. My Boss has a system like this by Meech · · Score: 1

    My boss has this thing consisting of a cube, a sphere and a pyramid. The pyramid sits on the sphere that sits on the cube. If you see his desk that he has all of the objects stacked, then he is in his normal work mode. If the pyramid is removed and there is just the cube and the sphere, then he is busy and you can talk to him if it is important. If it is just the cube, then watch out, if you talk to him, he will castrate you! Personally, I think that it is a good system.

    1. Re:My Boss has a system like this by Anonymous Coward · · Score: 0

      I guess there's some magic involved to make those 3 objects actually stay together without falling over.

      On the other hand, that one New Order video is starting to make a little more sense now...

    2. Re:My Boss has a system like this by kzinti · · Score: 2, Funny

      That's a very good idea; I had thought of trying something like that, like putting up a bead curtain or some other kind of non-door cue, but objects on the desk sounds simpler.

      I hope that sphere has flat spots to make stacking easier, otherwise I'm very impressed. Even more impressive would be if he could stack the cube on the sphere on the point of the pyramid!

      --Jim

    3. Re:My Boss has a system like this by abischof · · Score: 2
      My boss has this thing consisting of a cube, a sphere and a pyramid.
      So, where do you buy these cube/sphere/pyramid sets?
      --

      Alex Bischoff
      HTML/CSS coder for hire

  169. Good book that talks all about this... by blakieto · · Score: 1

    Check out the book "Peopleware". If I remember correctly there's a whole chapter on how people get into their "zone", they call it "flow". It discusses how long it takes to attain "flow", what type of environments are best for attaining and maintaining "flow" and other related issues. It's a very good read.

  170. Maybe his co hires better SW engineers than you... by fmaxwell · · Score: 2

    Unfortunately, many companies can get away with crap code, and I guess yours is one of them...

    Or maybe he and his colleagues are more talented than you are. Perhaps the code you write at your best is equivalent to what they turn out when they are hung over after a weekend of binge drinking.

    I've been an embedded systems engineer for over 20 years and I've seen lots of engineers who loudly proclaim that the code that they write is elegance itself. It usually is not. The best software engineers are often the quiet, modest ones who turn out clever, tight, well-documented code day in and day out. You don't seem like one of those guys...

  171. Re:Caffeine? Babies! Cannabis. by giZabe · · Score: 1

    yup... speed, coffee, weed, cigarettes. pretty much the panacea to any kind of writers block :) happy buzzing gg

  172. yeah? by Requiem · · Score: 1

    I thought that way, too. Then I ran out of coke, and only had a 2-litre bottle of Diet Coke in the fridge.

    Man, it's vile at first, and then it's smooth smooth smooth.

  173. use IM not phone by GunFodder · · Score: 4, Informative

    The phone has to be one of the most distracting elements in the modern office. If you and your team use an instant messenger instead you can really cut back on the distraction factor. I find I can hold my concentration better through a chat session than a phone conversation.

    And stack your meetings on particular days if at all possible. This is often difficult since in many office cultures the managers proclaim meeting times and the workers learn to live with them. But if you have a choice then try to put all the distractions on the same days.

    And for all you managers out there don't schedule a meeting that ends close to the end of the day. If the meeting ends at 4 and most people leave at 5 chances are your workers are doing only two things between 4 and 5: jack and shit.

  174. Cheap Soda and Soft Rock by Buzz_Litebeer · · Score: 1

    Nothing like a little 80's and early 90's soft rock to get you in the mood, and lots and lots of cheap soda. Go through a case of cheap soda and you know your program was hard, go through half a case it was moderatly difficult, if you can only finish of 6 then the program was a breaze, and you probably should have waited till the last minute ;-)

    --
    If you don't vote, you don't matter, so don't waste your time telling me your opinion
  175. Music Makes All The Difference by Servo5678 · · Score: 1
    I've found that having music playing is a big productivity booster for me, and the type of music I have playing depends on what kind of project I'm working on.

    Tracking IP numbers or banning members from an online forum that I moderate requires a looped playlist of the themes from Mission: Impossible and The Lone Gunmen.

    Working on a website works best with classics from the 1980s. Give me Huey Lewis songs any day.

    Working on software is the time for lite rock or classical. However, no divas (in fact, that's a good policy for any music playlist) and no whiny love songs. Something with a beat that I can code to is optimal.

    If I want to clear out annoy coworkers having a mini-meeting in the hallway, I fire up my looping MP3 of the original Super Mario Brothers theme.

    All in all, good music is key.

  176. "For me the Zone is" By: neilb78 by neilb78 · · Score: 1
    For me to get in the zone a few things need be just right. These thing hardly ever happen at work....mostly at home after dark when the wife and kids are in bed...

    Dark or very dim lighting

    Big monitor

    Comfy chair kinda "laid-back" (not required, but it does help get in the zone quicker)

    The temp. must be cool (not unlike a datacenter)

    Completely quit - just the tapping of my keys (no music for me - i noticed a lot of others like music in their zone)

    --
    © 2004 The SCO Group, Inc. All Rights Reserved.
  177. Ginko etc by Anonymous Coward · · Score: 0

    These work for me:

    Ginko biloba: I'm willing to admit that this herb might be just an overpriced placebo. But, after taking it for a few days I do notice a small but definite improvement in my ability to concentrate....seems to steady my focus.

    Music: but, only certain kinds of music. What works best for me is: no vocals, thin, simple textures, and a narrrow tonal palatte. Super-minimal German techno, Glen Gould playing Bach, Bach organ music, Morton Feldman....thay all offer no surprises, in the best way.

    No TV!: For me, even watching one hour of TV a day has a noticable negative impact on the quality of my attention, throughout the day.

    Variety: Sitting in front of the 'puter, you handle the "muscular" aspects of coding. If you spend your time off in a very different environment, you might find that solutions to the larger questions (like design, algorithm choice, etc) may occur spontaneously. I think I've had my best "big" ideas while lying in bed half-asleep.

  178. Oh god by Anonymous Coward · · Score: 0

    Feng shui for programmers. Got to get out of here

  179. Halfway to the bathroom by Anonymous Coward · · Score: 0
    Seriously - My zone normally occurs about halfway between my desk and the bathroom. I'm pounding on a problem, and then get to a point where I'm stuck, and I suddenly realize my bladder is full. Get up, walk to the bathroom, and a solution will suddenly appear about halfway there.

    From what I read, it seems to be one of those things where if you distract your concious mind from the problem, your unconcious mind will take over, suggesting a solution.

    There is only one problem: I'm halfway to the bathroom - do I go back to my desk and risk a busted bladder, or do I continue on, and risk loosing my new chain of thought?

  180. Caffiene is a start, but... by matthewd · · Score: 1

    Too much caffiene and I get irritable, can't focus on the job. A better combination for me is a couple of cans of Cokes or Pepsi for caffiene along with dimethylaminoethanol (DMAE is a precursor to acetylcholine), ginseng, ginko biloba, and multi-vitamins.

    And while I have a 30 hour playlist of trance/techno/house music, I'm in the process of created an "A List" of tracks. Most of these can put me immediately in "the zone"...

    Having a large monitor is extremely helpful, having two large monitors is even better.

    Avoid Slashdot.org, and web browsing in general, unless you need to research something on the web.

    If you have an office, get a lock on your door if at all possible to keep people from bugging you while working.

    If you do have a lock on your door, make sure to set up a secret knock for the pizza guy to gain access.

  181. state of mind by dchertoff · · Score: 2, Interesting

    The most important thing by far is the state of mind you have going into a long hacking session. I find that if I don't have the right state of mind to tackle a project, I will find ways to not work on the project. Deadlines seem to be one of the ways to force me into the right state of mind, but otherwise, I prefer to just queue up all my music, put it on random, and let it fly. I dont like coding in the dark because that means it is harder to find/use any resources I have laying around. I draw things out on paper to solve problems, and doing that in the dark is a good way to kill your eyes. A lack of background noise is disturbing. In fact, the lack of music playing right now while I type this is killing whatever state of mind I had while I was trying to knock off some problems.

  182. Ze Zone by Anonymous Coward · · Score: 0

    Listing of previous methods:

    1. Take a smoke break & discuss philosophy/politics.

    2. Ginko Biloba & Selenium: Selenium will act as a neuro-transmitter and deliver the Ginko. The Ginko thins the blood causing increased circulation to the brain (and the rest of your body).

    3. If I can't "get in the zone" I mentally note the problem as "important" and work on something else for a few minutes (usually 30) and then go back. This helps (see missing matter's article).

    4. Adjusting blood sugar (more for energy, less to be more on edge).

    5. Reading a new book about software theory or a new language at least once/month.

    6. Caffeine usually drains me more in the long run, I try to just drink it in the morning. I drink tea (Rooiboss, Ginseng, Orange, random herbs) in the afternoon.

  183. Surefire method... by Anonymous Coward · · Score: 0

    ...Dexedrine...

  184. Look a little further, guys. by Lurgen · · Score: 5, Insightful

    I thought long and hard before posting this comment... it's a bit on the harsh side, but being a part of the IT industry, I feel I'm entitled to offer an observation (as most /. readers are!)

    There are far too many IT employees, especially programmers, who are under the misconception that they are something special. There are many industries and jobs that involve enourmous levels of creativity and innovation, however I can't think of many that contain so many whining graduates.

    Take teaching for example. Every day, a teacher is required to educate their students. They don't get the option of saying "I can't find my zone, I'll be back in a few hours". The don't have the option of rearranging their working environment to suit themselves (as opposed to suiting their students/team). Sure, you can point out that teachers are generally following a process that is predefined... so are programmers though.

    Looking back within the IT community, take a look at the higher level support engineers. When a server farm catches fire, triggers the sprinklers, and dies a gurgling death, do you really think it would be appropriate for any of them to say "the room just doesn't _feel_ right"? Nope - they have to get the job done.

    Programming, for the most part, is a case of following the yellow brick road. The road is paved by your team leaders, in most cases, and when it isn't there is very little stopping programmers from following the processes and methodologies they claim make them special ("I have a DEGREE!").

    And what about childcare workers? Have you ever considered what it would be like working in an environment totally designed in favour of creatures half your size? I happen to know one or two of these people, and let me tell you that they never bitch or moan about their working environment not being ideal for their "thought process"!

    Face it - we're nothing special. We carry out a job, and not a very hard one at that. Sure, once in a while we need to demonstrate flashes of brilliance, but based on the ones I know, the vast majority of IT workers probably shouldn't have jobs in the first place.

    Be grateful you have the opportunity to work in a field that pays well, offers good working environments, decent job security (those who lie to themselves, and believe that we are any less secure than the rest of the world are fools), and cool toys to play with. Personally, I feel lucky to have the opportunity to work within the field.

    (Incidently, I sit in a cubicle that is rather small, at a desk that isn't particularly comfortable, with a window behind me that casts glare all over my screen, in an open plan office. I can hear my team chatting with their wives, the aircon is unpredictable, and the lighting annoys me. But I get to work in a field I love. Personally, I think I'm winning here)

    1. Re:Look a little further, guys. by 0xbaadf00d · · Score: 2, Funny

      Damn! You mean all this time i've been spending on designing and coding I could have just turned to the back of the book to the Answers section!?!

    2. Re:Look a little further, guys. by Lurgen · · Score: 1

      Lol. Nope, but solutions can be found two ways (in my experience)... firstly, and most commonly, through process, methodology and experience. Secondly, through brilliance.

      Nobody is brilliant 100% of the time. If you can't make use of option one in the spaces between your brilliant moments, you aren't much use in the business world.

    3. Re:Look a little further, guys. by Anonymous Coward · · Score: 1, Insightful

      Sure, we're not rock stars. But the point of the article was figuring out how we can produce clean, readable code more often.

      Sometimes, I'm not in a mental state where I can produce a multiple data-input format plus multiple storage format server daemons that can be easily scaled across multiple CPUs/Boxes. Sometimes I am.

      But just because I'm not in super-programmer land doesn't mean I just sit around or become unproductive. I try to put myself back in super programmer land. I read slashdot, freshmeat, cnn, my newest language ref, a book on algorithms, or go have a roadmap meeting with the CIO.

      I've seen the product of people forcing themselves to program when they aren't in the mental state (I'm just as guilty) and it is usually inefficeint, unreadable, and/or unworkable.

      The key is figuring out what allows you to work more effectively, and be effective when not programming. I (and my boss as well) think that expanding my knowledge of things IT is nearly as beneficial as actually developing/repairing/whatever your job description says.

      But, you are right in the fact that NO ONE LIKES WORKING WITH A ROCK STAR.

    4. Re:Look a little further, guys. by sadr · · Score: 1

      Actually, there's plenty of evidence that certain environments increase productivity. You can check Rapid Development for a list of references to the original sources.

      There's also plenty of evidence that interruptions decrease productivity. Steps to reduce interruptions, such as putting phones on Voice Mail, increase productivity.

    5. Re:Look a little further, guys. by Piquan · · Score: 3, Insightful

      You demean all programmers by implying that there is no skill spread between them.

      And any programmer who thinks that a Programming Methodology that was handed down from On High (defined as either somebody with an MBA or a PhD) is good for all things, is in the wrong line of work. It's a craft, not a skill.

    6. Re:Look a little further, guys. by Bytenik · · Score: 1

      You are right that as a profession, computer programming isn't particularly special in terms of requiring creativity. Many professions do. On the the hand, people in those other professions also have days where they fuck the dog.

      Some teachers will have days where they do a nice normal day of teaching. Other days they'll show a useless film to the class if they feel lazy. Every once in a while, they may be motivated by a subject (or maybe they got laid that morning) and they get in the zone and the kids learn twice as much as usual.

      It's the same for any profession, including programming. Normally you program at a particular pace. Some days you waste hours reading Slashdot. Other days you never even open you email or web browser because you have turned into a coding machine.

      --

      "Scientists prove we were never here."
      -- Devo

    7. Re:Look a little further, guys. by Anonymous Coward · · Score: 0

      Go blow it out your ass, Lurgen.

      (WTF kind of name is that anyway?)

    8. Re:Look a little further, guys. by CommieLib · · Score: 2, Informative

      Definitely some truth about the inflated egos of programmers. I must disagree on a larger part here, however.

      Being a programmer is about equal parts artist, engineer and scientist. And by artist, I don't mean artiste, I simple mean that solutions to problems bear some relation to the psychocultural background of the solver. Whether it's hard or not is not the point; I think you would agree it depends on the type of development being done.

      You seem to be implying that if you're in other fields, there is no "zone". That's simply not true; a child care worker may experience a period of terrific well-being or behavioral insight into a child and have a period of high productivity in that sense...and God knows that teachers have good days and bad days.

      All of what you've said here doesn't change the fact that the programming zone exists. You may grumble that we should just be happy with whatever environment we have. Fine...but that bears a cost, the reality of the lost productivity of a better coding environment. And man, if all we're talking about here is changing the lighting and dishing out free cokes and coffee, is that really so much to ask?

      --
      If your bitterest enemies are people who hack the heads off civilians, then I would say you're doing something right.
    9. Re:Look a little further, guys. by broonie · · Score: 1

      It's also worth noting that many of the examples cited here are of things where there is a lot of external stimulus. Programming differs from these things in that it is to a very great extent stimulated internally - there's no class of kids or immediate problem to respond to and things generally are not at all time critical ("do it now").

    10. Re:Look a little further, guys. by scrytch · · Score: 2

      "Job" is a single task you do, you may have many jobs in a day. Teachers have regular jobs, repair engineers have on-demand jobs. You have some valid points, but you are not only exaggerating, you are also comparing apples and oranges.

      Architects, for example: I've never met an architect that wasn't a complete and utter control freak over their environment when doing design work. Let's assume your teacher is a professor doing research -- again, lots of environmental factors there, which is why writing professors tend to just go home to write. Half the professors I know won't even talk to students about coursework unless it's in their office, because that's their environment (not saying this is necessarily a good thing).

      As for your "be grateful" crack, I don't feel lucky or blessed at all to work in tech. I deserve it because I studied and worked for it, and deserve the jobs themself because, well, I do them well. Not because I'm some indistinguishable professional doing work that couldn't be all that special because there's other professional fields in the world. I do my thing, they pay me, the end. No luck, no gratitude necessary. Yes, we're not the rulers of the modern world, but for god's sake, it's not a job that one has to bear with stoicism. because someone was good enough to smile upon us and give us our chances. One can demand a work style that fits their temprament if it helps them do the work well. It's no less than many other professionals demand and get.

      --
      I've finally had it: until slashdot gets article moderation, I am not coming back.
  185. only have three words... by Anonymous Coward · · Score: 0

    lose the pants.

    when no one's around simply take off your pants, you'll be suprised how clearly you think just sitting there in boxers, with only a thin layer of cotton between you and the rest of the world.
    also, a strict regiment of masturbation helps with the stress a bit.

  186. Drive... by 0xbaadf00d · · Score: 2, Interesting

    When I'm faced with "coders block" I high-tail it out of the office jump in my VW Passat. Light up a cigarette, turn up the stereo and drive.... On truly productive days I do this 2-3 times a day. The tricky part is getting back to the office in one piece and without a speeding ticket once the solution comes to mind... :)

    1. Re:Drive... by NaveWeiss · · Score: 1

      But I hate cigarettes! When people smoke, they look so gay..

      I will never smoke.

      --
      Slashdot community, please notice: I am looking for a girlfriend.
      Nave H. Weiss
    2. Re:Drive... by Anonymous Coward · · Score: 0

      You'll never get laid, either.

    3. Re:Drive... by NaveWeiss · · Score: 1

      Are you kidding?
      I got laid a lot of times. However, I never had a girlfriend, but I'm working on it.

      --
      Slashdot community, please notice: I am looking for a girlfriend.
      Nave H. Weiss
  187. Great sex! by Anonymous Coward · · Score: 0

    I find that relaxed feeling you get after great sex to be helpful in programming... anybody else experienced this?

  188. Re:Beefcake 'puter by Lurgen · · Score: 1

    My workstation at home is far more suited to high productivity than the one I have at the office. Dual monitors are a must, lots of screen realestate to make it easier to view lots of data at once. Decent sound helps, but lately I find music just slows me down. And Coke. Lotsa Coke. Diet Coke is not what I'm talking about here, I mean the original thing, in the red can, plenty of suger (not that horrible cancer inducing artificial rubbish).

  189. The Code flows... by Anonymous Coward · · Score: 1, Interesting

    I tell ya this.. there is nothing better than "The ZONE".... a dark room.. or better - deep night.. no phone calls.. no ppl comming or disturbing... the city is quite.. (if you live on some countryside the birds a singing.. the dogs are barking... quite... you're listing to some deep relaxed ambient (or whatever you like)... you hits the keys almost without thinking..
    The code flows... and flows.. it can't stop.. it just flows.. you don't eat.. you don't sleep..
    You came to work at friday morning and now it's monday ... you coded in 3 days more than normally you would do in two weeks.. and it's a real value... you took just one day off and got back cause the code called you...

    I was working on some big project.. My part was like 50.000 lines of code... 14 months of work.. and I mean *work* .. I took just once 5 days of holidays during that time.. and mostly I slept it over.

    We had a good schedule and we kept our checkpoints.. well mostly.. but at the end we kept the deadline and the project was done in time and was really high quality - very few (when you compare it to the size of the project) bugs which had to be later fixed.. and none of cirtial mass ..

    We got the money, the customer was very satisfied.

    It was one the best time I've ever had, I was the most productive man on the World.

    The point it: let ppl work as they want, if somebody wants to work in the cave - buy one.

    Give freedom to people and the do really good, first class stuff.

    The trick is to do a good schedule with checkpoints and you will see for yourself on the paper, if this model is going to work out or not.

  190. pro�cras�ti�na�tion by digitalpeer · · Score: 1

    Take the estimated programming time for a project and multiply it by 0.05. Start working on the project when that much time is left. You'll hit the zone almost immediately and it won't leave you. Sleep, food, music, sex, and even beer no longer become a factor.

  191. herbal remedies by Anonymous Coward · · Score: 1, Funny

    I'm a CS grad student, so I'm not in the workplace. Also, my suggested method of finding "the zone" probably isn't allowed in too many work spots (although I do know of a few). However, this topic was too good to pass up a post. My zone:

    -late night
    -ill breakbeats, techno, or house on the stereo
    -comfortable chair
    -Linux environment (key1)
    -Ocean Spray Cranapple juice

    and the winning "zone getter"....

    -some nice, dank herb in a blunt that I can 'moke all night (key2) :D

    Its not the only way to find the zone...the above combo minus the herb works well for me too. But two puffs on a fat el will send me straight to the zone in 2 minutes! Coding all night...concerned with the grittiest of details...like I've been doing for the past 3 days :)

  192. Its all about the masturbation by Anonymous Coward · · Score: 0

    A ritualistic session to fire one off always puts me in the mood for either:

    a.) Programming
    b.) More masturbation (repeat as needed)

  193. Smoke some Pot by g_bit · · Score: 1

    That's all.

  194. LUMILINE BULBS! by Anonymous Coward · · Score: 0

    All-

    Lumiline bulbs (aka linear incandescent bulbs) kick major arse- except the price tag (roughly $9 per bulb- any other price is a rip- i.e. Grainger's $36 per bulb). This light produces a soft, glowing light that is very simillar to those used in orchestral lights. Try it and you'll never go back...if you can find them.

  195. What's wrong with VB? by g_bit · · Score: 1

    I bet I could write any given desktop application, have it work better, look better, and be more user-friendly than any app you could write in C++/Java/Python or any other language in the same amount of time.

    1. Re:What's wrong with VB? by HarveyOpolis · · Score: 1

      Write your own set of libraries in C++/Java or simplify what you're doing. I find writing an extensible shell application is just as productive as VB at many times, and can definately be more efficient...

      --
      - Hugh Buchanan
      - Userfriendly.com
    2. Re:What's wrong with VB? by Anonymous+Brave+Guy · · Score: 2
      I bet I could write any given desktop application, have it work better, look better, and be more user-friendly than any app you could write in C++/Java/Python or any other language in the same amount of time.

      If that amount of time is less than a few weeks, maybe you could. If that amount of time is measured in months or years, you haven't got a prayer. VB is good for quick, prototype-y things, and some sorts of front-end UI work. C++ is good for high-performance, low-level and/or large-scale work. Java is good for distributed development. Python works best, IME, as a grown-up scripting language. Each has its use, but claiming that VB is superior to all other languages, over any period of time and for any sort of desktop application, is just absurd.

      Nice troll, though.

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    3. Re:What's wrong with VB? by RoadWarriorX · · Score: 1

      Well, let's put it this way:
      Your VB6 application will be created quicker.
      Your VB6 application will look prettier in the same amount of time.
      My employer has the same requirements also...
      However, whenever your employer needs real performance, who do they go to? Certainly NOT the VB monkeys doing kiddie scripts. They go to real programmers, that do real programming to solve more important issues. Just like my employer, your employer may prototype in your precious Visual Basic for a sense of getting applications off the ground, but your managers know that, eventually, they would need to harvest real performance gains to be successful. As a result, they use a real language like C++ or Smalltalk to get the performance that your company needs...

  196. my zone by paulbd · · Score: 2
    • lots of Steve Roach and Steve Reich CD's
    • High quality sound (i.e. near-field studio monitors, audiophile amps, CD or DAT quality input sources)
    • Balans seating
    • 21" Trinitron monitor
    • Night time
    • Basement work space
    • No backlighting, a small Ikea halogen light illuminating the keyboard only
    • The right problems
    • Healthy food
  197. Everybody is different by geesus · · Score: 1

    Everybody's idea of comfort is going to be different, so the one thing you should do right after you have employed somebody is do the 20 question thing and ask them what would make them the most comfortable and most productive at work, and cater for them. I find that *background* music works wonders, it can be nearly anything, so long as it wont invoke thought about it (and yes deftones make good background music :P~ ) can of pepsi (or coke for those who want the inevitable aftertaste to swell thier mouths) as well as a glass or bottle of water within hands reach is a good idea, and sammiches or something thats not greasy, but still tasty. NO and i repeat _NO_ glare whatsoever! figure out a way to give your employee's more tasks without having to talk to them, talking is a distraction. something like bugzilla usually works. just minimise distractions, its not hard if you think about it. and just remember, you can employ people other then your programmers to handle distractions like clients, etc

    --
    Gnome wasnt built in a day.
  198. Simple.... by The+Milky+Bar+Kid · · Score: 2

    Wait 'til the day before it's due... then I can find the Zone _real_ easily. At least, that's what I did through Uni.

    As someone (can't remember who) once said, "When a man knows he is to be hanged in a fortnight, it concentrates his mind wonderfully."

    --
    -- This post is about truth, beauty, freedom, and above all things, Karma
    1. Re:Simple.... by marnerd · · Score: 1

      That would be Saumel Johnson. He said lots of interesting things.

      --
      Not so much a sig as a lack of one.
  199. My suggestion by JWhiton · · Score: 1

    There's a window in my room that I cover up at night (less sunlight in the morning means it's easier for me to sleep in), using a big hunk of cardboard.

    My dad made it one afternoon. He measured the size of my window and cut a big piece of cardboard to fit it. When I go to bed, I just stick it in there by resting it in the frame.

    It doesn't block out 100% of the light, but it works for my purposes.

  200. My "Zone" by pomakis · · Score: 2
    I find that I usually slip into "The Zone" after an hour or two of straight coding. While in the zone, my mind is capable of wonderful things. The thing that amazes me the most is that I've got a stack of a staggering size. In other words, I can say "Hmmm, I'll have to get back to finishing that complicated bit of code later, after I do this..." a number of times, and I always seem to remember every level of things I have to get back to, and all the complexity involved at each level. It's like I can almost see the algorithm at all of its different levels of abstraction all at once. I know how Neo felt at the end of The Matrix. The ironic thing about this is outside of the zone, and in most everyday situations, my memory, especially my short term, is really awful.

    I can stay in the zone for many hours at a time. Of course, the passage of time is something hardly noticed. It's becomes just part of my surroundings, to be ignored by my conscious like the walls and light fixtures. Music is the same way - it can be on, but it neither helps nor hinders me, because my mind pretty much blocks it out completely.

    I find that if anybody tries talking to me while I'm in the zone, it's like I'm being pulled out of a dream into a reality I'm not yet ready to re-enter. First of all, I sound like a babbling idiot, because 98% of my mind has been taken over by my algorithm and coding skills, leaving very little left over for communication skills. If I'm lucky, the person who interrupted me will see that I'm preoccupied with what I'm doing and leave me alone. I can then usually recover, and stay in the zone (usually forgetting the interruption immediately). If I'm unlucky, the person will continue to talk to me. This is a very frustrating experience. I can literally feel my abovementioned stack slipping away, one layer at a time. I feel the algorithm in my mind's eye falling apart. If it goes too far (which doesn't take long - even a couple of minutes of dealing with "the real world" will do it), I fall out of the zone. Then I'm left with a huge mess of half-written code that I have to figure out. Sure, I'm the one who wrote the code in the first place, but it was written while I was in a state of heightened awareness.

    I used to fall into the zone a lot while in university. I'd start working on a project at say, 14:30 one afternoon, write incredible amounts of quality code throughout the night, and come out of the zone at 05:30 the next morning with a finished product. Of course, at that point the hunger and sleep deprevation hits me all at once.

    I don't fall into the zone much any more. There are too many interruptions in a typical work environment. It's a shame, too, because I'm easily five times as productive when I'm in the zone than when I'm not.

  201. Unlikely... by kbonin · · Score: 2

    OK, I started things by getting a bit too personal, but you sure jumped in.

    I was responding to someone who implied that "professional" programmers could always write "good" code on demand, due merely to their professionallism.

    As for myself, I started as an embedded system engineer, moved into semi-custom chip design, then into CAD/CAE/CAM software, left when bored as head of R&D, then moved into video games as head of tools & engines development, where I've now been for 15 years over ~40 games, except for the few years I took off to write cryptographic protocols at Cisco. As a hobby, I publish open source crypto libraries and work with a team developing a p2p infrastructure for massively scalable 3d clients.

    You'd be surprised at what sort of code some of us /. posters can create, even if we're less modest online than in person. And you'd be absolutely amazed at how much tougher our hiring standards are than most industries...

    1. Re:Unlikely... by fmaxwell · · Score: 2

      OK, I started things by getting a bit too personal, but you sure jumped in.

      Kerry,

      You figured out what you did that made me jump in and why I did so at a personal level.

      The guy to whom you responded might be a talented, skilled programmer. Insulting him, and his employer, because his philosophy of programming and yours differ was out of line (in my view). But you seem like a decent fellow and recognize that your remarks were a bit over the line, so no harm done.

      Peace.

  202. It just takes one thing... by SassyDave · · Score: 1

    And that thing is: Groove Salad.

  203. beers by led_belly · · Score: 0

    My zone usually arrives at about 9PM after about 3 or 4 beers and usually ends about 5 hours and 10 more beers later passed out with my head on the keyboard.

    Somehow I still manage to get work done.

  204. I must be in the wrong job... by ebyrob · · Score: 2

    In college I used to spend a lot of time in hack mode, in fact most of my skill at programming comes from nearly a whole summer in "hack mode".

    Of course, concentration has never been a problem for me. A pulse, a slightly interesting problem, and a lack of horrible jarring motion (on off days) was all it took me to get into the zone. Hell, getting me out of it has always been the problem. 10 minutes after fire alarms, the RA would have to come in and peel me from the keyboard...

    But since I've started working, my time in hack mode has gone down down down. In the last 12 months, I've probably spent a grand total of 3 8 hour days in "hack-mode". Time spent writing the core of some UDP packet driver. Interesting problems? I'd give my eye teeth for just about any problem that requires even a breath of hack mode to finish!!

    I don't know what you guys are working on, but I sure wonder who's doing all your scut work. Documentation, build files, organization, testing, requirements analysis, coding all but the core pieces that might pose original problems.

  205. My Zone by interstellar_donkey · · Score: 2

    I'm not a programmer, but I do spend a great deal of my time sitting in frount of the computer writing (usual technical work) and comming up with client solutions.

    A few things I've noticed;

    1. A clean desk. I don't know what it is, but a cluttered desk just kills my ability to stay concentrated on anything for an extended period of time.

    2. Near darkness. Any bright lights is a distraction. The only light can come from the CRT.

    3. Jazz music. For some reason, the jazz on the local NPR station just fits nicely.

    4. Unlimited supply of cigarettes. I don't even notice smoking them, but I notice if they are missing. Part of my weird compulsive personality.

    5. Night time. 11pm to 5am seem to be the best time. No phone calls, no noise from the city outside. There just seems to be a feeling of being settled in that part of the day.

    6. 64oz Thirst Busters from circle K. It's funny, but they usually seem to run out right when I've reached a problem I can't solve. I can walk down to the store in silence, nobody bothering me, and get a new one. While I'm walking I can usually reach a solution.

    --
    The Internet is generally stupid
  206. What's your sign? by NoWhereMan · · Score: 1

    I did not piece this together, but my SO recognised the clear sinusoidal pattern. One day in the zone followed by a regular day. We now call them a high energy day and low energy day. It is unusual to work any magic on those low energy days.

  207. Creativity, Productivity, Drugs, and Clock Signals by drenehtsral · · Score: 3, Insightful

    Okay, here's how I view it: If you have joe random programmer, there are several factors at work. First, you get your problem spec. Somebody higher up says "hey, we have this information, we know it can be processed into this smaller set of more immediately applicable data, and we need something in the middle to sort through reams of data, find the relevant points, accumulate them in a database, perform some analysis, and spit out a condensed set of results"...

    Okay, now there are lots of ways you could go about this. First there's brute force, there may be a simple way to do it, but it's not ideal because it's O(N^2), okay well there are several routes you could take. First, you could run with it, second you could think about it, possibly for days, while you may be reading the morning papers, your subconscious mind is churning through multitudes of different solutions, working on what would generally be considered intractible topography problems in th' background using the massively paralell computer known as the human brain. When you finish with that stage, and you're ready to implement, then's when the groove hits.

    What i'm talking about is when there is a hairy multifaceted problem, and after goofing off playing tradewars for a couple days, you finally latch onto a solid solution. What looked like a massive unmanagable mass of special cases and state variables condenses into a simple but subtle loop invariant and you go for the gold. Pop a couple of ephedrine, drink some coffee, eat a bunch of solid high calorie food, put on some good driving music, something with a solid steady beat that you can use for a clock signal to push the data through your brain, and let fly. It's one of those things where you have solved the problem on a subconscious level, and you can see all the facets and details as it if were a building in front of you, except instead of a building, it's a nice regular 5 dimensional shape, but it's there, and for that moment in time you see it clearly, and as fast as you can code and comment, it can be translated back into our mortal plane, it can change from a shimmering but abstract represenation of a problem into a concrete solution. That's where it's at. =:-)

    --

    ---
    Play Six Pack Man. I
  208. Re:I get in the zone when there are no /. articles by mojo-raisin · · Score: 1

    me too. this should be my last post...

    RIGHT NOW!

  209. Programming Contest by EvlG · · Score: 2

    I participated in a programming contest recently; it lasted 3 hours. For the entire rest of the day, I was in "The Zone". It was awesome how much that woke my brain up.

    So it seems for me, just being challenged slightly, in a fun and competitive atmosphere works well.

  210. Time by Squalish · · Score: 1

    VB and C++, in my experiance, are good for different timespans. VB is much more intuitive, and is a higher level language, but less flexible very large projects. I think the key criteria involved here is time. For small projects it is IMO a much easier language to, say, demonstrate an algorithm. C++ is a bit more flexible in the type of structures it can use. It IS a very messy language(the official spec is 750 pages long) in order to maintain compatability with all the other versions. VB is annually, so this might be a factor in ease-of-use. C++ can also deal with more abstract concepts, and it's a bit more condensed. One can make an Unreal Tournament in C++ in a couple years. One can make a small, effective VB program that looks nice in a couple of minutes.

    --
    People in Soviet Russia, however, appear to be afflicted with amusing juxtapositions of the aforementioned situation
  211. Getting into The Zone by SluttyButt · · Score: 1

    Getting into the zone: two methods:
    1. The Zen method.
    Getting into the calm state of mind frees you from daily naggings of life that will give you the energy to pursue your goals. This is generally
    the preferred method as it has no misgivings or anything like that to nag upon you later on. You work will be good but never great. You live in short perpetual bliss and you fall into mundane Zen fatigue - no less.

    2. The 'death' method.
    It's a matter of life or death and you are down and almost almost out but you give that final push for the surface. And you get down to it and your mind is filled with violent intense energy of mostly fighting-quality type and you don't know whether what you're doing is detrimental or rewarding.
    Your energy takes control of you but you are interacting with it unconsciously - unconscious because the energy is beyond average human
    comprehension. And your vision is formed and all directions are made clear to you - it's only time that you are racing against with - nothing else distracts you for you have gotten into the zone with that final goal clearly visualized. When you get out later and looks back at the result - you
    may not quite recognize who is behind the work of art.

    To get into this 'death' method is another question.
    Your philosophy on life is severely challenged and you have to abandon all your long-held believes to go on a journey of self-rediscovery. Your abandonment will be that of an apostatic scale.
    Who will be blessed to go on this journey? Do not say "don't curse" for you will - your soul is pouring out.

  212. Essence of Code for me... by Mytzle · · Score: 1

    1) some sort of white noise, I have a box fan that I leave on 24/7.. it hides the background noises very well.

    2) Music, just about any kind, something to bop to, something to chill to, no country.

    3) Pot, marijuana, grass, herb. Whatever you wanna call it, being nice and blunted helps me... keeps me focsed yet creative. maybe I'm just a pot head, but my best code comes when stoned.

    4) Need. If I need a new tool, if there is a deadline, or pressure.

    5) Small steps of success. Nothing gets me going, innovating like small steps of success. I have often finished part of a tool or program, and started enhancing it way out of spec. The boss has yet to complain.

    6) A COMFORTABLE EDITING ENVIRONMENT. I cannot stress enough the need for a good editor. If I'm not seeing the code the way I want to see it, I have to think more, in the zone I need to flow.

    7) Cigarettes. Nothing breaks the flow like running out of smokes and having to get up for more, or worse, go to the store!!!

    8) Beverages. Lots of water. RED BULL!!!!!

    9) My own crapper. I know this has been mentioned, but I loathe the bathroom farms. You walk into these places and it looks like the world the Matrix pulled over your eyes. And the smell, and sounds, frankly I don't wanna listen to mister anonymous with dockers around his ankles and rockport saddle oxfords summoning the beast of the nine stenches.

    Ok I think that is enough...those are probably my biggest essentials. But maybe that's just me.

    --
    "Boys have a Penis, Girls have a Vagina", kids say the darndest things!
  213. Finding the Zone by ozzzy · · Score: 1

    The most important part of getting in the "zone" is getting psyched about the project: the more excited you are, the easier it is to focus...remember, this is fun! A regular exercise routine also helps, making you less fidgety...music and a nice chair don't hurt things. The thing that helps me the most is having another computer with multiple monitors available to hold references for code-samples/API's/etc.

  214. Flow: by Anonymous Coward · · Score: 0

    I haven't read this book yet, but it comes highly recommended. I think it fits right into this topic.

  215. I used to... by captfi · · Score: 1

    have specific things. Lighting, music, clean (as in no coffee stains) desk etc... Now I find I'm amazingly productive if I just stop reading /. for a day :) Oh shit... I'm not being productive.

    --
    "Never trust a computer you can't throw." -- The Mac
  216. Massive dual monitors, comfy chair, silence by Genghis9 · · Score: 1

    * Massive dual 21" monitors running at 1600x1280
    * Cordless optical mouse
    * Comfy chair
    * Silence
    * Nobody close by, but I don't like to be completely alone coz it creeps me out especially in creaky buildings at night
    * Non-greasy snacks, because I can't stand greasy keyboards or mice

  217. Being productive by deanj · · Score: 1
    For me, it's

    No office politics crapola. It's what drove me from my last job, and it's what's about to drive me from my current one. (A real shame too, because I love the work...the new boss never should have been put in charge).

    A Window

    No phone calls

    A stock of pop in the fridge

    No e-mail

    Those things, (especially the first one), are what make more more productive.

    Not having to worry about office politics is WAY underrated. I think we spend more time with that crap than anything else.

  218. Herbal remedies help by awptic · · Score: 3, Interesting

    After reading about people who've had a positive experience with herbal remedies, I decided myself
    to try a few. Ginkgo, in particular, is popular for increasing mental focus and memory; Ginseng too
    has a simular but more subtle effect. Wow! what a difference they have made, I'm now able to concentrate
    on a problem without losing focus for much longer, and my overall mood has improved. Seriously,
    give them a try; at worst they don't work, there haven't been any side effects associated with either.

  219. I haven't found the zone yet by HarveyOpolis · · Score: 1

    I haven't found anything perfect yet. One or more factors are usually off. Either it isn't the right time of day or I can't find the right music or whatever..

    I function best in the mornings (8am to 11am) after a good nights sleep of 7-8 hours. Once 11am hits I require a good walk/ride and perhaps a cool drink and lunch (its only black coffee in the mornings). A two hour break is good, but usually I want to get the work day over with so at noon I'll code again. Mostly, after noon I find myself idling around, ircing, spacing out, or running into a mad amount of problems.

    On some days I stop at six, other days I work till 4am or later. I tend to find myself close to being in the zone at around 1:30am. If I am still up at that time, I tend to work quite well. I don't check email at this time, and just buzz along until I notice the time or the sun coming up. When this occurs, I don't get back to work until the afternoon the next day. I either work a short day or the cycle repeats again.

    Well, it's almost 1:10 now, so I better go get some sleep because I don't want to be up all nights this week.

    --
    - Hugh Buchanan
    - Userfriendly.com
  220. WikiPedia by xenocide2 · · Score: 1

    I find that a lot of useful discussion on this fairly new and therefore not down to a textbook analysis process can be found at Wiki. Wiki is a bit confusing but whats there is evolving as quickly as the field.

    --
    I Browse at +4 Flamebait

    Open Source Sysadmin

  221. Ride my bike to work... by YrWrstNtmr · · Score: 1

    yep...that adrenline/endorphin buzz does it every time. Riding in, then zigzagging thru the little cube farm to my office. Feel better mentally and physically.

    Now..if it would only stop raining, I could get this damn application finished. I really hate riding in the rain.

    and yes, I am way older than most of you guys..:)

  222. Multi thread it. by Jarvo · · Score: 1

    How about a mutli-threaded VB program?

    Didn't think so.

    1. Re:Multi thread it. by Anonymous Coward · · Score: 0

      The current version of VB handles multi-threading, inheritance, exception handling, and is a true OO language (unlike the C++ object kludges). Microsoft borrowed liberally from Java for the current VB.

    2. Re:Multi thread it. by Anonymous Coward · · Score: 0

      Didn't think, more like.

  223. who the fuck are you, Cliff of Cliff's Notes? by Anonymous Coward · · Score: 0

    Crawl back into whatever backwater Bosnian hole you came from and fuck your goat on the way back in there.

  224. Programming in the wild by Sasquatch6 · · Score: 1

    I'm not actually a professional programmer, still being in uni. However, in my experience, I cannot program well when I am actually in front of the computer. I find that my best programming is done when I am walking about town, since my mind then has lots of time to work things out on its own. What I end up with at the end of this isn't actually code, but during my ponderings I have so completely worked out how it will work that the actual process of typing it out is trivial. I realise that this method probably isn't for everyone, especially for those chained to their desk

  225. yeah by Anonymous Coward · · Score: 0

    and i did all that using only the number zero. so there!

  226. Re:Creativity, Productivity, Drugs, and Clock Sign by Anonymous Coward · · Score: 0

    To me, a steady 4/4 beat will not help if I have to do any thinking. It just makes me stupid (or stupider, if you prefer). I do like music with an "alien" structure, such as some (from my point of view) ethnic music, or then take the 4/4 to the extreme with very, very minimalistic noise. No hi-hats etc. whatsoever, just some snaps and an occasional beep.

  227. young, you say by Anonymous Coward · · Score: 0

    And by 'attractive young lady' I mean 'freshly kidnapped six-year-old'.

  228. The Perfect Environment...for me. by xotx69 · · Score: 1

    1. Gotta have my 10+ Gigs of MP3. Switching CD's in the CD-ROM is a Faux Pas and distracting. 2. Large Good Headphone to isolate ALL outside noise. This was especially good when my cubicle was near the elevator...you wouldn't believe the conversations I heard! ;-) 3. Lots of snacks like granola bars, cookies, ice cold water or Juice, and chocolate for the desperate times. I NEVER DRINK COFFEE or SODA. 4. A Perfectly positioned chair that allows to sit up with comfort and lean back when you wanna stretch out. A good method that I use to test my chair is that if after 3 hours I start figiting and become uncomfortable, then the chair setting is wrong. 5. A Monitor that is alligned with my eyes. I find you get neck strain when you are looking up or down at a monitor. You should have to adjust your head/neck to look at the monitor. 5. A good keyboard with responsive keys. If the keys annoy you, get a new keyboard. I personally enjoy the SUN keyboards. They just feel right on the touch. (No dirty thoughts please!) 6. Incandecent lights and NOT Fluorecent. I acutally brought in a Night Lamp from home. The warm psuedo-sun glow that Tungston light bulbs give off are nice. I have also asked the cleaning people to remove those stupid Fluorecent light diffusers. You know, those checkered things that look like grates. Those things are awful for the eyes! Oh, and my cubicle can't be too bright. 7. I like to take a 5 minute walk and drink/snack when I'm stuck. Though usually I just listen to "Blister in the Sun" By Violent Femmes, and I usually figure out a solution. I can easily work 14 hours when the conditions are perfect. However, when you're in the zone, you only need 3 hours ;-) In the end, it's all about replicating how you used to program long ago in your room. It's just feels cozier. ciao

  229. priority by Anonymous Coward · · Score: 0

    Programming is a sacred thing, it requires a healthy person with a sober approach to life, like my own approach.

  230. Oh that. That's called "insomnia." by edunbar93 · · Score: 2

    Heh. The scary thing is that this describes almost exactly what my college days were like. The thing of it is though that I never took any drugs to acheive this state of constant 26 hour days. Unfortunately, since the rest of the world has to work with only 24 hours in a day, it only takes a couple weeks to get completely fucked up to where you closely resemble the living dead as you go off to whatever class happens to occur at 2pm and you have no idea even what the subject was at 3:30.

    I doubt the large amounts of cola helped either. This would probably be a good explanation as to why I didn't fare so well in college too, among other things like depression and the medication I was taking to combat both that and the insomnia.

    --
    "No problem. I have the capacity to do infinite work so long as you don't mind that my quality approaches zero."-Dilbert
  231. For me its... by thetechfreak · · Score: 0

    *Early in morning, late at night

    *Dark-ish lighting

    *Music - winamp set to random, not overly loud though

    *Nutrition - before i start get a choc bar or crisps etc, some kind of carbonated drink (coke, pepsi, sprite)

    *NO interruptions

    *Not connected to the net as its too tempting to go into chat, messenger etc... - but keep an eye on /. of course :)

    --
    {TheT3chfreak}
  232. Re:EXTREME PROGRAMMING! YEAH! by Dave_bsr · · Score: 1

    Hey i'm 20 and i dont have any idea. i think good. *shrug*.

    --


    Who is this Anonymous Coward character, how does he post so much, and why is he always such a whore?
  233. Hey! That's MY job! by edunbar93 · · Score: 2

    I work as a sysadmin for a small ISP. Like, a really tiny ISP. Like me and four other guys. This is a problem because if we don't all do the tech support, we'll have to hire other people to do it, which would cost us more money and cause us to sink. About the only reason I actually agree to do this is because the boss is also doing it.

    However, in any typical day I generally get nothing done at all, because it's either so busy on the phones that I legitimately can't get anything done, or it's just busy enough that I'm spending about 20 minutes or more to get back into my groove and I'm being interrupted by a phone call ten minutes after that. By some miracle however, I'm actually able to get things done that need to be done on occasion. Sometimes it gets done by putting in overtime, and some other times it gets done at home, but much of the time it actually gets done at work. I sometimes marvel at this fact. (like now! ;)

    --
    "No problem. I have the capacity to do infinite work so long as you don't mind that my quality approaches zero."-Dilbert
  234. My own room by Martin_Sturm · · Score: 1

    I'm quite young, and worked for just two company's. But at none of the both company's I was able to create an environment where I felt myself comfortable enough to create an optimal work environment. The offices are just to dull, with to bright colors. It's all just too bright for me. But when I'm at home, with a large desk, music and dimmed light, I can do magic things.

  235. The grotto of the mind. by Slime-dogg · · Score: 1

    woooo

    "The Zone" lasts for hours on end. Necessary requirements:
    1) Block girlfriend from buddy list and don't answer the phone. She is a distraction, part of the outside world. She will burst your bubble.

    2) Two or three large bags of Nacho Cheesier Doritos. Sustenance is vital for the long haul, and it keeps the body temperature up.

    3) A refrigerator full of Mountain Dew. Mountain Dew is the answer to all problems. It is the fuel that your brain burns. It makes 2+2 add faster for your brain, and the computer. It is the lifeblood, the essence. It awakens the Awen.

    4) No flourescence. Wooden surroundings are best, with Christmas lights all over. The smell of the wood invigorates, and when mixed with the caffeinated high, causes a euphoric state where the logic flows from your brain down to the long fingers that fly over the keyboard.

    5) Start no earlier than 6:00 pm. Any earlier, and your brain is still focused on the sun, on sex, on that half-eaten pizza in the freezer. Avoid this trap! Your code will lose it's strict hungarian style, you will become more verbose, and distraction will abound.

    6) Music is the last item on the list, and yet not the least. A blend of techno, euro, trance at low volume. The ability to lose your mind in the mathematic undertones of the music will decrease the compiler warnings, and will make the code stable even when compiled on -O4.

    --
    You need to restart your computer. Hold down the Power button for several seconds or press the Restart button.
  236. know what really disrupts my flow? by Anonymous Coward · · Score: 0

    windowsXP fucking up all the fucking damn time. I finally had to get VMWARE just so I can continue my development when winblows looses all my data... :(

  237. I must be some kind of freak... by heideggier · · Score: 1
    Personally, my most creative work has come from,

    Exercise, normally a really hard long run over 12km (not sure what that is in miles)

    Then working though the morning from around 6 to 10, in complete silence.

    I tend to find that if you zone to working though the night, eating sweets and drinking cola two things tend to happen, Firstly, you gain a shit load of weight (part of the CV really), Second, after a while you tend to not see the forest for the trees, For example a mate of mine went on about how he had spent the evening rewriting the sort() function. This isn't to say I don't do this but that is mostly in debugging and research not writing fresh code.

    I think that the type of people who like working though the night are the same type of people who left all their work at university to the last possible minute because it clashed with their Civ/Quake time too much. I guess it works for some people, I'm just not one of them.

    I should mention that I don't do it for a living like most people posting would so you can pretty much disregard the above. Not knowing how professionals do it, my best guess would be that EP method where they group programmers in pairs, personally I would find that really annoying.

    I think that the programming method works along these lines, knock together some sort of script that more or less does the job, (normally in the zone), draw up some kind of plan in how you what things set out, steal as much code as you can, write the program out in whatever, then spend the next six months debugging. Simple really

    --
    Pianist : Some jerk whos taught themselves how to type in rhythm
  238. Get in the Zone -- stay there by Anonymous Coward · · Score: 0

    Yes, sleep is important. Try not to eat too much at one time to avoid massive sugar rushes. Caffeine is a given; it does not matter what form but I prefer Sobe Adrenaline Rush, Bawls, 180, Red Bull, or espresso-based drinks as these are all higher than average. A nice 4 shot glass of an espresso-based coffee drink such as a mocha or a latte drink consumed approximately 1 hour after ingesting a Black Beauty or another Ephedrine-based pill can get one in the zone. But do not eat ephedrine too often. Richie Hawtin (aka Plastikman, robotman) is excellent. Any old-school acid music, hard trance or goa; music from Warp records tends to distract me too much. Unstructured music is not good for programming. A constant, yet mildly altering form of music such as ambient or repetitive-beat progressive hard electronic is good. Once in the zone, distractions such as people, beeps, phones, squeaks, or sudden, fast movement will remove you from the zone or lessen the interactive level of zonement. caffeine, ephedrine, or other stimulants/mind altering substances can get a person in the zone, but remember the best way is to start hormones and chemicals in the brain naturally by exercising. Running on a treadmill or taking a 20 minute run outside is great. Pushups, jumping jacks, mock kick-ass kickboxing + punching. The zone is right there in front of you..grab ahold of it and jack in... Don't forget corporate oppression is the single biggest obstacle for absence of zone-transfer

  239. Night for me too by TV-SET · · Score: 1

    Morning is killing me. Every day I have to wake up in the morning and I die again. Morning is not good for anything except mail and slashdot.

    Night time is the best. I should not have any light to work productively. I should not have any people around, icq, irc or phone. I should have plenty of coffee, beer, or coke.

    Problems which require plenty of copy-paste kill my productivity.

    Hardware is very important. Amongst the top is the keyboard. I simply cannot work on the shitty keyboard. Additionally, if the job requires mouse, it should have the wheel :) Monitor with at least 1024x768 with 6 virtual desktops to fit all my xterms ;) Afterstep is my window manager :)

    Sometimes I need music, sometimes I don't. That's a moody thing.

    Yeah, well...

    --
    Leonid Mamtchenkov ...i don't need your civil war...
  240. Shadow people. by Anonymous Coward · · Score: 0

    Nothing quite like a quiet office that's away from the foot traffic and my desktop speakers in a darkened room listening to Art Bell streams from the internet. Kind of makes programming more exciting listening to conspiracy theories and ghost stories. S'fun.

  241. My prefs by Piquan · · Score: 2, Interesting

    Here's what I find works well.

    First, be sure you have something to hack! If you don't yet have a design ready, you have no business at a keyboard. Walk around the block, or sit down in the break room, or do something, but relax and meditate on your design. Don't compromise. You'll know the Right Thing when you have it. Then, you're ready to sit down and hack.

    Now, on to the environmental issues.

    Comfortable chair. I have an Aeron, and don't really see a difference between that and any other good computer chair.

    No glare! At my last job, we were fanatical about closing the blinds when the sun started coming through them. (The window faces West.)

    Low lighting. At work, after six, they turn off most of the lights. There's well enough light to be safe, but much less than normal in an office. Overhead florescents are evil. Eyestrain, flicker, icky things. With the low lighting, desk lamps are mandatory. Florescent is okay there, since it doesn't illuminate the monitor. Make sure the lights work properly. At home, I use a single 60w incandescent and a lava lamp.

    Descent sized desk, with bookshelves. Being able to have schema diagrams, language references, etc. arrayed for easy reading while coding, without having to constantly shuffle things on your desk, is very important.

    General ergonomic concerns. Don't make the coder uncomfortable if he's going to have his butt plastered to that chair for a while. As keyboards go, I can code longer with my Maltron than my QWERTY (yes, I've identified this as a trend), but this is more personal taste than anything else.

    If your company tends towards phone over email, be sure to have a Do-Not-Disturb button on the phone! With all the biffs out there, there's no reason that somebody trying to concentrate can't put off a request for a half hour while they're juggling eggs. (My phone hasn't rung in some four months, so I don't even know if it has a DnD button. If it's urgent, you page me. If not, you email me.)

    Music. I personally prefer Celtic, Metallica, 80's, or FPS soundtracks, but this is *so* personal, be sure to experiment and find what works for you. Wireless headphones are a Godsend in an office environment where speakers are unusable. Never get an MP3 player without a repeat-all function.

    At home, I frequently hack well with the TV on. I leave shows I've already watched on the TiVo and put either them or a DVD on. It should be something you've recently seen. I also have good luck turning Emacs translucent and watching DVDs through it. Music video DVDs are great.

    My company has free bottled water and a selection of juices and sodas, always stocked, on each floor. Very good. When you hack for six hours in a row, you can get dehydrated too easily. We save money on water by giving out bottles (in koozies so people keep them) and having coolers. Get out the bottle or can before you sit down to hack. And think about water instead of soda; it really does work! (And this is coming from a die-hard Coca-Cola addict!)

    If you're close to a meal, consider postponing your hack session until after; catch up on email or fix some quick bugs first.

    A lot of people have talked about screen real estate for lots of xterms. I don't get that. I have Emacs, and that's it. But I write a lot in Lisp, where 99% of your time can be spent in Emacs with an Emacs window on the Lisp interpreter, except for when you're doing GUI design. In fact, a lot of the time, I work in console mode instead, to get rid of distracting window manager stuff.

  242. Romantic programmer rant by dstone · · Score: 2

    Some have suggesting coding is like writing a novel. But consider that it may be more like creating (free-form) poetry, since coders are one of the priveleged very few who can create the language, grammar, and all the rules themselves and then use that language, grammar, and rules to craft the end experience.

    When a carpenter or sculptor or engineer tells me they built a never-conceived-of-before tool to solve a specific problem, I smile broadly. I'm happy for them to experience that kind of magic. And I'm happier that I work in a profession that lets us do that kind of thing every single day, cheaper, and with fewer boundaries than anyone else. Sure, the hardware-design camp gets to build amazing physical gadgetry, but not nearly as often, and always under heavier material constraints.

    "The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination."
    -- Frederick P. Brooks, Jr. "The Mythical Man Month"

  243. Free Beer by Anonymous Coward · · Score: 0

    The best codeing situation I remember was when I was writing a scheduling system for a large brewery. I worked a swing shift, which meant I could interface with the humans every day for an hour or two and then spend six to ten hours alone with no interruptions, in a large tasteroom with an excellent view from these major picture windows. The best part was that there was around fourty linear feet of countertops, three feet deep, plus a large conference table, on which I could arrange listings from a huge number of system modules, open manuals, etc. I could just wander around and see all the relationships, dependencies, a great view of the system. It was so easy to get into the zone in that kind of room; Environment really makes the difference. Check out the classic book "Peopleware" by Tom DeMarco and Timothy Lister for a bit of management-moron level support on the value of a well conceived environment for programmers (basically, get out and leave us alone for many hours per day so we can think deeply).

  244. Well.... by ramoth4 · · Score: 1

    My zone usually gets interrupted by the end of class. And I can't seem to program at home on my Mac (which I will not trade for anything, except maybe a better mac ^.~). I am too used to Borland C++ Builder 3 (not to be confused with Borland Turbo).

    This "zone" phenomena is a clearly documented scientific phenomena, most often used in sports and in music.

    http://www.shpm.com/articles/sports/achizone.html << about sports Psychology.

    It can also be described as an alpha wave state. Our brain normally operates at Beta () waves. Delta ()is sleeping, and gamma () is that really weird stage between sleeping and waking, where you can kinda see what's going on in the real world, but you're not really awake. But that's another topic entirely. The Alpha () wave is when your brain isn't exactly thinking, but running on automatic. (A programming example would be like if the kernel some how took over a process and started controlling it, or something. This example thing isn't working out so well...). Studies on champion archers and on martial artists show that just before they perform their action (shooting an arrow or breaking a cinder block in two), their brain waves go from the complex to the simple waves. It's like your subconcious taking over, or so I understand it.

    For more information, try looking up alpha waves or subconcious on google.

  245. What works for me... by alvin · · Score: 1

    Most importantly, flexible hours. This is more towards "Finish your work then do what you like" rather than "Come in anytime you like". I find my productivity drops drastically when I have to worry about when to sleep so I can stay awake at work. Many times I have to stop when I'm in the zone just to go to sleep (and then it doesn't work either, because my head is so full of code I can't sleep). At those times I wish I could work 36 straight hours then crash in bed.

    Other factors:

    - The right software
    (pay for the license of software I want, not force me to use what you've got a site license for)

    - The right music (Trip hop works for me, although I get irritated everytime the music stops, or if I loop it and it repeats too many times)

    - The right lighting (natural light, a window is good, so long as it's not first floor with people walking around outside)

    - The right chair (doesn't have to be expensive, but don't tell me I can't have a high back coz only the manager is allowed one)

    - Taking walks (Preferably to a nearby place with lots of people, so I can tell myself "you need a life!")

    I also find I code better when working with another hacker nearby, who preferably is working on another project with simliar tools/language. This helps because I have someone to bounce ideas and ask questions off (and who might put me on a tangential train of thought by doing the same), but I think most hackers like to work on their project (or at least their portion) alone rather than share the load and worry about "integrating".

  246. Pairing with newbies by Aapje · · Score: 2
    Some (a lot of?) managers think extreme programming is to team up experienced with in experienced coders. This is wrong, stupid and will piss of the good programmers.

    The point of such an exercise is to teach the newbie which is not wrong or stupid. The goal is no longer to write code fast, but to teach the junior programmer about coding style, solving problems, design patters, unit tests, etc. It's a crucial part of making them productive in the future. Of course, you should keep these things in mind:
    • Don't pair with newbies exclusively. You're not exclusively a teacher. No company lets their programmers study/teach without being very productive all the time. Talk to your manager and explain this. Preferably you should be allowed to choose your own partners and be expected to spend at least x hours pairing with newbies. Experts should also pair with experts and newbies with newbies. The newbies can use the many things you taught them and teach them to each other. I'd expect that 1 hour of intense pairing with you should be matched with 4-5 hours of pairing with another newbie. This gives them enough time to process and use all the knowledge that you shared. It also means that you don't have to program with a newbie that often.
    • Don't pair with the same guy all day. Especially not with a newbie. 8 hours a day teaching someone is just too long (and not very effective).
    • Don't tackle the most difficult problems with newbies. You solve those with an expert, the simpler ones are perfect for teaching.
    • Be patient! You don't have to be very productive when teaching a newbie. Take you time! Before you know it, he's become an expert and you'll be happy to pair with him.
    • Try to learn from the newbie. They have a fresh perspective on things. Try to understand why they ask 'dumb' questions. Is it a problem with the design? Is your code unclear? Did you comment enough?
    --

    The Drowned and the Saved - Primo Levi
  247. Re:Excuse me? Well, it isn't coming to you know! by Anonymous Coward · · Score: 0

    Your whole logic in the post is flawed.

    There are opportune times for clear thought processes, and there are bad times.
    ....There is never a 'it isn't coming to me' time...


    It isn't coming to you in bad times. In some cases you might even believe it is coming to when it actually isn't.

    If it were coming to you all the time then you'd never have bad times.
    Watch your logic & language.

    Mature creators (as in those involved with creativity) know when it isn't coming to them and take appropriate measures. This can be a break, vacation away from the problem or a siesta under a tree dreaming of the problem.
    I suspect it is the latter you are referring to when you say you've never had a time when "it isn't coming to you"
    You have. You just don't know it or are living in denial.

  248. A real.. by Anonymous Coward · · Score: 0

    A real man says SAATANA PERKELE! drinks a glass of koskenkorva and writes the damn code. Fuzzing around, like a swede, will only make your children gay.

  249. Ambience by Taco+Cowboy · · Score: 2



    Windows may be important, if the view is all right.

    But if the view is NOT all right, then, the AMBIENCE inside the room is critical !

    Not all are blessed with CORNER OFFICE WITH GREAT VIEWS, you know ?!

    --
    Muchas Gracias, Señor Edward Snowden !
  250. what works for me by Anonymous Coward · · Score: 0

    I find that getting a blow-job from a beautiful female co-worker relaxes me and puts in a 'Zen state', thus allowing me to develop the next killer app.

    :-)

  251. Life In The Zone by Anonymous Coward · · Score: 0

    Some of us live in the zone :-)

    http://www.computerworld.com/cwi/story/0,1199,NA V4 7_STO1427,00.html

  252. Watch the movie "Swordfish" by PinglePongle · · Score: 1

    The movie stinks, but there's an excellent suggestion about how to get into the zone under pressure. Our HR manager objected, though....

    --
    It's all very well in practice, but it will never work in theory.
    1. Re:Watch the movie "Swordfish" by Anonymous Coward · · Score: 0

      Yes, excellent suggestion! There's nothing quite like being orally pleasured by a sexy lady to put you in 'The Zone'!!

  253. what works for me by Anonymous Coward · · Score: 0

    I find that getting a bl0w j0b from a beautiful female co-worker relaxes me and puts me in a 'Zen state', thus allowing me to develop the next killer app.

    :-)

  254. Kill the phone! by Snake · · Score: 1
    There are a lot of sound advice in the other posts, yet...

    One big way to dramatically improve the productivity is to give back the phone (or at least, mute it down).

    The reason I do this is that people tend to phone whenever they have a problem or a question. Answering the phone totally breaks my concentration (I need to change focus, kickstart the vocal/hearing circuits, etc.)

    If my contacts want to ask me something, they usually send me a mail. The e-mail has enormous advantages:

    • they must write down their question, therefore being more precise (no more "err... about this thingy you made the day before...")
    • when the mail pop-up on my screen, it doesn't bother me (I treat it like an error message, an assertion: I chose to handle it at once or not). I guess it is because it stays screen/keyboard related.
    It only works if:
    • you provide an excellent alternative with fast response time (e-mail) [so they can have their answer in a timely manner]
    • you provide a good doc about your work (user manual and comment in code) [so they don't event have to bother you, just tell them PRTM (please rtm)]
    • most of your contacts are nearby in meatspace. [informal meetings are not that useless]
    Because of this, I estimate I'm saving about 1 hour every day (time spent on phone + time to focus back on work). This translates for me in less stress and less overtime. Conversely, I tend to not phone other people (a mail is usually enough).
  255. Um... Was that (+5, Funny)? by Anonymous+Brave+Guy · · Score: 2
    The current version of VB handles multi-threading, inheritance, exception handling, and is a true OO language (unlike the C++ object kludges).

    That was a joke, right?

    The current version of VB (assuming you mean VB.NET) has some basic support for multi-threading, a primitive concept of single inheritance and some basic exception handling. You need to go hang with the OO boys for a while if you think it's anything close to a "true OO language". Compare and contrast with Eiffel, Smalltalk, Java, C++ or any other established player in the OO field, and you'll find numerous things VB's (or rather, .NET and the CLR's) object model can't do.

    And the C++ object model is far, far more powerful than many other so-called OO languages. The fact that you aren't forced to use it (and rightly so) doesn't mean C++ isn't an OO language. It's not a pure OO language, but it certainly supports OO much better than many.

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
  256. My Method by Sarthek · · Score: 1

    I tend to program in an almost completely dark room (bar for the monitor of course) with music. Works for me, anyway.

    I tend to leave food and drink out of the equation because otherwise I head into "coffee appreciation mode" and end up musing on the merits of Jamaica Blue Mountain rather than how to get a computer to accurately describe a nondescript knife from a low definition picture (don't ask)...

    Oh yeah, and exclude other people too. Swear at them, throw stuff at them, just make sure they leave, otherwise you'll never get anything done.

    Oh yeah, and although I should probably have put it up on the right section, coding is very much like writing a book. Anyone who's done both will tell you that straight away. It's all about inspiration. You can sit and stare for ages at a piece of code that isn't working right and not see the problem or even the solution, then, in the middle of the night (or a meeting) it'll come to you and have you scrambling for a pen and paper.

  257. A well defined project by brownj_685 · · Score: 1

    The most effective thing I have found for hiting the programming zone is to just a have a well defined objective in my programming. If one isn't avialible I work on creating one first.

    Interuptions are rarely a problem. I just put them on hold till I finish my block of code.

    It isn't very hard to tell someone, can you wait a moment till I get this block finished. When I do finish the block; I turn and look at the person. I have found that trying to talk and code don't mix. Do one or the other. Not both.

    James

  258. Reclining chair by Alien+Conspiracy · · Score: 1

    1. Really comfortable reclining chair.
    2. Silent, large-screen laptop.
    3. The right music: light jazz, gregorian chant, etc.
    4. Mood lighting.
    5. No distractions.

  259. Pretending you are special is cheap... by totierne · · Score: 1

    Costs management nothing, and keeps the workers happy. If you feel you are special at your job you will work harder.

    You see your specialness disappear real fast if you make costly requests, requiring reorgs, personality conflicts, or pay rises.

  260. Stop taking caffeine? Are you nuts? by multipartmixed · · Score: 2

    I don't know about your habit, but mine is up to about 1500 mg a day. If I go more than 10 hours without a cup, I get withdrawal headaches so bad I'd literally trade them for a good swift kick in the nuts.

    If you're going to advocate quitting caffeine, the least you could do is suggest that the user get down to zero intake in 100 mg per day steps.

    --

    Do daemons dream of electric sleep()?
  261. Shamanism? by Anonymous Coward · · Score: 0

    I can usually get into the zone pretty easily - especially when I've got some music with a nice beat (esp. Neu!, Hawkwind, MC5, The Stooges, Simply Saucer, Television). Thing is - once I'm there, I often start swaying and singing along unconsciously, which people find rather amusing... I guess that would make my experience of the 'Zone' more 'shamanic' than 'meditative'?

  262. Re:Creativity, Productivity, Drugs, and Clock Sign by Hellkitten · · Score: 2, Insightful

    the zone, that trancelike state when time stops to matter and there is only you and the code. How do we get there?

    This is what works for me: in order of importance

    A challenge: The task at hand has to be difficult in some way or another. If it's not then you can still do it but you don't get 'there'

    Coffe. Black. Strong. Close. Hot but not hot enough to burn my tounge and throat when i gulp it in a not quite conscious motion

    Nicotine. I may not go to take a smoke while i'm on a roll. But I have to be able to or I'll get distracted.

    Light. Dim. At the least it shouldn't reflect off the monitor

    Music. Preferably repetive with a heavy bass. The most important thing is that I've had to have heard it a thousand times before, so that I don't hear something unexpected and 'snap out'. Pity I can't do this at work because it might distract the others. Also headphones is a big no no, since they either slide off or are too tight and hurt after a while.

    Air, fresh but not cold.

    Something edible. So that if my stomach manages to get through to my brain i can silence it fast

    --
    - We are the slashdot. Resistance is futile. Prepare to be moderated -
  263. How I get in to th zonae by racerx509 · · Score: 1

    How I get "in the zone". Have a large stuffed chair. Its kind of old and creeky and nasty, but very comfortable.

    An old laptop. Its only a p150 with no web connection, so its perfect for coding and writing with no distractions. It runs the java sdk just fine.

    Headphones with very soft music help keep the rhythm and drown out distractions.

    Have my documentation on my left and right side so that I can easily look down and see whats going on.

    --
    13 year old white supremacists are shitty web designers.
  264. Headphones! by Anonymous Coward · · Score: 0

    I do my best programming when I'm wearing a large pair of ear-covering, sound-blocking headphones so that all I can hear is the music. I think I find both other conversations, and total lack of noise to be distracting, so listening to music helps me concentrate by providing some background while blocking out the world around me. I use an instant messenger to communicate with other programmers

  265. Poetic Tech's workspace makes all the difference by grgcombs · · Score: 1

    See http://www.poetictech.com ... this workspace is ideal for all kinds of geeks.

    Greg

  266. Holy Crap, are you me? by multipartmixed · · Score: 2

    Seriously, you've described me to a tee.

    At any rate, there's one thing you haven't tried. Code in a datacenter with non-cycling air conditioners (dress warm). It will help you achieve the final state of "the zone". After a few hours of this, when you stand up, you may be lost (i.e. not know where you are, which way to the door, etc) for several seconds. If so, you have achieved the final state of "The Zone".

    I once pulled a 53 hour day like that, got up from my seat only three times. I did two months worth of work.

    (Too bad I didn't get the next 58 days off!)

    --

    Do daemons dream of electric sleep()?
  267. Swordfish hacker by Anonymous Coward · · Score: 0

    The "hacker" in the Movie Swordfish seemed to be a zone for that test he took...

  268. Mixed views by xFallenAngel · · Score: 1

    I work best in a dark, semi-large room (12m^2 should be enough), with dim, indirect lighting. Too much light makes you concentrate on things happening around you. The lighting should be near your computer and not elsewhere. If the lighting is around the room, you again have your mind on other things. The walls should be white (no wallpaper!) and smooth, since other colors like beige and brown don't promote happiness and patterns irritate you.

    On the other hand, I need a window. If I'm stuck on something I need to get my mind off of the computer and onto something else. A picture wouldn't be sufficient since I need something that moves at least once in a while. (parking lot, street)

    Since windows emit light, shades would be best. You can close shades while you work, and open them to relax. But not white shades. White shades seem gray if they are closed. It would also be positive to have the rod for tilting the shades somewhere in reach, so you don't have to get up just to relax. If this is (for some reason) not possible, a walk is a great thing!

    A large desk is a great thing to have. best would be one of those cornered desks, that are rounded on the inside. With the computer in the corner, you have room for manuals and documentation on both sides.

    Against popular belief, I need a cool room. If the room is warm i feel surrounded by this substance we call air. In that case I feel under pressure, which is not good. On the other hand it shouldn't be cold. Nothing is worse than having cold feet.

    I would love to have a soft, fluffy chair. Something like a bed would be great, but since neither of these ideas are realistic in an office environment, I came upon this alternative: I need a chair where the seat can tilt back far, that is as soft as possible. Then one of those foldable footrests they sometimes have at the barber is great.

    Last but not least, I come to music. Since a lot of people have different tastes in music, its kind of hard to find an ideal. The closest I can get to that is to state that music not containing lyrics, or very little lyrics is good. Also it should not be too repetitive. Underworld for example has little lyrics, but is very repetitive. Continuous mixes, like the Trancequility series are great. As said, Low volume is a must though.

  269. MyZone by wessman · · Score: 1

    I can get into the zone at work or home, but there are some requirements:

    1. My water bottle. No, I don't buy bottled water, but I do have a Brita filter pitcher in the fridge at home. So I bought the tallest no-leak Rubbermaid water bottle with straw. This way I don't spill water on my keyboard (or me) and can stay hydrated. I used to drink OJ all day, but it was tearing up my stomach and room-temp OJ tastes pretty rancid. Likewise, green tea, coffee or hot cocoa gets cold too fast in a mug, so I stick with sugar-free, caffenine-free water.

    2. Turn the e-mail and/or IM off! I only open IM to ask a friend a specific question nowadays, but even at work, turning the e-mail off is a smart move. When that systemtray icon pops up for new mail, most people (self included) can't resist seeing who's "calling." Damnit, that icon just popped up! Oh, and turn off the MSNBC News Alert and P2P stuff too.

    3. No wife! As soon as my wife enters my home office, my fingers stop and my brain wanders. Yes, she's a hottie, but that's not the distraction. It's the fact that women don't know when to NOT talk. Why is it that if I start talking during to a female while she's watching TV, reading, using the computer, whatever, I get the "shhh!" treament. But if they start talking to a man while he's doing one of those activities, and the man says "shhh!", the female gets mad at him and give one of those default female codes: "You never talk to me anymore," or "I'm just trying to talk to you," or "ARRRGGGHHHH!!!" and storms away. Venus/Mars, Pluto!

    4. Music? I listen to a very wide range or music, from black-metal to country to Lilth faire to rave to classical. I love to have music on 24/7 whenever possible, but if the music is something that I can sing along to and know all the words to, that is BAD music to have on to get into the zone. Instrumental is a great choice, but so is an obscure album like Pink Floyd's "Obscured By Clouds" or music that you just don't know that well. Silence is good too, but after awhile, I start to notice the quiet and it bugs me, hence, distration.

    5. Pets? Pets can be a distraction, but it's somewhat of a comfort if my cat is asleep on the scanner behind me.

    6. Outdoors with a laptop does not work for me. Too much distraction from nature, cars, etc. I'll take my office with my large moniter and ergonomic keyboard setup anyday.

    ...in the end, the greatest distractions are people talking, the phone ringing, having to take the piss or sh*t of your life halfway thru code. I can usually don't realize I'm hungry when I'm in the zone, and thanks to the waterbottle, I'm not thirsty and the water can fill your stomach after awhile.

    And if one is truly in the zone, droning out coworker talking is easy, until somebody walks up right behind you and asks you something and you jump out of your chair, white-faced, hair on end, eyes wide open, breathing hard cause somebody just ripped you out of the zone and scared the crap out of you!

    Geoffrey James' "Tao of Programming"

  270. music - headphones by tonicBastard · · Score: 1

    philip glass - uakti, kundun soundtrack

    miles davis - sketches of spain

    i can listen to those for hours and hours

    meditative, hypnotic, rythmic

  271. No distractions by TomCollins · · Score: 1

    As others have mentioned, distractions are the big Zone Killer.

    When I really want to get into the zone and get some work done, I'll:

    1) Close my door and put a "do not disturb" note on it.
    2) Quit my email app so it isn't announcing the arrival of every new email.
    3) Turn off my cell phone.
    4) Put my desk phone into "do not disturb" mode and ignore the voicemail light when it comes on.

    My zone time goes in 2 to 4 hour blocks. There really isn't anything so important that someone can't wait until I'm out of the zone for an answer.

  272. Get Healthy by ClickNMix · · Score: 1

    In my experience, the thing that has really given me an edge of the last year or so, is dropping the coffee and late nights and 24/7 connectivity to the net/computer.

    A bit of a detox, bottle of water a day and a book on yoga later, and I felt hugely more productive and healthy and I could work constantly and more acurately rather then riding the buzz of a caffine high.

    And when you not constantly at the computer, it means your forced to think about things rather then just do. And gives your mind a break, letting it focus more on the code when it needs to.

    In the same spirit, Feng Shui helps as well.. Not much, just the basics.. Just because your expected to work in the dark under piles of pizza boxes and molding coffee cups acording to stereotypes, doesnt mean its the best way.

    --
    I saw the light at the end of the tunnel... But it was just someone with a flashlight bringing more work.
  273. What works for me by neitzsche · · Score: 1

    For me to hit "the zone" takes time. The biggest thing is to program every day. Just a little snippet of code, but a little bit every day keeps me up to snuff.

    In fact, that's how I learn new languages - "Hello World" one day, count 1-10 the next, iterate through an array the next, open a file the next, etc.

    It is folly to think you ever know everything about a particular language though. The best you can ever do is to just keep at it, especialy when you think you know it all.

    --
    "God is dead." - Frederik Nietzsche
  274. Reefer Madness? by MemeRot · · Score: 2

    "and also because of hashish/marijuana."

    I guess they disproved the 10,000 year history of safe use that I would otherwise judge those plants by :)

    No, I agree, 80% of everyone I know who got into meth fucked up their life. The better-off ones ended up in rehab. But if your friend killed someone he was already a homicidal maniac, drugs may bring things inside you to the surface that otherwise wouldn't see the light of day, but they don't create them. I never use it now, but a couple times in the past did come to work on it and did several days worth of work in one day. But the post was a joke, I'm shocked I wasn't modded -1 Troll or flamebait.

    1. Re:Reefer Madness? by tobi_pinkjuice.com · · Score: 1
      "drugs may bring things inside you to the surface that otherwise wouldn't see the light of day, but they don't create them."

      I don't know if that's true.

      I think it's irrelevant, because one fact is clear:
      A lot of horrific stuff wouldn't have happened without drugs, that's very sure.

      --
      peace, love, respect
  275. ritalin by MemeRot · · Score: 2

    Which is of course why it is a PERFECTLY WONDERFUL idea to prescribe it to every single 5 year old kid who misbehaves in class - despite the fact that the health effects of the drug on children aren't well known. I'm pretty cynical, but the evil of that bothers even me.

  276. You are gay by Anonymous Coward · · Score: 0

    that's right. I'm insulting you by stating you have a sexual preference which in and of itself shouldn't be a put down according to Politically Correct Logic and I'm justifying it on the fact that you like soft rock music from the 80s. But you know what, I don't care. I still think it's an appropriate response. do you have on hot pink spandex under your khakis, you phil collins loving pansy?

  277. A whole slew of things... by Roogna · · Score: 1

    First and most important, no outside interruptions. Know that's been said before, but it can't be stressed enough.

    Other things:
    Proper music, varies depending on my mood and also what I'm coding. The right thing playing in the background can really stimulate my mind in the proper directions for the code I'm writing.

    Natural sleep patterns. A job that makes me show up at 8 and work till 5 is not getting my best performance. I end up groggy and tired throughout the entire day, and never can quite concentrate. On the other side, if I come in a 1-2pm, I can work straight through to 4-5am and still not be all that tired at the end of my day. On the flip side, I know people who are the opposite. They want to be in as early in the morning as possible, starting at 2-3am. The point being it's different for everyone, but if you want your coders at their most alert, then you need to make at least some attempt to let them adjust to their natural schedules. You'll find a few people surprisingly even love 8-5 work.

    Flexible hours. 40 hours a week sure. Heck, 60+ hours a week, easy if the enviorment is good and the project is fun. But 40 hours a week may mean coming in at 3pm one day and working till midnight. Just to be in the next at 11am and out by 3pm. Followed by a day of Noon to 5am. Nothing will keep me from zoneing more than the stress of unfinished errands that simply have to be run. The number of times just this year so far, where I had an errand that could only be run between 8 & 5 that I simply had to keep putting off and putting off till the last minute, is staggering. The stress this causes means I'm simply not getting as much done at work as I could. Project managers remember: The point is to complete the project efficiently and correctly, not to keep the chairs warm!

    Decent snacks, not just sugary stuff. Again, something that's different for everyone, but that's one of my major interruptions where I work now. The only things I can get to snack on in this building are candy bars, and the only thing available to drink is soda. The water isn't actually drinkable (they've promised to put in filters for months), so that leaves the only option to get non-sweet things being the other buildings. While it gets me out into some fresh air, it's also an interruption that's unneeded. Bottled water even would save a half hour a day minimum in walking between buildings.

    Defined objectives. If I know what is wanted of me, it's much easier to slip into the zone and get to work. This makes it very simple on my own projects, but is one of the biggest problems I have with my current employer. I can zone all I want, but if I don't have all the information about what I'm supposed to work towards, then I'm still getting nothing done.

    As far as locations go, if I'm working at night I must have _good_ lighting. Specifically easy on the eyes, not too much of it, and absolutely no flourecents(They give me migraines). If working during the day, pretty much same thing. Though I can deal with more light if it's sun light(not direct though).

    Comfortable chairs. I can get more work done in an old chair I have at home, than any chair I've ever had at an office. Simply being more comfortable means I need to get up less often.

    Privacy. Something with a door that locks. This does not always have to be complete privacy, just the ability to lock out most of the world. At my current employer I once shared a large office with three other people. But we'd keep the door closed and locked. So while I had communication with the rest of my immediate team, we also didn't have to listen to every conversation in the building.

    For those working at home this certainly dosen't happen as often, but for office workers, pick an office and leave them there. In the past three years I have had to change desks 5 times. Not only do workers lose at least a day (more if things are setup properly when they get there) in moving. But it takes a bit to adjust to the new enviorment where production isn't as high as it could be. Most of my team has gotten to where we have nothing personal on our desk and basically keep no papers. Three of us to the point of having only our computers on our desk. Simply so that we can pack up and move more quickly when they move our desks yet again. This dosen't lead to a relaxed work enviorment though.

    I could probably go on more about things, but this has likely already been boring enough to read. Congrats if you got this far. One last thing to stress, which I again know has been mentioned before. Everyone is different in all of this. While a business likely can't afford to cater to each individual exactly, talking with your coders and finding a middle ground with them on this stuff is a good step in the right direction.

  278. I think there is a difference by GCP · · Score: 2

    I was a fulltime programmer. Now I'm in marketing, but I have a specialty programming skill that means that I still write code some days.

    Doing both jobs, I can clearly see a difference. The biggest difference I see is that coding is a solitary "disappear into an artificial world inside my own head" type of activity, while marketing involves realtime interaction with the external world.

    Coding requires an environment designed to shield me from the outside world so I don't notice it and come out of my "trance". Marketing requires paying close attention to the subtleties of the outside world and interacting with it cleverly in real time. The more I pay attention to the external world, especially to other people, the better I do.

    I find that my biggest challenge in marketing is paying close attention to the external world for long stretches of time. While the "real" marketers can listen closely and catch the subtleties in almost everyone's comments during a long meeting, I find that the first time anyone says something interesting, I tend to take it offline inside my head, pondering it, missing not only the subtleties of subsequent comments, but often not hearing a word they said.

    Both activities are difficult to do well, but they're definitely not the same. I think most jobs, like your daycare center example, are like my marketing job. You have to keep your eye on a whole bunch of kids simultaneously and respond correctly in real time.

    Programming isn't unique, but it is very different from most jobs in its requirement that you stop paying attention to the outside world, turn inward and just think for long stretches. Programmers who can only do it for short stretches can still implement others' designs by chipping away at the task list, but they run into trouble when they have to blaze the trail themselves.

    --
    "Those who have never entered upon scientific pursuits know not a tithe of the poetry by which they are surrounded."
  279. a day late (the zone) by Anonymous Coward · · Score: 0

    Figures, one of my favorite topics and I'm a day late. My post will be lost in the posts of topics-gone-by.

    To get in the zone for anything, the first thing you need is to know the material inside out. You can not get "in the zone" if you know nothing of the programming language, just like you can't be "in the zone" playing basketball if you don't know how to dribble.

    I believe that it comes from having something so ingrained in you that it becomes second nature, instinct.

    Once you've got that (and most professional programmers should) you need to bring out your creativity. This can be done by music (that's how I think most people do it), or even.. yes.. I saw that earlier post, fantasizing. Visualization brings out your creativity, however remember that getting turned on will likely kill any ability to think.

    What you want is to stop thinking. I know that sounds counterproductive, but the moment you stop thinking is generally when all those great ideas will start flowing through your mind.

    Of course this is all from personal experience with *other* things, not programming.

    Oh, a thought for when you're stuck, get up and take a walk and think about anything EXCEPT the problem. It's not a myth.

  280. Recent work by Chris+Johnson · · Score: 2
    I just finished the first version of a screenplay-writing program- basically a 'screenplay processor'- doesn't write anything itself, but switches around among the different 'blocks' of screenplay you need, managing margins and indentations, doubling spaces after punctuation, punching in slug lines and the spacing for dialogue cues, intelligently spacing between lines etc. The research on this format was really the hardest part, then it was just a matter of sorting out the guts of the program and the interface, the latter being overwhelmingly important. It had to know what you were doing and race ahead of you, slamming in all sorts of preformatted macros and always ending up in the right place, with the right formatting, to continue directly.

    So- it did require 'the zone' to write this program.

    What ended up happening was- the program was researched first, and then written over two nights. The first night, it was a dead-end. I wanted to use a certain technique, and was hitting walls all over the place. At the end of the night, I just put the program aside, and then I did other things for a while, consciously putting the project on the back burner, because I just _knew_ it needed to simmer a bit. It was so ready, and yet- it wasn't coming out right, not yet. It needed to stew impatiently and NOT be worked on for a day.

    After that short break, I went back and took some different approaches, got up a head of steam, hassled with some bizarre bugs (too many objects updating themselves in various ways...) and bam! I had a working version.

    I'd say a very important part of working 'in the zone' if that's the way you work, is being allowed and able to step AWAY from the zone and go do other things or even do nothing for a while. Not just hours, even days. I need to be able to do that. It may sound contradictory... *shrug*

  281. HA! by MemeRot · · Score: 2

    A lot of horrific stuff wouldn't have happened without Christianity. So much suffering and death in the name of god.

    A lot of good things wouldn't have happened to me without drugs. To each his own. While I think laws forbidding religion would do a lot more to make the world a better place than laws against drugs, I think each individual should be left to their own devices.

    1. Re:HA! by tobi_pinkjuice.com · · Score: 1

      whew! what does Christianity have to do with christal Meth; they both start with "Christ" or what?

      --
      peace, love, respect
  282. I wish I had a *cube*. by Anonymous Coward · · Score: 0

    We have an "open environment" - a bunch of bloody desks in a room.
    I don't know what the fuck they were thinking, but they sure as shit didn't ask the people that were going to be working in there for any opinions.

    Between the Loud Guy a few feet away, and the Loud Guy's AM radio[1], it's pretty damn near impossible to work without something shoved in your ears.
    Without good headphones and industrial music, I wouldn't get shit done.

    Just wish there was a similarly easy solution to the harsh, flickery flourescent lighting.

    Yeah, it's pretty fucking lame.

    --
    [1] Which, as luck would have it, is playing "Dr. 'I'm my kids mom, and a fucking bitch!' Laura" 80% of the time.

  283. what? by MemeRot · · Score: 2

    They don't both start with christ. crystal. as in crystal clear. as in could i be any more....

    You put unsupported blame on drugs for causing 'horrible things to happen'. I put much more easily supported blame for 'horrible things happening' on Christianity. I know your response - it's not christianity's fault. So you should expect mine, it's not the drugs. The problems were already in the people. Drugs are no more to blame for 'drug induced' killings than God is to blame for religious killings. Drugs don't kill people, people kill people. Guns don't kill people, people kill people. God doesn't kill people - Oh, no wait, he does actually.

    Man, christianity would be such a nice religion if it weren't for all the damn christians....

  284. Hacking for yourself vs. hacking for someone else by Shiny+Metal+S. · · Score: 2

    Writing code is very much like writing a novel. One day it's flowing out of you. Then on another day, it just stops. And there's no way you can easily tap it back 'ON'. It's not about 'formal methods'.

    I agree with you and here's what I've observed: When I do something for myself, everything works great. I can work 20 hours non stop, than sleep 6 hours, than work another 20 hours, sleep 6, work 20, sleep, work... and I'm not even tired. I'm working better with quiet and when no one interrupts me, but I still can work with random noise of kids playing outside, with phones ringing and with people interrupting me. I'm in hack mode and I'm just hacking.

    But when I work for someone else, while I should have a better motivation being paid, I just can't focus, every little sound is disturbing, I'm angry all of the time, etc. So my strongest problems with work are of the emotional nature, while I have no intellectual problems with that work at all.

    When I do what I want, I usually (not always of course, but 95% of the time) can easily find my zone. When I do what I have to, I usually (95% of the time) cannot easily find my zone and have to work under heavy stress.

    I suppose that it is somehow similar to writing a novel, i.e. when an author is writing for himself, when all that matters is a great novel, his own novel, everything works. But when he has to write a novel, his employer's novel, because he needs money, nothing works the same.

    When I work for money it's no longer a hobby, I do it because I have to, not because I want to and this is a great difference for me. I can't have to do something, I have to want to do it, in order to do it well. I hope you people understand what I'm trying to say, it's kind of my self-psychoanalysis, quite a difficult task.

    When I have to do something, anything, I don't feel that I do something important, and I just don't see much sense in doing it. The one and only sense is money, but this is unfortunately quite a poor imperative for me. (Don't get me wrong, I don't consider it a virtue, because I have serious troubles with money all the time. I'm trying to convince myself that this money is very important, which it is, but I feel that I'm doing something completely stupid and pointless, and I just can't focus and relax at all.)

    It's actually a very serious problem, if anyone is or was experiencing similar problems, please answer, I'd like to know how do you solve them or live with them. I know that this thread is somehow old, but I hope someone will read it and answer. Every comment to this article I read talks about the furniture, equipment, noise, music, drinks and other elements of physical environment. It could really help me if I could read comments of people who deal with similar problems as mine. Thanks.

    --

    ~shiny
    WILL HACK FOR $$$