Sutro Cat Tower

This is my “Sutro Cat Tower”, modeled after the real Sutro Tower in San Francisco CA. It features: 7’ 3” (221cm) Tall 369 Individually addressable RGB LEDs ESP8266 programming (timers, dimming, “smart” features), code Fleece-lined platforms for the cats Modular wood construction Honestly it is too tall, I’ll have to come up with something to make it easier for the cats to jump up into the upper platforms.

Read Moreā€¦

My MegaDesk Build

I recently finished my MegaDesk project. Here are the specs: 11 feet wide x 39 inches deep finished butcher block top leg-less design with lots of wood infrastructure underneath to support it Supports that are anchored to the 2x6 studs Horizontal support anchored to studs More outlets (there was only 1 lone outlet in this office originally) Cat6 and Coax in keystone jacks Cable pass-through tubes for clean cable management Insulation!

Read Moreā€¦

A Survey of Golang 'plugins' in 2020

For the purpose of this blog post, my definition of plugin is: A method of extending the functionality of program without forking it In particular, I’ll be looking at methods of extending Golang (go) programs. Official Golang Plugins Official Golang Plugins are a native way of extending go codebases without forking them. How They Work Official Golang Plugins work by compiling your plugin in a special way: go build -buildmode=plugin This build mode can output a .

Read Moreā€¦

Securing Your Own Privately-Hosted Internal Web Services

Like any self-respecting nerd, I have a colletion of internal web services running in my home network. Even though these are not exposed to the internet, I think they still deserve encryption and authentication. Inspired by this blog post, I decided to do this for myself. Here are were my requirements: Google auth Not on the internet Easy to remember domain names Encryption Installing Caddy Note: At the time of this writing I used Caddy version 1, which is now replaced with v2.

Read Moreā€¦

Time Capsule

I’ve held onto this Time Capsule for 29 years. I believe I made it in first grade, at seven years old, at Cypress Woods Elementary in “Gifted Class”. Certainly some things have fallen out of the manila folders. The things that I drew are a kind of snapshot of my life at the time? Bart Simpson Bill - Bill Clinton? Self-Portrait Nintendo - NES Orbiter - The Space Shuttle Orbiter Wcheis (sic) - Watches?

Read Moreā€¦

Measuring AWS Region and AZ Latency

Lots of people are aware of the different AWS regions that are available for use. But let’s say you wanted to know about the network topology between regions, specifically how “close” they are to each other, from a network-perspective. Using data from cloudping.io and some graphviz code, I created this latency map (click for the pdf): How About AWS Availability Zones? Not Availability Zones (AZs) are the same. Due to geography, there will be some AZs with lower latency to other AZs.

Read Moreā€¦

An ePaper Clock

I’m calling my ePaper (eInk) watch “done” (click on the image for a full resolution): It uses a database of literary quotes to display what time it is, highlighting the quote in red. This project originally started as a wrist watch with battery management and a custom PCB: The wrist watch version was too ambitious and too distracting, so I gave up and just left it as a wall-clock.

Read Moreā€¦

My Sunjar - An esp8266-Powered Light Alarm Clock

This is my Sunjar (code). Inspired by those (expensive) light alarm clocks, my Sunjar gently wakes me up in the morning to this (click to see a youtube version): And then fall asleep to flames: Features This is my alarm clock, so I can put in the features that I want: NTP-synced time. Never forget about DST again. Always accurate. Wakeup by ocean light, with a 1-hour brightness ramp-up.

Read Moreā€¦

The Case Against Kubernetes Sidecars

Intro The Kubernetes (k8s) ecosystem has gone crazy for sidecar containers. Sidecar containers (sidecars) are auxiliary containers, not part of your application, that provide additional support to make it work. Along with your application, sidecars can be used to inject secrets, ship logs, or power a service mesh. Although there are some advantages to Sidecars over traditional daemons, I would like to make the case that they are actually and inferior solution for a company that has the resources to provide a platform to its developers.

Read Moreā€¦

Etched Team Straws

I recently etched reusable metal straws for my team at work. I used a low-tech procedure to etch the metal using electricity after applying a vinyl mask made with a hobby vinyl cutter. The glass straws used food-safe ceramic paint baked in an oven, also using the same vinyl stencil. The results are great. Click on any of the images below for a larger version. The last few are videos.

Read Moreā€¦