This is the path I’ve taken so far and has helped me lose the fear of learning game programming and feel more confident to continue. Learning by yourself is not easy and requires a lot of discipline and dedication, the good thing is that it has a much lower cost compared to a formal education in programming (like going to University). For those who find it difficult to focus the Pomodoro technique will help you on your way.
It is important not only to learn how to write in a language but also to know the theory and foundations of programming. These fundamentals are the same to almost all programming languages and classes from Professor Simon Allardice at Lynda.com are very good explaining the concepts. This road is to develop games based on Unity with C# language but you can apply it also for programming in general. At first you will not understand everything, and that’s fine, but the moment you learn the same concepts from different sources you will have a better understanding of each topic.
The Way to Lose the Fear of Learning Programming for Video Games
First Step – Enter the Matrix
Getting Started with Programming – Code Academy
Concepts and Foundations
Computer Science 101 – Stanford – Coursera
Foundations of Programming: Fundamentals – Lynda
Foundations of Programming: Object-Oriented Design – Lynda
Learn to Program: The Fundamentals – University of Toronto – Coursera
Foundations of Programming: Code Efficiency – Lynda
Foundations of Programming: Databases – Lynda
Foundations of Programming: Test-Driven Development – Lynda
Foundations of Programming: Refactoring Code – Lynda
Introduction to the C# Programming Language – Microsoft
C# Intro – Riddlersoft
C# Essential Training – Lynda
Beginning Game Programming with C# – University of Colorado System – Coursera
Unity 3D Learning
Unity 3D 3.5 Essential Training – Lynda
Level Design Basics in Unity – Lynda
Beginner’s Guide to Unity – Digital Tutors
Version Control (optional)
Try Git – Be introduced to the basic concepts of Git version control – Code School
Fundamentals of Software Version Control – Lynda
It is important not only to learn how to write in a language but also to know the theory and foundations of programming (this will help you a lot). These foundations and concepts apply to almost all programming languages and courses from Professor Simon Allardice at Lynda.com are very good explaining those concepts. This path is based to develop games in Unity with the C# language but that is not the only way to develop games. At first you will not understand everything, and that’s fine, seeing the same concepts from different sources will help you to have a better understanding of each topic.
After completing these courses you will feel more confident so you can keep learning more. If you have trouble perhaps a formal education program may be the solution, but learning on your own is a low cost alternative for those who can not afford that kind of education or just want to learn specific stuff. As a last tip have a lot of patience, do not try to use shortcuts, practice often and step by step, learning new things every day that will help you on your quest of developing video games.
Finally something that can help a lot is having a programmer friend or contact who can guide you on certain things, in my case I was lucky to have @androbtech who patiently guided me along the way.
Follow us on Twitter @PlanetBitGames
Join us on Facebook Planet Bit Games