How To Get Out of Developer's Block? 601
Midnight Thunder writes "I have spent the past six months working on a software project, and while I can come up with ideas, I just can't seem to sit down in front of the computer to code. I sit there and I just can't concentrate. I don't know whether this is akin to writer's block, but it feels like it. Have any other Slashdotters run into this and if so how did you get out of it? It is bothering me since the project has ground to a halt and I really want to get started again. I am the sole developer on the project, if that makes a difference."
Shut down your web browser (Score:5, Informative)
Re:Shut down your web browser (Score:5, Informative)
Wikipedia says:
"Weorc or Work (Anglo-Saxon leader). Gave name to Workington or 'Weorc-inga-tun' which means the 'tun' (settlement) of the 'Weorcingas' (the people of Weorc or Work)"
Merriam-Webster says:
Etymology:
Middle English werk, work, from Old English werc, weorc; akin to Old High German werc work, Greek ergon, Avestan varÉ(TM)zem activity
Date:
before 12th century
If you know anything further, please inform.
Re:Start sharpening your axe (Score:3, Informative)
If the edge were so important, they would cut trees with razors.
I fall more in the "agile" than in the "waterfall" methodology mindset. Usually when I start with flowcharts and schematics I get nowhere.
For me, the way to get over the block is to write one routine that works in some small detail of the project. When I get the perfect data formatting in the gizmo function I start understanding the overall project better. After a few interactions with working code I get a better grasp of the whole, then I do the needed cleanup.
I let the tree grow first, then I prune it. That's the way nature works, four billion years of evolution can't be all wrong.
Re:Coder's block (Score:2, Informative)
Re:Coder's block (Score:3, Informative)
For those that don't catch the reference... http://science.slashdot.org/story/09/06/24/2257221/Need-a-Favor-Talk-To-My-Right-Ear?from=rss [slashdot.org]
And funnily... yes. He sits off to my right.
Re:Look for unmatched parentheses (Score:4, Informative)
Re:Too many possible factors (Score:3, Informative)
That was a pretty depressing 'funny' mod. Looks like we have some shut-ins afraid to face facts and using mod points to change the subject.
Getting outside and exercising will immensely improve your quality of life. Period.
Re:Drink beer (Score:4, Informative)
Kids nowadays.
Traffic cones appear on your front lawn.
Hookers stay in the trunk of your managers rental car.
Re:Shut down your web browser (Score:5, Informative)
Re:Too many possible factors (Score:2, Informative)
Nice American Psycho quote!
The Insightful mod however is, interesting :)
WAY more. (Score:5, Informative)
There's, indeed, a LOT more to it than that. There are any number of things that may be blocking your creativity, but from the description I suspect burnout and/or depression. If you've been working a lot or are under a lot of stress (kids, too many hours, responsible position, people complaining to you a lot) your mind may simply be locked up. This is a panic reaction, a last defense mechanism for a mind running with hormonal imbalances. It will mean your cortisol is too high early on, then drops off at the time you need it most. Your body's stress response is worn out and depleted and needs time to regenerate. That's why burn-out victims are usually told to go home and do nothing for a year. It takes a LOT of time.
Ask yourself the following questions:
- Do I drink more than two cups of coffee every day? Too much caffeine will elevate cortisol and make you more sensitive to stress. Cut down on coffee and take Ginseng supplements - this will help your body restore its decreased cortisol capacity. I personally like green tea with ginseng. It takes a bit of time to switch, just do it gradually and you won't run into problems. Try to cut smoking and alcohol as well as much as you can.
- Can I work for a few hours only, and then feel like my mind "locks up"? This is definitely a stress sign. If that's the case, take a 10 minute break for a walk OUTSIDE, EVERY HOUR. (I mean it! I had the same problem, and an external management bureau with lots of hands-on experience gave us these tips, and they worked.) This will help you de-stress and over longer time will help reset your body's hormone system. Also: cut away any other stress factors. Are you busy two days a week helping your kids' soccer teams do their paperwork? Let it go. This will be difficult if you are indeed tottering near burnout - it makes you more emotional since your "logical" brain is less active - but it is vital. Also, do you jump out of your skin every time your mobile phone rings? Also a very strong indicator of stress. Be wary and get to know your own fear signs. If it is all too much, consider if you can let it all go and rest for at least half a year. The project will still be there then, or if you are overtaken by competition, there will be other projects. Rule one of life: we all want to feel good. Only then can we help others and be productive. If you're living only for others and don't feel good doing it, something is wrong. Some people - especially those with a large sense of responsibility - are extremely sensitive to stress, and you don't know for certain until you have crashed through and are well beyond your limits. That's what it took for me to realise something was wrong: I could barely do the dishes without being told how to do it. Don't let it get to that.
- Do I feel miserable? If so, that might indicate not only burnout, but also dysthemia/depression. GET PROFESSIONAL HELP. And I mean a real shrink, not just a psychologist. He can temporarily set you up on medication which will help you recuperate; after some time you can then build down and get rid of the meds once you're standing on your own feet again. But for the time being, medication is probably essential as a crutch. Note: it is of VITAL importance that you find one you're comfortable with; if you don't feel OK with the shrink after a few sessions, thank him/her and just tell them that you don't feel allright and try another one. It can take a few tries to find the right person.
- Do I sleep enough? If you're not getting at least 6 hours of clean sleep, you're probably stressed or burned out. I remember a "burning" feeling from that period and only sleepint 2-3 hours a night.
- Do I have a real work place, and are there distractions? I ran my own company for seven years, and in the beginning I worked from home. In doing so I could never really "get away" from it. Once I had an office outside the door it made a real difference: I went to the office to work, and psychologically that also did a trick - it set me into "work mode". I left the browse
And even MORE! (Score:4, Informative)
Cool! It's always nice to know the feedback is appreciated. Some other things you might keep in mind:
- have a BIG work desk. A big desk (everything in easy reach) is like computer memory to a person, and your brain is the processor and the filing cabinet is the hard drive (spacous, but slow).
- There are many different people with different reactions to stress. A friend of mine used to faint regularly, and feel dizzy all the time. After she stopped her second job, a few weeks later she felt a LOT better. Listen to what your body is telling you; if you aren't sure, try changing things to see if it helps. Keeping a diary also helps. Note down what you did generally throughout every day - eat, drink, smoke, work, etc - and try to discover patterns. You may, for example, work out that the acne you get twice a month is actually connected to those few times you carpool with someone. Bad fibers in his car?
- be wary of other peoples' expectations. Are you a YES-sayer? Teach yourself to say NO or, at least, "I'll get back to you on that". I remember having immense problems resisting people who wanted me to do something for them because they projected their problems on me: "my computer HAS to work this weekend! My kids want to play games! I need to check e-mail!" It took me the burnout session to realise that that is THEIR problem. If that's an issue they'd best get a second computer. One of the best ways to get burned out is by assuming too much responsibility. If you're taking projects yourself, jot down how much time you think something will take, and double it. Use that number to plan your time. If you're in a corporate environment, tell your boss you're full and that you either need an assistant, or an intern, or more colleagues who can help you with the work; if he's got a dinosaur brain (like many managers do), write down your predictions and don't be afraid to give him the I-told-you-so after the $#!7 hits the fan because he didn't listen. However, do it constructively: tell him you'd like to discuss things with him to ensure it works better in the future. Destructive commenting is too easy and doesn't achieve anything at all aside from a few seconds of self-vindication. It may get you fired, but usually you're just doing your job and your managers' superiors will realise this; you can't help it you have a better view of things than your manager.
- If something seems "too big" or "too complicated", once again you're in the danger zone of a burnout; check my earlier post to see if you can recognise more warning signs. If you feel good and fit and are productive, on the other hand, it may not be burn-out but it may only mean you need to chop the project up into smaller parts to give you a good overview. If you can oversee all the steps in each of the parts, and can oversee how they all connect, you can see the whole project. This makes running it MUCH easier since you can keep an eye on both micro and macro goals.
- Set limits to your project beforehand. Make estimates of how long you plan to invest in a certain segment of the project, what you want to achieve, and STICK TO IT. If you have time left you can add extra stuff later. If you get extra ideas en-route, write them down but don't integrate them unless it's absolutely vital. You can review the achievements and extra ideas later. Also, plan in time for EVERYTHING: time for planning, time for arguing with colleagues, time spent in traffic, time on the phone, time reviewing the code or project. Try to hook a number on everything. You might not get it correct right away, but you will develop a much better feel for what you are doing and how much time each part takes, because you are consciously trying to manage them. A famous saying is: "who fails to plan, plans to fail." This is exponentially true of corporate environments with many people in it. On your own, or with two people - three max - you can do everything ad-hoc and take things as they come; above that and you need structure, work procedures, flowcharts, and people chasing each