A freelance web developer for nearly 6 years, Josh Naylor has built countless apps, games, websites, and more. It’s not surprising that when he became an instructor for Trilogy Education and taught a cohort at the Trilogy-powered UW Extended Campus Coding Boot Camp, it was more than coding skills alone that drove his lessons—it was his creativity. Here are 4 unique teaching strategies that Josh used during his time as an instructor:
1. Treat teaching as a learning experience
Josh had years of professional experience under his belt before taking this instructor position, but he learned largely by doing. “Everything my students learned in six months were things I learned over the course of five years,” Josh said. “I learned it all out of order and just pieced everything together myself. I didn’t follow a clear path the way the course did, so teaching the curriculum in a progressive order was a great learning experience for me.”
One of Josh’s favorite parts of teaching was watching his students present their projects and seeing all the interesting ideas they came up with. He encouraged teamwork and camaraderie in a tangible way, but at the same time, he made sure every one of his students understood the material—no matter where they were at individually. “When you’re programming, every step matters. Breaking things down on a very granular level and walking through everything step-by-step are two things that make a great instructor,” he said.
2. Welcome program errors—and use them as teaching tools
When coding errors pop up and crash the program, most programmers-in-training have a natural tendency to freak out. Josh took a different approach. “While everyone wants to panic, I conveyed to my students that these bugs and errors are their friends,” Josh said. “The errors tell them where to look in their code, help pinpoint what’s wrong, and highlight how to fix it—they just have to know how to read them and not shut down.” While Josh was teaching, he’d purposely do things wrong so that error messages would come up. He’d leverage these errors as teachable moments—showing his students how to use gaps or incorrect code as helpful tools rather than hiccups.
3. Something will always go wrong during live demos—embrace it
There’s a running joke in the tech industry that whenever you’re doing live coding or demos something always goes wrong. Josh quickly learned that the concept holds true for instructing. “When things would go wrong in my live demos, I might get a little tripped up,” he said. “But I’d also use those moments as opportunities to collaborate with my students—to put our heads together and solve a problem together. I found that you don’t have to worry about moments like that; just embrace and take advantage of them, because they’re inevitable.”
4. Treat curveballs as alternative teaching opportunities
One day in mid-September, the boot camp had to cancel its lessons. Josh took this curveball as an opportunity to teach a lesson outside the curriculum—and keep things exciting for his students. He held a one-on-one lesson on Saturday with a student who was particularly interested in expanding her skill set. Josh found a Unity3D tutorial online, updated the code, and wrote out a lesson plan to build a 3D space-shooter game.
He and the student, Hanna Huseva, spent four hours building the 3D models and code for the game engine. They worked together over Zoom and took turns sharing their screens to talk through any issues or kinks. “She was interested in trying to figure things out herself throughout the boot camp,” said Josh. “She would always dig around online before coming to me or a TA, and she just wanted to learn everything she could. Which was great—as a developer, you’re never done learning.”
Above all, teaching creatively opened Josh’s eyes to just how much he could impact students’ lives through his position. Looking to discover some teaching strategies of your own—and learn along the way? Explore our instructional team opportunities.