As the year comes to an end and I look back at the development of Twelve Minutes I remembered something that I feel is worth sharing.
Three years ago, when I moved to San Francisco to work on “The Witness”, I found myself surrounded by some very talented developers like Jonathan Blow, Chris Hecker and Daniel Benmergui.
Seeing how they just do their thing, without being dependent on anyone else, made me understand that if I want to do my own game, all I have to do is work on it.
I know this sounds obvious but I never believed I had the right conditions to start working on this project. I would often complain that I don’t know how to program, I need to find the right team, I don’t have the time, etc…
If you were to read more, you’d know that most freelancing programmers can work just for a few months and make enough money to support themselves so they can then work full time on their projects, but as an artist, freelancing requires a lot of chasing clients and is not that well paid. This means that for now I need a full time job until I have a strong enough prototype that will allow me to find funding (which is also a great way to make sure that the concept works and its fun, unlike a lot of project that get started without a solid prototype and end up having a LOT of problems through production).
This brings me to the topic I want to talk about, working on this project, during my free time, every day, for the past two years.
Besides work, it’s important for me to have a rich personal life, since game development usually means sitting long hours, alone, looking at a monitor. This means dedicating time to family, friends and other non-game related activities.
In the end I don’t have that much free time but working one hour every day is still more productive than not working at all! Sometimes I get more than one hour and other times less, I would say in average I get a full work day (8 hours) every week.
It’s frustrating to try to build something that would normally take 3 days and seeing it take over 3 weeks but it’s still a lot faster than not doing it and that is a very strong motivator.
I’ve also started to realize that game design is a lot more thinking than coding. Understanding the problem and finding the best solution is sometimes harder and longer than the actual implementation. And the fact that I can’t be in front of my computer all the time forces me to naturally dedicate more time to thinking.
Whether I’m washing dishes, taking a hike or chilling on the beach, I can think about design issues that I’m trying to solve, try them in my head, scrap them and do it again until I find the ideal solution. Then, when I finally have the time to sit down in front of the computer, its crazy productive.
Also sometimes, when I get a full weekend to work, I’m less productive than if I had only a couple of hours. I end up writing code without properly thinking about it and over complicating what I feel is the right solution.
Ideas need time to settle down and it’s hard to do that if you have a screen and keyboard right in front of you.
I won’t deny that there are plenty of negatives to it too. Spreading complex tasks over several days is frustrating. It might take me half an hour to remember where I left off three days ago, only to realize I only have 25 minutes left to get some work done. This means my code is pretty messy, forcing me to re-write it later but I’ve also gotten very good at writing notes and truly understand the essence of the problem I’m trying to solve. Also I often forget something that I had learned previously, ending up doing the same mistake and arrive at the exact same solution again.
But whenever I start losing motivation I just have to remember that doing little is always best than doing nothing. And looking back and seeing how the project has grown and how people are responding to it, is very hearth warming!