Launched: Labs and My Beer Adventure

Two smaller personal projects that I’ve been working on have officially launched, and I couldn’t be more excited: Labs and My Beer Adventure. Here’s a description of what they both are and some of the tech choices I made behind them.


Labs is a small project of mine that I built in order to showcase some of the smaller projects that I do on my own that aren’t necessarily big enough to promote as an entire site (or even their own GitHub repo). In fact, the entire labs project is a single GitHub repo, and I intend to keep it that way. The projects that I choose to be a part of labs are geared to be more visual demos – things that you could navigate to a URL and see an actual representation of what I’ve been working on, without having to install anything. For the most part, this limits me to projects that are HTML, CSS, and Javascript, but I’ve even got a project in Go up there that I’m running as a web server to be a wiki that’s tied to a MongoDB database.

The site is fully responsive, and while I designed this main site completely from scratch, I didn’t want to spend as much time building my labs site since I wanted it specifically to showcase other projects. I dug around for a bit, and came across a neat site called HTML5 Up that has several clean, well-built site templates that are completely free to use. The only small caveat is that you have to give attribution somewhere to its creator, @n33co, but if you’d rather not give attribution, then you can purchase a very inexpensive license to get instant access to all of his amazing templates completely attribution-free. I want the developer of HTML5 Up to be known by everyone, so I’m proud to give credit where credit is due.

Check out my labs here:

My Beer Adventure

Since around my 21st birthday, I’ve been a fan of beer and the history of beer styles, especially with the craft beer movement going on. However, it’s been a long time since I really spent any time towards learning more about beer styles, beer history, beer brewing methodology, etc., and I also haven’t been drinking as many unique beers as I’ve been wanting to. So, I made a New Year’s Resolution for 2015 to drink a new beer every single week – a resolution which I have happily abided by so far. I’ve been documenting my beer selections via my Instagram account, and it was brought up by one of my developer buddies that I should start actually blogging about my choices.

I liked this idea because not only would it be easier to share with everyone my beer choices through 2015, but I would have a dedicated spot where I could share my experiences with each beer besides Instagram. Similar to my labs project though, since my main purpose for this blog would be to share content, I didn’t want to spend a whole lot of time on design. This beer blog could even be simpler than my labs project too, since all I needed was a blog and nothing fancy. My main site runs on WordPress (see why I made that choice), which has been an excellent CMS for all my various content, but I didn’t need anything that heavy for this blog. Additionally, I didn’t want to tie my beer blog directly into my personal site since I’m trying to keep my main site pretty developer-centric.

There are a bunch of neat blogging options out there that aren’t WordPress, or even PHP based at all. Jekyll, Octopress, Middleman, etc., but I wanted to try a newer option that’s been gaining a lot of traction lately … Ghost.

Ghost is a node.js based blogging engine that has gotten over 3,000 forks on GitHub – enough to pretty much verify that it remains a stable blogging option. Their slogan is “Just a blogging platform,” which is exactly what it is – a blog. Nothing more. You write your posts using Markdown, you can download and use different themes, and you can manage multiple users on a single install – but that’s the extent of Ghost’s core. Need static pages? If you can build them in Markdown, then you can use Ghost, but anything else and you’re better off with another platform.

Ghost can be installed and used by either cloning the base repo, or installing it as a node module using npm. It’s insanely easy to get going, and because it uses sqlite which is a file-based DB, it’s so easy to sync deployments across different environments. Ghost is always free for developers, but even if you’re not a coder, they provide hosting options that handle the install for you (you just need to shell some monthly bucks for that nicety). You can check out the GitHup repo for My Beer Adventure which shows Ghost installed as an npm module.

Check out My Beer Adventure blog here:

Final Words

As far as deployment goes, both of these new projects are deployed side-by-side with my main site on my $5/month Digital Ocean VPS, which has easily been the best tech purchase I’ve made so far. Labs is strictly a client-side project, so all it’s using in order to run is the nginx web server, but with My Beer Adventure being a node project, I’m running it using nginx and the forever npm package which runs the node process as a daemon.

Don’t worry, the next post will return to our Rails API series – I just wanted to promote these small projects and discuss the tech behind them!