Tales of the Rampant Coyote
Adventures in Indie Gaming!


(  RSS Feed! | Games! | Forums! )

Friday, December 16, 2005
 
Productivity Tip - The List!
One of the hard parts about "being your own boss" as an indie game developer is that ... well, you may have a bad boss. Managing yourself can be a trick. Well, it is for ME. Maybe I'm the only one in this universe who has that problem. But in case anyone else does, too, here's a couple of my tricks. It worked well for me with Void War, and I'm beginning to hit that mode with my current projects (yes, I used the plural --- I'm just begging for trouble).

Makin' a List, and Checkin' It Twice (hey, 'tis the season!)
Ever sit down to begin working on your hobby game project, or writing the Great American Novel, or some other big undertaking, stare blankly for a while, and then knock it off to go watch football or play a videogame instead?

No? It's just me? Okay. So it's just me. It happened last night. I got all excited about having the evening to WORK ON THE GAME. I loaded up the compiler, my copy of "CodeWeaver" (A Torque Script Editor), and opened up a couple of folders. I ran the current build of the game --- played around with it for a bit --- and started dreaming of what I should do next. And then I went off and did something else (something else important, but it wasn't game development). All I have for my evening's effort was a little bit of "chrome" added to some bits I've already been working on.

With Void War, I kept a notebook with me ALL THE TIME. I jotted down lists of things that needed to be done. I crossed out things that were already done, or things that got moved to other lists. My Void War notebook is full of items that have been crossed out and re-written on a later page. Then what I'd do is pull out the tasks for the week... and then pull out the tasks for "tonight" - and make a note of them on another page.

The end result was that I had a master list of tasks that needed to be done SOMETIME, a much smaller (until the end) subset list of "Things to be done REALLY SOON," and then an even smaller subset list of "Things to be done RIGHT NOW." I'd work on the lists during my lunch break at the Day Job, usually. Or the night before (especially when tasks carried over to the next day). The tasks could be prioritized as necessary, so as you are gathering together your list you can focus on the priorities. My priorities were really simple:

A - Other tasks (especially A or B priority) have a dependency on this task getting done.
B - Something that should be in the next milestone.
C - Everything else.

So when I sat down at the computer to begin work for the evening, I already had a list of things to do that I'd already carefully considered. And I could see the progress I'd made by seeing all those tasks crossed off. I could measure my productivity for the week based on how many items I'd crossed off. It was very satisfying, especially as I hit late-development and I couldn't always see all the work I'd done on the screen.

At work (the dreaded "Day Job"), we're on a rapid development cycle, and our project manager has done something similar which he's done at other companies, called "Three Up, Three Down." Every day you assign yourself three tasks, and report on the three tasks you were supposed to accomplish the previous day. And those tasks are reported to the rest of the team.

The other advantage of keeping that list is that things won't get forgotten. It can serve as kind of an evolutionary design document. Forget all the flowery prose and detailed back-story and stuff. Who are you trying to impress? Instead, the "Hit List" (as I like to call it) is for YOU. It shows what you are currently striving for in a compact, highly summarized form. As you decide to cut features, they get scratched out on the list... and new features get added. It's very easy to see where you are, what needs to be done, and where you are going. No, it's not gonna sell anyone on your idea, but it helps you get the job done.

And that is the most important thing.

Labels:



Did you enjoy this post? Feel free to share it: del.icio.us | Digg it | Furl | reddit | Yahoo MyWeb

Comments:
Ever sit down to begin working on your hobby game project, or writing the Great American Novel, or some other big undertaking, stare blankly for a while, and then knock it off to go watch football or play a videogame instead?

This Blank Page Syndrome (Developer's Block?) is something many independents seem to run into, and I think the solution of taking a step back and planning is right on the money. Our first title, after switching from Palm OS dev to Windows, was a first-person shooter -- a much bigger task than what we were used to. As a result of planning it like a small Palm OS title (basically, an outline), I had many Blank Page days and weeks, where the game was stagnant. Most of the time, I just had no idea as to what I should do next.

Fast forward a few titles, and due to good planning, sitting down to develop means getting a number of solid hours of development done. (Whether I'm implementing the right game is, I suppose, another issue.) In all cases where this happens it is because, as Jay suggests, every task is on paper before I begin. Also (and I feel silly for not recgonizing this as obvious), this also makes it easier to work on tasks with other people.

My personal method of choice here is to use a Wiki (specifially, MoinMoin, because there's a desktop version). I began our prototype as a Word document, but switched over to the Wiki when it became difficult to find things. The Wiki facilitates organization by allowing me to group similar pages together and link between them where appropriate. Being Web-based, it also facilitates collaborative design.

So, a resounding "Yes!" for The List. And why not try a Wiki, while you're at it?
 
Only that I've never set up Wiki and only used a Wiki rarely, so I'm not sure of the benefit over the notebook. At least not for the smaller project.

For the larger of my two projects, though, I can see a real clear advantage, primarily with coordinating with the rest of the team.

I've never heard of MoinMoin before, though. It works well for you?
 
It's just one of the many flavors of Wiki. Python-based, which is perfect for me.
 
Post a Comment

Links to this post:

Create a Link



<< Home

Powered by Blogger