Teach your kids web development
14 September 2007It’s been a fun experience teaching Conor, my oldest son, about HTML. He’s 11 years old. He’s excited, and I have to admit that I am too. There are some thought provoking questions that come up when you start teaching your children your trade. You wind up questioning your own career. Is this what’s write for him? Do I really want him to be me? You see, workaholism is a blessing, but it’s also a disease. Shoudn’t he be allowed to just be a kid?
Well, I’ve wrestled enough with that moral quandry enough for now. Hell, I am not paying for his college education, so the boy needs to learn. My focus has become how to teach him web development. Where to start with web development?
My first mantra was that he needs to understand vi[m]. F**k WYSIWIG editors. He’s going to learn the right way, right from the start, with no crutches. Conor. Repeat after me. "WYSIWIG editors are for pussies".
This means he also needs to learn SSH. I recently ought him a little iBook. Did you know that there is a school program for kids with laptops? Amazing! Imagine if Einstein would have had access to e-mail from the time he was 11. He wouldn’t have come up with the theory of relativity, but I bet we’d have some revolutionary ways to view porn.
The first day was motly unix basics. Vi, ssh, cd, creating accounts, terminal on OSX. He learned the basics of file systems: cp, mv, rm. He learned when [not] to use sudo. He learned when to STOP and ask, and when it was ok to experiment. So many people stunt their learning because they don’t know when it’s ok to mess around.
He learned how to make a change with vi over an SSH terminal, then view it in a browser. Surprisingly, he picked up vi pretty well — although he uses the arrow keys instead of j/k/l/m. Damn vim. It spoils new-comers. When I was his age… I used vi, which forced you to use j/k/l/m for up/down/left/right.
The second day he learned the basic structure of HTML, bold, center, italic, img, anchor tags. Rather uneventful, he learned very quickly. The light bulbs started going off when I told him that he could create a web page for his little brothers and sisters.
The third day we worked on HTML tables. This was interesting exercise. Should I even teach him tables, or should I just leap frog tables and go straight to CSS? I decided it was best for him to learn tables, to know what they are, and I still think that they are the best way for tabular data to be represented, even though I haven’t updated my resume to use table-less layout. Someday…
On the fourth day we sat down, and I created a diagram of an HTML page using Omnigraffle (diagram tool for Mac), and then had Conor recreate this using html. He learned all about tables, rows, columns, alignment, colspan, and background color.
Then, I showed him divs had him recreate the same table using no tables. Now he’s working on updating my resume to use a tableless layout. Look at that, he’s already being productive. I hope he knows what he’s in for.
What’s up next? PHP? Javascript? I’m not sure he’s ready. We will let him get good with HTML and CSS first.
-Nick


