MurphyA/hacker-news huggingface dataset:
by nottorp | 2025-06-13 09:47:37+00:00
Carmack has a post from ages ago wondering why no one does that with the ID engines they open sourced, which were pretty current back then. He was talking about the quake (2?) source code dumps i think.

Edit: ohh i found it:

http://www.gamespy.com/articles/641/641662p6.html

The GPL license will allow people to take the Quake 3 engine and even go so far as to release a commercial product with it - provided that the source code is published alongside. Nobody has done this with any of the Quake engine games yet, but he hopes to see it happen someday.
by thyristan | 2025-06-13 09:49:59+00:00
This is, at least for browser notifications, just yet another result of generally atrocious browser UI decisions.

There are tons of permissions a site may or may not request, all of them configured and requested in different ways. Sometimes it is a full page overlay, like when you get a certificate error. Sometimes it is a separate popup window, like when you allow using a client certificate. Sometimes it is a whole-width bar below the address bar, like when a page requests becoming your mailto:-scheme-handler. Sometimes it is a smaller popover dangling from the address bar or some icon there, like for camera or location. Sometimes I can allow/deny, sometimes I can allow or just close that tab. Sometimes I can remember the setting, sometimes it is auto-remembered.

As soon as the initial setting has been configured, removing or reconfiguring it happens in totally different and unobvious places again.

And then, If I allowed something and there is e.g. a notification from a website, the browser hides the fact that this is a browser-based notification, there are no embedded "STFU, never show again" buttons or anything.

There also is no simple place to just look at all the permissions some website might have. There also isn't a place for many permissions, where you can get a list of websites that have e.g. camera permissions.

It is all just very opaque, non-obvious, historically grown inconsistent spaghetti.

What needs to happen is a consistent permission request and change flow for everything a website wants to do. Not only with "allow forever/deny forever", but also with "allow/deny once", "allow/deny for session", "allow/deny for timeframe". And with an "allow to ask again after timeframe/never/..." selection. Not with popups or bars, but with a whole-page overlay like HTTPS does. Why whole-page? Because then clickjacking won't work, there is more space to put an explanation and options, and pages need to interrupt flow so this will hopefully be used sparingly.
by JanisErdmanis | 2025-06-13 09:51:07+00:00
A scam is a strong word, giving the impression that there are malicious interests in selling it without working towards making returns to the investors. But a dead horse, for sure, it now looks like.

The next big challenge will be mounting the controlling hardware, currently connected via coaxial cables, onto the chip while preventing the introduction of new sources of interference so that error correction can run. That will take a miracle.

Of course, an alternative is a million coaxial cables connected to a chip cooled close to mK temperatures.
by srean | 2025-06-13 09:52:49+00:00
I think you are right and the Upton Sinclair quote might have cut too close to home.

This is also a very different problem to solve. Especially in the face of regulatory capture.

An alternative model, where the owner/proposer owns complete liability of dangers and damages proved in the future, is also not fully satisfactory.

I think some shared ownership of liability is the best solution but no business will touch it.

Privatisation of profit socialization of liability is where things are at.
by Fuzzwah | 2025-06-13 09:53:56+00:00
If only there was a way to learn the meaning of words....

Let me chatgpt that for you:

When someone “gets ratioed,” it means their post has more negative feedback than positive engagement. The number of comments or replies outweighs the number of likes or retweets, indicating the content is controversial.

When someone says they "got ratioed by <someone>", it usually means that the reply or response from that person received significantly more engagement (likes, retweets, etc.) than the original post.

It very often happens when a popular account disagrees with your take. When someone with a big following replies to your post, their audience quickly sees it, and if their response is witty, harsh, or widely agreed with, it can snowball into a ratio very fast. Their followers will usually like and boost their reply, sometimes swarming your original post with disagreement or mockery.
by lithocarpus | 2025-06-13 09:55:53+00:00
While theoretically it's possible there's some compound that tastes sweet with no other ill effects, I will remain skeptical and not risk my health on novel compounds or novel concentrations of compounds just because a lot of studies failed to show a harm.

In the case of sweet, I have found that simply minimizing eating sweet things has caused everything else to taste better/sweeter.
by simeonmiteff | 2025-06-13 09:57:03+00:00
This analysis follows the development of ssh-auth-cmd, a tool that allows chaining multiple SSH authentication sources. Written primarily by Claude AI under human guidance, the project serves as a fascinating case study in AI-assisted development. The article documents the complete conversation history, including breakthrough moments like discovering how to constrain AI for clean refactoring, handling licensing questions for AI-generated code, and the iterative feedback process that led to production-ready software. The project demonstrates how AI can handle substantial code generation while humans provide critical architectural oversight and quality control.
by tuyguntn | 2025-06-13 09:57:34+00:00
> The Trump admin’s foreign policy is to allow Netanyahu to operate autonomously. The same they offer ICE.

to be honest, by now, it feels like the opposite, Netanyahu is allowing Trump admin to operate autonomously when it comes to internal affairs, for foreign policy Netanyahu is dictating the US foreign policy.

Go check Twitter, for some reason 90% of congress members immediately started praying for Israel after Israel's attack, as if they were handed over the message
by rlpb | 2025-06-13 09:58:37+00:00
Even then there are plenty of legitimate scripts that are useless to an individual in practice. How am I going to read a name out in a waiting room if I cannot read the script? For some scripts I probably couldn't even perform a string match; certainly not against handwriting.

I think "reasonable" must be limited to the subset that the population of that country can reasonably be expected to be literate against; otherwise transliteration is necessary.
by defrost | 2025-06-13 09:59:34+00:00
When a reply to a tweet gets more likes than the tweet it was replying to, usually indicating the unpopularity or stupidity of the original tweet

Damn you got 12 likes and his reply got 271 likes? He totally ratioed you bro

https://www.urbandictionary.com/define.php?term=Ratioed
by antihero | 2025-06-13 10:03:10+00:00
Yeah but depending on how you set it up, you could have a very short expiry. If your auth system is as simple as: Verify refresh token -> Check a fast datastore to see if revoked -> Generate new auth token, this is very easy to scale and and you could have millions of users refreshing with high regularity (<10s) at low cost, without impacting on your actual services (who can verify the auth token offline).

Say you had 1,000,000 users, and they checked every ten seconds, that's 100,000 requests per-second. If you have 1,000,000 users and can't afford to run a redis/api that can handle an O(1) lookup with decode/sign that can handle that level of traffic, you have operational issues ;)

It's all a tradeoff. Yes, it means some user may have a valid token for ten more seconds than they should, but this should be factored into how you manage risk and trust in your org.
by potato3732842 | 2025-06-13 10:03:28+00:00
See that's the thing. Even the states that turn out ten cents on the dollar (in terms of tax money, not necessarily GDP) poorer would still likely consider themselves better off because they don't have to cater to fed regulations that are at best a compromise and at worst a capitulation to other states.

Those losing states still get to reap all sorts of savings by not doing things that are done at the behest of the feds. Like for example California has dragged its dick all over every policy involving indoor water and plumbing and outdoor rainwater and runoff management in just about the worst ways. Pretty much every state east of the Mississippi could stain to instantly gain more bang for their buck in every expenditure of that nature by simply creating their own (perhaps in cooperation with nearby states) sensible rules on the subject. It's just pants on head retarded that we've got desert states and wet states using the same rule book in this area. Repeat for all sorts of other subject where the sensible policy scoping level is something other than "the entire nation".
by baalimago | 2025-06-13 10:03:33+00:00
>But we need more people to work on them.

That's my point: I don't see how there could be people dedicated to work on an issue as grand as this in Rust's current organizational form. Especially considering all the gotchas, and continuous development of 'more fun' things (why work on open source if it's no fun?). That's why it's 'the bedrock'.

To do something like that, Rust would need to be forked and later on rewritten with optimizations. But by then it wouldn't be "Rust" anymore, it would be a sibling language with rusty syntax. Rust++, perhaps.
by iLoveOncall | 2025-06-13 10:04:19+00:00
> The Stanford professor and former Google Brain scientist said the term misleads people into imagining engineers just "go with the vibes" when using AI tools to write code.

This is exactly what is happening.

I think HE doesn't understand what vibe coding means.

Vibe coding is NOT "AI-assisted coding", it is letting the AI do everything with 0 checks beyond manually validating surface-level functionality and passing back the obvious issues to the AI.
by lproven | 2025-06-13 10:05:37+00:00
There is no goal shifting going on here. That is what the word "accessible" means in the context of computer software.

It does not mean "you can buy it" (purchasable) or "you can get hold of them" (available) or "you can order them" (orderable).

It means accessible to people with sensorimotor disabilities.

https://en.wikipedia.org/wiki/Accessibility
by LeonM | 2025-06-13 10:07:18+00:00
The one thing that is often a dead giveaway is how many stimulants seem to have the opposite effect on people with ADHD.

I have ADHD, amfetamines help me relax, caffeine causes me to fall a sleep, some anti-allergy medication can cause me to stay awake for 2 days straight.

I read that in some countries doctors can prescribe mild sleeping pills for babies to help them stay calm during long flights. They always advice to test it before going on the flight, because some babies can actually become hyperactive from that medication. If that happens, there's a good chance the baby has ADHD.
by pnin | 2025-06-13 10:07:57+00:00
The senior title comes first -- Prof. Dr. Dr. Honorary doctorates are "honoris causa", abbreviated h.c. If you get multiple of these, you write Dr. h.c. mult. So you occasionally find Prof Dr. Dr. h.c. mult. X (would have been the correct way to address Umberto Eco, for instance). After introductions, people generally name only the most senior title, if any.
by bob1029 | 2025-06-13 10:10:40+00:00
> bigger company, who have the time and resources to specialize it into something which fits better into a professional market

Welcome to the central thesis for using Microsoft's stack.

If I'm getting paid money based upon the direct outcome of my work (I.e., freelance / consulting / 1099), I am taking zero chances with the tooling. $500 for a perpetual license of VS the cheapest option by miles if you value your time and sanity.

Iteration time is nice, but the debugger experience is the most important thing once you are working on problems people are actually willing to pay money to solve. Just because it's "possible" doesn't mean it is ergonomic or accessible. I don't have to exit my IDE if I want to attach to prod and run a cheeky snippet of LINQ on a collection in break mode to investigate a runtime curiosity.
by raffael_de | 2025-06-13 10:12:36+00:00
> "Vibe coding," coined by OpenAI cofounder Andrej Karpathy in February, describes giving AI prompts to write code. As Karpathy puts it, developers can "fully give in to the vibes" and "forget the code even exists."

To be fair, Karpathy coined the term specifically for a playful, just-for-fun, quarter-serious approach to software development where you just tell the machine what you want and then be open for surprises. Assisted coding is not vibe coding in that sense.
by jason-johnson | 2025-06-13 10:12:43+00:00
Can you say what your development environment was like? I was having 15 minute build times for a pretty small system. Everyone talks about how slow Rust compile times are so I thought that's just how it is. Then, by chance, I ended up building from a clean install on my work laptop and it took about 3 minutes from scratch.

My development environment is VS Code running in a Dev container in docker desktop. So after my work laptop was so fast, I made some changes to my Mac docker desktop and suddenly the mac could build the project from scratch in about 2 minutes. Incremental compile was several minutes before, instant now.
by meindnoch | 2025-06-13 10:13:08+00:00
>Monotonic Bezier curves are contained within the bounding box of its end points

What's a "monotonic Bezier curve"?

Btw, every Bezier curve is contained within its control points' convex hull. It follows from the fact that all points on a Bezier curve are some convex combination of the control points. In other words, the Bezier basis functions sum to 1, and are nonnegative everywhere.
by AugustoCAS | 2025-06-13 10:13:15+00:00
A quick google shows this for FF (taken from a thread in StackOverflow):

> In Firefox you can completely disable beforeunload events by setting dom.disable_beforeunload to true in about:config. Extensions may be needed for other browsers.

A word of caution: I'm not 100% sure, but I wonder if some web collaboration tools might use this to ensure data has been synced with a server.
by LeonM | 2025-06-13 10:13:55+00:00
I was diagnosed with ADHD at 38, and never expected to hear that diagnosis. Main reason was my misunderstanding of what ADHD is. Like most people, I just naively associated ADHD with hyperactive kids, and thought I was just lazy and having procrastination issues.

Now that I understand it so much better, I start to recognise it everywhere. After reading first paragraph of the article, I immediately though: Laurie must have ADHD!

For ADHD the things that often help are: breaking tasks up into smaller tasks and having a way of tracking progress. You don't want to do that on a screen, your phone is a distraction device!

I write my to-do lists on a paper notebook so I can tick them off. But the label printer idea is also a smart one! Though maybe a bit over-engineered, but I guess that was just a way for Laurie to procrastinate on the solution ;-)
by alexnewman | 2025-06-13 10:15:48+00:00
There's a couple ways to skin it. In fields where people are happy with products, i think familiarity is good. In fields where people hate the products, you get to go in tabla rasa. In this case they take advantage of the form of the interface through multisearch et al. Instead of resembling legal software, I wonder if they should resemble a court or a briefcase?
by mellosouls | 2025-06-13 10:17:06+00:00
We need a cool sounding name for AI-assisted coding as opposed to actual "vibe coding" (no process or thought beyond feels) which is constantly being confused with the former despite Karpathy's clear original definition.

My suggestion:

Pro-coding

The "pro" can be thought of as either "process" or "professional" or similar.

The main point is that unlike vibe coding it's not just flying by the seat of your pants, you're actually doing intellectual work as described by Ng.
by melvinroest | 2025-06-13 10:17:22+00:00
> the organized chaos that it brings to my table actually _helps_ me regain a bit of my higher-order thinking

Same. My favorite playlist that I made for this is called Break Through The Galaxy [1]. It pushes me to think beyond my boundaries and those boundaries and those boundaries etc.

It’s 50% DnB and 50% other genres of which the songs/tracks hit the same way. For example, it starts with a calm guitar composition.

[1] https://open.spotify.com/track/519POQZ8qXwhqtKzAu1Exp?si=CSV...
by OdehAhwal | 2025-06-13 10:17:23+00:00
That’s seriously impressive—turning YouTube videos into AI tutors in under a minute is such a smart use of existing content. I’m definitely adding it to my site eSideHustles[.]com directory, where I curate internet side hustle ideas. We’ve got a tutoring category with 74+ useful resources, and this fits right in.

If you're open to it, I’d love to help support your launch. Feel free to reach out to me on X @odehahwal so we can connect and share feedback!
by namaria | 2025-06-13 10:19:51+00:00
Same story for me. What has really helped is trying to make initiating useful and desirable tasks easier and seeking distractions harder. Bit by bit, cultivating that mindset changes things for the better over time.

The trap is usually "I've figured it out and this new system will solve my life" only to be burned out days or weeks later because this only addresses the symptoms and not that cause.

Cultivating a more friendly environment has been a great help for me. That and taking notes.
by efitz | 2025-06-13 10:21:30+00:00
Time based expiry (“freshness”) is not about likelihood of brute force. Brute force prevention is handled by delay/lockout policy for online systems, and by password complexity rules or key length/cipher combinations. Nobody sane uses such rules in such a way that make brute force “slightly impractical”- security practitioners always choose lifetime-of-the-universe-scale complexity if given a choice.

Instead, expiry is about “what are the chances that the secret has already leaked” and about choosing an acceptable compromise between rotation frequency and attacker loiter time - assuming that the system hasn’t been back doored, let’s put an upper limit on how long an attacker with the secret has access. And incidentally it also means that if you somehow fail to disable access for ex-employees, that lingering access will eventually take care of itself.

But as the article points out, expiry has always been controversial and it’s not clear that on balance expiry is a good control.
by wink | 2025-06-13 10:25:05+00:00
How do you overcome a wrong observation of a local maximum though (e.g. in your club maybe)?

I only experienced something like this once, late 90s. We thought of ourselves as pretty ok StarCraft players until we got some visitor to a lan party who basically demolished everyone. This was pre-ladder iirc so you only played a handful of games online.
by diggan | 2025-06-13 10:25:25+00:00
> I don't see how there could be people dedicated to work on an issue as grand as this in Rust's current organizational form

You're getting half ways there of giving actionable feedback, what exactly is the problem with the current organization structure that would prevent any "grand" issues like these? Is there a specific point in time when you felt like Rust stopped being able to work on these grand issues, or it has always been like this according to you?

> why work on open source if it's no fun

It's always fun to someone out there, I'm sure :) There are loads of thankless tasks that seemingly get done even without having a sexy name like "AI for X". With a language as large as Rust, I'm sure there might even be two whole people who are salivating at the ideas of speeding up the current compiler.
by efitz | 2025-06-13 10:25:30+00:00
I’ve always said “lockout turns a possible password guessing attack into a guaranteed denial-of-service attack”.

Worse, it means that if an attacker can guess or otherwise obtain user names, the attacker needs nothing but network access to deny service to your users.

My favorite example is the iOS policy where it added more and more time before the next login attempt was allowed; small children kept locking their parents out of iPads and iPhones for weeks or months.
by ssl-3 | 2025-06-13 10:25:31+00:00
If one is incentivized (eg, paid) to burn power, then sure: One can burn power and reap the incentive. It can happen in any market. The producer has so much abundance of a thing, for whatever reason they do, that they're willing to pay others to get rid of it for them.

It can even happen productively: "Hey, they're paying us to run the heat! Turn the glass kiln on so we can get a head start on tomorrow."

Or "Hey, they're paying us to charge our batteries! Let's charge them!"

It can also be "Hey, they're paying us to run resistive heaters! Turn on the artificial sun!"

Whatever it is: If the demand satisfies the supply, then the supplier is satiated. And then the price can go back to something more-profitable for that supplier.
by nh2 | 2025-06-13 10:27:42+00:00
glibc does NOT return memory to the OS just fine.

In my experience it delays it way too much, causing memory overuse and OOMs.

I have a Python program that allocates 100 GB for some work, free()s it, and then calls a subprocess that takes 100 GB as well. Because the memory use is serial, it should fit in 128 GB just fine. But it gets OOM-killed, because glibc does not turn the free() into an munmap() before the subprocess is launched, so it needs 200 GB total, with 100 GB sitting around pointlessly unused in the Python process.

This means if you use glibc, you have no idea how much memory your system will use and whether they will OOM-crash, even if your applications are carefully designed to avoid it.

Similar experience: https://news.ycombinator.com/item?id=24242571

I commented there 4 years ago the glibc settings MALLOC_MMAP_THRESHOLD_ and MALLOC_TRIM_THRESHOLD_ should fix that, but I was wrong: MALLOC_TRIM_THRESHOLD_ is apparently bugged and has no effect in some situations.

A bug I think might be involved: "free() doesn't honor M_TRIM_THRESHOLD" https://sourceware.org/bugzilla/show_bug.cgi?id=14827

Open since 13 years ago. This stuff doesn't seem to get fixed.

The fix in general is to use jemalloc with

MALLOC_CONF="retain:false,muzzy_decay_ms:0,dirty_decay_ms:0"

which tells it to immediately munmap() at free().

So in jemalloc, the settings to control this behaviour seem to actually work, in contrast to glibc malloc.

(I'm happy to be proven wrong here, but so far no combination of settings seem to actually make glibc return memory as written in their docs.)

From this perspective, it is frightening to see the jemalloc repo being archived, because that was my way to make sure stuff doesn't OOM in production all the time.
by woolion | 2025-06-13 10:30:33+00:00
I'm quite convinced humans, unless in an environment that restrict their food intake (e.g. being working outside in the fields), are just generally not able to manage the hunger of the sugar-induced insulin crash.

I've switched to the keto diet for other health reasons --I never had any weight issues, and my weight didn't change-- but I never feel as hungry as I used to. But eat a square of chocolate and the hunger comes back.
by TimByte | 2025-06-13 10:31:07+00:00
The analogy to video games and the need for fast, tangible feedback really lands for me. But I do wonder how sustainable is the receipt printer setup? The novelty and fun factor are real, but do you think you’d still get the same motivation after six months, or will it just become another background habit? (Not that "good habits" are bad, of course)