Teaching a non-programmer web development?
mechanical_fish: Send him toward a toolkit that's ostensibly usable by "non-programmers". Have him put up a Wordpress blog. Hand him a copy of Using Drupal (but certainly not Pro Drupal Development yet, unless you want to scare him witless).The advantage of these things is threefold. First, getting a basic Wordpress or Drupal installation up and running is excellent practice in the boring but essential skills of web development: Knowing what a server is, renting a shared host, using SSH and FTP, editing text files, debugging, searching Google, learning how to find and question your local guru, appreciating how much work it's all going to be and why it's going to take you years to learn. ;)Second, there's always the chance that one of these toolkits is all the guy needs. These systems are actually used to build production sites. They have logins and stuff! They have nifty looking themes that look like real websites! That makes them more rewarding for a beginner with business aspirations than some primitive-blog-in-fifteen-minutes demo app. It's even possible that the guy will find that he doesn't need to learn to build an entire site from scratch in Django. He might be able to figure out how to assemble his site from open-source components -- or, once he learns about the existence of the components, he might rather spend time coming up with new business ideas that leverage those, rather than spending time learning Python syntax.Finally, it's generally easier to tinker with an existing toolkit than to write a webapp from scratch. And, even if you really are better off writing your webapp from scratch, it pays to understand why you're doing that instead of building on top of a toolkit. Which in turn requires some experience with toolkits.