A couple of weeks ago, the unthinkable happened to me - through a series of some unfortunate, and some idiotic circumstances, I lost the database and the associated backups for my 7 year old blog.
This has been an extremely eye-opening experience for me, and I have to admit that this is a very difficult blog for me to write! I design and protect secure customer environments as a career, so to lose my own is a slight ego blow.
Through all things though, positivity can shine, so I've taken the opportunity to redo my blog from scratch in a totally different way, and yes as secured and resilient as I can make it!
This experience also gave me the opportunity to reflect on my blogging over the last few months, and it's fair to say I've pretty much trailed off to nothing. This isn't because I don't have anything I want to say, and I have a list the length of my arm of blog articles to write, so why then haven't I?
Is it because I'm too busy to blog? Hardly - where there's a will there's a way, and my lack of time pales in comparison to that of some of the most profilic bloggers I know. That said though, the reason I find myself putting off writing even short posts isn't because of how long it takes to write the article itself, but all the miscellanea around it. My Wordpress environment was overly bloated and complex, with a litany of plugins and addons which ultimately just served to put up barriers between me and getting content out.
At the same time, I've done the whole Wordpress thing to death and find myself wanting to explore new ways of doing things which would expose me to new technologies. I've decided to move to a platform with a significantly smaller codebase, and one with a flat-file structure.
- I want to improve my understanding of the back end of the site.
- I want to improve site responsiveness.
- I want to make it easy for me to make meaningful changes without needing to be an expert in a specific CMS.
- I want to get away from the traditional web/db architecture.
- I want to be able to add new posts directly as files into the directory structure.
- I want to be able to do everything I need from within Visual Studio Code, because that's where I spend a lot of my time anyway.
Ultimately I just want something easy to use, easy to manage, which exposes me to new ways of doing things, and which offers options for adoption of other technologies in the future as well.
I spent some time going down the rabbithole of building my own custom site from scratch in .NET Core, and while I did learn a lot from the process, I abandoned it fairly early on because I was just doing what I'd sworn not to do - throwing up barriers between me and content creation.
In the end I settled on Grav to power the reborn site, partly because it embraces a number of modern approaches to development and design, but mostly because of its powerful markdown and focus on removing barriers to content creation.
I also wanted to make the site as high performance, scalable, resilient, globally accessible, and protected as possible. I couldn't find any existing articles for deploying Grav to Azure, so what better way to get back into the swing of things :)
Coming up, step one - high level architecture.