Recent
What's happening?
I’ve been silent for a long time. Pretty much since all the COVID-19 lockdowns in 2020. I’ve been raising kids and in survival mode.
My learning hasn’t stopped even while surviving. Obviously I’m doing more with AI. It’s kinda hard not to in this industry. In addition to using an AI coding assistant for my day-to-day, I’ve helped build AI integrations in Observable Canvas by building skills and tools to improve the context quality. I’ve also been building more services and tools in Rust. Still rooted in infrastructure, I’ve most recently used my skills to write a client and server to manage VPN connections.
Giving VSCode a go
I tried VSCode for 3 weeks just because I had been working a lot with Terraform and other members of my team mentioned the various plugins available for Terraform. I found using VSCode to be a really wonderful experience.
Complex Adaptive Systems in Software
Resilience engineering is becoming a required practice as people begin to expect services to be available nearly 100% of the time. We have the same requirements of the systems that sustain us: ecosystems, anatomical systems. Our world is one complex adaptive system after another.
5 CLI Tools all software engineers should know about
The following CLI tools, I have found to be extremely useful when dealing with systems to quickly find the information I need. Please note that all these commands are being run from OS X and are the BSD commands not the GNU commands that typically ship with a standard Linux distro.
Fixed vs. Growth System Failures
The concept of Mindset based on the work: Mindset by Dr. Carol S. Dweck, Ph.D. has been around for some time now, but recently I was thinking about root cause analyses meant as a tool for learning. Revisiting the John Allspaw post: The Infinite Hows (or, the Dangers Of The Five Whys) make me start thinking about what makes a lot of people look at postmortems as a checkbox or paperwork and not value them as learning experiences.
Go is for .Close()’ers
The Close() method is important to the reliability of a running program and
it’s not easy to tell when it should be used.