Monday, April 10, 2006

Making Work Fun

As you might expect, this is a post about making work fun.

Games are fun. Any decent game is fun. You are eager to play it. Eager to start it up, eager to see it through. Until it gets boring, of course, but lets forget that for a moment.

Work isn't fun. I find my work - programming and databases - to be fascinating. But, unfortunately, it's only fascinating 3-15 hours into a 40-50 hour project. It's not fun to start, and it's not fun to finish.

The question is simple: can a programming/databases project be reconfigured such that it uses game-like approaches? Can you make a project "fun" right from the get-go? Make the programmer eager to begin a new challenge? Make the programmer enjoy slogging through the tidying-up phases?

I don't know. But it seems to me that it should be possible. Any ideas?

3 comments:

Duncan said...

Part of my job is low level design and coding. The part of my job that I love the most is when I'm defining a problem's boundaries, and designing an elegant solution to fit within them. This is about 5-10% of the whole project.

Things I'd like to give to someone else: Implementing the solution after I've designed it. Documenting the whole thing. Testing my code and ideas.

There will always be grind in any job. You have stuff you have to do to get set up. You get some fun stuff for a while. Then you have to slog through the rest of it before you get the payoff of finishing the project. Unless you can combine with other little cogs that take joy in the parts you do not, there is little way around it that I can see.

Slartibartfast said...

I've thought about that a bit too. It seems that 'slogging' is the result of either having too little freedom (boredom:more of the same) or having too much freedom, not well defined goals (thrashing:what's going on?).

You can save yourself from boredom by automating repetitive tasks, and from thrashing by setting clear goals and making baby steps.

I know it's a mundane, obvious, unoriginal answer, but it's the best I've got.

Craig Perko said...

The problem is that I'm not good enough to automate things like game implementation or art generation. I'm not sure anyone is.

Oh, and hi. Long time, no see.