Hacker News new | past | comments | ask | show | jobs | submit login

I learned a long time ago that I could cure the pain of procrastination by opening an editor and typing

  int main(int argc, char **argv) {
I still do this... just opening the appropriate program -- emacs, MS Word, whatever -- and typing a line that looks like it might actually be useful is enough to get me started doing real work, even when I have no idea how to complete the project (which was what was stopping me from starting in the first place).



I've found similar methods that work; if something can be made a routine, then the automaticity often takes over and provides the kick in the pants necessary to get started.


Can you explain more about how you got to that point of realizing what helps you get started?


I don't recall precisely. I suspect I asked myself something along the lines of "What is the smallest, simplest concrete step that I can take that will move me toward my goal?" If the answer is typing "emacs", that's so easy that it's hard to resist doing it right away. Having tried the little mental exercise once or twice, the positive feedback I got made me want to do it over and over again.

The trick of writing /something/ down, no matter how trivial or wrong, is that now you've got something to work with.

If it's the declaration of main(), the next step is staring you in the face: what's the first thing I need to do in main()? Process arguments? Cool, I know how to write that code. What are the arguments? I don't know, how is the program going to be used? And like magic, now we're designing the interface to the system; that is, we're actually doing the real work.

If it's a piece of writing, write an opening sentence. Anything will do. If it's terribly wrong, how can we make it better? If it's roughly right, what's the next logical thought? And the next? And the next? Now, how can we cleanly end this paragraph and lead into the next one...


Baby Steps :)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: