Lately, Leo has been taking advantage of MOOCs, or Massive Open Online Courses. These are college and university courses that are available online for free. There are a lot of ways to do this — iTunes U is a great way to find free courses on the Mac or iOS device. MIT has its CourseWare, and there are even courses provided by Yale and Harvard. There are also commercial MOOCs like Udacity and Kahn Academy. A lot of high school students looking for help on difficult subjects like Calculus and Physics can go to YouTube and watch Kahn Academy videos. Kids who can't afford college can use this if they're motivated enough, and get a college education for free.
Leo has tried this out with computer programming. Leo never had a formal training in programming, he just banged away at it until the program worked. These courses are a great way to learn more about the process. If you're looking for ways to get into programming, there is a lot of material available online to learn. Leo recommends the book How to Design Programs, or HTDP. The entire text is online. It teaches in a language designed for beginners, or Beginning Student Language (BSL). You can download a program that will do that called Dr Racket for Windows, Mac, or Linux. You'll spend more time learning what programming is about, not just learning a specific language.
Leo found a course taught from the University of British Columbia online at a site called edx.org. EDX is an online MOOC created by Harvard and MIT, but many other universities have courses there. Gregor Kiczales, a very well known computer science professor, has a great course called How to Code: Simple Data. This is part of a larger series if you decide to pay for it, and paying for it will give you a certificate at the end. You can even get a Micro Masters from it.