Not Your Problem: Or why you don't need to focus on stuff you don't need →

Daniel Schuller writes on what you really don't need to focus on when making a game

Follow cool people on twitter like @ID_AA_Carmack, @notch or @grumpygamer? Good! They're all awesome developers with successful released games.

Have you released a game? No, right? Then these guys problems are not your problem. You have a totally different problem that needs your full attention; releasing a finished game. That's it.

Is it your first game to release? Oh the problems you will face.

Start small! Really small. Pong small. Get the smallest possible game you can make and go through the entire distribution pipeline. From this suffering you'll gain the first-hand wisdom that people toiling on their first game for years will never recieve.

Have you heard of the saying "YAGNI"? It's a well known mantra in the agile community and it stands for "You Ain't Gonna Need It". It comes up repeatedly but we never seem to learn its lessons. Go read Daniel's post. He writes about what's wrong with the way game development is approached by new comers. The common attitude is that whatever you do isn't good or 'hardcore' enough. And after you've spent all your time 'learning' how to make a game in the most hardcore fashion possible, you'll find you still haven't made (let alone shipped) that game.

It's a post about the distractions encountered on the path to development and release of your first game. But it's more than that. It's a truth about the whole indie software development industry in general. It's an attitude that has people feeling like they are doing stuff, but they are never shipping. How does that happen? Having gone through the cycle, and I feel like I'm finally coming out of it, I think I'm well versed to say why we don't get things done. I'll break it down using how I'm finally developing my blog/CMS as a good example.

First up, is the approach of trying to do things you don't need. YAGNI. If you are planning for features that are answers to the question "what if someone wants to do X?" you are doing it wrong. When I was developing my blog engine (which is essentially a wordpress like backend that ends up spitting out a static HTML site) I had a grandiose idea for a CMS that would create large static HTML sites. So basically Wordpress as it is now. It was only when I tuned the idea down to the state of "it's just going to put out a blog for now" that I actually got stuff done. That blog engine is what this site is running on. And here's the kicker. It can't delete posts yet. When I first got it up and running to get my blog started, it couldn't even edit posts. That shit didn't matter.

Second, the tech choices. Oh my. This one is a stopper. Everything you do will never be good enough. From what CSS framework you use, to what database choice you deploy your application with. Don't forget the agonizing choice over what open source license you use. And while you are at it, please check out the listicles of Top 10 text editors to use, and their plugins of choice. That's only if you ever decide what language you are going to use. Ruby is more popular right? Gotta learn rails. No! Nodejs. Have you seen Meteor? So shiny. But emberjs is for ambitious web applications, and mine is ambitious right? Dammit. Facebook made react!!! Ultimately, I told myself to shut up. I know Python best. I built the application core logic, and chose Flask later on as a web server. CSS? First I used nothing, then I threw in bootstrap. One step at a time. And then I had my blog engine built. No fancy shmancy stuff, but it's getting done.

Third, the business choice. This feels more like a recent phenomena based on my reading. With the crazy startup wave that came up after the dot com bust, there also came stories of lots of failures. Lots of people trying to make products that no one wanted. Working on them for months and months before realising that no one needs it. That seemed to give birth to the over analytical wave of people who read article after article attempting to figure out what they can do to make their first product the next big thing. How to build an MVP? How to validate your idea before you start building it? Quora questions of "How can I be as successful as (insert entrepreneur of choice here)?". How to design a kick ass product? How to understand the SASS marketing flow? How to become popular on social media so you have an audience to spread the word? Bull. Crap. I read all that. And at the end of it, I still didn't have anything. Forget releasing the blog engine for other people to use. I didn't even have the blog engine for me to use. So I stopped reading all that crap. And just went ahead and built the engine over the course of a couple of weeks (during my free time after work). And look. I have a blog. Even the idea of an MVP is dumb if it's your first product. Get used to shipping. If you want to avoid the fate of those people who worked months to get their idea done, then don't take on so many features that it takes months to get your first release out! If you can't release it in a month, you are doing too much.

I'd talk about funding, but if you are at the point of thinking about funding without having ever released a product or even having completed a bare minimum alpha version, I can tell you now, you really need to go re-read the first three points. Just, finish the stuff you need to finish, then worry about everything else.

Here's the overall point. If you have a product idea you want to build, and it's your first product, stop worrying about problems that long term business runners worry about. Quit wondering about what if questions. The only questions you should be asking yourself is, "I've got one month to get this out, what can I put in? What should I not?". Screw tech. Screw funding. Pick up whatever tools you can to get things done in a month, and Just Go Do It.

I really should be internalising this advice even more :D

Click on the title to visit the page

Posted on September 20 2015 by Adnan Issadeen

comments powered by Disqus