New Terminal

For years I had it in my head that urxvt was the best terminal emulator one could find. I ignored all those little areas of Unix management where I’d have to set my TERM variable to something like xterm-256color before some remote shell would recognize my terminal correctly, or where F keys had to be configured before they would be passed to the running application. Those little moments when I’d load a new color scheme for mutt, or vim, and I could tell that I wasn’t quite getting the same experience that everyone else who installed the plug-in had. Its been a good number of years this way, and I’d just gotten used to it. ...

2019-06-19 · zach

Junos Configuration Management

Its been a year since my last post, and I’m thinking its time to make another. Lately I’ve been trying to work through some network management solutions to try and define the problem more clearly. This is an interesting problem primary because I’m unable to rely on my previous tool sets to get this done. Namely, Puppet running on the host. There are a couple interesting Python tools for this purpose that I’d given a spin, but the more I was working in them, the more I was wishing I was writing in Go. Most of my actively maintained code these days is Go, and working in two languages for personal infrastructure tooling means I can’t leverage the libraries of one tool in another. ...

2019-01-19 · zach

Fuck Couscous

So you’re at a conference in a foreign country, and its lunch time. The menu at the head of the table is in a language you don’t read. Now to judge the food by looks. All the food looks impossible. Even the vegetables are on the same tray as the sandwiches, all mingling with a bit too much friendliness. One dish looks like potatoes covered in a gravy dressing. Skipping over all the sandwiches, the next, dish looks like Quinoa salad, so let’s try some of that. ...

2018-06-18 · zach

Hugo

For the last few months I’ve been learning the Go programming language while working on various work related projects, and as I do, I reflect on the older tools and patterns that I’ve used and developed over the years and wonder if there is a better approach. Each time I pick up a new language, every few years, I start this evaluation process. In this case, a friend from work pointed out a new static website generation tool. It turns out, I’ve been neglecting a couple static sites that could use some updating! ...

2018-01-18 · zach

Puppet Providers and Unit Testing

Sometimes Puppet providers execute their logic based on the contents of a @property_hash, which is just a representation of a resource’s actual state. Its easy enough to test a provider for the basics, but populating the @property_hash for a unit test has always been something of a chore, and often gets skipped, leaving large portions of provider code untested. I wish I’d understood this years ago, but now that I’ve got my head round it, its pretty simple. ...

2017-02-17 · zach