Welcome to 2015. It’s the beginning of a new year. It’s that time when many of us think about what we want to achieve in our lives, during this year and beyond. This often includes trying to figure out where our passions lie and how we can follow them to success. I’ve been very lucky in my career to have the opportunity to be successful working on things that I’m passionate about with great groups of people. I occasionally get asked about how I got started. Hopefully I can help you chase your own personal goals with this post.
So… Where do you get started to pursue your passion?
First, congratulations on making the choice to follow your dreams. It can be a scary decision to make and it’s great that you’ve decided to do it. Welcome to the beginning of your new path.
There are three basic steps to follow:
1. Decide what you want to be able to do
2. Learn enough to get started on the path
3. Challenge yourself and demonstrate your skills
Though I’m going to focus on my personal experience with learning to develop iOS apps, what I’ll write here applies universally.
Studying is key in the early parts of learning something new. Becoming familiar with it by reading up on the basics, learning about what’s possible and working through tutorials are great ways to get started. Are there books you can find, sites you can browse or videos you can watch to get you started? In most cases, you’ll find there are. It’s nice to have a teacher to help point you in the right direction. Use this to get you going.
There comes a time when studying the basics isn’t useful anymore, and it’s time to take the test.
It’s best to figure out some small project to learn from, and begin building that into something real as you test yourself and show your abilities. Come up with an idea and go try and make it. Work on it every day (or most days) and find a way to make it happen. This will be hard. Don’t worry – it gets better, and you will get better at it as you go. I’m reminded of something I heard a few years ago, from Ira Glass of NPR’s “This American Life.” Rather than try and squeeze the whole message in this post, I’ll let him do the talking.
In my case, when I wanted to prove to myself (and the world, when needed) that I was able to develop iOS apps, I decided to make an app. It doesn’t do much, and I’m sure now that my code would be quite ugly if I were to go back through it. The important thing is that I challenged myself and built it, and that I learned a lot along the way. I had to solve problems that I never thought about when conceptualizing the app, and keep working to get the app done. The action of making something speaks much louder than the product itself, when you are getting started.
If you still like doing this new thing after your first project, don’t stop there – make more. The three steps I’ve listed above are easily repeatable to keep improving your skills. Build a portfolio of projects, both failures and successes. Do you want to make games? Make a new game every month to try out different gameplay mechanics. They don’t need to be beautiful or huge. Are you passionate about historic streetcars and want to write a blog focusing on that? Start by writing one post each week. Are you looking to knit the world’s most comfortable sweater? Get some yarn and go to it. You’ll likely have to knit a lot to find that perfect fit, but those that aren’t quite right will still be warm and fuzzy.
Don’t be afraid to make mistakes – each time you do, you’ll learn something. Here’s a talk about how quickly you can learn new things.
It’s early in this new year. What do you want to do with it? What can you be doing to make your dreams happen? You don’t have to be great immediately. In doing this, you’ll likely amaze yourself, and others, more often than you’ll be disappointed. I’ve included some links below for various sites and tools useful for starting out as a programmer or game designer. Now, go make things and be amazing. Good luck!
Links
Development Tools
Apple Developer Program – The place for the information and tools you’ll need to get started with Apple development.
Android Developers – Google’s site for information and tools for Android Development.
Flutter – Google’s open-source native cross-platform mobile app development platform using the Dart programming language.
Programming Tutorials/Assistance
Ray Wenderlich – One of the largest and most consistently updated sources for iOS tutorials. Covers a wide variety of topics and presents the tutorials in a easy to understand small chunks to help you learn. Lots of game focused tutorials.
App Coda – Lots of general purpose iOS tutorials. The “Course” page on the site has an excellent set of steps to start with as a beginner.
Developing Android Apps – Free video course to walk you through the beginnings of making apps for Android, straight from the folks at Google.
Stack Overflow – THE site for questions and answers for all programming languages. Search for your question to start with, and if you don’t find what you’re looking for, ask others for help.
Game Design Tools
Unity – Free (to get started) engine that will allow you to build 2D and 3D games for computers and devices. A great way to get started with a professional level tool. Lots of support from around the internet, so tutorials would not be hard to find.
GameSalad – Mac/Windows tool for developing games for multiple platforms. Simple scripting interface to eliminate need for code. Quick way to get started with an idea, and possibly complete the project to delivery.
Game Design Challenges/Inspiration
Experimental Gameplay – This site has been inactive for a while, but serves as a good source of inspiration to make lots of quick projects.
Global Game Jam – Annual events challenging groups around the world get together to each make a game in 48 hours.
Ludum Dare – Occasional competition focusing on producing a game in a weekend. Another source of encouragement to make small projects quickly.