This past week was my spring break. I got sick, and ended up working on getting this website working. My life is a big muddle of proactive procrastination.
For more than four months this page had a “more content to come” label attached to it. No longer!
I’m going to talk a little bit about what goes on behind the scenes of this webpage. I don’t consider myself a web developer, more of a computer science generalist with a focus on computer security. However, I think that it’s important to be able to something like maintain a website. I’m not talking about a fancy dynamic page loaded with interactive features. Static HTML continues to be good enough in my book. Adding design flourishes through CSS and Javascript - that’s all extra.
Again, I’m not a web developer. I first bought a domain name in 2007, when I was still in middle school, but for a couple years all that was up here was a isometric style logo of my name. I did the Codecademy course on Javascript last year, but the extent of my actual implementation on this site is importing jQuery and grabbing a bit of JS to open external pages in new windows off of StackOverflow. So when I went about building this web page, I turned to my friend Quinn , who actually does this stuff.
I’ve been using Git and Github for some time now and love both. Github Pages is a free and easy way to host static webpages for free, version controlled in Git. The only “catch” is that your webpage has to be open source on Github. There are a couple limitations, TODO
If you’re paying for webhosting and haven’t considered Github Pages as an option, you should give it some thought.
Github Pages serves static sites. Jekyll is a fantastic Ruby gem specifically for creating static sites. The idea is that you write posts in Markdown, make some layouts and templates, and with a little personalization you have a nice static site.
There are plenty of other posts about blogging using Jekyll, and I don’t have that much to add. I do have one, though. Many people use their Rakefiles to create scripts for generating posts, however this I’ve always preferred to just install a gem to do this kind of thing for me. I ran across the gem ‘poole’ which allows you to easily generate drafts and posts for Jekyll.