Escaping Tutorial Hell
I’m reading: Silverborn: The mystery of Morrigan Crow by Jessica Townsend
I’m playing: The Planet Crafter (Toxicity)
When you spend any time in online game development spaces, you’ll eventually come across the term, ‘tutorial hell’. But what does that mean, exactly?
Tutorial hell is the state a beginner programmer finds themselves in when they’re able to learn from tutorials very easily but are unable to then use those skills to develop their own projects. It can be a very frustrating experience.
Here are my suggestions for strategies to help deal with this frustrating state.
When you’ve completed a tutorial, start a new file and try to make the same project by yourself.
Break the project down. What are the major stages that you went through? How did you complete each stage?
Make a tutorial project and then change a few details.
Get creative with it! How can you vary the instructions to give the project your own personal flair? Can you add in something you’ve learned previously?
Focus on an iterative process.
Iteration means that the process is cyclical. Break your project down into basic chunks. Code one simple element, test it, and then review it. Is it working as intended? If not, then troubleshoot. If it is, then move on to the next stage of the project.
Beware of scope creep.
Scope creep is the tempting process of adding more features to your project until it is a huge, unmanageable mess. As a beginner, keep your projects small.
Try game jams.
I love game jams. They are like tournaments for game developers. You sign up to make a small game in a set amount of time. Usually, there is a set theme for the jam which isn’t revealed until the jam starts. This means that you can’t cheat by starting work on your project early! Some jams are aimed at beginners, others for more advanced developers. Some have prizes, many don’t. At the end of the jam, you can play and rate the games that others have made, while others will play and rate your game. It’s ok to refer to tutorials you’ve completed, but the fact that you’re working to a set theme means that in some way you’re going to be forced to deviate from the set instructions. A list of current game jams is available here.
Tutorials aren’t bad. They’re a great way to learn new skills from other, more advanced developers. Learning how to apply those skills to your own creative projects is important.
One of the first tutorials I even completed in Unity was a very simple 2D top-down car delivery game. The player controlled a car to zones to pick up a package and then drove to a different zone to deliver. There was no timer, no way to tell if you were getting better at the game or not. But it was a very simple way to learn basic Unity development. Later, I completed another tutorial. This one helped me to make a simple rail shooter in Unity 3D, using timelines to control the enemies. When creating Dash ‘n’ Crash, I used elements from both tutorials – and plenty of other information I learned from elsewhere, to create a simple delivery game with goals, points, and a timer. It also had simple moving obstacles in the form of vehicles that were moved by timeline.
It was still a very simple concept, and it doesn’t feel finished by any means, but I always have the possibility of coming back and revitalizing the project later.
Go out there and enjoy all the tutorials. Just make sure that you take the time to implement what you’ve learned into your own creative practice.