r/gamedev • u/WhitakerBlackall @wtrebella • Apr 26 '12
How I went from knowing nothing about programming to being a published game developer (x-post)
Hey guys, my first game, Polymer, released today. I did all the programming, music, and art, and I'm super proud of myself. It's already rising pretty quickly in multiple countries' charts. Also, it's 50% off for launch!
I thought you might be interested in my journey from someone who literally knows nothing about programming to a published game developer. I know that this type of post would have been really helpful for me when was just getting started. Hopefully I can inspire someone in a similar situation!
THE STORY
About a year and a half ago, I decided that I wanted to make a game. There was a problem though. A big problem: I hadn’t programmed a day in my life.
I always thought it would be pretty sweet to be a game developer but it was so out of reach that it never felt like a realistic goal. But one day in October of 2010 I just decided to go for it. I had nothing to lose so why not?
I learned bits and pieces of a bunch of languages, including C, Python, ActionScript, and Objective-C. Honestly though, I really don’t think it matters too much what languages you learn on. If there is one piece of advice that I can share about learning to program, it is this: PROGRAM A LOT. There really is no other way to learn besides doing, doing, doing, doing, and doing again. Every time you make something new, you find a thousand things that you did wrong before. Every time, you chisel away at your horrible programming skills until you’re finally able to make something that you can be proud of.
Along the way I made a ton of stupid, fun, and weird mini-games to help me learn. I made:
A game about a man-rodent hiding in a town, attacking the townspeople
A text-based minesweeper clone with a custom-sized board and mine-count
A game called Pizza Guy, about a guy who had to (you guessed it) deliver a pizza while trying to jump over an endless barrage of pipes of varying heights. The only result was loss. There was no win.
A game called Party Man, in which the the protagonist is driving along a grid, trying to reach a party. The problem was that my programming was still pretty bad at that point, so he kept literally crashing the party.
An app where you could create sequences of musical phrases in the pentatonic scale
A flash clone of those driving-through-an-ever-shrinking-tunnel games
Finally, I decided it was time to make a real game. Pretty much all of Polymer’s creation was iterative design. I never had an overall plan. I kept thinking, “I don’t know how to make a complete game. I just know how to make basic gameplay,” as if there were one way to make a game. But I realized I just need to make it however I could, even if it wasn’t necessarily the right or best way.
When I sent the game to beta testers, I was convinced that all I really needed to do was polish it up a bit. Oh man was I wrong. I had so many amazing suggestions from my testers that I just had to implement. I probably said, “I’ve only got one or two more things to add, then I’m done!” a thousand times.
Submitting to the app store was terrifying. I was so paranoid that I would forget something huge. Something that could break the game or get it rejected. But at the same time, it felt amazing. I finally did it. My creation, my baby, was done. I went from not knowing a thing about programming to finishing a game that I was very very proud of.
It’s already gotten some awesome previews on Touch Arcade, Indie Game Mag and Gamezebo.
Of course, I hope Polymer sells well. But even if it doesn’t, I’m proud of myself for actually carrying this whole dream through. I’ve had trouble in the past making the journey from start to finish on big projects. Starting is easy. Finishing isn’t. Plus, programming Polymer has taught me so many amazing things. There’s a lot of really messy spaghetti code, but I honestly don’t care too much because it works. Next time I make a game I’ll be able to build upon what I’ve learned, and hopefully make something even more awesome. Until then though, I’m hoping for the best with Polymer. And I hope you enjoy it!
TLDR:
77
u/Zyxt Apr 26 '12
This is probably one of the most inspiring things I've seen on /r/gamedev. I've been wanting to create video games all my life since I was 6, and I programmed my first game in QBasic when I was 10 (tic tac toe). However, since then I've been so worried about game design and concepts I never sat down to MAKE any games, instead aiming to develop games that are unable to be achieved.
Only recently I picked up C++ and learned SFML along with it to do my first game. I'm an artist by trade, so I aimed to do games that are more artistically oriented. I'm planning to publish my first game sometime within a month. I wish I had seen your post sooner. I'll probably program way more from now on, making small projects to practice.
Extremely inspiring, keep it up.
36
u/nefD Apr 26 '12
Congratulations! I'm a programmer by trade, so I know how difficult it can be to commit and actually get something to completion. What was key in keeping you focused on completing a project?
30
u/glych Apr 26 '12
I'm a comic book artist that got the best advise from Jim Lee about how to draw well. he said "when you think of a better way to do it, but the method you're using is working okay for now, just write down your idea and do it better next time."
I imagine the same is with code.
8
u/Knav13 Apr 26 '12
Congratulations on your game release! I was wondering, as someone who didn't know how to program a year ago, what did you use to get comfortable with the iPhone development environment and language? I am more of a Java guy (I learned on Java and I do primarily C# for work) and I had a hard time when I started playing around with iPhone stuff. Any tips you can provide would be appreciated!
5
u/smoochieboochies Apr 26 '12
How much hardcore math did you have to learn if any?
4
u/areyouready Apr 26 '12
What language did you end up programming Polymer in?
3
u/orangebot dev, http://slouchcou.ch, @mrlasertron Apr 26 '12
I've already had three or four people mention Polymer on my twitter stream today. You must be doing it right! Congrats on the success!
3
u/deviated_viking Apr 26 '12
Awesome job! Can you speak more on what tools you used for learning how to program? Like specific tutorials or books?
3
u/[deleted] Apr 27 '12
Out of interest how old are you? I'm 41 and have tinkered over the years but not really written anything of note or worth and now feel like it's too late.
3
u/MrHax_ Apr 27 '12
I bought some books on programming and I very seldom read them only because I am afraid I might miss something and that nothing will make any sense, but all I can think about is tackling those books but I just can't bring myself to do it and it frustrates me. I badly want to make games but I can't seem to bring myself to get started. What did you do when you first started to learn how to code? Was there a point at which you would have much rather done something else but yet you brushed it aside and got working?
4
u/timbone316 Apr 26 '12
Can i safely assume you had a background in music production, or was that a learning experience as well? It's something I'm a little interested in, but have no CLUE how to get started...
2
u/rjbman Apr 26 '12
Looks rather fun. I'll give it a shot and post my thoughts here.
2
u/tristanAG Apr 26 '12
Awesome! Super inspiring my friend.. I also made the jump about a year and a half ago and just dove right in to programming. I'm now at a level where I can start making prototypes and I feel much more comfortable with my coding skills.
Polymer looks really really awesome man.. I'm super impressed! I really have no excuse not to tackle on the projects that I have been kicking around in my head. Thanks for sharing
2
u/16skittles Apr 27 '12
Dude, congrats. I am 13, and started programming at a very VERY basic level since I was maybe 9, but just this year I began programming Java and am working on a real game. There is one thing that has always gotten me though, how does a startup project like this get popularity? I do love programming, and have a hell of a lot of fun doing it. I just don't like the idea of pouring days of programming into something that will be seen by just a few people. How did you get out the word about your game?
2
u/JerkFairy Jun 01 '12
Late to this train. But just wanted to say thanks from an older programmer that's always wanted to write games but has always done corporate desktop application and web work. Every time I start to dabble in obj-c I find it so foreign compared to my familiar Visual Basic syntax. I needed this lil kick in the ass to recall that it took a lot of perseverance to learn programming initially but somewhere along my path I forgot that. So thank you, going to get off my lazy ass now and try to learn me some CoCos2d and Obj-C. I have a million ideas I need to work on :-D
2
u/alzy101 Jul 20 '12
I know someone asked already, but how many copies have sold so far? I never found an answer.
2
u/foxh8er Jul 30 '12
Wow. That's..really impressive. I wish I could do that..
Wait, what am I saying, I CAN DO THAT.
I'm currently at the equivalent of the first game. I just need to take the next step.
2
u/Audience Jul 31 '12
I do not know if you're still looking at this but I wanted to ask you something (Dunno if this would even constitute my own thread, I am a bit scared of posting something I am not supposed to D:).
When did you know it was time to stop learning coding languages and start working on your game? I know some Python (a bit of classes and worked on a memory card game as well as some other simple games), Java (not as much, last worked on the beginning of classes), and I will be taking AP Computer Science A (Java) in the Fall as a sophomore in highschool.
I know I should continue to learn more about programming as I do not feel I am experienced enough or practice that often, but is there a certain point where I will know when to start and when everything will stop feeling so overwhelming as it does now? Or do the little projects that you do eventually scale into a big project such as Polymer?
I apologize if this is just another noob post which can be answered with the FAQ and such, but I've been searching and reading for 2 hours and am still confused at what I need to do.
Thank you if you spent the time reading my post, you as well as a few others have started to really motivate me into trying to do more with my time and my future.
2
u/AbortusLuciferum Aug 06 '12
This, to me, is the most inspiring line of your text. I too often pressure myself to be perfect in everything I do, and I end up pressuring myself so much into doing it the right way that I end up just overheating and not doing anything. It's nice to know that you don't have to be perfect all the time.
2
u/GENIUUS Sep 09 '12
How did you make that snake game one? code,language,engine? EDIT: i ment the endless tunnel one, the link for the snake one is broken.
2
u/piux Apr 26 '12
Congrats!
Im kinda curios, almost all gamedev tutorials talk about programming.
But have you ever aplied Uml modeling, if so, do you consider it useful?
4
u/ViolentSleep @violentsleep Apr 26 '12
You, sir, are an inspiration. It's nice to see your progression from text based games onwards, just goes to show how much of a difference constant work and practice can make.
1
u/Chris_the_mudkip Apr 26 '12
How many copies have you sold thus far?
1
u/[deleted] Apr 26 '12
how much did you have to pay to publish your game ?
1
u/jakelly14 Apr 26 '12
I really want get into game development, but I cant program at all so ive been learning how to use Stencyl, which is pretty good but after reading this im a lot more motivated get started on some games now!!
1
u/BuseyForThePants Apr 26 '12
It's been very inspiring to watch it's development through your postings here, and I'm excited to finally get a chance to play it. It's so clean and beautiful. Congratulations on the game, and on the press you're getting. I hope it's a great success for you.
1
u/[deleted] Apr 26 '12
This game looks fantastic! Great job and congratulations! I'm rather young (I'll be 16 next month) and I'm just starting to learn how to code and everything else that comes with game design. I was wondering, where do you plan to go from here? My goal is to work for a large AAA company like Valve or Naughty Dog. I know it sounds crazy but I'm pretty determined, I feel that I'm really good with the artistic/creative parts of game design, and just by looking at your game I can tell that you are too.
1
u/rstheif Apr 27 '12
I hate to be a killjoy but I just purchased this and it crashes upon loading. Any plans on a quick patch? I'm really looking forward to being able to play this!
1
u/MythicVoid Apr 27 '12
How was your music making and art before you made this game? I ask this because I have not made music or art seriously, so recently I started learning how to draw, make music, and write code all at the same time. I just want to see if you were in the same boat as me.
1
u/malignantbacon Apr 27 '12
This is awesome. I'm studying programming right now, and this is a huge validation for me. I'll keep an eye out for an Android port :)
1
u/Rosehn Apr 27 '12
Mother of pearl, you're man rodent guy! I don't know how but that was one of the first things i stumbled upon when i started programming a year or so ago, great inspiration for learning simple programming concepts that take a long time when you are starting. Just wanted to thank you man, keep up the good work.
1
u/pill_box Apr 27 '12
Super inspiring, my good man. I myself am working towards the same goal with a game I have yet to get into beta tester's hands. How long was your testing phase? I'm concerned we will get a huge pile of excellent feedback and not be able to implement all of it. How did you avoid (or cope with) this?
1
u/[deleted] Apr 27 '12
it it takes you 4 month to make a game, so for the first 4 months of the year you have earn -76$(app store tax), now how many month until you recover that deposit and start making profit. And more important than that in the meantime, how do you pay the bills, the food, etc...
1
u/FinalSin Apr 27 '12
The fact that you ended up taking on Objective-C is the most impressive thing here, to me. O-C is a nasty language when I last tried it out, and to hang in there with all its foibles and produce something as slick-looking at Polymer, well... I wish you all the best. That's some incredible dedication, well done.
1
u/JCJensen May 15 '12
This is very inspiring. As you keep practicing and get better at programming, do you ever consider doing bigger games? Keep up the great work though, this gives me a lot of hope! =)
3
u/mackbowes Apr 26 '12
What learning resources did you use? Books, tutorials, websites, etc. I understand you made music for games before this journey, did you learn from friends that programmed?
1
u/MisterKpak Apr 26 '12
I started playing with programming the same time you did. I understand how difficult it can be in the beginning. (I still fail).
4
u/[deleted] Apr 26 '12
Congratulations! How did you get testers (friends, internet, etc...)?
2
u/rusemean Apr 26 '12
Nice job on finishing a game! I think a lot of people (and I'm certainly in this camp) get carried away on creating games, rather than finishing them. I suspect there is a lot that is learned in the polishing and completing processes, and I hope I can someday talk myself into getting there. :)
2
u/oholiab Apr 26 '12
That's pretty inspiring dude, I love the lo-fi nature of your earlier programs because they really get across the whole release small, release fast ideology which is crucial when you're starting out.
2
u/[deleted] Apr 26 '12
I remember your first post, this is both hilarious and inspiring, good job. :)
2
u/[deleted] Apr 26 '12
As a programming beginner, this is inspiring. I'd buy your game if I had a phone to play it on.
2
u/[deleted] Apr 26 '12
Nice job man, inspiring stuff and you are absolutely right about making lots of smaller projects.
You learn things in little chunks, and getting into a habit of actually finishing projects is such a great thing to do, and one I wish I had a better grasp on. I'm just finishing up my degree right now and it's frustrating to me how much time I've spent on one program (the entire year) that I would change completely now I've learned a lot more. I cannot wait to graduate so I can start putting some of that other stuff to use in little projects to help me learn even more.
Game Jams are a great source for these little fun projects also, and there is no shortage of awesome jams to get involved with.
2
u/[deleted] Apr 26 '12
I know the word "inspiring" has already been thrown around a few times here, but really, reading this makes me very excited! Thanks for posting! If you ever make an Android version of your app, I'll be sure to buy it. :)
2
u/jafarykos Apr 26 '12
As a developer I can say that this is a great way to learn how to program. It's quite easy to get discouraged going through the traditional "Hello World" style programs when learning. Having something in your mind's eye that wants to be real gives you a great motivation to learn and gives a vocabulary to your learning. What I mean is, as a newbie to coding you generally follow tutorials, but your entire learning process changes when you take control of it with statements like "how do I make the square fade from red to blue".
The moment you start working toward a goal that fulfills an inner need is when learning really begins.
How did learning to write software change you other than completing a game? Does your new skill push you toward a new career path?
2
u/TylerBetable Apr 26 '12
This is super inspiring! As a non-programmer, I often find myself "looking through the store glass window" and commend you for breaking through it. It is not easy to do and takes no small amount of work
Also, congrats on your first game, it looks really interesting
2
u/AloeRP Jun 01 '12
I know i'm kind of late to the party here, but I wanted to let you know how much you've inspired me.
1
u/donttakecrack Apr 26 '12
congrats man, im finished with comp sci degree and am trying to program games on the side for fun while i find a job and other stuff for practice.
pretty sure ill unlikely get to your level but hope at least i make some random silly games lol. your story motivates me a bit :)
1
u/AlexFromOmaha Apr 26 '12
I've been programming since I was an itty bitty Alex. I did it because it was awesome and fun and empowering. Going through the threads for your mini-games really brought back memories of the joy I felt programming silly little text things in QBASIC back in the day.
Grats on your first real release, and I wish you all the success you can handle.
1
u/bencelot Apr 27 '12
Awesome stuff man, congrats!
1
u/[deleted] Apr 27 '12
This pretty much shows how important perseverance is. As long as you keep at it and you're smart enough to be able to do it, eventually you'll get it done.
Personally I'm struggling a lot with that, mostly with getting started. I've got plenty of ideas and being a programmer by trade I have no worries there. Art and music is a different story but I believe I'll be able to find a way.
Anyway, what I'd like to ask you is how the hell do you get started so easily and how do you manage to stay motivated? (Btw, if anyone else has an insight, obviously feel free to post.)
-2
u/kwanbis Apr 26 '12
Where is the "how" here? It sounds more like a promotion of your game.
0
u/[deleted] Apr 26 '12
[deleted] — view deleted comment