How To Create Large Files for Testing

April 18, 2017

Sometimes you need to create a large file for testing. The command line tool dd is an easy way to create large files filled with random data.

I recently found myself needing to test uploading and downloading files of various sizes. So I wanted a quick way to create several files, each of very specific...

Thoughts on the Microsoft Deis Acquisition

April 14, 2017

The Microsoft acquisition of Deis is my second major acquisition in a few years. Not long ago, Revolv was acquired by Google.

Earlier this week, Microsoft and Deis jointly announced the acquisition. Wired ran an interesting story with interviews, while TechCrunch and 20+ others explored Deis' history

GoUtils joins Masterminds

April 7, 2017

I am happy to announce that GoUtils is now part of the Masterminds project on GitHub.

GoUtils implements many of the string utility functions found in Java's Apache Commons. Alex, the lead developer on GoUtils, created the library in 2014. Other Masterminds libraries, notably Sprig have long relied...

If Kubernetes Is Your Home, Helm Is Your Ikea

April 5, 2017

Kubernetes provides a home for all your containerized applications. But how do you get that home furnished with the likes of databases and web apps? That's where Helm comes in. If Kubernetes is your home, Helm is where you get your furniture.

Kubernetes is a home for you apps

Kubernetes takes...

3 GitHub Commandline Tools

April 4, 2017

Sometimes it's nice to work with GitHub from the command line. This post covers three tools for working with GitHub: hub, ghi, and github-release.

Most of the time, when we work with GitHub, we use the main git client. This is great for working with source code, but what about interacting with other...

Command Line Searching with grep, find, and ag

April 3, 2017

There are lots of tools for searching files on the UNIX (macOS, Linux) command line. Which one do you use? Let's look at grep, find, and ag to understand which tool is the best for a particular search job.

Three Search Tools

There are three tools we'll look at here:

  • grep: This tool is for using...

How Helm Uses ConfigMaps to Store Data

March 23, 2017

Helm, the package manager for Kubernetes, uses first-class Kubernetes objects to store its data. Here's how we use ConfigMaps to track Helm releases.

Helm follows the formula "Chart + Values = Release". You start with a Helm chart (a software package), you add your own configuration values, and you...

Creating a Helm Plugin in 3 Steps

March 21, 2017

Helm is the package manager for Kubernetes. We recently added a plugin architecture to Helm that makes it easy for you to write new features in any programming language you choose.

In this post, we'll create a simple Helm plugin in three steps:

  • make a directory
  • create a plugin.yaml file
  • write a...

The Story of Helm

March 19, 2017

A while back, the official Deis blog posted The Story of Helm to celebrate Helm's birthday.

Back then, I wrote:

On October 15th, 2015, the project now known as Helm was born. Only one year in, Kubernetes Helm is part of the CNCF, and is marching toward the v2.0.0 release. And in every sense of...

Dockerizing Ruby To Stay Sane

March 18, 2017

Troubled by my long blogging hiatus? This article explains why: My Ruby broke. But this time, I solved that problem once and for all.

For a non-rubyist, the hardest part about Ruby (particularly on a Mac) is getting it installed correctly. After a frustrating Middleman breakage, I decided to take...