RWDevCon Inspiration Talk – Finishing by Kim Pedersen
Do you not always finish the awesome game you set out to make? Find out some techniques to help you finish what you start and get your app on the App Store! By Kim Pedersen.
Sign up/Sign in
With a free Kodeco account you can download source code, track your progress, bookmark, personalise your learner profile and more!
Create accountAlready a member of Kodeco? Sign in
Sign up/Sign in
With a free Kodeco account you can download source code, track your progress, bookmark, personalise your learner profile and more!
Create accountAlready a member of Kodeco? Sign in
Contents
RWDevCon Inspiration Talk – Finishing by Kim Pedersen
20 mins
- Transcript
- The First Step is Realizing You Have A Problem
- Monster Head One: Over-ambition
- Monster Head Two: Underestimation
- Monster Head Three: Scope Creep
- I Can Take On This Monster!
- Monster Beheading Technique #1: Be Selective
- Monster Beheading Technique #2: Plan!
- Monster Beheading Technique #3: Be Realistic
- Monster Beheading Technique #4: Keep Momentum
- Keep Momentum With A Little Help From Your Friends
- Now You’ll Slay The Monster of Incompletion!
Note from Ray: At our recent RWDevCon tutorial conference, in addition to hands-on tutorials, we also had a number of “inspiration talks” – non-technical talks with the goal of giving you a new idea, some battle-won advice, and leaving you excited and energized.
We recorded these talks so that you can enjoy them, even if you didn’t get to attend the conference. Here’s our next talk – Finishing by Kim Pedersen – I hope you enjoy!
Transcript
Before we start, I’d like to ask you all a question: How many of you have started a project that you felt really good about, but later abandoned it and never finished it?
Yeah, I thought so. If you look around the room, you’ll see you’re not alone. The thing is, if you’re anything like me, you probably have a graveyard full of unfinished projects piling up on your hard drive.
Now, abandoning projects is not always a bad idea. In fact, in the life cycle of any project, you often have to stop and re-evaluate whether or not that project is still worth pursuing.
If you find yourself abandoning projects, not because you made an objective evaluation of the feasibility of the project, but simply because you lose motivation, then you have to stop and think why you have gotten into this bad habit.
The First Step is Realizing You Have A Problem
I was in this situation not too long ago. It took me a long time to realize it. In fact, it wasn’t me realizing, it was my wife that made me aware of it.
What had happened was that I had worked on several games that year. None of them had really amounted to anything. I just started this really exciting game that I felt very good about, had really much passion for it.
Then, along comes my wife, and she asked me, “What are you working on”?
I showed her this game, where I was at that time. I started talking about how great it would be, what features would be in it, and showed a lot of enthusiasm for it.
She didn’t share that enthusiasm. She asked me instead, what had happened to the game I worked on the week before. The one that I was always talking about that week, and I was very enthusiastic about.
I told her that this game is much better, so I should spend my time on this one instead.
All she said was, “You spend so much time behind that computer programming, it would be easier for me to understand the time you spent behind the computer, and accept it, if something came out of it.”
That hurt. At first, I became defensive. I was thinking, well, I’m not doing this as something that I need to make a living from. It’s a hobby to me.
I was getting a lot of joy, and a lot of knowledge from doing my games, until I actually realized a very, very, very horrible truth. I was not making games. I was making pieces of games.
Although I had all of these great ideas, and some of them could actually have been something good, I had nothing to show for all the time I had spent making those games. I had spent four years on iOS development at that time. I had nothing on the app store.
That was a horrible thing to realize. So, I started to think, why had I gotten into this bad habit of abandoning projects? I started to think of all the reasons why I was doing it. What I figured out was, I’m not alone in this.
I had gotten into a place where I was haunted by the three-headed monster of incompletion.
Monster Head One: Over-ambition
The first of these monsters, or heads of this monster was over-ambition.
I was constantly over-ambitious with everything I did. When I got an idea for a game, what I was envisioning was something that looked like a AAA title that would come out of a big game studio.
I didn’t have the time for that, nor did I actually sometimes have the skill to do it. So, I ended up abandoning projects altogether, because I would never, ever finish what I had set out to make.
Monster Head Two: Underestimation
The second head is underestimation.
I was constantly underestimating how much time it would take to make these games. What I didn’t do was plan, so I had no idea around how long it would take me to make these games, or what it would take to make them.
I would often think that I could make this game in two weeks, and then several months later, I was still working on it. I had this 2D game, a simple runner with a twist. It always has a twist, right? I thought, “This is simple. It will take no more than a few weeks to make, so I will have something on the app store soon.”
Two months later, I was still working on the game. I initially thought, how hard can it be to make a game where you press the screen, and the player jumps?
What it takes to make a game, is not just to make the code to make the player jump. That will take five minutes. You also have to:
- make the menus
- make the achievements
- make the art
- make the sound
- and so forth.
So, I never got anywhere, because I never had a good idea about what it was I was making.
Monster Head Three: Scope Creep
The third head is scope creep.
I really like that word. I’m the master of scope creep. It’s horrible.
A good example, again, a game I was making. It started out as a simple 2D game with one screen. Again, months later, I suddenly start to look at what I was making. I had made a 3D game with a maze that was procedurally generated, and endless.
In fact, it had nothing to do with what I started out to make, except for one thing. The player wore a hat, and not even that hat was the same. It had turned from an Indiana Jones type hat, into a miner’s helmet.
Scope creep can be a big obstacle.
I Can Take On This Monster!
I was totally haunted by this monster of incompletion, and the ironic thing is, I’m a professional project manager in my day job.
It’s my job, to manage large development projects at a pharmaceutical company that
- often have budgets in the double digit millions
- have more than forty people, and several contractors working on it at the same time
- have deadlines
I make sure these projects get finished, and finished on time.
Why couldn’t I do this in my hobby? I started to think, what is it that I do in my day job that I don’t do in my hobby projects? I put on my project management hat, and I started to think, what project management techniques can I use in my hobby, that will make me finish my games?
Today, I’ll share four of these techniques with you.
Monster Beheading Technique #1: Be Selective
The first one, is to be selective. When you start a project, start one that you’re actually passionate about, and one that you’re willing to see all the way through, even when things get tough.
I have embarked on many, many game projects where what piqued my interest was a game mechanic. When I made that game mechanic, the game was no longer interesting, so I abandoned it. I had spent a lot of time developing that game mechanic, and had nothing to show for it in the end.
It’s important not just to jump into a project when you get the idea, but start to think:
- What does it actually take to do it?
- Do I want to do it?
- Do I have what it takes to do it?
If you are not sure if your project can keep you interested, dip your feet in the pool first; start with a prototype. Not only will the prototype tell you if this is something you actually want to do, it will also tell you if something is downright bad, and let you abandon it, even before you have spent too much time on it.
Monster Beheading Technique #2: Plan!
The second thing is, plan. One of the biggest obstacles to finishing a project is time, or rather, lack thereof. When you start out, think about how much time do I actually have, or do I want to spend on this project, and start planning according to that.
If you think about how much time you have, and say, “I have two weeks to complete this”, or “I have three days, because I have a game jam in three days,” then don’t make
- a 3D game
- with endless worlds
- with thousands of assets
- and John Williams type music
because you won’t make it in time!
Instead, start to think, how much can I actually do in this time, and what do I need to make to actually finish it? Set a scope.
You will have a plan for what you need to do. You will also have the scope of the things you need to make in order to finish. You can use that plan actively when you need to start making decisions about what you need to actually still include, and what you need to cut.
What he meant by this is that no plan is ever static. When you start out working on your project, you will start to realize things that you missed, when you started the initial planning that you need in order to complete the game.
When you start planning, also put in a buffer in case of contingencies. Planning, and re-planning will make it easier for you to evaluate what you need to make.
It will also make it easier for you to know whether or not you are on track. When you get into the situation of realizing you are actually behind schedule, use the plan to figure out what do I need to make to make this project a success, and what don’t I need to make it a success, and cut that part out.
Monster Beheading Technique #3: Be Realistic
Have any of you heard the phrase, “the sky is the limit”? That’s ludicrous, at least if you ever want to get anything finished.
What you can actually make is a function of the skills you have, and the time you have to spend. If you are unrealistic about what you’re trying to make, you won’t make your game at all, and it will end up as an unfinished project once more.
Set your ambitions straight, and get the ambitions to be realistic. When you then come into a situation where you know you only have a limited time to do something, you should scale your project according to that. Also, if you don’t have the skills it takes to make it, then start small.
Being realistic also means, you have to stop being a perfectionist. I know many of us would have this sensation that we need to get things just right.
I’ve often fallen into this trap of thinking, my codes are a mess. I should scrap all of it, and start over. I’ve learned so much already, so I can make it much better now, and I can make it in half the time.
Stop!
This is a trap!
Not only will you not need to do everything perfectly, no one except you, cares about it. You can still make a good project that is not perfect, and still have a success with it, without it being perfect.
What it also means is that when you make this, you need to push on, and keep going.
Monster Beheading Technique #4: Keep Momentum
That leads to the fourth thing, momentum. Momentum has more to do with how you feel about the project than anything else. We have all had the sensation of having this really good idea, and it feels like someone lit a firecracker under our chair, and we just want to get started right away. Go!
The thing about that is, after some time, that fuse will start to run out, and the project will feel a lot like work. That’s natural in the cycle of any project. It will always happen.
It’s at that time, all the other ideas you have start to seem very, very appealing. They can be much better, so you should stop what you’re doing right now, and pursue them instead, and not waste more time.
Don’t! This is another trap!
It’s easy to start something new, but finishing is hard. To keep momentum, start to re-think what got you excited about the project in the first place, and why you are now doubting it.
Is it because you’ve hit a speed bump? Well, move on to another part of the project. You don’t have to keep working on what you’re doing now. If you move on to something else, you’ll keep being productive.
That puts you into another position. If you move to a part that is really boring to make, and there are a lot of things that are boring to make, think about if you really need to do it that day. Sometimes it’s actually really refreshing to do the boring stuff, so save it for that day, and do something right now that you actually feel passionate about.
What you’ll quickly realize is, doing ten minutes is easy. That will pass very fast, and often those ten minutes will be an hour, or it will be two hours.
Very importantly here, is you’ll keep moving forward. If you keep moving forward, at some point, you’ll cross the finish line. It’s a mathematical fact.
Keep Momentum With A Little Help From Your Friends
You can also use other methods. I’ve used this myself often; I actually used it a lot before coming here to RWDevCon: Tease what you’re doing to others. Have others cheer for you.
Now, think about the home team in a game. The home team has a big audience cheering for them, and that gives them an advantage.
You can do the same. If you tease your project on Twitter, your followers will start cheering for you and asking you about the project. That will keep you motivated.
It will also make it more difficult for you to quit. One of the easiest things is to persuade yourself to quit, if you’re the only one knowing about your project.
If you have to explain to your ten thousand followers that you’ve quit this game that they’ve gotten all excited about, that will be hard. You’ll probably have a lot that will start unfollowing you if you do that. So, use Twitter to help motivate you to keep moving forward.
Now You’ll Slay The Monster of Incompletion!
There you have it:
- Be selective.
- Plan.
- Be realistic.
- Keep momentum.
If you do this, you have a good basis for continuing the work you’re doing, and getting to the finish line. You’ll be able to
- pick the right projects
- plan them out
- realize the full scope of what you need to do
- realistically know the time and the energy you need to put in to it
- Most importantly, you’ll keep moving forward at all times, and finish your project!
We all want to be a group of finishers. So let’s help each other, by cheering for each other, and share with each other the techniques we use in order to keep our motivation high.
Get that new app, that new, very nice app that you’re working on, onto the app store and end as The King Of The App Store. Long live The King!
All videos. All books.
One low price.
A Kodeco subscription is the best way to learn and master mobile development — plans start at just $19.99/month! Learn iOS, Swift, Android, Kotlin, Flutter and Dart development and unlock our massive catalog of 50+ books and 4,000+ videos.
Learn more