News for hackers. Stuff that matters.

hinkley

However every time one of your tires goes bad you have to replace all four.
Wet all the time isn’t a serious loss of traction. Wet after a dry spell is, and everyone there forgets it every time. You will have delays on the highways due to wrecks.

Nobody has the slightest clue how to deal with ice.

Re:Moving our warehouse off DuckDB on Monday November 02, 2026 @07:25PM (#50346294)
Once the avalanche starts it is too late for the pebbles to vote.

Yes, when decision can be delayed, that is powerful. But we are discussing decisions that have already been made which need to be unmade or made again. Where it breaks is when the tech debt is growing faster than our expertise. The usual stall is not to allow time to apply resources to the problem but to continue to not apply resources to the problem. So our knowledge base is growing at a negligible rate. Particularly if you’re a first mover. Nobody will solve your problems better than you have until it’s far too late to migrate to their solutions.

Re:Anthropic's growth just flattened (really) on Monday November 02, 2026 @07:14PM (#50346205)
You could in theory be responsible for the destruction of the entire solar system in order to pay you. Sit on your throne atop a mountain of skulls and weep.
Re:Anthropic's growth just flattened (really) on Monday November 02, 2026 @07:13PM (#50346195)
With AI who can tell.
Re:Anthropic's growth just flattened (really) on Monday November 02, 2026 @07:11PM (#50346176)
Question one is how do their investors get paid back. I found Series E through Series H totaling $111.5 billion in investments. Since series E was $3.5 I’m assuming all the previous rounds added up to less than that, so let’s say 115 billion at the outside.

That debt will transfer to public shareholders at the IPO but also will double or triple in the process, as the investors expect to be paid very, very well. So the current shareholders are looking to extract something over $400 billion from the IPO.

With the current revenue they might pull off that P/E. But they’ll still be extracting some of that value from the customer base, because shareholders will demand it.

Re:Anthropic's growth just flattened (really) on Monday November 02, 2026 @06:59PM (#50346069)
[delayed]
Re:Anthropic's growth just flattened (really) on Monday November 02, 2026 @06:56PM (#50346043)
Revenue is an integral. They sum up the rate of cash in versus cash out to get revenue. Thats dollars/hour over 91 days.
Re:Anthropic's growth just flattened (really) on Monday November 02, 2026 @06:53PM (#50346005)
[delayed]
Re:Anthropic's growth just flattened (really) on Monday November 02, 2026 @06:52PM (#50345988)
Network effects have subsequently been; shown to be logarithmic. You’re not getting 100x the benefit from 10x the users. You’re lucky to be getting 12x the benefit and you also have logarithmic increases in costs because there’s no such thing as economies of scale in software. You pay for every order of magnitude in hardware or software development costs.
Re:Anthropic's growth just flattened (really) on Monday November 02, 2026 @06:50PM (#50345950)
AI has historically had a habit of disappearing for ten years and coming back once memories fade and the new story sounds enough different from the old one.

I don’t think this era is going to end with us all unemployed, but I do plan to be retired before the next cycle.

Re:Anthropic's growth just flattened (really) on Monday November 02, 2026 @06:48PM (#50345931)
What did they think was going to happen? Lots of people predicted exactly this progression of events.
Re:Anthropic's growth just flattened (really) on Monday November 02, 2026 @06:47PM (#50345920)
Don’t forget requirements gathering and design. There’s only so fast the business side can feed requests into us.
Right? That was the question in the piece I saw. Therapeutic saunas, question mark?

Has me wondering about Alzheimer’s prevalence in Nordic countries and whether we need to be doing genetic screening for differential analysis.

Knee cartilage goes fast. That’s why we have water aerobics.
There are some signs that heat stress hormones may protect against Alzheimer’s.

They studied a family in which early onset Alzheimer’s was strongly prevalent. In the subject’s family tree, 32 cases, but he was older than his deceased relatives at the time they developed symptoms, despite carrying the markers. The only thing they could track down was that he had an elevated level of heat stress proteins in his blood and brain, and they seemed to be slowing down plaque buildup. More study needed.

A lot of space research has also worked for geriatric medicine. One I recall was putting confined sheep on a vibrating platform and showing several percent increase in bone density rather than loss. Shake a sheep for science!
Re:Moving our warehouse off DuckDB on Monday November 02, 2026 @01:48PM (#50341619)
I worked at a place with a couple of overly optimistic principals who were so happy about their computationally convoluted system responding to queries in 600 ms, but it practically meant we needed almost half a CPU per request, and then pre-autoscaling, a strange requirement to be able to failover from taking a region offline so we ran each at around 60% utilization, putting us at about 1 CPU per req/s. Which is just fucking embarrassing.

The first big system I worked on is the one where I learned not to generate expensive responses from a read mostly system, instead you should make writes expensive so reads are cheap. That project had an almost equally convoluted responses, and yet we were doing 30 req/s per instance on, IIRC, 4 core boxes. Adjusted for hot spare capacity, that ancient system was servicing 4x as many requests per core, 8x as configured.

A big part of the problem, besides selling a “premium” service to customers, was drinking the flavor of Knuth’s “premature optimization” misquoted koolaid that convinces people that all substantial speed improvements come from major architectural shifts. Which is how in the time I was on that team of 6-9 people, I delivered over half of the response time and cluster size improvements. If you count the work done to support upgrading the runtime, which brought perf improvements of its own, then more like 2/3.

Sounds a bit like this team might have the same disease.

The problem with internal service teams, of which this seems to be one, is that dealing with noisy neighbors is always a bigger problem than anyone is willing to tackle because it involves confrontation. Team X gets punished every time Team Y introduces a new feature that leans on the shared resource harder. It’s a multi tenant system without the fairness guarantees that we usually build into proper multi tenant systems.

Sometimes the easiest way to solve this is sharding. You end up deploying the same service many times and routing different classes of requests to different machines so if Team Y keeps trying to wreck the Commons they slow themselves down faster than they slow everyone else down. Those sped up consequences create a feedback loop that almost works instead of an amorphous one with consequences so far removed from actions as to become academic.

On that second team I mentioned we had an unfortunate situation of introducing things that took 100 ms off of response time and then three months later we were right back where we had been due to new features and creeping complexity of user content. It was demotivating for at least half of the team. My biggest contributions lowered the slope of that line, which allowed us to finally carry improvements over from year to year instead of being on the Red Queen problem.

Re:Moving our warehouse off DuckDB on Monday November 02, 2026 @01:13PM (#50341033)
PostHog has listed a lot of job openings in the last couple of years. I figured growth but maybe it’s turnover.
Re:Moving our warehouse off DuckDB on Monday November 02, 2026 @01:11PM (#50341003)
Things like this are a part of why I push back on people telling me we can do important things later. I don’t want to swap the engine out of a machine that’s moving that fast. There’s no time to learn about how it behaves with real versus synthetic traffic and what the failure modes are when you’re doing many thousands of transactions per second.

Why wouldn’t you want to sort stuff like that out when the problem is still relatively small?

The only other reasonable option is to wait until the problem gets so big that it splits into several domains. And then you can move one domain over, see how that goes, and move more over if it goes well.

If you can’t know for certain how the system will behave under organic load that may mean migrating traffic onto the new system and then back to the old one several times, which means you need migrations in both directions and each transition is an opportunity for human error to destroy data or take the service offline.

Re:It's the Memory Latency, Stupid on Monday November 02, 2026 @12:44PM (#50340567)
Again, you’re insisting that rate is only ever a matter of quantity per unit time, when most user facing work is measured in time to complete a single task, or batch. There are more users than developers by a vast margin, otherwise we could not sustain our high salaries.

Additionally, in cloud computing we do not give a shit about tasks per second, but cost per day, which is how many CPUs we need for a set of tasks, which from Little’s Law is derived from seconds per task, not tasks per second.

And yet I’m the one who is wrong, apparently.

Re:It's the Memory Latency, Stupid on Sunday November 01, 2026 @03:38PM (#50329591)
"Premature optimization" became a battle cry of the Don't Make Me Think crowd.

As I think back to the people who fought me, the same group didn't like when you refactored code either because now they didn't have the code memorized. But I've found in the intervening years that making code discoverable is much more useful than trying to keep it static because coworkers are always going to need to change shit anyway to implement new features even if that feature is neither Correctness nor Performance. What you don't want is for people to hide logic from you. So if you move logic to a function call, that's fine, because it's still in the same neighborhood. But if you hoist it all the way up into a much earlier part of the call tree, you need to announce that in meetings and maybe in the documentation so people know what's what.

Re:It's the Memory Latency, Stupid on Sunday November 01, 2026 @03:12PM (#50329268)
Performance is for the user. If the user has told you that we have an SLA that requires this operation to complete in 10s, but it currently runs in 30 seconds, and your first set of changes gets it to 15s, what improvement are you going to report to the user?

You're going to report in the time domain. In which case 1/2 off the time is 50%.

One of the benchmarking tools I used to use reported 50k ops/sec -> 200k ops/sec as 75% faster. Which definitely IS wrong but I know how he got there. You see you don't count operations per second, you run the loop ?? thousand times and see how many milliseconds it takes. Then you convert that to ops/sec. If you compare before and after while still in the time domain, that's 75%. But if you report throughput right next to a ratio in the time domain you're gonna have a bad time.

When that tool stopped being maintained, the person who replaced it wisely switched to reporting in multipliers. 4x faster is hard to misinterpret. Though "1.1x slower" is still open to misinterpretation.

Re:It's the Memory Latency, Stupid on Sunday November 01, 2026 @02:54PM (#50329111)
When you're asked to meet a time limit, that's time domain, not rate, and so improvements will be reported in the time domain.

Time domain also works for Little's Law, which is the more prevalent measure these days anyway. If you double the throughput of a server you can halve the cluster size and retain the same level of service. Which isn't 200%, it's 50%.

Re:It's the Memory Latency, Stupid on Sunday November 01, 2026 @02:48PM (#50329042)
Long long ago I filed a bug against TogetherJ, where I determined empirically that they had a bug with monorepo/separate compilation units that resulted in n^5 time complexity for loading multiple project files at once. For the last data point I started loading it at 5pm one day and then it finished at 11 am the following morning. They gave us a workaround that got it down to around 20 minutes, the patch made it a little bit better than that but that was still a long time.

I'm sure I've found factorial complexity code, at least in the design phase, but that's the worst one I've encountered in the wild.

Re:Electrification Could Cut Global Energy Use in Half on Sunday November 01, 2026 @04:56AM (#50324063)
And more every year as the highest quality oil gets used up and we have to work harder to catalyze the rest.
Re:Electrification Could Cut Global Energy Use in Half on Sunday November 01, 2026 @04:55AM (#50324058)
Electric motors have gotten ridiculously efficient. In the right power curve you can hit 95%, which is why we have now moved onto power per unit weight and unit volume. You make the drivetrain lighter you reduce the power needed for 0-60 times, which gets you a few more percent of efficiency.

Same thing with battery power density - it’s the rocket equation. Heavy batteries don’t go far. To go farther you add battery, then more battery to carry enough power to carry the larger battery. Increase the specific energy rather than the mass, and all the extra power goes into going faster or farther.

Re:It's the Memory Latency, Stupid on Sunday November 01, 2026 @04:41AM (#50323989)
25% faster is 1.33x work done in the same time. What you want is 0.75^7 (almost 2 years) gives you 13.3% of the original time, which is 1/7.5. Only it was more like 25-30% so I rounded up.
Re:It's the Memory Latency, Stupid on Saturday October 31, 2026 @06:22PM (#50320844)
A lot of my poor opinion on developer opinions dates back to a couple projects where Product and Marketing were begging us for substantial performance improvements and the teams pushed back saying this was as fast as you could expect. I got 2x in the first six months on both projects, and delivered 25% per quarter on one for almost 2 years (that maths to around 8x) before I started to scrape the bottom of my barrel.

It’s predominantly a way to shut down thinking, which is why it’s so often misquoted. Knuth’s version is more nuanced. Theirs is not at all.

As a compromise I got really good at doing optimizations that also improved readability. Things like hoisting and better variable naming combined together can be mistaken for just code cleanup.

I also discovered that keyhole optimizations are more palatable. Which is to say, move the slow bit yo a separate function with a single responsibility. Then do the optimization in a separate commit. Then the other devs don’t have to look at your changes and if they turn out to have a bug, we can always revert the change later. They almost never do, but having the option seems to grease the wheels.

That’s a rather astounding amount of cash to have extracted per capita.

Older »