In case you missed it, this website is now generated with pure HTML & CSS. Well, I guess generated isn't the proper way to describe it anymore. More like written.
No more Markdown files. No more
build scripts. No more Jekyll. Just clean, simple, static HTML & CSS. But more on that in a moment. First, I must apologize.
I'm Sorry Dear RSS Subscribers
RSS feeds are tricky things for me personally. I always seem to botch them somehow with a site redesign or a restructure of my previous posts. Those of you subscribed via RSS were most likely bombarded with post spam when I rebuilt this website. Sorry about that - I know how annoying that can be.
Fortunately, that all stops today. Moving forward my RSS feed (Atom) will be edited manually with every new post I write. Each entry will only feature the post title, post url, and post date. No summaries or full-inline content will be included (since that would involve a great amount of extra overhead). RSS subs will need to follow the link directly if they are interested in the article itself. Hopefully this doesn't anger too many readers...
Again - sorry everyone.
So, What is this New Blog "System"
This publishing flow certainly isn't for everyone and probably seems less flexible than pre-existing static site generators (referred to as SSGs moving forward). For me though, it works really well. I also find it more flexible than most SSGs.
There are a couple articles that explain the reasoning behind this system better than I could (plus, why would I just repeat the same points?):
So, what does my blog-posting system look like?
- Copy an existing article's
- Change file name, edit the page title, heading, post date and comment link
- Write the new article content
- Make manual new entry in RSS feed
- Save changes, push to git repo
- Sync new file(s) / changes to remote server
Pretty simple, eh? Let's break things down into greater detail though...
Enjoying the content? Consider supporting my site by contributing to hosting costs!
My goal is to keep this blog advertisement and tracker free - forever. So, if you're feeling generous, please consider donating to help pay for hosting via NearlyFreeSpeech.NET.
Donate (code: tdarb) // View Contributor ListNow back to the article...
I code and write everything pretty much exclusively in Sublime Text on my MacBook Air. I know - it's not a fully open source editor, but I just love how incredibly fast and intuitive it is. I used VSCode in the past but ended up requiring far too many plugins to get things setup just the way I like it. Sublime Text works best for me even right out of the box. (I still need Emmet and some theming changes, of course).
I perform the following for a new article:
- Copy an existing article, ie.
- Rename article file name, ie.
- Open this newly created file and change:
h1heading and top bar text
timetag to match publish date
- Start writing content inside the
Once the article is complete, I add a static entry in my
feed.xml and run a crude
rsync script - more on that below.
Normally I would just pull, commit and push directly in my Terminal - but lately I've really been enjoying my time using Sublime Merge. I'm a sucker for visually appealing GUI applications and Merge is the perfect balance of simplicity and beauty. I highly recommend it.
This blog is now hosted through NearlyFreeSpeech. I could easily opt for a free service like Netlify or DigitalOcean Apps but I feel it's important to help support communities that align with some of my own core beliefs. From their about page:
NearlyFreeSpeech.NET is about three things: fairness, innovation, and free speech.
Hard to argue with those principles. Also, if you're feeling generous, I'd greatly appreciate anyone who considers contributing to offset this website's hosting costs through NearlyFreeSpeech (code: tdarb). No money is directly handed to me - it simply pays NFS directly for hosting fees. Only do so if you feel like this humble blog of mine has helped you in any way :) - no pressure!
NFS gives me server access via
SSH (and even
SFTP if I so desire) which makes things fairly simple to sync my local files with production code. This is handled via
rsync with a very basic
rsync -vrzc --exclude 'deploy.sh' --exclude '.git' --delete ./ firstname.lastname@example.org:
The included parameters ensure only files with a conflicting checksum are updated on the server, instead of re-syncing all the files every time the script runs. That would be overkill.
I love this new setup. It's portable, lightweight, has zero dependencies, and gives me the opportunity to write directly in HTML. Some may find this workflow idiotic or cumbersome - but I couldn't disagree more. Site wide changes can be made with simple
Find/Replace actions or even whipping up a very basic script. Things only need to be as complex as you wish to make them!
At the end of the day, whatever helps you be more efficient and gets you producing more content is a winning strategy to in my book. Who knows, maybe I'll even inspire one random reader out there to do the same :)
Leave a comment
To make a comment, please send an e-mail using the button below. Your e-mail address won't be shared and will be deleted from my records after the comment is published. If you don't want your real name to be credited alongside your comment, please specify the name you would like to use. If you would like your name to link to a specific URL, please share that as well. Thank you.
Comment via email