I've been making personal webpages for years. I started off with a geocities site, but was not happy with the complexity the Site Builder added to my page, so I started coding my own HTML for it. After that phase, I hosted my static web pages on my home computer, pointed to by dyndns.org. Most recently I've been using Drupal to create dynamic, good-looking pages (like the one you see here) and I finally moved to a commercial hosting company. I even paid for a domain!
Drupal is a heck of a lot of fun. I've worked through all the PHP code on my own so I understand fairly well how it works at the low level. I've made modules and significantly altered themes. I really see website design as solving two different puzzles simultaneously: 1) determining the structure of the data on the site, 2) determining how the data is shown to the user. Since I like solving puzzles, I get a rush when I figure out a tricky little problem.
I really only have two (non-work) sites which I've designed. Both pages contain theme modifications and some custom modules:
I really do enjoy tinkering with this because it allows me to exercise some creativity and some ingenuity at the same time. I would like to create websites freelance. Drupal would currently be my primary tool for doing this, but I'm sure I'll look into other frameworks in the future.