From 564bf0e40dbdabf8483fdb3b16208b92f74ac100 Mon Sep 17 00:00:00 2001 From: Yaroslav Date: Thu, 7 May 2020 15:37:17 +0300 Subject: new post: website refactor --- .../weblog/2020-05-07_website-refactor/index.md | 78 ++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 content/weblog/2020-05-07_website-refactor/index.md diff --git a/content/weblog/2020-05-07_website-refactor/index.md b/content/weblog/2020-05-07_website-refactor/index.md new file mode 100644 index 0000000..a07fceb --- /dev/null +++ b/content/weblog/2020-05-07_website-refactor/index.md @@ -0,0 +1,78 @@ ++++ +title = "Website refactor" +date = 2020-05-07T15:31:16Z ++++ + +A couple of months ago I had decided to completely refactor my website and blog. +Finally I have done so, and even though I think it still needs some work, I am +much more happy now with it than before. + + + +It's been more than a week since I've actually migrated my site to the new +format, but I haven't had the time to write about it, being all busy with my +thesis work. Actually, I am writing this while I am waiting for some stuff that +I need for my work to compile. + +## The old site + +One thing that I didn't quite like about it, was that it was pretty bloated +having used Django just for a little personal weblog site. It's not like there +is something inherently wrong about using Django or something similar. I really +liked to use it at the beginning since it is a pretty useful and comfortable +framework to use, especially when you are a beginner. The problem is that it +comes with a lot of bells and whistles that you most probably don't need, +especially if you're just making a small personal weblog. But this wasn't even +the main reason I decided to completely redo it. + +However, the main reason why I decided to completely refactor my site, was that +over the last couple of years since I first started my site, my overall workflow +and the way I use computers had fundamentally changed, and I now found it quite +uncomfortable to publish to and manage my site. I just find very jarring to use +web interfaces for "productivity". + +The way I would publish posts and do most of the "managing" of my weblog, was +through the "admin" panel that I would access with my browser through a special +URL. As I said, web interfaces are not my cup of tea, and that includes typing +and redacting articles or posts. I have a nice and comfy setup of neovim which I +actually use to type and redact almost all of the text that I have to write on +my computer. And so I wanted to type my articles on vim, and preferably not even +have to leave the comfort of my terminal to manage my site. + +## The new site + +The last post that I wrote before refactoring my website, actually covers most +of my thoughts on this topic, so I'll just mention what "technologies" I ended +up using for my new site. + +In that post I mentioned that I wanted to migrate from a relational DB based +blog to an SSG system, and that's what I ended up doing. I chose zola over other +SSGs because that's the one that I found the most comfortable to use and the +most fitting for my needs, at least for now. + +I could have just ended up making a completely static site with pure html and +would have also been better than using Django, but I find markdown to be much +more nicer to edit and read for simple texts, and I wanted to automate certain +things such as templating, without having to mess too much with it myself. + +I also ended up using a CI/CD system so that my site would get deployed and +built automatically each time that I push to master on my "git server". I am +using Gitea as a kind of git server, and Drone as the CI/CD system. So now all I +have to do when I want to publish a new article, is write the article, commit +the changes on my local repository, push the changes to Gitea on my master +branch, and then Drone will pick up the push event and automatically build and +deploy the updated site to my VPS. + +The only significant problems that arose from this migration is that some URLs +have changed, notably the RSS URL, but also that the URLs for blog posts are no +longer under categories, but directly under the /weblog/ URL. They can still be +accessed using the old URLs though, since I put some rewrite rules in nginx so +that it would redirect from the old URLs to the new format. + +Overall, I am much happier with my website and weblog now, and I hope that I +will be publishing some new stuff here, even if nobody really reads this. +Although in some cases that old bit might make it a bit more compelling to write +certain things :) + +The source for my website is hosted at +[https://git.yaroslavps.com/yaroslav/yaroslavps.com](https://git.yaroslavps.com/yaroslav/yaroslavps.com) -- cgit v1.2.3