Redowan Delowar
@rednafi
Roving amateur fumbling through software, systems, & sundry. Engineering @Doordash/Wolt Writing rednafi.com Currently in Berlin, Germany
Wrote a bit about eschewing 3p mocking libs & making a mess out of your Go tests. Reddit picked it up and so far the commets have been civil 😅 rednafi.com/go/mocking-l...
I think about this tweet sometimes. Especially with our company-wide mandate to use Go and the constant "why not x" pushback.
Similarly, I don't want LLMs to eat up the fun part of software work - the design. I want them to automate deployment, release management, & all the boring sysadmin stuff. I don't wanna fiddle w/ k8s, get lost in yaml config, or munge terraform DSL. Automate ops & leave the fun part to humans 🙏
Maybe we should just give up and pay for datadog. OTEL doesn’t work and the LGTM stack even w/ a large enough o11y team produces kludgy solutions. 4 pages went off today b/c the otel metrics lib allocated like crazy and freaked out Go GC. Never had this w/ DD. Having my r/wsb moment now.
The world would be a much better place if lib authors (myself included) inside large companies actually used their own lib APIs before implementing them. Some timeless advice on authoring reusable code. abhinavg.net/2022/12/06/d...
companies: add AI usage to candidate perf metrics candidates: crank out shit PRs, BS tests, and RFCs companies:
New favourite code font: Google Sans Code I generally don't like overly stylized fonts. Been using Jetbrains Mono since its inception. But I always felt like it's a bit too slim for my taste. But I also didn't want something as wide as Cascadia Code. This seems perfect. github.com/googlefonts/...
Traces, defined as DAGs of spans, and metrics, a collection of numbers that measure system behavior, are both somewhat vague as observability signal definitions. The clearest explanation I’ve found so far comes from a 2017 presentation by Cindy Sridharan.
Vibe in the Go channel at my workplace. Node and Python (to a lesser extent) broke a bunch of people and they migrated over to Go.
Hyperscalable DBs like Cassandra/Scylla have some really limiting constraints. For ex, in Cassandra, within the primary key section, customer_id & order_id form the partition key, and sku_id is the sorting key. These are immutable after table creation. Good luck if you ever need to.
Hey man, all of your posts appear twice. You might already be aware of this. Automation gone wrong?
How do you pronounce Ghostty? 1. Ghos-tty 2. Ghost-ty 3. Something else Weird name but great terminal. This is the first terminal emulator that was able to move me from the default MacOS/Ubuntu terminal. Enjoying it a lot. My config is tiny:
Had fun reading this, but I disagree with the unwarranted shade thrown at Redis. rednafi.com/feed/2025/#d...
Blogging is hard and takes time. But it gets easier once you pick up the pace. I took Simon Willison’s advice & pushed 39 pieces this year. Last year, it was 48 but I had a few longer ones this year that needed more time. The trick is to lower your standards and pushing out good enough work.
Unless I’m missing something, it does allow decorating otter fixtures.
When I first saw Pydantic Logfire by pydantic.bsky.social, my first thought was: this is nice, but I'm already knee-deep in the Datadog eco, and o11y tools are a pain to swap. So why? Oh this is why. Not only is the free tier great, but it also doesn’t prey on people forgetting to disable billing.
Listening to professor Kernighan is always a delight. I've picked up two books from this: - "The Signal and the Noise: Why So Many Predictions Fail—but Some Don't" by Nate Silver - "Darwin's Ghosts: The Secret History of Evolution" by Rebecca Stott rednafi.com/feed/2024/#b...