I built my first website with a tool called Dreamweaver. It was what was called a WYSIWYG editor: that long acronym stands for "What You See Is What You Get". The editor converted your work into the code needed to display it on the site.
Except that you generally didn't get what you saw, or you couldn't get it to do what you wanted. I spent ages trying to make it look the way I wanted it to look.
Another site was hosted on a self-build content management platform, which worked very well for the basics that I wanted at the time. I knew I couldn't do a lot of fancy stuff, but that was OK because most other websites weren't all that fancy anyway and I made it work quite well. That site lasted until I met that Joomla developer.
In frustration with being let down by the Joomla developer, I bought some books and taught myself how to build sites using Joomla. The site did exactly what I wanted and looked great, so much so that I built a few sites for friends. Unfortunately, Joomla came out with a new version that wasn't compatible with the one I was using and I couldn't figure out how to transfer the site across without messing it all up.
It was all taken out of my hands when the site was hacked and became unuseable. I deleted everything and decided to start fresh.
Thus my encounter with that very expensive agency, after which I decided to do everything myself, using Wordpress. I experimented with loads of hosting, templates and plugins, experiencing much frustration along the way.
But that's where the good news comes in because I gradually discovered tools and providers that do work and are simple to use. They form the basis of the toolkit I now recommend. As I discover more that work and provide the kinds of support we as small business owners need, I add these to the list.
I still can't write code. Well, not much anyway. But it doesn't matter because there are people who can. They have written some awesome tools, and I've learned how to use them.