In his keynote address at Apple's WWDC 2016, CEO Tim Cook said computer programming should be taught in schools as a language. This was his lead-in to the introduction of Swift Playgrounds, a game-based system for learning basic and advanced coding in Swift, Apple's language for development on all of its platforms.
Some wags have suggested that Cook is leading Apple to play the Long Game: Make sure that young people learn to code for Apple platforms and it becomes likely there will be a stream of applications available in the future. Whether or not you think Apple's new (and free) programming education system is a cynical ploy to get more developers, it's hard to argue against giving young people tools to help them learn programming.
If you want to encourage the next generation of programmers, or if you want to improve your own coding skills and know you'll do better if it's fun, we have you covered with our list of nine platforms and websites. There are different languages, from Swift to Ruby, different approaches, and different ways of having fun, but each one of these teaches programming skills in a fun and effective way.
When I learned to program, fun was the very last thing on our minds. When I first taught children to program, though, the curriculum started with building a simple game on an Apple II. Fun works as a motivator, and I'm encouraged by each of the options featured here.
Once you've reviewed the list, tell me which ones seem the best fit for someone you know -- and why. Do you see one here you'd like to try yourself? Let me know -- and share any fun-based programming teachers I've missed -- in the comments section below.