I’ve been getting a lot of suggestions about the brand new UPSide project recently. One of them nudged me into bringing a piece of implicit knowledge to the surface of my mind. Having made it conscious, I can now share it. I’ve said before that, on the unusual occasions I get to do it, I… Continue reading System engineering for dummies
Announcing: The UPSide project
A week ago I argued that UPSes suck and need to be disrupted. The response to that post was astonishing. Apparently I tapped into a deep vein of private discontents – people who had been frustrated and pissed off with UPS gear for years or decades but never quite realized it wasn’t only their problem.… Continue reading Announcing: The UPSide project
“The Lost Art of C Structure Packing” now covers Go and Rust
I have issued a new version, 1.19, of The Lost Art of C Structure Packing. The document now covers Go and Rust as well as C, reflecting their increasing prominence as systems-programming languages competing with C and being deployed in contexts where structure-size optimizations can be of some importance. TL;DR: C alignment and packing rules… Continue reading “The Lost Art of C Structure Packing” now covers Go and Rust
UPSes suck and need to be disrupted
Warning: this is a rant. I use a UPS (Uninterruptible Power Supply) to protect the Great Beast of Malvern from power outages and lightning strikes. Every once in a while I have to buy a replacement UPS and am reminded of how horribly this entire product category sucks. Consumer-grade UPSes suck, SOHO UPSs suck, and… Continue reading UPSes suck and need to be disrupted
How “open source” was coined
Yesterday was the 20th anniversary of the promulgation of the term “open source”. Three days before that, Christine Peterson published How I coined the term ‘open source’ which apparently she hd written on 2006 but been sitting on since. This is my addition to the history; I tried to leave an earlier version as a… Continue reading How “open source” was coined
The Roche motel
One of the staples of SF art is images of alien worlds with satellites or planetary twins hanging low and huge in the daylight sky. This blog post brings he trope home by simulating what the Earth’s Moon would look like if it orbited the Earth at the distance of the International Space Station. The… Continue reading The Roche motel
Rethinking housecat ethology
There’s a common folk model of how housecats relate to humans that says their relationships with us recruit instincts originally for maternal bonding – that is, your cat relates to you as though you’re its mother or (sometimes) its kitten that needs protecting. I don’t think this account is entirely wrong; it is a fact… Continue reading Rethinking housecat ethology
Three times is friendly action
Today, for the third time in the last year, I got email from a new SF author that went more or less like: “Hi, I’d like to send you a copy of my first novel because [thing you wrote] really inspired me.” All the novels so far are libertarian SF with rivets on – the… Continue reading Three times is friendly action
Sorry, Ansari: a praxeologist looks at the latest scandalette
This is an expanded version of a comment I left on Megan McArdle’s post Listen to the ‘Bad Feminists’ in which she muses on the “Grace”-vs.-Aziz-Ansari scandalette and wonders why younger women report feeling so powerless and used. It’s not complicated, Megan. You actually got most of it already, but I don’t think you quite… Continue reading Sorry, Ansari: a praxeologist looks at the latest scandalette
The blues ate rock and roll!
I’ve been diving into the history of rock music recently because, quite by chance a few weeks ago, I glimpsed an answer to a couple of odd little questions that had been occasionally been bothering me for decades. The most obtrusive of these questions is: Why does nothing in today’s rock music sound like the… Continue reading The blues ate rock and roll!
C, Python, Go, and the Generalized Greenspun Law
In recent discussion on this blog of the GCC repository transition and reposurgeon, I observed “If I’d been restricted to C, forget it – reposurgeon wouldn’t have happened at all” I should be more specific about this, since I think the underlying problem is general to a great deal more that the implementation of reposurgeon.… Continue reading C, Python, Go, and the Generalized Greenspun Law
You’re gonna need a bigger Beast
I’m taking a management-approved break from NTPsec to do a repository conversion that dwarfs any I’ve ever seen before. Yep, more history than Emacs – much much more. More backtrail than entire BSD distributions, in fact about an order of magnitude larger than any repo I’ve previously encountered. Over 255000 commits dating back to 1989… Continue reading You’re gonna need a bigger Beast
Decentralized threats as the mother of liberty
Dave Kopel gives us a fascinating account of the divergence between American and British gun culture in The American Indian foundation of American gun culture. I learned some things from this article, which is not a trivial observation because I’ve studied the same process from some different angles. While Kopel’s article is excellent of its… Continue reading Decentralized threats as the mother of liberty
As the pervnado turns
I’m a libertarian who tried to stop Donald Trump with my vote in the PA primaries – even changed party registration to do it. But Trump’s opponents may make me unto a Trump supporter yet. From Harvey Weinstein’s casting couch through John Conyers being the guy every female reporter in DC knew not to get… Continue reading As the pervnado turns
Proposal – let’s backport Go := to C
The Go language was designed with the intention of replacing C and C++ over much of their ranges. While the large additions to Go – notably automatic memory allocation with garbage collection – attract attention, there is one small addition that does an impressive job of helping code be more concise while not being tied… Continue reading Proposal – let’s backport Go := to C
Language engineering for great justice
Whole-systems engineering, when you get good at it, goes beyond being entirely or even mostly about technical optimizations. Every artifact we make is situated in a context of human action that widens out to the economics of its use, the sociology of its users, and the entirety of what Austrian economists call “praxeology”, the science… Continue reading Language engineering for great justice
The big break in computer languages
My last post (The long goodbye to C) elicited a comment from a C++ expert I was friends with long ago, recommending C++ as the language to replace C. Which ain’t gonna happen; if that were a viable future, Go and Rust would never have been conceived. But my readers deserve more than a bald… Continue reading The big break in computer languages
The long goodbye to C
I was thinking a couple of days ago about the new wave of systems languages now challenging C for its place at the top of the systems-programming heap – Go and Rust, in particular. I reached a startling realization – I have 35 years of experience in C. I write C code pretty much every… Continue reading The long goodbye to C
Against modesty, and for the Fischer set
Over at Slate Star Codex, I learned that Eliezer Yudkowsky is writing a book on, as Scott puts it, “low-hanging fruit vs. the argument from humility”. He’s examining the question of when we are, or can be, justified in believing we have spotted something important that the experts have missed. I read Eliezer’s first chapter,… Continue reading Against modesty, and for the Fischer set
The heaviness of fame and fans
A lot of people, especially younger people who haven’t quite figured out what they’re good at yet, want to be famous and have lots of admiring fans. Me, I’ve been famous, and I still have a lot of admiring fans. I’m here today to talk about why a thoughtful person might want to avoid this,… Continue reading The heaviness of fame and fans