I'd like to serve my personal site reliably. I prefer to write my own html, css, php, etc. and would like to tinker with things - to install my own software and run arbitrary linux commands. I won't be running a business, needing to handle money or dealing with multiple content editors, or serve live streaming of the next Superbowl. Just a personal site with images and stuff of interest to artists and scientists. Maybe a blog, mailing list and RSS feed.
For the past few years, I've paid a big commercial web hosting company to serve my site. They offer a lot of fancy features I don't need. They don't allow website owners to run arbitrary shell commands, such as git, svn, gzip, or scripts to manage files. Some hosting companies cut off sites for various reasons. Finally I want to cut costs so money is freed for other adventures.
OTOH, I do like having someone with the expertise to handle http server configuration and security, deal with bad disks and cables and all that.
It'd be especially good to have direct access to all the html files, database etc, using my favorite text editors or tools (e.g unix commands with pipes) instead of being limited to trying to do things through the commercial company's clumsy web apps.
What are all the options I should consider for serving my personal site?
A home machine dedicated to the task might be a fine option for some, but I have DSL with no fixed IP address. I'll be serving plenty of images and some large scientific data files.