There is some buzz on Twitter about One-game-a-month challenge(#OneGameAMonth). Point is to make a game each month, 12 games in a year. It’s gamificated and social. There were similar events before, like game-in-a-week or game-in-a-day competitions. Those are for game developers, but I like the idea and I would want to try it for software projects in general.
It could be interesting to try a project-in-a-month challenge. Every month you devise an idea, implement it and publish it.
What’s great about it:
- You wont be stuck with the same project for a long time, designing or polishing it indefinitely
- You’ll do what’s really important for the project
- Once a month you’ll cover the complete software lifecycle
- What you learn in one month, you can immediately apply the next month
- Rules are actually guidelines – it’s not a competition
- One idea at a time – do not prepare ideas for the next month
- You can imitate an existing idea, but add some twist or change a point of view
My projects generally tend to fail. I condemn them to fail as soon I start working, and for various reasons:
- I want too much. I create ideas for software, service and business model. I could spend years to actually implement them.
- I over-architect. I’m so afraid of spaghetti code and dependencies that I spend too much time thinking how to write instead of writing.
- I’m rarely satisfied with my work. Which is good because I always strive to be better. Which is bad because I get lost in details.
Project in a month positively influences this problems:
- Project must be small-scoped – can’t do much
- Minimal architecting – only when needed
- No worries if it’s not perfect – it can’t be perfect in a month
(Why did I write half of a post in bulleted lists? Maybe are efficiency and minimalism already creeping in.)
(And I published it without a title. Corrected in third iteration)