I believe one of the most important in doing pretty much anything is to know what you are going to do. Climbing a tree won’t do much good if you have picked a wrong tree.
I’ve noticed that it’s easy to lose focus and start doing irrelevant things (like read blogs, check out forums, have a quick look at email, play some games) when you should be programming your game. I think the single most important thing to do is to have clear tasks which will tell you what you need to do next.
That’s very simple rule, but it’s darn easy to forget it.
It’s also easy to start doing some irrelevant coding or production task that won’t make it to the final product. I’ve noticed that I might start looking for some texture files when in reality artist should be the one who gets those files – it doesn’t do any good for me to google for some textures. Learning to say NO for yourself – besides others – is important skill to manage.
I use pen & paper to write down ideas and I also use simple text file for todo tasks and finished tasks. I think it’s good motivation to see visible progress (finished tasks) and have some clear, visible tasks (todo) that you can do. This way you can immediately tell what you should be doing next.
Do you know what your next development task is?