In early May, I got back into Unity3D after a few months of hiatus (because of using Haxe to make webgames), in order to teach basic game development at a local tech community. Naturally, teaching being my first time, I fumbled through each class, learning as I go. Next week will be the last of the 8-week course.
I went into teaching with minimal materials. I predicted I would be able to quickly hack up a working Crossy Road game, then integrate it with Admob, Unity Ads, Google Play Services, and In-App Purchases. I wasn’t wrong — Cumulatively, I spent about 12 hours (6 weeks x 2 hours) implementing all that, excluding the preparation time.
The only problem was, students couldn’t keep up and were left behind early in week 3. It’s too late for them to catch up now, but I’ve provided all the necessary documentation and sample projects for their review. Hopefully this experience won’t deter them from game development.
What did I learn from all this? Preparation takes time. Students are always slow, no matter how simple the teaching material is — They need time to absorb and understand each new line of code before moving on.
The solution? Show them the steps, and let them try it out. Make sure everyone has tried out the step personally, before moving on. Personally guide them, even if I have to go to each student one-by-one. The drawback of this, though, is that classes are drawn out longer, and there’s a lot of lulls in between each step. At first, I thought this was awkward. But after personally attending a few classes to study other teacher’s methods, I realise that this is natural.
Preparing materials has also made me learn a few tricks about teaching too. For example, students can understand better if each new topic is presented in the following format:
- Step-by-step instructions, with screenshots
- Review (i.e. show the preview again)
This allows students to know what they’re expected to do, so they won’t blindly follow instructions without knowing what’s the outcome. The step-by-step instructions with screenshots help as effective visual cue. It also helps if the screenshots come with comments or highlights.
So here is the game that is out on the Google Play Store now — It’s not exactly balanced, but I demonstrated the core game with Ad and Play Services integration. The next update (coming up next week) will implement IAP. After that, I’ll upload the code on Github for everyone to study and learn from it.
I thoroughly enjoyed teaching, although I always felt anxious and nervous, afraid that whatever I teach is incorrect. Perhaps I’ll gain more confidence as I teach more often. Unfortunately, while I hope to continue teaching after this, I’m afraid I have been an indie gamedev for far too long.
It is time for me to seek employment. My savings have officially run dry. My 3-year period is up. My bootstrapped indie journey comes to an end. If anyone is looking to hire, I’m totally available — All my portfolio and links can be found on my Itch.io page.