From late 2014 until spring 2017 I hosted my blog on Github pages. I learned a ton in the year or so I spent obsessing over it.
For the most part I didn’t have to think about the underlying Ruby code.
Jekyll’s local server
I had no idea what I was doing when I first navigated to
localhost:8000, but I was so stoked once I changed a file and realized my site would update in real-time.
It turns out that this is how a lot of work is done in the real world. It took me a while (probably longer than it should have) to understand what servers are and what they’re for.
#TODO [post] what servers are and what they’re for
Like, I understood on some level that servers are just computers running on their own, basically.
Jekyll project configuration
The configuration file and front-matter on pages and posts used YAML.
The main thing I learned was that you have to restart the server when you make changes to your config file.
Liquid is a Ruby tool written by Shopify to allow non-technical site owners to parameterize their websites. Jekyll builds on Liquid’s existing syntax to make it easy to
One really great feature is the ability to permalink to posts, even if the file paths changed. For example, if you previously categorized a post in
career but then moved it to
#TODO show changing file paths, Liquid syntax
This blog taught me everything I know about CSS. What was the most important thing I learned? Never edit straight CSS.
Sass is about as simple as Liquid, maybe simpler. The hard part is still the CSS. I spent countless hours moving pixels around because I’m a nitpicking Virgo and the visual changes satisfied my ADHD’s need for immediate gratification.
Now I color, or knit, or make earrings. (Although I should probably be ashamed at the countless hours I continue to spend playing with this blog’s themes and color schemes).
But seriously, webkits are confusing af at first.
It wasn’t until I asked some random person on reddit for feedback that I learned that my site was almost completely inaccessible on mobile. It was time to go responsive, and Bootstrap would get me there.
At first I just linked to the CDN-hosted version, but I quickly got frustrated by the lack of customizability. Even using the SCSS version didn’t give me control over my color scheme. Colors are important, okay?
Pretty soon I was reading everything I could about getting Bootstrap to work in Jekyll. There’s a Jekyll-Bootstrap rubygem, etc. etc. #TODO
In the end I just downloaded Bootstrap’s source and included the entire thing in my blog. Definitely overkill for my needs, but the CSS classes combined with Jekyll’s Liquid templates were kind of fun to play with and a great way to learn.
Git and Github
Definitely the most important lesson I got out of my Github pages blog was the endless practice with git.
I bought my domains
shelbyspees.com back when Namecheap had its ugly old dashboard.
I remember being so confused about the
Also what is WHOIS? Like, why do I need it? There were a couple months that went by when I renewed my domain but not the WHOIS thing. I still don’t understand why I need both.