HNHacker News
TopNewBestAskShowJobs

ericbarrett

6,130 karma · joined July 6, 2020

email: hn at eric barrett dot {com,net}

All posts and comments are my own opinion and do not reflect those of my current or past employers.

submissionscomments
ericbarrett··on SQLite's documentation about its durability properties is unclear
There are some older fsync() bugs (as famously explored by Postgres developers: https://wiki.postgresql.org/wiki/Fsync_Errors ) but I'm not aware of any modern mainstream kernel where this is broken. If I'm wrong, please tell me!

An application that really wants confidence in a write—to the extent that the underlying device and drivers allow—should use O_DIRECT. Or maybe there is a modern equivalent with io-uring. But that is not easy engineering :)

ericbarrett··on I forced every engineer to take sales calls and they rewrote our platform
> We were not permitted to escalate to engineering at all.

I have no words! Except that I really want to know the organizational dysfunction that ended up creating that policy.

ericbarrett··on Custom telescope mount using harmonic drives and ESP32
> (you sign away all rights to the things you made free)

I don't see that in Autodesk's terms, which (per quick search - not exhaustive) seem to apply to "Fusion for Personal Use":

https://www.autodesk.com/company/terms-of-use/en/general-ter...

The only license I can find it compels is "If You provide Autodesk with ideas for improvement, suggestions, or other feedback".

(Not a lawyer, not your lawyer, not legal advice etc. etc.)

ericbarrett··on It's the Housing, Stupid
SF had a ton of cheap, low-occupancy warehouses in Soma until the mid-late 2000s. Many have since been renovated into swanky offices.
ericbarrett··on The Enterprise Experience
Agreed, and a great example of the signal often hidden in anodyne corporate titles.
ericbarrett··on FFmpeg moves to Forgejo
Did you block cookies?
ericbarrett··on FFmpeg moves to Forgejo
I’ve never had problems getting to any Anubis site even with uBlock origin and uMatrix. You have to enable cookies and scripting for the main domain.
ericbarrett··on FFmpeg moves to Forgejo
That is Anubis trying to get your browser to do proof of work: https://github.com/TecharoHQ/anubis
ericbarrett··on Bullfrog in the Dungeon
Seconded. Pretty sure the narrator is the same voice actor too

(Edit) yup: https://en.m.wikipedia.org/wiki/Richard_Ridings

ericbarrett··on We rewrote the Ghostty GTK application
Do you mean gtk-rs (https://gtk-rs.org/)? I have done a bit of programming with it. I respect the work behind it, but it is a monumental PITA - truly a mismatch of philosophies and design - and I would a thousand times rather deal with C/C++ correctness demons than attempt it again, unless I had hard requirements for soundness. Even then, if you use gtk-rs you are pulling in 100+ crate dependencies and who knows what lurks in those?
ericbarrett··on Live coding interviews measure stress, not coding skills
I once got asked to write a Levenshtein edit distance calculator for a “15 minute” SRE phone screen
ericbarrett··on TODOs aren't for doing
For me, XXX is a mental note to "fix this before your next pull request." If I'm being serious I'll set up CI to reject any code with a comment containing this string. So in that sense it would be the highest priority.
ericbarrett··on Who Can Understand the Proof? A Window on Formalized Mathematics
I am neither a mathematician nor a scientist, so I’m unqualified to judge Wolfram’s current theories* of physics and computation. But my impression is that he remains quite rigorous in his work, even if the path he’s walking is far from the main. And of course he’s quite bombastic, which always seems to raise hackles. In fact, the article on which this discussion anchors is a great example of both.

* Ref: https://www.wolframphysics.org/technical-introduction/ The podcast with Sean Carroll that parent mentioned is also a surprisingly accessible lay introduction, definitely worth a listen.

ericbarrett··on C++ is an absolute blast
I'm not sure this is still true. I'm just a hobbyist but esp-idf, for example, supports C++23.
ericbarrett··on NYC wants you to stop taking traffic cam selfies, but here's how to do it anyway
Indeed, the NYPD has 33,000 officers and Belgium's armed forces have 24,000 serving plus 6000 reserve. They also have very similar budgets: $6b vs. €7b.
ericbarrett··on Highest-resolution images ever captured of the sun’s surface
Sometimes I stand in the sun and feel it as hot as a nearby oven on my skin. Then I consider that I'm receiving about 1e-24 of its radiant energy. I don't blame our ancestors!
ericbarrett··on Only buy a magnetic keyboard for gaming
Among other things, the USB host polls the keyboard at a fixed rate. Fantastic breakdown if you have 30 minutes: https://youtu.be/wdgULBpRoXk
ericbarrett··on Voyager 1 Breaks Its Silence with NASA via Radio Transmitter Not Used Since 1981
The alignment greatly reduced the amount of energy/propellant/weight to launch the Voyager missions with all four of the outer planets on the menu. Alignments that allow you to reach a smaller set of the outer planets with the same budget are more common: years or decades.

(Edit) Another thought, since you mentioned time—numerical computing power and the math required to exercise it have advanced greatly since the 1970s, and it's likely that some of the trajectories and maneuvers feasible (again with the same fuel budget) today, even if they took 100+ years to complete, weren't even calculable back then.

ericbarrett··on Upgrading Uber's MySQL Fleet
A query for a given item goes to a router*, as you said, that directs it to a given shard which holds the data. I don't know Uber's schema, but usually the data is "denormalized" and you are not doing too many JOINs etc. Probably a caching layer in front as well.

If you think this sounds more like a job for a K/V store than a relational database, well, you'd be right; this is why e.g. Facebook moved to MyRocks. But MySQL/InnoDB does a decent job and gives you features like write guarantees, transactions, and solid replication, with low write latency and no RAFT or similar nondeterministic/geographically limited protocols.

* You can also structure your data so that the shard is encoded in the lookup key so the "routing" is handled locally. Depends on your setup

ericbarrett··on 1 bug, $50k in bounties, a Zendesk backdoor
This was a great writeup, really clear and engagingly written, about an interesting and subtle bug. If the author hadn't mentioned they were 15 I would have assumed it was from a seasoned security professional.

To Daniel/hackermondev: whatever you're doing, keep it up!

ericbarrett··on Windows 11 vs. Ubuntu 24.10 Performance For Intel Core Ultra 7 Lunar Lake
Timeshift (included with Mint, but I don't think it's exclusive to it?) is a much more conventional solution—I believe it uses rsync under the hood—but it works very well for exactly this kind of experimentation. It can revert config changes, package installs, and even OS major version upgrades.
ericbarrett··on Legalizing sports gambling was a mistake
Tangential—methanol poisoning from an improper brewing or distilling process is largely, maybe completely, a myth. Where toxicity events have occurred they are almost always deliberate or accidental adulteration, e.g. fortifying moonshine with industrially "denatured" (deliberately poisoned) alcohol. There has been a lot of sloppy journalism in such cases that doesn't question the myth, as well as Prohibition-era propaganda that lives on to this day.

Great Reddit discussion about this: https://old.reddit.com/r/firewater/comments/9p1fwe/methanol_...

ericbarrett··on NIST to forbid requirement of specific passwords character composition
The good ol’ “Tell me you store passwords as plaintext without telling me you store passwords as plaintext”

The other message I get from sites like this is, “Our developers have no idea how to escape SQL parameters even though this has been standard since the 90s [80s? 70s?!] so we just do “‘“ + password + “‘“ “

ericbarrett··on NASA spacecraft to probe possibility of life in Europa's salty ocean
Right, this is a possibility—but complex life doing so, in vacuum, at 100K? All I'm saying is, knowing what we know about chemistry, it seems extremely unlikely.

I'd be ecstatic to be proven wrong empirically, but it doesn't make sense to start our search there.

ericbarrett··on NASA spacecraft to probe possibility of life in Europa's salty ocean
Radiation levels on Europa's surface are about 5 Sv in 24 hours, which is a massive dose; for reference, this is enough to kill 50% of humans exposed to it and make the survivors extremely ill.

It is also extremely cold (-171C mean) and near-vacuum (100 nanopascal).

If there is life in Europa and it bears any resemblance whatsoever to the biology we know, it simply couldn't exist on the surface. Even the hardiest single-celled organisms here, which have also had 4.5B years to evolve into uncontested niches, could barely survive a limited exposure to these factors.

ericbarrett··on Docker Desktop Alternative
I did something similar between jobs—built a k8s "cluster" on my home Linux box using kops+qemu. It didn't make me an experienced admin, but it was really enlightening and fun! Projects like these are a great way to learn.
ericbarrett··on Boeing Starliner launches first crewed mission
Mass does not strictly matter, it is the ground TWR of the launch config. Heavier rockets do tend to have a lower TWR but it is not a universal rule.

Starliner is also held for confirmation of all systems being functional even with the SRBs. Better to let them burn out on the pad and clean up the mess than to risk release with, say, asymmetrical thrust. That said I'm sure there are variances between the two rockets' procedures which could make one appear faster.

ericbarrett··on Boeing Starliner launches first crewed mission
This has to do with the launch vehicle's thrust to weight ratio (TWR) on the ground with a full tank. It's usually between 1.1 and 1.4. The Russian Proton has a famously high ground TWR and is known for "leaping" off the pad. Maybe Starliner is the same in this initial crewed LEO config.
ericbarrett··on Debian's /tmpest in a teapot
When I started in tech I worked for a storage vendor’s tech support. One of my first big cases was troubleshooting why a customer’s files older than a week were disappearing. Given the topic, I’m sure you can guess—they had it mounted under /tmp and the cleanup script was doing its thing.

Hopefully the new Debian version of this script is a bit smarter!

ericbarrett··on S3 is showing its age
Multipart uploads are not the same as append; an object being multipart-uploaded doesn't exist in the bucket namespace until the upload is finalized, and once that is done it cannot be modified without overwriting.
← PreviousPage 3 of 34Next →