It's time for my weekly Monday review. My mind is feeling a bit groggy right now and due to a range of factors I'm stuck in front of my research computer for a long time today, so I'm going to kill some time with a long review of the week past and a look towards the week ahead. It might seem a little bit hypocritical given what I'm going to write about attempting to work more efficiently [smile]. However I do think these weekly journal postings where I review my development practices are helping me become a better developer, so you'll have to endure another monster post full of my attempt to self-engineer my own set of personal management techniques. Better settle in because this might take a while...
Week in Review - Description
Productivity was up this week. Admittedly it was only up to about 12% of what I think I can do if I really put my mind to it, but it's a start. Hopefully if I continue to work on improving my working habits and squashing my procrastination tendencies I'll be in the happy productivity zone within the month. I also hope I can have more physical evidence to show of actual progress (other than the new tricked out colour scheme, of course).
I know it might seem weird that I'm finding all this staying productive so difficult, but it's a real character flaw I need to rub out. After analysing my thought habits over the last week I think the problem might be that I am totally hopeless at multitasking. If I get engrossed in a single problem I can work for hours on end to solve it, but put multiple tasks in front of me and I spin cycle through all of them and never get anything done. Thus it's become a problem that these days I have about a dozen tasks that I'm attempting to juggle at once. This required a level of organisation and management that I'm not used to.
Organisational skill is probably the one thing I'm worst at. Back when I was a teenager I did a proper personality test run by a psychologist to help with career choices, with various personality aspects ranked out of thirty with the standard distribution falling roughly in a bell curve averaging at fifteen. For "organisational affinity" I scored... zero. I think the psychologist was impressed; it was the first zero she'd ever seen. I also seem to remember her recommending academia as a career path for some reason [grin].
My major contribution to organisation this week stemmed partly from my revising of HTML. I decided I might as well keep my running list of tasks in HTML form, and surprisingly it's working a lot better than I'd thought. My usual pencil checklists on paper often get lost after a couple of days, and checklist in plain text is harder to read. The basic formatting in HTML into lists really helps with seeing what needs to get done, and it's easy to update every day.
However there's still heaps of room for improvement, especially on the procrastination side of things. Unfortunately most of the things that are proving the biggest distractions are also indispensable tools for my work. Take the Internet, for example. I have a nasty habit of heading straight for the 'Net whenever I get stuck on a particular problem. It often starts with the excuse that I'm just searching for the answer to a problem, but it quickly degenerates into idle surfing, maybe making a few too many posts here in the forums, maybe looking up heaps of random facts on Wikipedia, or maybe observing that fascinating insight into the bizarre personalities that inhabit the Internet that are shown in the complex ritualistic text-based art form that are the comments at Slashdot.
I don't think I can just go cold turkey and give up the Internet for a week; I really do need it for both my research work and for game development as used the right way it's a tremendous help. So I will have to rely on willpower to stay on task. The solution I will attempt this week hinges on the fact that I usually don't need to head straight to the Internet to solve a problem immediately when it's discovered. Instead I'll add it to a list, work on another problem, and then search for all the answers in one go in an attempt to use the Internet with purpose. I'll also try to keep my "recreational surfing" at places like GameDev.net to a minimum - I still want to keep up to date with what everyone is up to in the journals, for example, but that doesn't take that long. But I really should avoid the Lounge, especially with stuff like that farcical "Noah's Ark" thread storming its way up the all-time hottest topics list. I must add "make more posts in Mushu's journal" to my "to do" list...
Another thing I've noticed this week is that I'm really terrible at judging time. I thought I'd get heaps done this week, but I tended to overlook the amount of time getting stuck on little problems take up, plus all the little things do add up. I also have a tendency to put the most work into the most immediately enjoyable tasks - for me at the moment that's drawing cutesy little cartoon characters and playing with Inkscape - but I really should be putting more effort into the hurdle tasks of engine design. My approach for solving that problem comes from something Ravuya suggested a while back; I'm going to force myself to work for twenty minutes on engine design each day this week, regardless of how calcified my brain feels. If after that time I'm going nowhere, I can shift to writing that Inkscape tutorial for twenty minutes, and if that fails I can work on slightly less important tasks like cutesy drawings and making the journal look nicer. I tried that tactic out yesterday, and I found that if I really did put my mind to it then often after twenty minutes I'm over an initial mental hurdle and can work for a couple of hours with design work.
Synopsis of Tasks
A quick review of how I'm going with my main tasks, and where I hope to be next week. Let's start with the most disappointing one first:
I'm really annoyed with myself that I didn't get that much done on this at all. I've got a good idea of what I'd like to write, but I really need to set aside a few hours to get started. However I suspect I won't get around to doing this until after I've finished updating my journal; mostly because I have both things mentally listed as "HTML tasks", partly because I'm also writing up other lessons as part of my research obligations, and partly because out of all my tasks this one has a relatively low priority for me. Rest assured for any of you who are wanting an Inkscape tutorial, I will write this, it's just I don't think I can realistically give a finishing date other than "definitely expect the first installment sometime this month".
As you can see, this is my big achievement for the week. It also was a big time sink as there were a lot I had to learn about how CSS works especially in relation to GameDev.net, but I think it was worth it for future web work that I have to do. I still need to fix the buttons; I couldn't figure out how the GDNet themes change the edit button, and I haven't worked out all the display options CSS 2.0 has for images, but I'll get something up and running this week. There's also a whole bunch of other fun things I'd like to try out, but that will definitely be on a "can't think clearly enough to do anything else worthwhile" basis.
Yes, I am insane for thinking of new things to do, but there's some things I'm considering starting up sometime soon. I really do need to get back into working on music. I've been keeping up with my keyboard practice, but if I'm going to write my own music for the penguin game I'll need to work on my skills. I'm a big fan of writing concept music early so I can stick it in my playlist to help think in the mood for the game while programming and drawing.
I'm also wanting to look at making my own fonts - partly because I'd like a "perfect" custom font to go with my work but mostly because I think it sounds like a lot of fun. But that will wait for a fair while, as there's too much on my plate right now.
That's it for this week. I'll probably post something soon in the next few days; I've got a whole bunch of questions I know some of you will have some answers to, or at least great suggestions, and I should also have figured out how to fix the small problems in the new layout; but for now I'd better get back to work. Or at least get another cup of coffee to get my soggy brain back into gear. Mondays can be a pain.