Recent submissions

Comment · 8 days ago
Sure, Robert. KBI: keep believing it.

That essay believing in townsfolk was written while lynchings were still happening and schools were segregated and land deeds prohibited sale to blacks and Jews. Levittowns and the federal highway system were actively indulging and encouraging white flight. But, yeah, anyone will feed you.

Nowadays our children endure “active shooter” drills and sometimes die at the hands of active shooters. Parents are charged with neglect for letting children go to the store unaccompanied. Stand-your-ground laws defend shooting someone through a locked door, or in a parking lot. Vote canvassers have been shot at for turning onto the wrong driveway. Salt of the earth, those townsfolk.

The price of housing continues to rise mainly because those already there prevent building for those who would come. San Francisco is 1/2 the density of New York. It’s expensive because Palo Alto looks like Levittown and not, say, Queens. That was decided by those same sweet townsfolk.

Maybe Heinlein’s essay was inspirational in the McCarthy Era. In the present day, when Republicans root for deporting citizens elected to congress, it’s a transparent fantasy. Take every sentence as false, and it’s a useful guide to the world that we sadly actually live in.

Comment · 1 month ago
This. Any engineer or manager developing Notes at the time had to be aware of X.400 and X.500, and SMTP. They decided to ignore them. However cool and useful and clumsy Notes was, it was a proprietary walled garden. Lotus and the IBM hawked it, and surely profited. But for the customer it was an expense. Eventually Notes was overtaken by Metcalf’s Law, and the fact that cheaper always wins.

That and, you know, Microsoft.

Comment · 2 months ago
Every technical writing guide I’ve found is depressing or boring. This one is both.

I suppose we shouldn’t be surprised to see 8th-grade advice offered to adult professionals with a straight face. Nor finger-wagging about the passive. Honestly, you want the world to know “the president was elected by the voters” is improved by “the voters elected the president”?

Want to be an excellent technical writer? Start by reading everything Brian Kernighan has written. Emulate. Repeat until done. Expect it to take time. Definitely years.

Instead of worrying over Oxford commas, wonderful though they be, great technical writing starts with and keeps always the reader in mind. Not so different from all great writing, in fact. Drop the “X was designed to intended to” throat-clearing, and get to what the user can do with what X does. And thanks for taking the time.

Comment · 2 months ago
The next time, your libertarian friend mutters “Solyndra”, tell him at the most Solyndra cost the federal government 1/2 billion dollars, not the many billions Trump is spending to cancel wind projects.
Comment · 2 months ago
Apple is learning from Microsoft, sometimes as counterexample.

You won’t know Apple joy until you replace the one you have with another. If you’re backed up via Time Machine — because you are, right? — then you plug in your new machine, hit “restore” or whatever it’s called, and head off to sleep. In the morning all your data, applications, and settings will be there. Your new machine will be indistinguishable from the old but for the grime.

Comment · 3 months ago
Geez, what a lot of vague self-contradictory self-regarding opinionated advice.

Is terminal a world of “pure information’ or “a mess”? Both, it seems. Don’t dump “pages and pages of debug” text? Check. But do use boldface fonts “in a terminal independent way” and “try” to provide man pages. But because “some people” don’t know about them and “some platforms” don’t support them, provide help text by default.

Those “some” by the way are one: Windows. Do please enlighten us on the terminal-independent font control system that includes CMD.EXE.

How much is too much? Their showcase examples are more than 25 lines, more than the default size of a terminal window. The authors don’t give much weight to context, to the ability to look back on over the history of the interactive session. No, much better to splat the screen with 50 lines the user didn’t request, because helpful.

Oh, and don’t write a filter like cat(1). How the system is supposed to distinguish between reading from standard input and reading from standard input by mistake, they don’t say. Just quit and print a help message.

I have different advice: please don’t help. Please be quiet. Don’t suggest, don’t guess, dont offer, don’t assume. Just do. Do what the user said. If he wants something else, he’ll say so in time.

If you want —help to do something useful because you think your user is too dense to find the manual (condescension much?) then invoke it for him. Just maybe put a hint somewhere to press “q” to quit.

Virtually all the “help” I get on the command line is unasked-for and unwanted and unhelpful. If I fat-finger “ls”, I don’t need a suggestion to install lsof. The very last thing I want is 50 lines of noise obscuring what I was looking at before you so helpfully interrupted.

Comment · 4 months ago
Count me among those who think publishers should always know who they’re publishing. When law enforcement comes knocking, a warrant should be all they need. Meta can’t shrug and say they don’t know who Batman1964 is.

There’s nothing new in publishing anonymously, just ask George Elliot. What’s new is the notion that publishers have no liability. Social media companies do not claim to speak for themselves. They have no reporters, no sources to protect. They’re one giant “letters to the editor” section. They should know for whom they speak.

Whether or not a writer commits libel is for the courts to decide. Neither the writer nor publisher has the right to avoid responsibility by camouflage.

Comment · 4 months ago
Hey, the economy is great and gas is cheap. All we had to put up with is mean tweets.

Whenever anyone complains about Trump, remind them he’s not the cause but the product. Seventy million voted for him, and Republicans in congress let him do illegally what they cannot accomplish legislatively. And all the while they’re busy selling the country for parts, whether through tax policy, or neutering the CAFE standards, or handing copyright to Disney.

Comment · 5 months ago
Exactly. Anthropic has been losing three-comma money until recently. In Q2 2026 it earned a profit for the first time, about $500 million. If we imagine they will earn $2 billion in 2026, that’s a 0.2% return on the $1 trillion investment.

To believe the valuation, Anthropic earnings need to grow 100x. For a more likely outcome, I can recommend a bridge in Brooklyn.

Comment · 6 months ago
Nonsense. See Codd’s first paper.

1NF removes repeating groups, putting for example data for each month in its own row, not an array of 12 months in 1 row.

Storage efficiency was never the point. IMS had that locked down. Succinctness of expression and accuracy of results was the point. And is: normalization prevents anomalous results.

Comment · 7 months ago
> SQL Server has to convert every single value in the column to nvarchar before it can compare.

This of course is not true. It is a defect in Microsoft’s query planner. And the proof lies in the remedy.

The recommended solution is to convert the search argument type to match that of the index. The user is forced to discover the problem and adjust manually. SQL Server could just as well have done that automatically.

No information is lost converting nvarchar to varchar if the index is varchar. If the search argument is ‘’, no conversion from varchar will match it (unless the index data is UTF8, which the server should know).

This is a longstanding bug in SQLserver, and not the only one. Instead of patting ourselves on the back for avoiding what SQL Server “has to do”, we should be insisting it not do it. Anymore.

Comment · 7 months ago
I’m not sure why the top-rated reply begins by presuming anything about the problem domain. Many domains have a specified language and implied if not explicit collation. Rejecting characters outside that domain is part of the job. There are no emojis listed on the NASDAQ.
Comment · 8 months ago
It’s a terribly useful idea. FTFY.

The program you used to leave your comment, and the libraries it used, were loaded into memory via mmap(2) prior to execution. To use protobuf or whatever, you use mmap.

The only reason mmap isn’t more generally useful is the dearth of general-use binary on-disk formats such as ELF. We could build more memory-mapped applications if we had better library support for them. But we don’t, which I suppose was the point of TFA.

Comment · 8 months ago
Not sure how viable Mezzano is. The most recent bug report was two years ago. The “beginnings of a manual” was last updated 7 years ago.

A better example might be Guix, depending how “operating system” is defined.

Comment · 9 months ago
If only there was one good library. libxml2 is the leading one, and it has been beleaguered by problems internal and external. It has had ABI instability and been besieged by CVE reports.

I agree it shouldn’t be hard. On the evidence, though, it is. I suspect the root problem is lack of tools. Lex and yacc tools for Unicode are relatively scarce. At least that’s what’s set me back from rolling my own.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton