Now available as an interactive flowchart!
Just as writers are prone to writer's block, programmers are prone to GeekBlock.
Maybe we can't find the cause of a particular bug,or maybe we just can't stop surfing the web when we know there's things we should be doing.
Having found myself in the clutches of GeekBlock more than once, I've put together some notes from the inside.
I can think of three different situations which can give rise to the dreaded GeekBlock
In each of these situations you might feel that there is no way of moving forward, or that any technique of moving forward is extreemly slow. But all of them can be overcome, if you are willing to deal directly with the problem.
Notes on each situation are included below.
You've been handed a bug to resolve - but you're not making any headway. Or you're developing a component for a large project, but one small part of it has got you beat.
Some ways you might want to deal with this situation include:
- Tear your hair out
- Tell your manager that it cannot be done
- Quit your job
Since these methods are not particularly rewarding in the long term, you might prefer to consider some more sustainable techniques for problem solving.
Take the time to analyze around the problem. Ask the following questions - and don't settle for simple answers.
- What's the problem
- Do you lack knowledge about the problem?
- Do you lack Technical Knowledge?
- Can you work around the problem?
- List making
- brain storming
- talk it out
(if need be, talk it out very very slowly)
(eg, a bug that can't be reproduced)
- Find the people who raised it
- Talk to anyone who knows more about it
- If it's a bug - can you reproduce it?
- Friends, old colleagues
- product speicifc sites (eg: MSDN for microsoft products)
- Your Personal Favourites
- Other people online who've had the same problem (write to them)
- Office library
- Personal library
- State/Government libraries
Can it be solved through another means?
What's the underlying business problem?
- The task is mind numbingly dull!
- The task is too big.
- I just don't feel like working on it.
I just don't feel like working on it.
Maybe you are depressed, even clinically-depressed. You can get treatment for that - so go for it.
- Take a break
- Take control
- List making
- brain dumping
- talk it out
Take a break
Sometimes the brain is just exhausted. Sometimes the spine has been in the same position for far too long. If you've sat staring at a problem, or staring in to thin air, for twenty minutes or more with no success then you're entering paraletic brain shut down and you need to step away from the keyboard.
Drink some coffee, read a magazine, look at the sky. If you work from home then go out and dig in the garden. If you work in an office then go outside and dig in the corporate rose bush. You never know what you'll unearth.
When true procrastination sets in, you're mind can travel far away from the problem. If you've lost your focus then it may be time to sit down and try to work out exactly what the problem is.
Making a list, revising a list and expanding on an existing list are my preferred ways of approaching particularly difficult conundrums.
Sometimes there is other junk knocking around in your brain that clouds your critical faculties. When I start to feel that way I try to list each of the separate topics I am concerned with - not in any detail, not neatly - just quickly and thoroughly. Sometimes this can reveal extraordinary things about where your real concerns lie.
Talk It Out
Procrastination, or hesitation, can be an immensely enjoyable exercise, particularly when you are facing looming deadlines. SOme of the best activities to perform while procrastinating include:
- Surfing the web
- Ripping CDs into MP3s
- Cleaning your keyboard
- Little steps
- List making
I'm currently writing a book about how to build your first product. If you want to build your first product, please sign up to be notified when the book is available.