Didn't know the first thing about Linux shell scripting when I sat down this evening; now at midnight I have a script that prompts for a new domain name to host and a user account to assign it to, then creates all the necessary directories and links, adds the right lines to the webserver configuration and tests it, then suggests that you restart Apache (I did try to have it parse the config test output and do the restart on its own, but if you restart Apache while the configuration files are bad it just kills it, so I didn't trust it that much).

Yes, I know there are things out there that will do it much better, but I've got to start somewhere. A very productive and educational evening all told.
Next week I'll do the same for mailboxes and whatever else it is I use this computer for.