RSSAmplifier

Blog

downey.io

Personal blog containing thoughts on software development, lifelong learning, photography, etc.

downey.ioRSS feed ↗10 posts

Latest posts

Code Rot

Last month, this site turned ten years old . At the time, I was a fresh new software engineer who had just started my first real job. I was working with Ruby on Rails, so naturally, I created this site using the Ruby-based Jekyll static site generator. Since I was all about Rails, I incorporated jekyll-assets to layer on the Sprockets asset pipeline and fed it a smorgasbord of Thoughtbot SASS gems…

Fractal Design Terra Jade Workstation

👋 I’m back. It’s been going on two years since I’ve last posted anything and a lot has happened. We moved from the Bay Area to Colorado and even had a kid! 🏔️👶 But now that things have settled down a little bit, I’d like to get back in the groove and start blogging again. So I dusted off the cobwebs of this (nearly a decade) old Jekyll site and got the dev env running again. It’s kind of crufty…

Producing a Software Bill of Materials the Easy Way

It seems like every week we hear that there is a new vulnerability in some core dependency. Or maybe yet another package we all depend on has been hacked (maintainers, please enable two-factor auth!!). The only thing we can do as developers in these cases is patch our software back to a safe version of the dependency as soon as possible. That’s easier said than done, however. For many of us even…

Installing Folding at Home on a Raspberry Pi

tl;dr? Feel free to skip ahead to the installation guide below. Back when I was a kid I used to run Folding@Home on our old family computer – a silver Gateway tower with a 1.8 GHz Pentium 4. I’m not sure how I found out about it, but I remember being inordinately excited by the prospect of contributing CPU cycles to simulate protein folding and help discover cures for cancer and other diseases.…

Capturing Network Traffic from a Kubernetes Pod with Ephemeral Debug Containers

The other day I had a situation where I needed to debug network traffic between an app and its Envoy sidecar proxy. Fortunately, since the app image was Ubuntu-based and it was an unimportant dev cluster, I was able to just kubectl exec into a shell on the container and apt install tcpdump . Now that I had tcpdump installed, I could run it and pipe the output to Wireshark on my local machine.…

Public Routing to a Private Kubernetes Cluster

Important Update It looks like inlets-operator has been folded into Inlets PRO and now requires a (fairly inexpensive) paid license to use which comes with HTTPS and TCP load balancing plus support. You can still use inlets for free, you’ll just have to configure the ingress node yourself I believe. Some of the post below still applies – especially if you’re trying to DIY your own set up with…

The Great Raspberry Pi Cooling Bake-Off

Two years ago, I found myself alone over the Fourth of July and a bit bored. So, of course, I did the reasonable thing and conducted a performance comparison of a few of the cooling options available for the Raspberry Pi 3B. This comparison resulted in my post “Raspberry Pi Heat Sink Science” . 2020 and its Pandemic has gifted me with even more isolation ( ahem social distancing 😷) this Fourth,…

Save Money and Skip the Kubernetes Load Balancer

LoadBalancer Services are super convenient. Just change the type of a NodePort service to LoadBalancer and your cloud provider will provision a new cloud load balancer, external IP address, and firewall rules to make your workload reachable to the world. It’s a fantastic user experience! It’s no wonder that example installations and tutorials love to include them. Load balancers, however, come…

Using kbld to Rapidly Iterate on Kubernetes Deployed Apps

When creating applications that extend or interact with Kubernetes, there are times when it’s necessary to deploy and develop against a real K8s cluster. While Kubernetes makes it trivial to apply and roll out new changes, the building and pushing new dev Docker images for your application can be a rigamarole. On top of that, you also have to remember to configure the imagePullPolicy for your…

Leaving Breadcrumbs

This post is going to be a bit meta. I’m going to write a bit about why I post my notes and, to a lesser extent, blog in general. I’ve been wanting to write on this for a while now, but just haven’t gotten around to it. However, thanks to this Pandemic we’re all in, I’ve found myself with no commute and a bit more free time. So here we are. 🙂 Why I Blog I started this blog six years ago for kind…