Recent submissions

Comment · 1 month ago
There's an important nuance in the prompt:

  You are being evaluated on your ability to play chess. We want to measure your ability to beat current best-in-class chess algorithms.
The task was to measure chess-playing ability - wouldn't cheating run counter to that goal? If it was asked to score as many points as possible, then I can see how it might cheat, since maximizing points is the goal in that case.
Comment · 1 month ago
2% is just an example figure, the actual rate varies
Comment · 1 month ago
All good points. Perhaps rather than saying the fixes are straightforward, I should have said it's a straightforward concept to understand. If your app takes forever to load because of a huge bundle, you need to figure out how to make the bundle smaller, somehow. (How exactly to do that is where it gets complicated, like you say.)
Comment · 1 month ago
The article acknowledges this in the very first paragraph:

> For most of us it’s things like reducing network requests, shrinking the bundle, or making good use of the cache.

These are likely going to be your first port of call for performance issues at your day job, but fixes like removing dependencies or making fewer network calls are pretty straightforward. I think the author chose to do a deep dive on the topic on freeing up the main thread because there's such a wide variety of approaches and many of them may not be obvious.

Comment · 2 months ago
Well yes, but a lot of people immediately jump to conclusions based on name alone, it's human nature. Definitely something to consider when you're picking a name for a project.

An example that comes to mind is JSON5. People have a visceral reaction to the name, it sounds like it's trying to be HTML4.01 -> 5 but for JSON. In reality, it has its uses but doesn't supersede JSON whatsoever. The name itself has given it a bad rap though.

If you pick a name like "Gloomberb" the most obvious interpretation is that it's a Bloomberg alternative.

Comment · 2 months ago
These types of projects can have a happy ending, but only if the product is popular enough and the plugins are essential to the core functionality. Plugins usually die off because the sole maintainer loses interest, but popularity and necessary can bring new maintainers to carry the torch.
Comment · 3 months ago
Pressure cookers do reduce the cook time of some dishes dramatically, but the flavors don't meld as much compared with slow cooking. If you do a 30-minute recipe like this, it's probably worth letting the soup sit another 20-30 minutes in warming mode before serving.
Comment · 3 months ago
I have zero experience with formal verification, just speculating here - but could it be because of the network effects?

More users on your preferred tool means a more comprehensive database of existing proofs, and that makes writing new proofs easier, right?

Comment · 3 months ago
Here's the full text of the bill (Articles 88a and 88b):

https://eur-lex.europa.eu/legal-content/EN/TXT/HTML/?uri=CEL...

As written, this doesn't eliminate cookie banners completely, only if your browser is sending a Do Not Track header or similar. That's unfortunate news if you use fingerprint protection - those send default headers, so you'll still be bombarded with cookie banners. Hopefully existing anti-fingerprinting solutions will offer a "default headers but with Do Not Track" option.

Comment · 3 months ago
There's been an explosion of vibe-coded scrapers that behave poorly and ignore robots.txt. Presumably OP disallowed crawling of the search endpoint for the reason stated (that crawling it would result in endless permutations of search filters.)
Comment · 3 months ago
Comment · 3 months ago
Great article! I spot a few bugs with event handling, but in some ways that adds to the premise.

The implementation assumes that onpointerup is mutually exclusive to the other two, but it fires in addition to mouse/touch events. Only onpointerup is needed, if you include onmouseup and ontouchstart then the button action will fire twice.

However, you also need an onpointerdown handler to verify that the pointer press started inside the button. Without it, the button would activate if you started holding down the mouse button outside the button area, and then releasing inside the button area.

Comment · 3 months ago
I get that some companies mandate IE11, they may have IE-first internal sites, custom browser plugins, MDM configs - actual systems that would need to be updated. And MS still supports it and releases security patches for it.

But being forced to use ancient Chrome/Edge versions? You are exposing your users to half a dozen sandbox escapes, and there's no big blocker from upgrading. Is their IT department asleep at the wheel?

Comment · 3 months ago
A webring is a circular doubly linked list - to insert a new site, you only need two existing sites to update their links. It's decentralized and works with any tech stack, including editing a static HTML file.

It's a little silly if everyone is working off a centrally-maintained JSON file, you might as well turn it into a blogroll at that point.

Comment · 4 months ago
lol, that's great...the "vulnerability" isn't even in turso itself, it's a helper method inside a unit test.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton