news
Programming Leftovers
-
Sharon Rosner ☛ Threads vs Fibers - Can't We Be Friends? - Noteflakes
Well, starting this project I did have some vague idea of what will happen if we combined Ruby fibers with io_uring. At the same time, I wanted to be able to show some concrete results (as in, benchmarks), and in that sense I don’t think anyone could claim they could know the expected result in advance.
-
[Old] Abseil ☛ Performance Hints
Knuth is often quoted out of context as saying premature optimization is the root of all evil. The full quote reads: “We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%.” This document is about that critical 3%, and a more compelling quote, again from Knuth, reads: [...]
-
Modestas Valauskas ☛ Understanding Dart Class Modifiers by Using Lattices | modulovalue
Dart 3.0 introduced class modifiers, and at first glance, the combinations can feel overwhelming. base, final, interface, mixin. How do they all fit together? What combinations are valid? Which ones are redundant?
It turns out there's an elegant way to understand the entire system: lattice theory.
-
[Old] Saket Narayan ☛ The pursuit of fast feedback loops in Android development
Over time, I’ve realized that hot-reloadable code isn’t the ultimate goal. What truly matters are fast feedback loops for validating our changes. Hot reload is just one way to achieve this, but there are plenty of other effective approaches to explore in the meantime.
-
Obelisk ☛ When Scope Lies: The Wildcard Pattern Drop Footgun in Rust
One of the big strengths of Rust is its use of automatic memory management. When a value gets out of scope, the compiler automatically calls its destructor and frees the memory. During my work on graceful shutdown I have stumbled on a less known interaction between scopes and the _ wildcard pattern that can lead to surprising order of destructors.
-
Luke Plant ☛ Why I’m not letting the juniors use GenAI for coding
In my current project, I am training some junior developers — some of them pretty much brand new developers — and one of the first rules I gave them was “ensure that Copilot (or any other Generative AI assistant that will write code for you in your editor) is turned off”. This post explains why. The long and short of it is this: it’s because I want the junior developers to become senior developers, and I want them to enjoy programming as well.
Other people might also be interested in my reasons, so I’m writing this as a blog post.
-
Perl / Raku
-
Perl ☛ Perl Advent Calendar 2025 - Advent of the Underbar
The podcast format captures the conversations, and makes it easy to enjoy those conversations while doing something else (I do most of my own podcast listening while walking outside or cooking). But if this material is meant to be used as "primary source" for some future work about the history of Perl and its community, text is going to be the best format long term.
-
Perl ☛ Perl Advent Calendar 2025 - How SUSE is Using Perl
Last year we started a new Perl Advent Calendar tradition, where we have a remote presentation as part of the calendar. That presentation was Half My Life With Perl by Randal Schwartz. This year we we had the pleasure of hearing from Michael Schröder, Tina Müller and Oliver Kurz talking about how Perl is in use at SUSE.
-
-
Java/Golang
-
Anton Zhiyanov ☛ Go feature: Modernized go fix
The go fix is re-implemented using the Go analysis framework — the same one go vet uses.
While go fix and go vet now use the same infrastructure, they have different purposes and use different sets of analyzers: [...]
-