Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 3,497 posts.
The unusual way I'm funding my open source work
From the Linux kernel to Firefox and Wordpress, Open Source is changing the world for the better. But how to achieve financial sustainability when you produce something that can legally be copied, by design, at zero cost? Revenue models for Open Source A lot has been written about achieving profitability
Walking the World: Bucharest
A city of the grandiose, filled with the humble
Lessons learned after 5 years of climate tech entrepreneurship
This article attempts to reflect back on the most meaningful lessons learned by building electricityMap, Bloom and North at Tomorrow.
How Not to Redact a Warhead
How the wrong settings on a photocopier has let us have a glimpse at a forbidden image of a modern thermonuclear warhead.
Bringing Emulation into the 21st Century
Implementing an 8080 emulator in a microservice architecture on top of kubernetes
The longest train journey in the world in 2021
IMPORTANT : this blog post is correct as of 15 December 2021, and all the text below is unchanged since then. At that time two borders - Russia to China, and China to Laos - could not be crossed due to COVID. The outbreak of war in Ukraine has also meant that trains
An Introduction to Hierarchical Modeling
A visual explanation of multi-level modeling
Coaxial Goes to War
Last time we perambulated on telephones, we discussed open-wire long-distance telephone carriers and touched on carriers intended for cables. Recall that, in the telephone industry, cable refers to an assembly of multiple copper twisted pairs (often hundreds) in a single jacket. There is a surprising amount of…
51 Star Flag (2011)
Math, Science and Technology tidbits written for the average person.
Modern software controls dependencies because it helps software authors
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
Knuth on Dijkstra (2014)
An excerpt from my book Coders at Work that I frequently find myself wanting to cite mostly because I get a kick out of someone having standing to call BS on Dijkstra:
Explanations for the Havana Syndrome
Science News, Physics, Science, Philosophy, Philosophy of Science
Mini-ITX Seaberry Adds 11 PCIe Slots to a Raspberry Pi
Since the Compute Module 4 came along last year, there have been a few projects that use it that make me do a double-take: They did what with a Pi? Alftel's Seaberry is a carrier board for the CM4 in the Mini ITX form factor that adds on eleven PCI Express slots: 1 x16 slot (with x1 lane) in the standard ITX location…
You can't have too many angels
Conventional wisdom is: Don’t raise money from a ton of angel investors because it’ll clutter the cap table and be a pain in the butt. I strongly disagree.
Why Specifications Don't Compose
Recently my friend Lars Hupel and I had a discussion on why formal methods don’t compose well. You can read the conversation here. We focused mostly on composing formally-verified code. I want to talk a little more about the difficulties in composing specifications. This is half because it’s difficult for interesting…
Isolating Xwayland in a VM
In my last post, Qubes-lite with KVM and Wayland, I described setting up a Qubes-inspired Linux system that runs applications in virtual machines. A …
Maybe the spaghetti code conjecture is false
The Spaghetti Code Conjecture says that Busy Beaver programs ought to be, in some sense, as complicated as possible. Scott Aaronson puts it this way:
Who's at the Helm?
Or, how to deploy 25+ CVEs to prod in one command!
Eyeway's Retina-Tracking Foveated Display
Introduction This article is part 3 on EyeWay Vision’s (EyeWay) foveated laser scanning display and follows up on Part 1 that discussed the technology, and Part 2 that showed through-the-opti…
Data notation in Clojure
Homoiconicity (code as a data structure) is one of the pillars of the Clojure language. It gives the extensibility and flexibility to the language.
Reading NFS at 25GB/s using FIO and libnfs
My current employer does a lot of really cool systems work that’s covered by NDAs. I recently did some work to integrate a cool open source tool into our workflow. Felt it deserved a blog post. NFS Testing Requires Parallelism. I work for Pure Storage. One of the products we make is a scale-out NFS1 (and…
Kill the Alarm Clock (2017)
Few upwardly mobile people in the modern rat-race society can live without an alarm clock. With a shot of strong coffee and round-the-clock stress, most people learn to live and survive with an alarm clock. Half of the population wakes up with an alarm, 9% are woken by a partner, 4% by pets, 3% by children, etc. That…
Dithered images and websites (2020)
That's a lot of data. More bytes on average than html, css, fonts, and javascript combined.
Git Submodules: Adding, Using, Removing, Updating (2009)
I've spent a little more than a month working with Git now. I can honestly say that while there are many things that I like about Git, there are just as many things that I personally find to be a pain in the butt. Submodules specifically have managed to be a thorn in my side…