Github Pages and Jekyll Blogging

16 Apr 2017

As an intern and student, working with internal tools or under-NDA projects has some nice benefits. Getting to work on things most people don’t even get to see. Experience with real world applications, and all the ups and downs that come with them. A chance to work on the cutting edge of something.

However, there is one major drawback: the complete inability to show your work. I had the (mis)fortune of having two internships and a capstone project fall under the internal/NDA banner. A well-informed student would take time to build a portfolio outside of these experiences. I was not well-informed, and was unknowingly fighting an uphill battle against ADHD for enough time to pass my classes let alone work on personal projects, so I did no such thing.

Now that I’m facing a job search where the phrase “demonstrable experience” keeps showing up and have a backlog of self-learning to-do’s, the time has come to be that well-informed student. This site, and this blog, will be my place to showcase my work as I learn new skills, experiment with different technologies, and pursue the personal projects that have been brewing in the back of my mind.

First Steps

Of course, to show your work, you need a place to show it off. I started off fretting about server hosting and domains choosing a technology stack, and all the worrying got me nowhere. I asked my friend Michael how he was handling his website, and he gave me the information I asked for, but also said, “You know about GitHub Pages, right? Probably a better fit for what you’re doing right now. You can move to something more specific later.” Well, I hadn’t heard of GitHub Pages, but I went right to reading up on it, and it indeed sounded like a good fit. Now I just had to get it up and running.

The Setup

A natural place to start was the GitHub Pages website. The intro video was appealing, and the instructions super simple. But they didn’t really show anything about setting up a website, just how to set up the repository and make Hello World.

For personal sites and blogs, the bottom of the Pages intro directed me to a listing of help pages, as well as the Jekyll quickstart guide. However, these were still about the ins-and-outs of setting things up without actually building a site.

What I really wanted was somewhere between Hello World and nitty-gritty instructions; a scaffold I could implement, modify, then expand from. A Google search later, and I was following this tutorial by Jonathan McGlone. It fit the bill perfectly! There was a brief intro about what GitHub is and how it works (which I skipped), then step-by-step instructions on setting up a full-blown, if barebones, personal website complete with fill-in-the-blank files. I think what impressed me the most was that in just a short tutorial he moved from providing the full source code, to only showing parts, to saying “Remember to make this page, just like the other ones,” and it’s done in a way that by the end I felt comfortable making those pages without him providing the code. Definitely time well spent.

The Payoff

Now I’ve got my first-ever website, and can broadcast my thoughts to the world. It doesn’t look pretty, but it works. More importantly, I understand how and why it works, so I’ll be able to use and modify it as my skillset and knowledge base grow. Here’s to the grand adventure to come!