MurphyA/hacker-news huggingface dataset:
by bigyabai | 2025-05-27 23:24:48+00:00
Working hard won't be enough. Valve "worked hard" to get developers to support the OG Steam Machine, and the result was basically the same as MacOS; a bunch of lousy OpenGL ports that break on every system update. Even if you write a native Mac or iOS app, you're not guaranteed that the runtime will respect your work in the future. So most devs just don't bother. Windows wears the crown for not cutting off it's leg to spite it's face.

Valve is able to succeed where Apple doesn't because they aren't obsessed with being king-of-the-ring. They're a software retailer, Valve makes more money when more PC hardware proliferates to new audiences. Apple could do this too, but they would have to swallow their pride and work with Khronos again. Hence the reason why iOS games are often the most demanding native titles on Mac.
by TheCondor | 2025-05-27 23:25:16+00:00
I was thinking of putting something together for this. Like a helm chart that works with k3s.

datapains has some good stuff to get trino running and you can get a hivemetastore running with some hacking. I dorked around with it and then got the iceberg connector working with trino and see how it all works. I load data in to a dumb hive with a trino table pointed at it and then insert from select ... in to iceberg.

If the duck guys have some simple to get running stuff, they could probably start to eat everyone else' lunch.
by dgfitz | 2025-05-27 23:25:24+00:00
> I'm always skeptical of these "i totally made money gambling i just stopped for other reasons" type of claims and for good reason.

I understand why you think that. I am a small time gambler on sports, purely American football. I start each season with 10 bucks and end with 5k-20k.

And then I stop, until the next season starts.

Really fucks up my taxes.
by gosub100 | 2025-05-27 23:26:28+00:00
> or you can post it free and it will gone in hours

you'll have a dozen people immediately claim it and ask you to hold it for them, but actually getting rid of the item is another story. maybe 1/4 or less actually take it. I recommend donating to a thrift store (even one of the "evil" ones where the CEO makes $600k) or posting it in proper category, putting $1 for the price, and saying "free" in the item description. As opposed to using CL's "free" category.
by niccl | 2025-05-27 23:26:43+00:00
I much prefer the art of fugue on strings. The Delme Quartet is the best rendition I've found.

The two pauses in contrapunctus 1 are, in my opinion the two best pieces of silence in the whole musical canon. I always think of the chords that come after theme as 'from his mother's womb untimely ripped'. They can make me weep when I'm in the right mood. (sorry for the over-sharing...)
by sfink | 2025-05-27 23:26:57+00:00
> For some reason, I have yet to find a laptop

Seems straightforward enough. Laptops are portable and contain things of personal value (configuration, if nothing else!). Or just might -- if you're dumping stuff because you don't want to deal with it, so why would you deal with searching through your laptop to look for photos or incriminating messages or whatever? Or opening it up to pull the hard drive? That's work!

Formerly, they'd also be as much value to the owner the week after classes end as they were the week before, but maybe that's changed now? Do people rely only on phones and not use laptops for anything other than school?
by simonw | 2025-05-27 23:29:26+00:00
Wow, that library is looking really great!

I think I want a plugin hook that lets plugins take over the display of content by the tool.

Just filed an issue: https://github.com/simonw/llm/issues/1112

Would love to get your feedback on it, I included a few design options but none of them feel 100% right to me yet.
by spartanatreyu | 2025-05-27 23:31:55+00:00
Those colors were poorly chosen. Going through the accessibility checker in the browser's dev tools, at least two of the 3 colored buttons are always indistinguishable.

For anyone who needs it:

The bottom row has two buttons that are 1.5 times standard width keys, the left is mauve (light pinkish-purple), the right is a minty-green.

The second bottom row has five standard keys but the far left one is unlabelled and coloured light-blue.

Each labelled key has 6 symbols in a 2x3 layout.

By default, pressing a key will type the symbol in the top row and left column.

Holding the mauve key when typing will change all keys to use the centre row.

Holding the minty-green key when typing will change all keys to use the bottom row.

Holding the light-blue key when typing will change all keys to use the right column.

So any combination of no-modifiers, right-column, middle-row, or bottom-row modifier keys when pressing a key can select any symbol on the keyboard.

I have no idea what happens when pressing a key while holding both the middle-row and bottom-row modifiers at the same time.

Those modifier keys definitely should have had symbols on them showing which row/column they modify.
by lelandbatey | 2025-05-27 23:32:23+00:00
I want versioned docs literally always. I am basically never on the _most_ recent version of a software package, so being able to pick the version of the docs that matches my actual version is genuinely not negotiable.

I never want to "pinpoint changes", I want to avoid documentation totally irrelevant for the version I actually use. Here's a real world example:

Redis.io doesn't let you look up docs for any version but the latest version. The URL for docs has "latest" in the path, but swapping that for a version number just 404s. Let's look at the EXPIRE redis command and how it interacts with HSET, in the context of using Redis to cache some data with a TTL. https://redis.io/docs/latest/commands/expire/

HSET means setting a field of a hash (object/dictionary/map) to a value. EXPIRE means setting the expiration (TTL, time before autodelete) of a particular thing in redis. You can set the expiration for an entire hash in redis, but not for individual fields of that hash. HSET is like an upsert by default; it creates the hash in redis and then populates the given field with the value you set. In your application, it's pretty reasonable to want to have an operation which is like an HSET as an upsert which also sets a maximum expiration time on the parent hash, but only if there's not an expiration time set. Looking at the docs for EXPIRE, you might note that there's a special option you can set which does this exact thing, the NX flag. Thus you can implement a simple "sharded-by-hash upsert with a maximum TTL" by doing an HSET followed by an EXPIRE NX. Great!

Except that is not true! You cannot do that! Read all the paragraphs you want, you won't find this critical note unless you scroll aaaaaalll the way to the bottom of the page, past the "Differences in Redis X.Y.Z", past the Appendix, to the very last little section called "History", which isn't about the history of this page, but is instead a single bullet point of critical information noting the following:

Starting with Redis version 7.0.0: Added options: NX, XX, GT and LT.

Redis 8 released this month, Redis 7.0.0 released in April 2022. Some version of Redis prior to 7 (6.4) will be explicitly supported by Redis the company till August of this year. I encountered this particular hiccup much further back when it was very reasonable to still be using Redis 6.X

In such a case as this, I desperately wish that I could have clicked a little dropdown and chosen docs for Redis 6 instead of Redis 7, because this caused a serious problem as hashes just weren't expiring at all. It was especially bad because the Redis clients would send those command options to the server and the server would silently drop them, so everything looked completely fine except that the hash keys were being perpetually moved forward and never expiring!

Please version your docs!
by xrd | 2025-05-27 23:32:39+00:00
Is no one else bothered by that way of using tools? Tools feel like a way to get deterministic behavior from a very hallucinatory process. But unless you put a very lengthy and comprehensive non-deterministic English statement, you can't effectively use tools. As we all know, the more code, the more bugs. These long and often hidden prompts seem like the wrong way to go.

And, this is why I'm very excited about this addition to the llm tool, because it feels like it moves the tool closer to the user and reduces the likelihood of the problem I'm describing.
by sfink | 2025-05-27 23:32:55+00:00
It's even worse if you post things for free. At least if there's a dollar figure attached to it, even $10, you won't get a dozen randos claiming they'll be right by, they can't live without it, don't give it to anyone else -- and then never show.

We have several times asked for a higher price just to weed out the non-serious people who will waste our time. We really just wanted to give it away to someone who would make good use of it, but charging too little lowers the odds of that happening.
by dahart | 2025-05-27 23:33:01+00:00
The sentence would be correct with a comma, therefore it’s correct with a semicolon, if going by either the Oxford or Wikipedia definitions. Colon works, and it changes the flavor slightly, but it’s certainly not the only way to write this sentence. It’s a subjective and stylistic choice, not a correctness choice. I’m finding more and more often that declaring language misuse, whether words or punctuation, tends to backfire; it’s almost never correct to say someone used language wrong, because language has a broader history with a wider variety of usage than we all learned in school, and we (me included) have a hard time accepting that the way we learned it isn’t the only way. Now I’m trying to enjoy all the fluidity and weirdness of language and study all the ways the rules I learned in school are just wrong.
by meatmanek | 2025-05-27 23:33:13+00:00
But why 342 and tune the clock speed down instead of keeping the clock speed at 8MHz and having floor(8e6/2/6/60/32) = 347 lines?

I suspect kmill is right: https://news.ycombinator.com/item?id=44110611 -- 512x342 is very close to 3:2 aspect ratio, whereas 347 would give you an awkward 1.476:1 aspect ratio.
Precision-Based Sampling of LLM Judges
by sunny-bak | 2025-05-27 23:33:57+00:00
Built a system that automatically determines how many LLM-as-a-judge runs you need for statistically reliable scores.

Key insight: treat each LLM evaluation as a noisy sample, then use confidence intervals to decide when to stop sampling. The math shows reliability is surprisingly cheap (95%→99% confidence only costs 1.7x more), but precision is expensive (doubling scale granularity costs 4x more).

Also implemented "mixed-expert sampling" - rotating through multiple models (GPT-4, Claude, etc.) in the same batch for better robustness.

Analyzed how latency, cost and reliability scale in this approach.

Typical result: need 5-20 samples instead of guessing. Especially useful for AI safety evals and model comparisons where reliability matters.

Code: https://github.com/sunnybak/precision-based-sampling Blog: https://www.sunnybak.net/blog/precision-based-sampling
by godelski | 2025-05-27 23:34:43+00:00
I think the result is unsurprising when you think about it for a bit. Though non-obvious at first!

Most people want to work. They think "hey, I'm here, might as well do something." When we're talking about experts in a field (academic or work), usually what interests them the most is the things that matter the most. Giving free time to "play" allows for these larger challenges to be solved. Things that you could never pitch to a manager because it's highly technical, hard to measure, and difficult to prove. But expertise tends to fill in those gaps.

Obviously you can't and shouldn't do this with everyone. Juniors shouldn't have completely free range. They need some to be able to learn this process, but need much more hand holding. But a senior? That's a position with high levels of trust. They should know the core business and you're literally hiring them to be an expert, right? And of course there are people that just want a paycheck. I think a surprising amount of them will still work regardless, but maybe not as much and as effectively. Certainly, micromanaging people will not get these people to do more work, and you risk just becoming overburdened with people in administrative positions.

Usually, you can sniff out the people that should be given more free reign. You don't have to understand the technical, you only have to detect passion. Some people will fool you, but passion is a pretty good litmus test. There's no optimal global solution here, so we have to accept some losses. Doesn't prevent us from trying to minimize that loss, but I think we get overly concerned with the losses that are easy to detect. Removing those often just results in your losses being harder to detect, not becoming non-existent. It's like the survivorship bias problem. You can't measure the hits on the planes that don't make it back. In our case, losses through employees (including managers) metric hacking. Frankly, we want our losses to be visible, because that makes them treatable.
by GuB-42 | 2025-05-27 23:35:24+00:00
SATGUS is a 12U CubeSat, I don't know the mass, but it seems that 20kg is a reasonable assumption. As with all CubeSats, they didn't use a rocket just for it, it is an auxiliary payload to a big satellite mission.

According to Wikipedia the Falcon 9 has a payload ratio of about 4%, and assuming everything else is propellant (not that far off), that's about 500kg of propellant to launch that satellite.

But propellant is mostly oxygen, let's say between 2:1 and 3:1 oxygen:fuel, it means about 150 kg of kerosene to launch that satellite. That's your fossil fuel usage. Similar to what it takes to bring a passenger across the Atlantic on a typical airliner. It means that taking these pictures from space burns less fossil fuel than overseas vacation pictures.

Of course, there is probably a lot more fossil fuel burned during the process than by the launch itself: building and transporting the parts, business travels, powering the servers, etc... But the same can be said of most endeavors at this scale.
by amy214 | 2025-05-27 23:36:13+00:00
At least in the US, we have discovered an even more complex situation where many of our government organizational low-mid-low/high level leaders all lean left, same for judges, but then our supreme court leans right as well as high level leaders (appointed by right president). It's as off the extreme political polarization our nation suffers from has also manifested itself in our own institutions.
by AnthonyMouse | 2025-05-27 23:36:19+00:00
The trouble is it fails to specify what you're supposed to be liberal with.

Suppose you get a message that violates the standard. It has a length field for a subsection that would extend beyond the length of the entire message. Should you accept this message? No, burn it with fire. It explicitly violates the standard and is presumably malicious or a result of data corruption.

Now suppose you get a you don't fully understand. It's a DNS request for a SRV record but your DNS cache was written before SRV records existed. Should you accept this message? Yes. The protocol specifies how to handle arbitrary record types. The length field is standard regardless of the record type and you treat the record contents as opaque binary data. You can forward it upstream and even cache the result that comes back without any knowledge of the record format. If you reject this request because the record type is unknown, you're the baddies.
by simoncion | 2025-05-27 23:36:30+00:00
In response to the statement

> ...I have to fail them and tell them that the three semesters they have wasted so far without any teachers calling their bullshit is a waste of life

you said:

> Yeah, I've had teachers like that, who tell you that you're a "waste of life"...

You'd do well to slow down and re-read more carefully whenever you find something that offends you. You've failed to correctly identify the target of the "waste of life" commentary.

Moreover, were I paying tens of thousands of dollars a year for a self-improvement product, I'd be furious if the folks operating that product failed to notify me until three years into a four year program that I'd been getting next-to-nothing from the program. That's the sort of information you need right away, rather than thirty, sixty, (or more) thousand dollars in.
by simonw | 2025-05-27 23:36:38+00:00
As an experienced software engineer I'm bothered about pretty much everything about how we develop things on top of LLMs! I can't even figure out how to write automated tests for them.

See also my multi-year obsession with prompt injection and LLM security, which still isn't close to being a solved problem: https://simonwillison.net/tags/prompt-injection/

Yet somehow I can't tear myself away from them. The fact that we can use computers to mostly understand human language (and vision problems as well) is irresistible to me.
by kristopolous | 2025-05-27 23:37:08+00:00
The real solution is semantic routing. You want to be able to define routing rules based on something like mdast (https://github.com/syntax-tree/mdast) . I've built a few hacked versions. This would not only allow for things like terminal rendering but is also a great complement to tool calling. Being able to siphon and multiplex inputs for the future where cerebras like speeds become more common, dynamic configurable stream routing will unlock quite a bit more use cases.

We have cost, latency, context window and model routing but I haven't seen anything semantic yet. Someone's going to do it, might as well be me.
by karaterobot | 2025-05-27 23:37:43+00:00
> The fact that AI can do your homework should tell you how much your homework is worth.

I mean... if you removed the substring "home" from that sentence, is it still true in your opinion?

That is, do you believe that because AI can perform some task, that task must not have any value? If there's a difference, help me understand it better please.
by jiveturkey | 2025-05-27 23:38:29+00:00
Given the impact of such bugs, I'm surprised there isn't a consortium with an interoperability test suite. Or maybe there is, and this specific issue isn't in the test suite. In which case, I'm surprised test cases aren't generated with a fuzzer and/or machine-generated full exploration of possible packet errors. I mean, it's fine if the suite takes hours or even days to run.

I guess the author of the article here has written a fuzzer with some coverage, and has come across similar issues before. Astonishing that the vendors don't pick up on this work hungrily.
by bawolff | 2025-05-27 23:38:58+00:00
> First, why do people throw away tennis shoes, unopened food etc?

Because transport costs more than the item? Especially if you are travelling by plane.

Sure there might be cheaper transport options but the opportunity cost of arranging them quickly dwarfs the value.

> Second, why not just put on the street so that other people can come and collect items?

If you are in a university setting where maybe 500 people are leaving all at the same time, i imagine university admin may not be thrilled at the prospect of cleaning up after this.
by LargoLasskhyfv | 2025-05-27 23:39:47+00:00
I wonder if they would work with a PiStorm, or other accellerators of working in similar ways. Meaning not some hard to get 68040/60, but some modern not even that big ARM, some minimal glue logic via CPLD and some additional RAM on a small board, which plugs into to the original socket instead. Running Musahi or EMU68k and some firmware for the CPLD/FPGA.

Seems to work very well for Amigas, AtariSTs, and 68k-Macintoshes. Equivalent to some 100s of MHz for applications, games & demos not so much.
by directevolve | 2025-05-27 23:40:03+00:00
I live in Portland. Walk around certain neighborhoods, and you’ll see items out on the street - mostly garbage. Broken couches, broken tables, broken appliances, that sort of thing. Typically, items with remaining utility are exchanged via Goodwill or an online tool like Buy Nothing.

My guess is that the college does not want to allow students to dump their mostly-garbage on the neighbors.

At the same time, wealthy students who will throw out items of value may feel they have better things to do than separate out items to donate. That’s especially true if they wait until the last minute.

Overall, separating items to donate from one’s trash is a way to avoid paying to dispose of trash at the dump and a way to perhaps be charitable or environmentally conscious. I’m not convinced it’s all that effective as an altruistic move. If the college sets up a place to dump for free, I’m not at all surprised many people take advantage of it without another thought.
by felixfbecker | 2025-05-27 23:40:35+00:00
An SVG doesn't need to support scripting. When you load an SVG through an <img> tag for example, no <script>s run either (only if you use <iframe>, <object>, or inline in HTML5). When you serve the SVG (or the HTML it is inlined in) with a CSP that doesn't allow inline scripts, no scripts run. It's totally possible to render an SVG without scripts (most SVGs do not contain scripts) and various mechanisms for this are already implemented in browsers.
by zestyrx | 2025-05-27 23:44:19+00:00
The book "Nexus" by Yuval Noah Harari essentially makes this same point. The way he phrases it is that information's primary role throughout history hasn't necessarily been to convey objective truth but to connect people and enable large scale cooperation. So more information is not necessarily better.

Worth a read or you can check out one of his recent podcast appearances for a quicker download.
by bawolff | 2025-05-27 23:47:00+00:00
> Throwing away things that could be sold could be a matter of (1) frustration/exhaustion with the end of the semester, (2) no place in their car / plane luggage for extra items, (3) indifference of kids who don’t know the value of a dollar (the Ballenciaga slides are literally the most expensive version of a slide you can buy — I usually get mine for less than $10).

Or you know, them being rational actors who know spending an hour to sell something for $5 is not a good use of their time.

The author did find a couple of allegedly more expensive items, but is also e.g. talking about used pyjama bottoms. How much money do you really think you are going to get for used pyjama bottoms? Is it worth it? Almost certainly no.
by nickpsecurity | 2025-05-27 23:49:20+00:00
My goal isnt to top Nvidia. It is to allow people with little money or export restrictions to conduct realistic experiments (or usage) on local GPU's. Especially those on older process nodes that are significantly cheaper than $200 on eBay. Maybe $50.

How many sub-$100 cards could train and inference with OpenCL vs Vulkan? Which is the bigger opportunity for poor people right now if doing GPGPU projects on local hardware?
by devilbunny | 2025-05-27 23:52:30+00:00
Among their other fine services provided to the public, the University of Nebraska-Lincoln hosts a free, one-webpage-per-day version of the collected diaries of Lewis and Clark, heavily cross-referenced. If you want to have some hint of how it was to be them, crossing unknown territory peopled by strangers, you could hardly do better.

However, if you did manage to do better, it would probably be with Dale Morgan's Jedediah Smith and the Opening of the West, which was published by... the University of Nebraska Press.
by nickpsecurity | 2025-05-27 23:53:11+00:00
The "no one cares" market is large enough to support the existence of many competitors. Many have OpenCL support as their only thing in common. That might let us target older or cheap hardware in a cross-platform manner.

I agree the competition mostly did it to themselves. I'll add Nvidia throwing GPU's at academics who built a lot of stuff on them. Classic strategy that goes back to IBM vs Burroughs.