Writer's Block, Geek-Block, and Procrastination

A master procrastinator presents the solution.

Draw up a little piece of paper like the one shown below. Start taking notes.

On the left you write in your current tasks (the tasks you're blocked with)

In the right column you etch in anything you're worried about, any fears you have, and anything that's gonna stuff up when you try to do the things in the Action list.

Start anywhere.

You'll find that writing one action will lead to related anxieties. And writing down an anxiety will lead to actions that overcome this.

Action

Anxiety

  
  
  
  
  
  
  
  
  
  
  
  

In the action column you can write big goals or tiny little tasks. Your aim is to end up with at least one task small enough that you can get on with it.

In the anxiety column you can write big over-riding fears, or small concerns, problems, worries. Your aim is to get down to at least one problem that is small enough to be solved.

Both Actions and Anxieties are fractal in nature, recursively-composed of smaller and smaller versions of themselves. Identifying the components is the true battle for the mind-locked geek.

Some notes about the list.

  • Don't restrict yourself to any given topic. Sometimes the trouble is outside the expected scope. Nothing is off-topic.
  • It's not for other people to read, it's just for you.
  • It's not for keeping, so don't worry about what you write. The process of writing it down is what's important. Burn it later, if you want.
  • Just start writing the list. No need for prior thought.
  • Unfortunately, The real difficulty lies in recognizing that you are procrastinating/stopped in the first place.

What if the list doesn't work?

There are causes of geek-block/writer's block/procrastination that won't be helped by the ActionAnxiety list. If you can identify one of these causes, then address it directly (rather than addressing the symptomatic mental-blockage)

  • Depression
  • Hunger/Thirst
  • Tiredness/Exhaustion/Insomnia
  • Sexual Frustration
  • Low blood-sugar
  • Substance abuse (e.g. cravings or hangovers)
  • Illness
  • Meetings
  • Other. That damned other.

You might want to consider this mantra:

"I choose to start on one small imperfect step, knowing that I have plenty of time to enjoy life."

from here


secretGeek recommends:Feeling Good, by Dr David Burns Feeling Good

Related links

 

Two-Way Date-String Conversion (in .Net)

If you need to store and retrieve dates as string (in a CSV file, for example), here's one way to handle it (in VB.net).

(And if you know a better way -- please show me)




    Const FORMAT As String = _
         "yyyyMMddHHmmss" 'Example format
    Dim s1 As String = "20040610140023"
    Dim s2 As String

    Dim d As Date

    'Turn s1 into a date
    d = Date.ParseExact _
         (s1, FORMAT, _
         System.Globalization.DateTimeFormatInfo.InvariantInfo)

    'Turn the date back into a string
    s2 = String.Format("{0:" & FORMAT & "}", d)

    'Compare the starting and final strings
    Debug.Assert(s1.Equals(s2), _
         "The strings s1 and s2 should be equal")


 

VOIP (Voice Over Internet-Protocol), officially real!

After hearing about VOIP for years, we've now got it in my office!

The installation was painless, the ease of use is high, and the benefits seem to be many. (e.g. inter-state calls get routed through our WAN, to cut down costs, internal PC support staff can do what previously required PABX technician call-out fees, integration with the desktop PC is brilliant and so on.)

We've passed the peak of hyperbole, coasted over the gulf of dissappointment and we're finally onto the plateau of utilisation. Ahh, techno-cycles.

(facts: our VOIP hardware is Cisco, and everything was handled by Australian VOIP Legends Data#3 (nice bunch o'folks they are too).

[Disclosure: if you buy off them and mention my name, i may get a bottle of wine three Christmases from now, referer programs not being what they were.]


 

Sexy New Development Methodology!

(This was going to be a joke... but now I suspect I might actually be serious!?)

Forget Test-Driven Development!

Try:

TODO-Driven Development!

Here's the process: (continued....)


Example
    Private Sub Runcommand(CommandText as String)  
      If CommandText <> "" Then
        'TODO: is command valid?
        'TODO: NO: error message...
        'TODO: yes: run the command
      Else
        'TODO: handle for blank command 
      End If
    End Sub

You soon get a Task-List like this...

the list of things to do...

(Make sure you've got 'Show-Tasks -> All' selected)



Example
example... shown as a graphic so you see the blue squiggly lines

This will result in a LOT of Compilation errors:


And that's it.

It's almost embarrassing to realise that i often use this process.

(There's also a lot of prior planning, paper prototyping, customer meetings, discussion, procrastination, database design, coffee-drinking, code-generation for sprocs and crud-sproc calls, import of re-usable DAL's, PAG block usage, go PAG!, back-and-forth debates prior to document sign-off, arguments, late-nights, frustration, chatting with friends, sifting through email, scratching in visio, printing things out and leaving them in a heap, scrounging for staples, catching buses, doing back and neck stretches etc., but that's all been left out for simplicity...)

Does giving it a name make it legitimate? Can I write a book on this and do a lecture tour now?

 

Getting A Longhorn Of Your Own

Special guest Cornelius Krundaloopha would like to share with you his efforts to acquire the Longhorn build of Windows.


If you want to get your hands on a long horn, all I can say is "fat chance".

Mr Gates, he does not give his long horn to just anybody.

I told my girl friend, "all i want for my birthday is a long horn." she nodded and said "you and me both, honey." which is odd cause she doesn't normally like the computers so much.

She must have forgot what i asked for though because all she got me was some Chinese pills and a brochure about a operation i don't want to discuss right now.

(Continues... )

A vendor i know is a big micro$oft partner so i writes him and says "If you has a long horn can i get my hands on it?" but he is not replying.

At tech-head i says to everyone "can i get a long horn? can i get a long horn?" but this must be sensitive topic, very hush-hush as security usher me away.

this morning i finally hear back from the vendor and he says "ok, i will show it to you" -- and he is heading to my office immediately, he has cancelled everything else for the day.

i am so excited i stands up in my cubicle and shouts "Hurray! I am getting a long horn! I am getting a long horn!"

everyone must be pleased for me as they clap their hands and laugh a lot, it is very joyous. one man must know how precious it is and says i should keep it in my trousers. Another security conscious mans suggests i shove it somewhere else.

i book a meeting room with a big projector and i write to my manager: "All the clever young men who work here are invited to a special screening of our vendor's long horn. it is so big and powerful it will make your mouth water."

well, the developers was not interested, they is too ignorant, but several of the personal assistants are very interested and the room is soon packed.

the head janitor is a lady in her seventies and she must have a technology hankering i didn't know about as she sets herself up in the middle of the front row and she even borrows someone's glasses. She is quite excited and keeps giggling.

when the vendor arrives he is pleased to see me at first but when he sees the room full of people waiting to see his long horn he goes very pale and he says that this is not what he had in mind.

he leaves before i can say anything.

i am dissappointed, but i know i will get mine soon.

i hear robert scobble is a big long horn lover. maybe he will give me one.

FAITHFULLY sincerely

C*O*R*N*E*L*I*U*S K*R*U*N*D*A*L*O*O*P*H*A

p.s. thank you secretGeek for letting me tell my story. i take back what i said about you.

 

R.I.P. Loki.

food,

Rest In Peace, Loki Hennessey, Goddess of Mischief. Beloved family pet, ever playful, would turn thrice on the spot before sitting or lying. May 1990 - May 2004.

Loki, upside down

My wife and I returned from a club last night to find that the cat didn't want to come inside. Even though we shook a packet of its favourite food at both front and back door, it wouldn't show itself.

We were worried and decided to walk around the house, Sharon starting at the back, me out front. The side-gate was locked and I called out for Shaz to come and unlock it from the other side. As she approached the gate she tripped on something large, black and inert, lying across the path. She screamed -- it was Loki, and she wasn't moving.

It didn't take a team of doctors to conclude that Loki was beyond help. She wasn't breathing, moving, responding. We used a torch to look for injuries but found nothing. She looked just like herself, but she was gone. As they say in the cliches, she looked very peaceful.

I've dug a deep hole in the backyard where we're going to bury her. (Contrary to my father's request for a Loki hat).

We'll miss you Loki. You left your pawprints on our heart. We trust you've found a sunny spot in which to lie.

 

Three -=FAT=- tips

amazon, apple, blog, commandline, methodology, tools, visual basic,

Three things I'm convinced about thanks to Mike Gunderloy's Coder To Developer

  1. Break Mile-Stones into Inch-Pebbles, if you're serious about your schedule.
  2. Give Test Driven Development another, fairer go.
  3. Find and Use the best tools available, such as Lutz Roeders reflector and XDN (which Mike Schinkel is giving away free in May, to .net bloggers who spread the good word).

When I finish the book I plan to review it fully. For now let me say this: it is broad, it is thorough, it is useful and it is refreshingly small. It's not one of those big-fat-books-you-stick-on-the-shelf-in-order-to-appear-smart. Coder To Developer is one of those slimmer, well-thumbed books you use every day to actually become smart.

Oh, and don't be misled by the platform-agnostic name: the book is very strongly focused on ".Net".

There's a C# flavour, but Mike keeps it perfectly readable for VB geeks like me. (Mike wrote a Sybex's MCSD/MCAD books for VB.net, so he's more than capable of speaking to VB audiences as well as C#.)

Mike's page of links are a great resource in themselves.

 

Ask Eric

blog,

Once upon a time i tried to write an article about .Net remoting. Shame on me. Eric Lippert knows how to talk about .Net Remoting. Brilliant, brilliant stuff.

(end of comment, kiddo.)

...
 

I have been bribed, so now I will blog.

apple, australia, blog, coffee, food, microsoft,

.Net Developers throughout the Australian landmass have just received their free MSDN connection welcome packs. This includes a free magazine of your choice (provided your choice is ".net asia", that is) and a letter from the new author of the MSDN Flash newsletter, Caroline Price, presumably written between bouts of hang-gliding, bungee jumping and so on.

There's also a rather rakish identification card (not photographic, god bless) you can use to earn geek-reward-points. Though my favourite thing is the poster of namespaces from the .net framework.

I think that bribing developers is an excellent idea. Future bribery should include a free tablet PC, a free iPod (not very microsoft, i know) and a free visit to Redmond. I respond well to Gadgets, Sweet Food, Caffeine-Products, Beer and Holidays. I also accept t-shirts. Medium.

The MSDN Connection bribery programme is an initiative by Microsoft to build up developer user groups and communities, and has the blessing of ineta.

Another good resource for Australian .Net Developers is Frank Arrigo's blog where he maintains a list of aussie .net bloggers.

While I'm on the Australia thing, the site superior software for windows is geek bliss, largely due to the work of Adam Cogan.

(end of this waffle.)

(There could have been an article here... but the waffle died out. Comments are enabled... go for it.)

 
 

All articles: The complete archive.