Python Manhole When working with a complex python daemon, I really appreciated the python-manhole library. This tool allows you to listen on a Unix domain socket, and serve a REPL, get stack traces, and more.
From the README, it is as simple as this:
pip install manhole Add it to your python code somewhere in the start sequence:
import manhole ... def main(): manhole.install() # this will start the daemon thread .
Sometimes I hear the phrase “Stock Kubernetes” and wonder exactly what one means when they say that. Often it is in contrast to a “Managed” kubernetes (k8s) offering, for example (just the big three):
Amazon EKS Google GKE Azure AKS But these are all on cloud providers. When someone says “Stock Kubernetes”, they may mean they want to run k8s on a cloud provider, but not use the cloud provider’s service.
Prompt engineering is an the emerging practice of talking to an AI to get a desired outcome.
As a software engineer, I would like to make the case that we were already doing this, just our “AIs” were extremely primitive and error-prone.
ChatGPT and Copilot are getting very close (in March 2023) to being less error-prone than I am.
I am a Natural Intelligence with a Finite Prompt I’m 39 and this is deep, but my “prompt” is all I can remember from the last couple of decades of my professional experience.
Back in 2016 I did a comparison of text-based browser here.
Back then this was the state of the art (elinks):
This is speaking generously, with a particularly text-friendly example!
Now, in 2023, there are two new text-based browsers that are incredible. Because they are backed by normal browser engines, we no longer have to be impressed by features like “color support”!
Browsh Browsh is a modern text browser backed by the Firefox (gecko) rendering engine.
I’m trying out the 2018 Palm PVG100 as my daily driver cell phone.
Sure, it is ancient by smartphone standards, but it makes me feel like I’m in the future whenever I use it.
Plus it pairs well with my OneNetbook 4:
Reasons for using this:
It is cool It satisfies my “under $100 device on my person” constraint It discourages “bad scrolling habits” It fits in my wallet Why USB Tethering I think USB Tethering is underrated.
I recently bought this 6-pack of Outdoor RGBW Flood lights with the intention of disassembling them.
These have the SEO words of:
Ustellar RGB Flood Light Outdoor, Smart WiFi RGBW Color Changing Landscape Lights+Warm White 2700K, 40W App Control Christmas Spotlight Works with Alexa, IP66 Waterproof Uplights, Plug & Play (6 Pack)
They have a part number of UT88865-RGBW-US-1. Fundamentally they are a string of 6 24v WS2814A RGBW flood lights with the first flood as the controller with a Tuya CBU module for wifi control.
Note: This is Part 2 on Platform Engineering theory. Read Part 1 if you are more interested in the theory behind these recommendations.
Applying Theory As a recap from Part 1, the Fundamental Theory of (internal) Platforms is:
One should be build an internal platform to solve real business needs, starting with the following properties:
As high-level of an abstraction as possible, evolving to later provide lower-levels as well As opinionated as possible to start, evolving to more flexibility with other offerings As little self-service as possible, evolving to more self-service As multi-tenant as possible, evolving to (more expensive) isolated environments as the business requires it So sure, we have some general guidelines on how to build them, and some of the “why” from part 1.
Note: This is Part 1 on Platform Engineering theory. Skip to Part 2 if you are more interested in the practical aspects.
Platform Engineering is the new hotness for 2022. I’ve been working with Aaron Blohowiak (Netflix) and Scott Triglia (Stripe) to think about platforms generally, trying to come up with a model to understand how their lifecycle, and what makes them good. We’ve tried to use our past industry experience (good and bad), combined with external examples of platforms, to come up with some general rules about how they evolve over time.
This is a survey of the current state of YAML formatters. For this blog post, I’m comparing tools that take YAML files on disk and rewrite them to some standard. This is beyond the scope of a normal YAML linter.
If you ask me, all file formats deserve a fmt tool. YAML is not exception, especially as it is not the best. In fact there is even StrictYAML with features removed.
In California we have wildfire season in the summer. Sometimes the air can be bad enough that it is unhealthy to breath for an extended period of time. This problem of course is not specific to California.
One of my favorite tools for visualizing air quality is Purple Air:
Using crowd-sourced sensors, you can get hyper-local readings of your surrounding air quality. Try finding the closest sensor available to you on the map.