Development
-
Moving a Ruby Gem’s CI to GitHub Actions
I like to tinker. While tinkering, I’ve created a lot of random tools, and when I think those might be useful to others I try to open-source them. The metatron and bullion ruby gems are good examples of that. An example that hasn’t made it…
-
Some Thoughts on Elixir
I’ve been experimenting with Elixir for a few years off and on and have really enjoyed it so far. I can’t use it professionally, so all I’ve been able to do is some Exercism exercises (which I highly recommend) along with some other random projects.…
-
Kubernetes Controllers via Metatron (Part 3)
Previously, in Part 1 I described Kubernetes Controllers and the Operator pattern. In Part 2, I explained why Controllers are important and how Metacontroller makes it easier to build them in your favorite language. In this, the 3rd and final part of this series, I’ll…
-
Kubernetes Controllers via Metatron (Part 2)
Previously in Part 1, I discussed what Kubernetes Controllers are, how they work, and gave some examples of their usage. I also gave a description of Operators and explained how they are just a specific kind of Controller. All this in the service of explaining…
-
Kubernetes Controllers via Metatron (Part 1)
I recently released a new Ruby gem called Metatron. This gem aims to make it very easy to create Kubernetes controllers, either to implement the Operator pattern or to respond to events related to built-in resource types. It does this by deferring to Metacontroller for…
-
Waylon: A New Bot Framework
Sure, it might not be obvious why the world needs yet another bot framework, but I’m working on one. The idea is to make a scalable, intuitive, and feature-rich framework that runs on the latest Ruby. Long-running tasks shouldn’t be a problem and the framework…
-
At Sin City Ruby!
Made it to Las Vegas for the Sin City Ruby conference. I’m stoked to be here and excited to see what cool stuff everyone is working on.
-
Solving Physical Puzzles with Ruby
Most of the time, the challenges I tackle with Ruby solve code-related problems. This includes things like web services, scripts, chatbots, etc., all of which are virtual in some way. Recently though, I decided to solve a puzzle in the real world. My son was…
-
Solving Scrabble with Crystal
I recently solved a problem I’ve always wanted to solve: writing a library that can unscramble words. I know, this is a pretty geeky and pointless endeavor. Geeky, though, is what I do. Originally, the library focused on exact matches. Given some string, I could…
-
Kubernetes Node Affinity and EBS Volumes
Occasionally, Kubernetes workloads require specialized nodes. Sometimes it’s for machine learning, or to save money through burstable node types, or maybe just to lock certain Pods to a dedicated subset of nodes. Thankfully, Kubernetes offers a few useful mechanisms to inform the scheduler how we’d…