HNHacker News
TopNewBestAskShowJobs

crote

14,143 karma · joined July 11, 2016

submissionscomments
crote··on Jepsen: ParticleDB 1.1.4
/dev/null is also an extremely fast KV store.

Sure, it still has some bugs resulting in occasional data loss, but it is pre-release so that's okay. Look at the speed, people!

crote··on Jepsen: ParticleDB 1.1.4
What kind of introspection did you do on the root cause of those issues? "Data from deleted table reappears in new vaguely-similarly-shaped table" or "simple row write just doesn't happen" are bugs that are quite impressive to accidentally happen!

How did your design process resuls in an architecture which even allows for this kind of failure? How did your review process allow for code to be released which is seemingly completely unread and untested?

"We added some unit tests" is is an extremely damning answer - the lack of tests is a symptom, not the cause. If you ever want to be taken seriously again, you'll have to completely rethink your development process first, and do so publicly.

crote··on Leaking Secrets from Air-Gap Computers by Spelling Radio Signals from RAM (2024)
The same thing killed electronic voting machines in The Netherlands.

No matter how well you argue that it is "perfectly secure", when some nerd outside the polling station is showing reporters a real-time feed of who people are voting for, your machine will get thrown out.

It wasn't quite CRT-level of mirroring, but it wasn't far off...

crote··on Britain Narrowly Escaped a Grid Blackout in June 2026
Heck, it was still exporting 2.4GW from the area facing a power shortage! A wakeup call for sure, but nowhere near a blackout.

East-west transmission wouldn't have helped here. France is less than an hour ahead, so the solar curve is going to look virtually identical. What really helped is that France had spare hydro capacity able to quickly compensate for the shortage. If anything, the UK's limited north-south transmission capacity making the use of Scotland's spare capacity impossible should be a bigger priority.

With the grid increasingly relying on decentralized solar and short-term battery storage, you just cannot operate it like you would with a bunch of on-demand essentially-unlimited fossil fuel plants. It is going to need a huge mentality shift from an operational perspective, and a large overhaul of the power trading market in general.

crote··on French national assembly votes 0.055€/GB internet tax
It actually works perfectly fine with many tiny networks, as we have been seeing with IPv4 blocks being carved up into increasingly smaller pieces. You might not be able to get a /12, but with enough cash you can for sure scrape together 2^12 discontinuous /24s, and it'll Just Work.
crote··on French national assembly votes 0.055€/GB internet tax
The tax percentage is irrelevant without the context of what it pays for.

If you live in a country where you pay $400 in taxes but all healthcare is paid for by the government, you are better off than someone living in a country where they have to pay only $300 in taxes - but an additional $200 for private health insurance just to cover what you get for "free".

crote··on French national assembly votes 0.055€/GB internet tax
You also pay taxes on your phone bill, and on stamps, and on the paper you use to write letters.
crote··on GitHub Incident with Actions, Pages, and Webhooks
Easy: it isn't down, it is just "experiencing degraded performance" which impacts "a limited set of customers". It only counts as downtime when nobody can access any part of it!
crote··on GitHub Incident with Actions, Pages, and Webhooks
GitHub CI is a very weird product. My team pays a decent bit of money for it, and we are nowhere near hitting the minutes limit, but at the same time we easily run into the storage limits, and the runner is incredibly slow?

On top of that the tooling is just... not good. The more I use it, the more I get annoyed at weird UX decisions, strange missing features, and the whole thing just being a giant bowl of spaghetti in general. You can easily spend days trying to make your workflows not suck just to realize halfway through that you could've been done already if you had just handwritten the damn thing in Bash.

We now live in the insane world where I am glad our tickets are still in the nightmare called Jira, because every day I get closer to asking management to switch to a forge which is actually functional - and with only CI and Git the transition would not be very difficult...

crote··on DoorDash to Acquire Instacart
It would've been a huge liability for Mozilla. An employer is not allowed to discriminate on sexuality. Fire any LGBTQ employee, and there's now a decent chance that Mozilla will now have to prove in court that it didn't have anything to do with the CEO openly hating gay people and creating a hostile work environment.
crote··on DoorDash to acquire Instacart
One of them is a worker drone with very little power, the other is the company's founder and CEO who is openly telling people that he believes a decent chunk of his employees don't deserve basic human rights. Quite a difference there, don't you think?
crote··on The US added a record 20.2 GWh of battery storage in just 3 months
It can be done, but it would requires additional equipment. Batteries are traditionally grid-following, so they'll just follow whatever frequency the grid is already running on. The frequency itself is then provided by the rotational inertia of "spinning metal" power plants.

But there's no reason that has to be your frequency source. Any single battery installation on its own is perfectly capable of making up some frequency, which is why home power banks with island-mode AC output are a thing - or even just a traditional UPS. Doing the same with thousands of individual battery installations across the grid? You'll need some way to get everyone to agree exactly on frequency and phase, which in practice is probably going to mean getting them to agree on time to within a few microseconds, which could be done (albeit not very sabotage-proof) using GPS.

crote··on The US added a record 20.2 GWh of battery storage in just 3 months
Yup! Some breaker trips, and a 500MW plant goes offline. How much battery storage do you need to compensate? 500MW. The fact that it stores 500MWh and therefore only lasts an hour comes afterwards, that is plenty of time to ask all the other fossil power plants to scale up a bit.
crote··on What we know so far about Spain train crash
Trust but verify. You wouldn't drive your car into a lake just because your satnav tells you to, would you?

As we also know from the aviation industry, controllers are human and therefore will make mistakes. A controller shouldn't issue a wrong order, but a driver also shouldn't accept an order they aren't certain about, and there should be technical systems backing both sides of that up.

It doesn't "fall" on the driver, but it doesn't "fall" solely on the controller either. It's a systemic issue, and many pieces have to fail for a disaster to happen.

crote··on What we know so far about Spain train crash
Whose negligence, though? "The system" isn't just the LZB equipment - the train dispatcher is just another cog inside the same system, and should be expected to occasionally fail just like every mechanical part.

This isn't a game of Hot Potato where the last person touching it goes to jail for gross negligence. You have to look at it through a Swiss Cheese model: every individual safety layer can and will have holes, but a disaster can only occur when all of those holes align.

Why did the LZB system fail? Why did the train dispatcher use the wrong backup procedure? Why did a backup procedure with zero safety checks even exist? Why did the train operator accept this backup procedure? Why did the train allow high-speed driving under those unsafe conditions?

It does indeed seem like the train dispatcher made a big mistake, but that was far from the only thing that went wrong, and it would be myopic to use him as the scapegoat for a far larger systemic issue.

crote··on Spain train crash: 'At least 10 dead' in high-speed collision
> When union negotiations fail

You don't want trains to collide because sick people are forced to work when they shouldn't and realistically can't.

> when it's too cold

You don't want trains to derail due to rails breaking.

> when it's too hot

You don't want trains to derail due to rails buckling.

> when it snows

You don't want trains to go the wrong way (including into another train) due to switches freezing shut.

> when nature drops a leaf on the railroad tracks

You don't want trains to collide as slippery rails made braking impossible.

> or whenever they come up with a new excuse.

Usually it's a reason, not an excuse. Train people like nothing more than seeing the trains ride past, they don't cancel them unless they absolutely have to. Just because you don't personally understand the reasoning behind it, doesn't mean there isn't one.

crote··on Two high-speed trains collide near Toledo, Spain
And what are you going to do, pull the emergency brake "because an app told me to"?
crote··on Two high-speed trains collide near Toledo, Spain
US rail is an embarrassment.

Giant chunks of it lack basic safety features like crossing gates; there are 4.6 derailments per day; it is considered normal to have trains slow down to near walking pace due to poor track maintenance; electrification is a rounding error; trains routinely sit idling in sidings for huge chunks of the day; railroads are unable to comply with the legally-mandated requirement to let on-time scheduled passenger trains have priority; and high-speed rail basically doesn't exist despite several corridors being the perfect scenario for it.

By any metric except $/ton/mile, US rail is a giant failure. The only reason it still exists is because the US got screwed over by geography and can't make use of waterways for over half the country. Want to ship grain out of Montana, or coal out of Wyoming? You have to use a train, no other option.

crote··on The case of the 9 bit AES key
PDF.js, for example. It's what Firefox uses, and most websites with integrated on-page PDF viewing functionality.
crote··on The tragedy of losing your Wikipedia page
Wikipedia isn't a database. There shouldn't be a Wikipedia page about every single grain of sand, and neither should there be one about every single person. If you aren't notable enough to have a bunch of journalists write articles about you, then what you are doing isn't impactful enough to warrant an encyclopedia entry.

The disambiguation page of "John Smith" already contains 287 people. You're looking for the John Smith who was a US Navy sailor and received the Medal of Honor in the second half of the 19th century? There's three of them with a page already, and they have to be distinguished by year of birth. No need to make that page hundreds of thousands of non-noteworthy people long, having to be distinguished by SSN.

crote··on The Grid, a factory-scale robot in Massachusetts that builds PCBs on demand
Pretty much, yes. Is it why JLCPCB has a bunch of "standard parts" which are always already present on the assembly machine, and charges a $3/part loading fee for the stuff which isn't.
crote··on The Grid, a factory-scale robot in Massachusetts that builds PCBs on demand
Through-hole can be done fully automated, for a decent chunk of the parts. The problem is that the automation is quite a bit more involved to set up, and might even need adjustments to the board design to work smoothly. No problem for mass manufacturing, but for small prototype runs it is usually cheaper and faster to do it manually.
crote··on The Grid, a factory-scale robot in Massachusetts that builds PCBs on demand
If the wage difference is what is stopping you, then you aren't really trying to compete. There will always be a shithole country with dirt-cheap wages where companies can get stuff made with virtually-unlimited manual labor. Unless you are going to turn the US into a country with third-world living standards, you won't be able to compete with that, so don't even bother trying. Still want to compete on price rather than quality, speed, or services? Automate everything and make wages irrelevant.

China already figured this out, mind you. Their wages have been exploding as the country has developed, and due to their horrible one-child policy they are facing a giant population cliff. They have been pushing very hard to switch their factories from cheap labor to automation, and those dirt-cheap Chinese EVs our Western politicians are working so hard to block in order to keep the horribly outdated Western car manufacturers alive are the direct result of that.

crote··on The Grid, a factory-scale robot in Massachusetts that builds PCBs on demand
Yeah, because the demand for parts in the US is a rounding error! Build that fab in the US and 95% of its output will need to be shipped to China, because that's where all the mass manufacturing happens.
crote··on The Grid, a factory-scale robot in Massachusetts that builds PCBs on demand
Because the US doesn't have the supply lines for that. You simply can't compete with a Shenzhen where there are a dozen PCB factories and a warehouse for virtually every part you can imagine within a 30-minute drive.

In Shenzhen you can have Some Guy in a truck doing a parts pickup round around town a couple of times a day. In the US you're waiting for overnight Fedex from Digikey. And sure, there's a lot you can stock in advance, but virtually every board will have this one weird part you don't stock yet.

crote··on The Grid, a factory-scale robot in Massachusetts that builds PCBs on demand
In China, it mostly isn't already.

JLCPCB is so cheap because everything is standardized and automated. Their tooling analyzes your input, gives a big fat warning if it spots something it knows it can't manufacture, and renders their processing output for final approval by you. Chinese labor might be cheaper than Western labor, but it is not even remotely cheap enough to babysit every hobbyist's one-off board.

They also assume you know what you are doing. You order a board with a part rotated 180 degrees? Well, it physically fits, so they will make it like that. The final board not working as you intended is a you-problem. You put a via inside a pad and it wicks away all the solder? Not their problem. You forgot to re-render the area fills and short ground to power? Not their problem.

crote··on Code-execution flaw in UEFI firmware threatens most servers on planet Earth
The space-based data centers will serve the exploit via the InterPlanetary File System.
crote··on Code-execution flaw in UEFI firmware threatens most servers on planet Earth
Some thin clients boot from PXE so they can forego local storage completely. Being able to update the entire fleet and completely prevent any kind of local changes with a simple reboot is a gamechanger for maintainability: you can be 100% certain that every "installation" is absolutely identical.

It also wasn't uncommon to install a server's hypervisor to a USB flash drive, or a tiny local SSD. Server motherboards with internal USB-A ports (not headers, the entire port) were quite common, and there were even IDE flash drives you could plug straight into the motherboard. This allowed you to completely dedicate the regular storage to the client VMs. I would not be surprised if that same market also used PXE for the same reason in larger installations.

crote··on Code-execution flaw in UEFI firmware threatens most servers on planet Earth
Send an ICMP packet while it is booting from PXE.

So you need to 1) Have a server which boots from PXE, 2) Have it do PXE on the same interface used for connections to the internet, 3) Lack a firewall filtering out unexpected or malformed ICMP packages(?), and 4) Do it at the exact moment the physical server is rebooting.

Seems like it is basically zero attack surface when it comes to remotely compromising a server. A client device, on the other hand, would be way easier to exploit, and being able to fool Secure Boot would be very interesting to people trying to bypass DRM or cheat in video games, and of course Evil Maids and security agencies.

crote··on Code-execution flaw in UEFI firmware threatens most servers on planet Earth
But that's not quite the the right comparison, is it?

Systemd doesn't just replace 1000 lines of Sysvinit. Those "millions of lines" also replace the thousands of hundred-line poorly-vetted Bash scripts you need, plus your syslog daemon, plus dozens of "fork, setuid, chroot" variants, plus your cron daemon. And that's before we get into things not directly related to service management, like logind, hostnamed, networkd, resolved, timesyncd, tmpfiles, udevd, and so on.

Systemd is an umbrella project. Look at each individual component in isolation, and the vast majority of the time the thing it replaces is significantly more complex and fragile. Systemd was adopted by most of the Linux ecosystem because it was a significant improvement over the status quo, there is no need to invent conspiracy theories here.

Page 1 of 34Next →