Doug wants to get a computer for his kids and teach them about technology, computers, and programming. His son is 18 and is thinking about a career in technology. Leo says that everyone has a favorite bias and language, and he guarantees that whatever he teaches him now, it'll be obsolete within a few years. It's better to understand how a computer thinks and keeping up to date on how the computer will change. Understanding and expressing problems in an abstract way that isn't specific to a set programming language is key. He should learn about programming for distributed computing environments, not a specific desktop.
There are great programs, such as University of Texas.