LaurieWired
@lauriewired
researcher @google; serial complexity unpacker ex @ msft & aerospace
What’s the smallest amount of useful work you can get done? For CPU’s it’s kinda complicated. Call it the “minimum profitable scheduling quantum”. Say you hiccup for ~1 microsecond. Maybe a memory stall or something. It’s an eternity (~5,000 cycles), but it’s also kinda…not?
Excited to be giving a keynote at CppCon 2026 this September, go check it out!
Wild, but expected. AUR (Arch Linux User Repository) pushes completely disabled atm due to influx of malware. I predicted widespread temporary shutdowns of major package repositories earlier this year. looks like it's happening!
This is gonna make Rust programmers angry. Reflection is one of the most powerful concepts in Computer Science. Unfortunately, not every programming language is blessed enough to have it.
I think I’d pick the 1970s. Object orientation was fringe but right on the cusp of getting really cool. Also of course, Unix, microprocessors, and databases had a lot of activity! Anyone with a solid education from that era would pick up modern CS concepts easily…just cram a few papers.
Imagine getting a Computer Science degree, but you are otherwise restricted to the works published across a 10-year timespan. What decade would you choose? The 1960s? The 1990s? What would give you the most durable understanding?
If you’ve seen my videos, you know I have a ton of old iMac G3’s in my set, which I’m sure are extremely vulnerable. Maybe I’ll stick a pi inbetween and create a “virtual ssh client” that interacts with the machine indirectly, and see if I can block a well known vuln.
To *write* to the vulnerable box, a “protocol break” is required. The data model has to be converted. In other words, you have a middleman server with a drastically different OS, communication protocol, auth, etc. Conceptually, it’s known as a virtual patch.
How do you protect an immensely vulnerable system against a stronger, even God-like adversary? Well, you use a Shadow Server of course. Power plants have lots of interesting ideas. The NIST published a “Situational Awareness For Electric Utilities”.
Of course, IBM quickly patched it…the release notes + documentation changes give some hints about how it worked. I’m sure you’d get in *mega* legal troubles if IBM noticed you were running workloads past licensed capacity.
Physical Hardware is often (artificially) softlocked by firmware. One of the biggest “unlock” hacks in history happened on IBM’s POWER8. IBM Servers are kinda weird. They often ship with 40+ processor cores installed, but you only get to use whatever was licensed.
Replacing a dead, sealed battery was difficult, but from what I can tell they managed to execute+write new programs to the device running on the original JVM! I’m really, really tempted to get some JavaRings now just to see if I could do *any* p2p stuff…
In terms of “gimmicky programming conference stuff”, the Java Ring might be the coolest. You’d get your ring, write down your coffee preferences, and then use it to authenticate for free “Java” at JavaOne 1998.
Linn (the audio group) needed to develop their own design, which became known as the Rekursiv. Honestly, if you can get past the insanity it’s actually quite admirable. The whitepaper is clearly written by some (very) stubborn engineers.
A Scottish audio company, famous for their turntables, once invented a CPU architecture. Their internal software kind of sucked. Somehow along the way, the company became convinced that the problem was that all Von Neumann-style computers were WRONG.
I would not be surprised in the slightest if SSD TBW ratings 10x soon. Combine pulse control + dynamic voltages per block + clever software page organization and you’re going to get close. I haven’t seen anyone combine all the techniques yet! Here’s the paper: www.mdpi.com/2079-9292/14...
The REO research is a bit more clever. Using a basic predictive model, they a shallow erase by using smaller increments in the final pulse. REO (the paper) Erase: 3.5ms pulse -> check, too many cells fail (but we’re close!) -> *1.5ms* small pulse -> check
See, erasing on an SSD is kind of a multi-step process. As the cells age, the block will need multiple pulse “rounds” to erase. It usually looks like this: Normal Erase: 3.5ms pulse -> check, too many cells fail -> 3.5ms pulse -> check
Erasing (not writing!) is the main thing that kills SSDs. With the industry pushing towards HBF as a DRAM / HBM alternative, endurance is the name of the game. There’s two knobs you can adjust for NAND flash that make a huge difference:
The first state-controlled, distributed computing project, was the British’s Naval Almanac. Intended to advance the greater good of humanity, pre-computed mathematical tables for naval navigation. 35 human “computers” did the calculations.
Not SOTA by any means, but should be easy to replicate! of course, this (Jul 8th) whitepaper is in samsung's best interest, fig 10 is a bit...misleading (yes, 700gb of cache can't fit in 512gb DRAM, of course having an additional CXL mem pool helps!)
How interesting. Samsung dropped a paper a few days ago with little fanfare: KV-cache offload over a CXL memory pool. Really scrappy setup too. Early-gen CXL stack (2.0), old switches, yet simple interleaving of the KV Cache across CXL modules kept the GPUs as well fed as real DRAM!
Technically it hides a lot of the underlying system…you don’t even get to choose if an object lives on RAM or disk! But, interesting to think how much safer software would be. Kind of reminds me of Symbolics, like an alternate reality LISP machine where everything is an object.
I wonder what the world would look like if IBM won instead of UNIX. IBM’s i operating system is gorgeous (and still updated)! Everything is an object, no binaries are native (translated bytecode, almost JVM-y), and pointers all have an absurd amount of (useful) metadata.
Real Time Audio on general purpose operating systems is ridiculously hard to code. Unfortunately (and unlike the visual system!) humans are *really* good at noticing audio hitches. In video, you might have ~16ms to process a video frame, and if you miss the deadline, eh...
It’s so funny that computers used to be stinky when they failed. In the 60’s IBM used selenium rectifiers. If you look at a periodic table, group 16, you’ll encounter what’s referred to as the “stinkogens”. Starting with sulphur, as you move down the column things get exponentially smellier.
@TheCherno has such an excellent programming channel. Been a fan for a while now, figure it deserves a shoutout if you haven't seen it before!
i’m pretty convinced that LISP is the highest-IQ programming language absolute S-tier reflection. if you use a derivative like 3-LISP I’d say you can even hit SS+ tier with it’s meta-circular interpreters.