Knightmare: A DevOps Cautionary Tale (2014)
In the first 45-minutes the market was open the faulty software deployment sent millions of child orders into the market resulting in 4 million transactions against 154 stocks for more than 397 mil…
The latest blog posts to take off on Hacker News. 3,824 posts.
In the first 45-minutes the market was open the faulty software deployment sent millions of child orders into the market resulting in 4 million transactions against 154 stocks for more than 397 mil…
I was walking to a team meeting where I was going to announce that we would likely have to lay off nearly all of our employees because we unexpectedly had almost no money left, and that it was all my fault.
I really like this quote from Jeff Bezos: “Anybody who doesn’t change their mind a lot is dramatically underestimating the complexity of the world we live in.” Lately I have been thinking about wha…
Mathematical insights create a more intuitive UI for Bézier curves.
I frequently reference a process called Reinforcement Learning with Human Feedback (RLHF) when discussing LLMs, whether in the research news or tutorials.
A few months ago, I found myself wondering how a command like ping 1.1.1.1 works from within a private network. In most private networks, multiple hosts connect to the Internet through a router. For IPv4, the router performs network address translation (NAT) by rewriting the original host’s source address to the…
Static site generators are in fashion for good reasons. The resulting pages are easy to host, fast and extremely low on maintenance while being sufficient for many use cases. As I learned when setting up my blog , writing a simple script myself is faster and more satisfying than learning one of the other site builders…
As harvest season begins here in the Midwest, I once again celebrate by grinding Nebraska gravel at the Gravel Worlds Long Voyage bike race. As in previous years ( 2021 ) ( 2022 ), I spent more time writing code for a marginally-useful project than I did training. But hey, I finished!
Amiga C Tutorial
The Python standard library’s logging module is a go-to for adding observability to applications. Many tools also integrated with it or enhance its capabilities, such as structlog and Sentry.
I write compilers for fun. I can’t help it. Consequently, I also write a lot of parsers. In systems programming, it’s usually a good idea to try to share memory rather than reuse it, so as such my AST types tend to look like this.
Life’s inconveniences, when they happen to you and me, are just that. Inconveniences. When they happen to some people though they end up becoming multi-billion dollar businesses. This is the story of Japan’s canned coffee. One finds at least one vending machine in almost every street in
There is a common sentiment I’ve seen over and over in the Rust community that I think is ignorant at best and harmful at worst.
You’re overpaying for your porn (and journalism)
The housing market is even worse in Canada than it is here.
Welcome to Learning Zig, an introduction to the Zig programming language. This guide aims to make you comfortable with Zig. It assumes prior programming experience, though not in any particular language.
I’ve been programming in Clojure for a long time, but I haven’t been using transducers much. I learned to mechanically transform (into [] (map f coll)) to (into [] (map f) coll) for a slight performance gain, but not much beyond that. Recently, however, I’ve found myself refactoring transducers-based code at work…
This is the first in (maybe) a series of “Tales From Tech Support”, which are true stories from my point of view. I’ll probably only post these on a Friday. In the 1990s, I worked as a contractor for a large, well-established accounting firm. We’d often buy new equipment and unpack it at the helpdesk, throw away all…
I’ve been running a Kubernetes cluster on a mix of virtual and bare metal machines with Hetzner for about a year now, and while the setup has served me well, being a very exploratory exercise at the time it wasn’t very well documented.
C came into being in the years 1969-1973, in parallel with the early development of the Unix operating system; the most creative period occurred during 1972. Another spate of changes peaked between 1977 and 1979, when portability of the Unix system was being demonstrated. In the middle of this second period, the first…
This post previously appeared in EIX. In the early stages of a startup your hypotheses about all the parts of your business model are your profound beliefs. Think of profound beliefs as “strong opi…
This post assumes some basic C skills. Linux puts you in full control. This is not always seen from everyone’s perspective, but a power user loves to be in control. I’m going to show yo…
Yet another programming blog. Thoughts on software and related misadventures.
Not many people remember this 2005 documentary featured early interviews with Paul Graham, Aaron Swartz, Alexis Ohanian, and Steve Huffman.
“A purely disembodied human emotion is a nonentity.”
Elixir was built on Erlang. Erlang was built to provide "consistently low latency" and a few other audacious goals. Note, this is not a hard realtime constraint. It is soft, squishy and yet, important and real. It makes Erlang unusually suitable to systems where latency matters and where a near-realtime experience is…
Updated 2024-09-17 to reflect updated PgBouncer support for protocol-level prepared statements 🐘 To start, I want to say that I’m appreciative that PgBouncer exists and the work its open source maintainers put into it. I also love working with PostgreSQL, and I’m thankful for the incredible amount of work and…
In C++20, string and vector are marked constexpr, which means they’re somewhat usable in compile-time programming. For example, we can write: