Tutorials

Consolidate a Jekyll site with Hugo

8 minute read Published

How to migrate a website hosted on Jekyll into an existing Hugo site.

Three years ago I started a website called hackcabin.com to scratch an itch after discovering Hugo and starting development on After Dark. At the time my primary website was running Jekyll and build times were nearing the 2-3 minute mark for little more than 70-80 blog posts.

Swarm Clusters on Digital Ocean

9 minute read Updated

How to set-up a two-node Swarm cluster on Digital Ocean using Docker Machine.

Lately I’ve been learning more about cloud architecture and related tooling. Stuff like Lambda, Serverless, AWS CLI and – now that it’s a part of Docker Machine – container orchestration with Docker Swarm clusters.

As an AWS user I’m particularly geeked about the Docker Private Beta, which makes it possible to experiment with Swarm using Amazon Web Services. But rather than waiting for a private beta we’re going to experiment with Docker Swarm using one of my favorite prototyping tools apart from the RPi: Digital Ocean.

Zero to HTTP/2 with AWS and Hugo

5 minute read Updated

A step-by-step guide to creating your own JAMstack site using Amazon Web Services and the Hugo static site generator.

So you found out how Smashing Magazine got 10x faster and want to create your own JAMstack website with Hugo. If so, you’re in luck because I’m going to show you how to do it using Amazon Web Services so you don’t end up paying through the nose for hosting or locked into a provider which might disappear.

Optimize Images with Sketch App

4 minute read Updated

Optimize your image assets for the Web using Sketch app.

You know the drill. When you’re building for the Web or mobile performance is everything. Out of the box Sketch does not lend itself to producing flyweight images. But that doesn’t mean you need a second image editor, or even another tool, just to create performant images. Use these techniques to reduce file sizes and optimize images with Sketch.

Simple Websites with Jekyll and Docker

8 minute read Updated

How to host your own simple Jekyll websites on DigitalOcean using Docker.

Looking to create a simple website but don’t want to pay through the nose for hosting? Get started today for free with Jekyll and Docker.

Turbocharge Your Jekyll Blog

5 minute read Updated

How to dramatically speed up your static blog.

The need for speed is upon us. Out of the box the speed of an Octopress site kinda drags. However, there are a number of things you can do to to speed it up without a complete overhaul. Learn how to turbocharge your Octopress blog.

Drupal 7 for WordPress Admins

7 minute read Updated

WordPress continues to become more and more sophisticated as time draws on, with a constantly improving admin dashboard and easy-to-use plugin architecture. And themes like Twenty Eleven give both bloggers and web developers something to appreciate. But while WordPress is a great CMS for personal blogs, it’s not well suited for more complex applications such as Drupal, on the other hand, and by design, excels at all of the above and more.

his article will look at some of the similarities and differences between WordPress and Drupal 7, explain how to accomplish some of the less intuitive administration procedures in Drupal, share some newbie gotchas and timesavers, and provide a list of modules useful to get a new Drupal site off the ground. It is assumed readers are new to Drupal but have a familiarity with using the WordPress blogging platform.

Host Websites in the Cloud in 10 Minutes

4 minute read Updated

Hosting companies Bluehost and Dreamhost offer simple, one-click installation of popular blogging platforms like WordPress, Drupal and Joomla. The affordable hosting plans offered are low-cost, but you tend to get what you pay for: shoddy up-time and slow server responses.

What would our hero Mario do about this? I’m thinking he’d Tanooki suit up, make a mad dash and fly to the first cloud he found. And that’s what this post is all about. Read on to learn how to host a website in the cloud in 10 minutes. It may not be as simple as 1-click hosting, but it’ll almost certainly be faster. And you’ll earn some geek cred for doing something complicated to do something simple.

Host images on S3 with Octopress

3 minute read Updated

Learn how to host Octopress images on AWS S3 using Rubygems.

Glancing over the Octopress plug-ins list yesterday I noticed something I hadn’t seen before, an Image tag & uploader for S3. Curious to tinker around with it I set-up an account for S3 and integrated it today to decrease my blog header background image size and serve it from the cloud with caching.

Update 2016-11-22: You can find the open source Octopress version of this blog circa 2015 right here. Once you’re ready to move on from GitHub try Simple Websites with Jekyll and Docker. And, once you’ve nailed that approach, try going for PageSpeed 100 with S3 and CloudFront.

Follow along to learn how to host images on S3 with Octopress.

PageSpeed 100 with Jekyll, S3 and CloudFront

11 minute read Updated

Perfect your Google PageSpeed with AWS S3 and CloudFront website hosting.

After moving this website from WordPress to Jekyll in 2013 I’ve written enthusiastically about Jekyll. But it wasn’t until recently that I was able to hit the elusive PageSpeed Insights score of 100 for both desktop and mobile performance. Here’s how I got there using Jekyll with S3 and CloudFront, and how you can too.

Chat Applications With Redis, Docker and Go

4 minute read Published

Create your own web-based chat app using Redis, Docker and Go.

For several weeks I’ve been thinking about how to go about creating a chat application. After a knowledge drop from Kent Safranski I was inspired to stand-up the chat app using Redis. For the experiment I decided to use Go given the concurrency affordances baked into the language. So I took A Tour of Go and hit the blogs to see what I could find in the open source community.

Reading Redis, Go, & How to Build a Chat Application made me aware of Redigo, a Go client for Redis, and helped demystify use of Redis’ PubSub with Go. The article was a solid introduction and did a great job breaking things down, but ultimately left me wanting a prototype to try things out on the Web. After some more sleuthing on DuckDuckGo I discovered an open source demo app meeting my requirements and providing a great sandbox for experimentation.

In this article I’ll cover how to create a chat application which uses Redis and Go by leveraging open source software and Docker, and use Ngrok to expose the app to the Web over HTTPS.