There is a lot of activity in the teaching how to program space. Organizations and companies are continuously sprouting up – some are just for kids, some are geared towards high schoolers, and some are to get adults jobs. Even though I feel it is part of my job as the founder of Breakout Mentors to stay on top of the programming education space, there are so many that I can’t possibly do it. But there are some general trends amongst these organizations that I don’t believe will necessarily help your son or daughter to learn how to program.
Curriculum
There is not a magical curriculum that will teach perfectly and keep everyone engaged. Of course not, that is just silly. Yet many companies keep reinventing the wheel, adding yet another computer science curriculum to the many excellent ones already out there.
Unfortunately, not everyone is the same. If they were, there might be a perfect curriculum. But what might be perfect for Jack is not necessarily perfect for Jill. Instead of Breakout Mentors focusing on creating content, we want to be aware of the best curriculum options. Our flexibility allows us to choose from all the incredible programming education content already in existence.
Environment
There are new programming environments constantly in the work. Some are updates of programming languages and some are slick new ways to program existing languages. I love the improvements that are being made here, but I don’t think these hold the secret to unlocking the mysterious world of programming for your son or daughter.
Don’t get me wrong, they can certainly help. But put me on the best road bike in the world and I’m not going to win the Tour de France. It’s a tool that can help, but you still have to have a training plan and put in the effort.
Controlled Projects
Large scale classes require uniformity. Everyone works on the same homework assignments to check for understanding. If you have tens of thousands of students in the course, you’ll probably even want to automate the grading of their submissions like the Coursera programming courses.
But there’s something to be said for going off-road and coming up with your own creation. That’s the reason why we’re learning the technology in the first place, so that we can bring our ideas to life. Is mastering it in a tightly controlled environment the best way to learn? That would be like training for the Tour de France for years on a stationary bike and the day of the race hopping on a road bike for the first time.
So What is It All About?
Two things. Consistency. Finding the right path for you. Having a programming mentor can help with both of these things.
They will help you navigate the vast number of options of what to learn. It will always be appropriate for the student’s skill level and keep advancing towards their goals.
You won’t become a master programmer in one large push. Any large goal is only achieved with consistent effort. It requires showing up day in and day out. For this to happen it must be fun! What you need is the structure of a consistent weekly session with a programming mentor that is able to keep it fun.