Founding Engineer at Anchorage Digital
I love feedback! Email me your ideas.
Founding Engineer at Anchorage Digital
I love feedback! Email me your ideas.
I recently taught myself HTMX, and I’m excited to see its growth because it revives an old idea that the world has forgotten: hypermedia.. Hypermedia was behind the original growth of the internet and, through HTMX it might be able to bring a new level of efficiency and productivity to a world tired of JavaScript single page applications and 10MB web pages. It’s promoted as a way to make back-end developers more productive by learning a little bit of front-end....
I just published a blog post on the Anchorage Digital Engineering blog on the somewhat controversial topic of using code vs infrastructure to solve problems. You can learn where I stand by reading the original article here!
While attempting to extend the slog package in many different ways, I kept coming back to this idea that, at some point, I have to write a slog.Handler. I don’t have a need for high performance, and I just need an easy way to extend my logger to do additional things at the same time as logging. That’s why I created slogevent. This Go package makes extending slog as simple as writing a function that handles log entries....
In my previous blog post on the Anchorage Digital blog, I wrote about logging features I’d love to see built around the new slog package coming in Go 1.21. I heard from several people that they want to learn more about how exactly to do this. To answer these questions, I built out 6 examples of how to extend slog, showing 4 different strategies. I used some of the use-cases from the last blog post....
Go 1.21 will be released with many improvements that I appreciate, but the one that stands out to me the most is the addition of the log/slog package. It serves as a great foundation for a logging system, but there’s a lot more to logging than what it offers out of the box. I published a blog post on the Anchorage Digital Blog that points out some logging features that can and should be added around this package....
I have been using CUE for over 2 years and I’ve found it to be incredibly good at defining policies. CUE is an elegant configuration language because of the guarantees that it can express. It has many additional uses such as applying policies on existing configurations, whether they are written in CUE or in another format like JSON or YAML. Let’s take a look at some easy and practical policy enforcement applications for CUE for Kubernetes, OpenAPI and Terraform....