Being an indie developer comes with alot of challenges, be it the workload or struggle to get noticed. I faced a ton of them on my most recent project. But I wanted to share my thoughts specifically about the more personal challenges faced during solo development - Laziness, Confidence, and your Environment.
I think for any normal human, procrastinating when you're under your own supervision is standard behaviour. Even though you most likely have a VERY good reason to be embarking on this self-motivated journey, you generally don't have the constant reminder along the way (like a boss or producer breathing down your neck). It's easy to get into a habit of checking Facebook or forums, you may even start rationalising it as if they're useful tasks for "research purposes".
So the first clue to beating it is there - the constant reminder. Every time you encounter something that is the reason you went indie, write it down. Build a collection of motivations and think of ways to keep them visible.
Having many different possible tasks to do at any one time can also help. The mind WANTS TO procrastinate and do something other than the task you were meant to do, so embrace that and let yourself work on something else. Eventually you’ll get another significant task that needs doing, and at that point your mind will want to do the thing you were originally meant to do! ;)
Another advantage to having many different things to do is, you can *start* each of them with real inspiration (the kind you only get when you really want to do something), and get a better overall quality. We all get lazy, and if you do things in order, you’re likely to do the first stuff *really* well and the later stuff noticeably lower in quality. If making levels for example, and you let yourself start each one when you’re inspired, then even if you only complete a small amount, you’ve set the quality bar for yourself and all you have to do is continue it. Personally I’m very susceptible to this kind of laziness, so this approach is essential for me.*
* Disclaimer: don’t leave too long a gap when continuing previously started tasks. If you do, you can completely forget how you were doing things. Even if you can remember, you will be slower. So try to make that balance between sharing your time on various tasks, without leaving big gaps between them.
Even the most confident person can struggle against the tirade of articles on the internet that are so damning towards indie game development. You've probably read that "0.1% of devs make money on iOS" statement in a few places, among other deflating stats. Add to that the occasional negative attitudes from people you talk to, or lack of support, and depending on how your current progress is going, you might just quit.
Battling your own confidence is tough. I haven't mastered it, but I can share a couple of things that helped me.
- Task Management - breaking things up into small, achievable tasks is essential. You keep getting those wins as you complete things, and each one builds your confidence.
- Determination - you need lots of it. If you don't have it already, I can't really say how you get it. You've just got to be able to see that light at the end of the tunnel the whole way, else your confidence can plummet.
- A Break - if you need to crunch (or like doing it), fine. But after a while you can't see how cool your creation actually is. You don't see all those gazillions of tasks you've had to do to get to where you are, you only see what you're currently doing. Taking a break (I mean for a week or more... on an island or something without Internet) and then coming back to it can give you a new perspective and make you appreciate all your work more, boosting your pride and confidence. Not to mention, it helps you see flaws and improvements a lot.
- User Testing - getting people to play your creation should make you feel better. Every time I let people play my game, I always felt really good afterward (and got a good list of things to address, too). I DON'T think sending it to people and getting feedback over email is good for that, though. The most rewarding thing is to watch people figure out how to play your game just the way you thought they would. There are lots of little things, even in just a couple of minutes of play, that can put a smile on your face, and you don't see those with email feedback (not to say email feedback isn't useful in a different way, it just doesn't address confidence as well as watching).
This might not sound like it's not really "battling against yourself", but it IS ultimately up to you how you handle pressure from things happening around you, so here it is.
If you're solo, there's a good chance you'll be working from home. This comes with yet more challenges for you to manage. Easiest way of course is to get an office away from home, but that's not always an option.
- One of the main challenges, believe it or not, is housework. You're probably more likely to do housework when you have important work tasks to do, because your mind is looking to procrastinate. Give yourself proper work hours and a weekend, and try to restrict the housework to outside work hours.
- Another problem can be visitors, eating your time because they don't really understand you're "at work" (this is not much of a problem for me, but I’ve heard others bemoaning it).
- Being at home on your own can invite really serious problems like anxiety, agoraphobia etc. It's happened to me a long time ago and thankfully I can say it's in the past now.
- Working from home can cause SERIOUS CAT ISSUES. Hard to work when those cute little buggers are on your keyboard smoodging your face.
Regarding the anxiety - I can share my own experiences and what I think helps, but I'm not a psychologist so take this with a grain of salt. I think it comes down to:
- Accepting that you’re "thinking about things that shouldn't be thought about"
- Keeping your mind occupied, so you don't think about those things
- Building self confidence
Easier said than done, I know. Desk work on its own sometimes isn't enough to keep your mind occupied. I eventually got around it over a couple of years by making sure there were other commitments (away from the desk) and by willingly putting myself into situations I wasn't comfortable with (in small doses). Sport is a good option I think, if you can. The practice I mentioned earlier, about building confidence by watching people playing your game, that can help too. Moving somewhere new helps for some people (even if only temporary).
There are other personal challenges to face as a solo dev of course, but those are the ones that affected me and I’ve felt not many people write about.
To finish off, I’d just like to add that, even as a semi-successful solo dev I would say to think seriously about working with other like-minded people. Even with a decade of commercial experience, I don't think I really knew as much as I should when I began Swing Racers on my own. And that's having come from a variety of jobs too, where I'd learnt a lot about most roles in game development. I took the leap anyway and quality definitely suffered in some areas as a direct result. But perhaps a little bit of “naiveness” is required? If I knew everything, I wouldn't have jumped in.