MurphyA/hacker-news huggingface dataset:
by Squeeeez | 2025-10-05 19:30:20+00:00
And so, instead of having an open port for ssh, (ideally) with certificate-only authentication, optionally MFA, you trade it for an open port for tailscale/wireguard, handing over "all" your data to a company who is offering you a service for no monetary compensation.

Also, why do you think that it is better to not change the root password? It sounds like a very suspicious recommendation.
by estimator7292 | 2025-10-05 19:31:08+00:00
As my last job was winding down (much to the disbelief and utter denial of the CEO) we'd ran out of money for Unity licenses and ran out of staff to use Unity. CEO decided that we absolutely must have a Unity demo that worked with the slightly newer generation of hardware I was wrapping up. Being the only programmer left, it was of course my problem to figure out. Oh and also this has to be ready for a show next week, so chop-chop.

I ended up decompiling some android APKs our last Unity dev had built like eight months prior. I figured out how to extract our device driver library, then painstakingly rewrote the entire library to support new hardware while also maintaining a compatible ABI and stuffed it all back into the APK. I think I also had to forge some keys or something? It was a fucking mess. Anyway, that was the last work I ever did for him because he didn't pay me for about two months after that, and I quit the moment he gave me the wages he owed me.

He's only got one employee and zero customers, but hey his stupid demo worked for all that mattered.
by throwaway_7274 | 2025-10-05 19:31:10+00:00
An older CS professor (whose book, I’m guessing, about half of HN posters have read) told me essentially the same thing.

He’s one of the best people to talk to in the department. Kind, passionate and compassionate, interested first and foremost in ideas and people. No ego, doesn’t care about telling anyone he’s smarter than them (he is though), just wants to figure things out together.

The junior faculty can’t afford to be that way.
by toast0 | 2025-10-05 19:31:26+00:00
> So here's a question: if your ipv6 is behind CGNAT and calls an ipv6 on the other side of the CGNAT: is it still one-way, or un-NAT'ed?

Depends, it's easy to do things like 464xlat and NAT64 where you route those address spaces through the CGNAT and other stuff direct. Or through a stateful firewall (which could be the CGNAT or something else) if you really need a stateful firewall.
by johnnyanmac | 2025-10-05 19:31:53+00:00
>I'm so happy people today don't suffer the way we used to suffer.

TBF Ali bugs in some framework you're using still happens. The problem wasn't eliminated, just moved to the next layer.

Those debugging skills are the most important part of working with legacy software (which is what nearly all industry workers work in). It sucks but is necessary for success in this metric.
by jopsen | 2025-10-05 19:31:54+00:00
> The Interior Ministry explained that while most systems at the Daejeon data center are backed up daily to separate equipment within the same center and to a physically remote backup facility, the G-Drive’s structure did not allow for external backups.

This is why I don't really want to run my own cloud :)

Actually testing the backups is boring.

That said, ones the flames are out, they might actually be able to recover some of it.
by kennu | 2025-10-05 19:32:47+00:00
I feel the opposite about SQL: It is often being shoehorned into use cases that don't fit the relative/transactional database model at all. My own default database is AWS DynamoDB, because it fits 90% of my own use cases quite well and offers a fast approach for iterative development. Recently I've been evaluating how to find the same level of abstraction in open source databases, and MongoDB feels like the closest match. Postgres with JSONB comes second, but manipulating JSON with SQL is not very comfortable and tends to result in subtle problems e.g. when something is NULL.
by FergusArgyll | 2025-10-05 19:33:12+00:00
Intel for the w :) /s

On a more serious note; chatgpt thinks that it may be caused by GPU driver issues - which would explain why your setup is having a harder time (my gpu is intel standard whatever...) so it suggests turning off hardware acceleration.

It links to these 2

https://www.elevenforum.com/t/edge-and-chrome-freezes-after-...

https://www.reddit.com/r/nvidia/comments/1kgxdno/psa_windows...

I have no way to test this, so do what you want with it.

Chatgpt link https://chatgpt.com/share/68e2c648-c5c0-8003-bcc9-49785c0131...
by immibis | 2025-10-05 19:33:33+00:00
AFAIK you can register on a VPN, or even Tor, if you sign up with a paid plan, but you cannot sign up a free account without revealing your identity in some way.

They do accept Bitcoin payment, but not Monero. I wonder if that's because Monero is illegal for them, or just because they didn't bother to.
by auxbuss | 2025-10-05 19:34:09+00:00
Gmail always rejects the first email I send to a new gmail account. It does this every time – and has done for years – despite the fact I have sent emails to hundreds of other gmail accounts, and send emails to such accounts every day.

This is the reason I personally will not touch any Google services. And in business, I excise Google services as a priority. If a company cannot handle email in a civil manner, it certainly can't be trusted with anything of importance.
by MomsAVoxell | 2025-10-05 19:35:26+00:00
>ugly mess

That may be the case, but there are plenty of examples of elegant implementations.

JUCE, for instance:

#include <juce_core/juce_core.h> class MyComponent { public: void doAsyncOperation(std::function<void(int)> callback) { // Simulate async work juce::MessageManager::callAsync([callback]() { callback(42); // Call the functor with result }); } }; // Usage MyComponent comp; comp.doAsyncOperation([](int result) { juce::Logger::writeToLog("Callback received with: " + juce::String(result)); });

.. I think that's kind of clean and readable, but ymmv, I guess?
by camel-cdr | 2025-10-05 19:35:34+00:00
Not sure in which context this is used, but you can do -1 << k in most ISAs but that still requires a bit-not. But if you want to use the value in a bitwise instruction, then there are often variants that can invert the input operand.

E.g. in RVV instead of vand.vv(a, vadd.vi(vsll.vv(1,k),-1)) you could do vandn.vv(vsll.vv(-1,k))

AVX-512 can do this with any binary or ternary bitwise logic function via vpternlog
by protimewaster | 2025-10-05 19:36:25+00:00
I think the biggest problem with Steam is that when you buy a game on Steam, it's tied to your Steam account forever. In theory, Gabe could croak and they get bought by a VC firm that decides that a Steam account costs $45/month. At that point, you either give up all the games you purchased on Steam, or pay the $45/month.

I don't know why anyone would prefer their games tied to a service in that way. Especially when we've seen other digital stores go belly up, resulting in inaccessible collections.
by manmal | 2025-10-05 19:36:26+00:00
The article sets out with an urban legend that doesn’t hold water:

> More time is more tension; more pain is more gain.

While this meta analysis [1] found that:

> Results indicate that hypertrophic outcomes are similar when training with repetition durations ranging from 0.5 to 8s.

Maybe author should have chosen the amount of training resistance for the intro allegory (perceived effort?). This would have made their point just as well.

1: https://pubmed.ncbi.nlm.nih.gov/25601394/
by mrandish | 2025-10-05 19:36:33+00:00
Yes, remapping can work in narrower cases where right-CTRL is only used in combination with non-modifier keys.

CoPilot is really sending: Shift+Alt+Win+Ctrl+F23. When you remap the CoPilot key to right-Ctrl only the F23 is being remapped to right-Ctrl. Due to the way Windows works and because MSFT is now sending F23 DOWN and then F23 UP when the CoPilot key has only been pressed Down, the other modifiers remain pressed down when our remapped key is sent.

So, what's happening now when you press CoPilot after remapping it to Right-Ctrl... the keys actually being sent are: Shift+Alt+Win+Right-Ctrl (there are also some other keypresses in there that are masked). If your use case doesn't care that Shift, Alt and Win are also pressed with Right-Ctrl - then it'll seem fine - but it isn't. Your CoPilot key remapped to Right-Ctrl no longer works like it did before or like Left-Ctrl still works (no other modifiers). Unfortunately, a lot of shortcuts (including several common Windows desktop shortcuts) involve Ctrl in combination with other modifiers. Those shortcuts will still work with Left-Ctrl but not CoPilot remapped to Right-Ctrl. And there's no way to fix it with remapping (whether AutoHotKey, PowerToys, Registry Key, etc). It might be possible to fix it with a low-level service running below the level of Windows with full admin control which intercepts the generated keys before Windows ever sees them - but as far as I know, no one has succeeded in creating that.
by zelphirkalt | 2025-10-05 19:36:57+00:00
The problem is, that many people are also incapable of adding much to the process. We have had that kind of situation long before "AI". There are tons of gatekeepers and other types of people out there, that are a net negative, wherever they are employed, either by doing bad work, which someone else needs to clean up after them, or by destroying work culture with silly shortsighted dogmatism of how things must work, clueless middle management, and so on. We need to leave these people somewhere. Maybe with "AI" a few more of these are revealed, but the problem stays the same. Where do we leave all these people? What task can we give them, that is not dehumanizing can we give them, where they will be a positive, instead of net negative to society? Or do we leave it all up to chance, that one day they will find something they are actually good at, and that doesn't result in net negative for humanity? What is the future of all the people? UBI and letting them figure it out doesn't look like such a bad idea.
by faluzure | 2025-10-05 19:37:50+00:00
I had some fun history with this OS.

First, we had ICON computers in my elementary school, we'd all try to spin the trackball as quickly as it would go. Not sure if we ever broke one.

The second is when I worked at BlackBerry. I was building a feature that allowed you to use your QNX BlackBerry as a Bluetooth HID device. You could connect it to any device and use the trackpad + physical keyboard to remotely control a computer. It was fantastic. You could hook your laptop up to a project and control slides from your BlackBerry.

Then some product manager with questionable decision making told me to lock it down so it would only work with Blackberry Playbooks for "business purposes", rendering it effectively useless (since Playbooks are all ewaste). I distinctly remember that meeting where Dan Dodge argued that since it's a standard, it should not be locked down.

I respect Dan Dodge for that, I don't think I'd work with that PM again.
by xnx | 2025-10-05 19:37:57+00:00
I strongly believe that there is an important role for government actions in many areas (e.g. pollution), but I can't see any good reason for the government to intervene here. If it sucks for consumers, they'll do something else with their time and money.

I'd much rather the government do more to bring competition to Internet service providers where the regulatory/infrastructure barriers are much higher.
by CharlieDigital | 2025-10-05 19:38:21+00:00
> Usually you combine this with pattern matching and other functional features and the whole thing makes it convenient in the end. That part is missing in C#

You mean like this?

string foo = result.MatchFirst( value => value, firstError => firstError.Description);

Or this?

ErrorOr<string> foo = result .Then(val => val * 2) .Then(val => $"The result is {val}");

Or this?

ErrorOr<string> foo = await result .ThenDoAsync(val => Task.Delay(val)) .ThenDo(val => Console.WriteLine($"Finsihed waiting {val} seconds.")) .ThenDoAsync(val => Task.FromResult(val * 2)) .ThenDo(val => $"The result is {val}");

With pattern matching like this?

var holidays = new DateTime[] {...}; var output = new Appointment( DayOfWeek.Friday, new DateTime(2021, 09, 10, 22, 15, 0), false ) switch { { SocialRate: true } => 5, { Day: DayOfWeek.Sunday } => 25, Appointment a when holidays.Contains(a.Time) => 25, { Day: DayOfWeek.Saturday } => 20, { Day: DayOfWeek.Friday, Time.Hour: > 12 } => 20, { Time.Hour: < 8 or >= 18 } => 15, _ => 10, };

C# pattern matching is pretty damn good[0] (seems you are not aware?).

[0] https://timdeschryver.dev/blog/pattern-matching-examples-in-...
by johnnyanmac | 2025-10-05 19:38:47+00:00
>in the future when will you be in a situation you can't access a LLM?

In an interview setting, while in a meeting, if you're idling on a problem while traveling or doing other work, while you are in an area with weak reception, if your phone is dead?

There are plenty of situations where my problem solving does not involve being directly at my work station. I figured out a solution to a recent problem while at the doctor's office and after deciding to check the API docs more closely instead of bashing my head on the compiler.

>We don't practice much using the assembler either, or the slide ruler.

Treating your ability to research and critically think as yet another tool is exactly why I'm pessimistic about the discipline of the populace using AI. These aren't skills you use 9-5 then turn off as you head back home.
by jcheng | 2025-10-05 19:38:48+00:00
gpt-5 also got 100/100 for both CSV and JSON.

uv run inspect eval evals/table_formats_eval.py@table_formats_csv --model openai/gpt-5 --limit 100 uv run inspect eval evals/table_formats_eval.py@table_formats_json --model openai/gpt-5 --limit 100
by WJW | 2025-10-05 19:39:21+00:00
Isn't pretty much everything in the world like this? I have no idea who built my house, designed the road network in my city, programmed the driver for the keyboard I'm typing this comment on. Even for "big" projects, I don't think anyone except for a small group of people would know (without looking it up) the name of the lead engineer of the A380 project, or the person who was in charge of designing the ISS. Even less people will know the names of the people who actually built those things. Almost everyone in the modern world is functionally anonymous.
by mwkaufma | 2025-10-05 19:41:30+00:00
>> Can you elaborate on your third point? What would a class need to do to affect debugging info?

Common implementations are a function pointer + void* pair, which in most debuggers just show you two opaque addresses. Better to include a info block -- at least in debug builds -- with polymorphic type pointers that can actually deduce the type and show you all the fields of the receiver.

>> sometimes an architecture can be vastly simplified if the source of information can abstracted away.

"sometimes" is doing a lot of heavy lifting here. That's my whole point -- more often than not I see some type of homespun functor used in cases that are _not_ simplified, but actually complicated by the unnecessary "plumbing."

>> RAII and architecture primarily address this

If the receiver uses RAII to clean up the callback, then you've reintroduced the "type-intrusiveness" that functors are meant to avoid...?
by obscurette | 2025-10-05 19:41:45+00:00
Are you a parent? Have you ever seen a kid growing up? 90%+ of kids wouldn't care at all about any work or learning without social pressure from parents, teachers and peers. That's the whole point of schools – to create a social pressure to put all this knowledge into heads of kids in hope that some of this would be useful for them. And to do it through all these awfully messy years we call childhood and adolescence.
by watwut | 2025-10-05 19:42:12+00:00
Verbal and social abuse always went hand in hand with the physical one. Physical bullying is just one tactic bullies used. The same bully that beats a guy always mocked the same guy and badmouthed him to others.

I am old enough to remember that bullying victims were blamed back then. The victim blaming was not a term yet, they were blamed for not fighting back. But if they fought back they were also blamed for the resulting ruckus.

The primary reason was that dealing with bully is hard. Blaming victim is easy.
by codingdave | 2025-10-05 19:42:23+00:00
What are the users trying to accomplish? "Look at data in a table" is rarely actually the reason someone is looking at a table. They are trying to gain information in order to... what? Don't let a prior implementation choice lock down your thinking. Ask why are they looking at the data. What are they trying to learn? What next action does the data drive?

Your best UX is going to depend on how those questions are answered. Like you said -- cards are one option to step away from tables. There may be others. But take a step back and understand the underlying problem that the table solves, then see if there is an alternative approach.
by erichocean | 2025-10-05 19:42:23+00:00
I'll give you an easy example. LMDB has a (very) long-standing bug where "DUPSORT" databases become corrupted over time.

Separately, I wanted to make some changes to LMDB but the code is so opaque that it's hard to do anything with it (safely).

So I gave the entire codebase to Gemini Pro 2.5 and had it develop a glossary for local variable renames and for structure member renames. I then hand-renamed all of the structures (using my IDE's struct member refactoring tools). Then I gave the local variable glossary and each function to Gemini and had it rewrite the code. Finally, I had a separate Gemini Pro 2.5 context and a Claude Opus context validate that the new code was LOGICALLY IDENTICAL the previous code (i.e. that only local variables were renamed, and that the renaming was consistent).

Most of the time, GPro did the rewrite correctly the first time, but other times, it took 3-4 passes before GPro and Opus agreed. Each time, I simply pasted the feedback from one of the LLMs back into the original context and told it to fix it.

The largest function done this way was ~560 LOC.

Anyway, the entire process took around a day.

However, at one point, GPro reported: "Hey, this code is logically identical BUT THERE IS A SERIOUS BUG." Turns out, it had found the cause of the DUPSORT corruption, without any prompting—all because the code was much cleaner than it was at the start of the day.

That is wild to me! (It actually found another, less important bug too.)

Without LLMs, I would have never even attempted this kind of refactoring. And I certainly wouldn't pay a software engineer to do it.

> What are you creating where you can see the results in that time frame to make entire business decisions like that?

I've developed new libraries (using GPro) that have APIs it can reliably use. What's easy for LLMs can be hard for humans, and what's easy for humans can be hard for LLMs. If you want to use LLMs for coding, it pays to need code they are really good at writing. AI-first development is the big win here.

(This is all in Clojure BTW, which isn't really trained for by vendors. The idea that LLMs are ONLY good at, e.g. Python, is absurd.)
by llbbdd | 2025-10-05 19:43:56+00:00
I've found that when any of these agents start going down a really wrong path, you just have to start a new session. I don't think I've ever had success at "redirecting" it once it starts doing weird shit and I assume this is a limitation of next-token prediction since the wrong path is still in the context window. When this happens I often have success telling it to summarize the TODOs/next steps, edit them if I have to remove weird or incorrect goals, and then paste them into a new session.
by Rochus | 2025-10-05 19:44:25+00:00
Nice article, interesting read.

The Neutrino 6.4 version, which was made accessible as "openQNX" to the public, can still be downloaded from e.g. https://github.com/vocho/openqnx.

Here is an AI generated documentation of the source: https://deepwiki.com/vocho/openqnx
by zaptrem | 2025-10-05 19:44:41+00:00
> There are about 936 tokens with very low L2 norm, centered at about 2. This likely means that they did not occur in the training process of GPT-oss and were thus depressed by some form of weight decay.

Afaik embedding and norm params are excluded from weight decay as standard practice. Is this no longer true?

E.g., they exclude them in minGPT: https://github.com/karpathy/minGPT/blob/37baab71b9abea1b76ab...
by ashtonsix | 2025-10-05 19:44:53+00:00
If you have an array of numbers with a known upper-bound, such as enums with 8 possible values (representable with 3 bits), and a memory-bound operation on those numbers eg, for (int i; i < n; i++) if (user_category[i] == 0) filtered.push_pack(i), which is common in data warehouses, using my code can more than 2x performance by allowing more efficient usage of the DRAM<->CPU bus.
by program_whiz | 2025-10-05 19:44:59+00:00
Honestly I feel my skills atrophying if I rely on AI too much, and many people I interact with are much weaker still (trying to vibe code without ever learning). To take your analogy further, having a single speed bike lets you go further faster and doesn't have a big impact on your "skills" (physical in this case), but deferring all transport to cars, and then to an electric scooter so you never have to walk definitely will cause your endurance / physical ability to walk to disappear. We are creatures that require constant use of and exercise of our capabilities or the system crumbles. Especially for high-skill activities (language, piano, video games, programming), proficiency can wane extremely quickly without constant practice.
by nayuki | 2025-10-05 19:45:08+00:00
> Data Ownership as a conversation changes when data resides primarily with people-governed institutions rather than corporations.

This is a false contrast. Corporations are institutions governed by people - specifically a board of directors, elected by shareholders. They aren't governed by aliens nor are they self-sentient. https://en.wikipedia.org/wiki/Institution#Examples , https://en.wikipedia.org/wiki/Institution#Examples

Perhaps you meant that you are against for-profit corporations where the customer (who stores data) has no vote in the operation of the corporation? If so, then say that and don't imply it.

People often use "corporation" as a pejorative, often in contrast to individual people. But they forget that a corporation is composed of people and ultimately owned by (some) people - but the kind of people that the writer does not like (shareholders, profit-makers, etc.).

> Notice that Alice’s handle is now @alice.com.

It's funny you're using .com as the example, because:

> The domain com is a top-level domain (TLD) in the Domain Name System (DNS) of the Internet. Created in the first group of Internet domains in March of 1985, its name is derived from the word commercial, indicating its original intended purpose for subdomains registered by commercial organizations. Later, the domain opened for general purposes. -- https://en.wikipedia.org/wiki/.com

Even when you're arguing against commercial organizations for storing personal data. Now you're just naming individual people as if they were companies.
by thunky | 2025-10-05 19:45:37+00:00
I don't know about that...

The LLM only needs to convert the human language into some strict machine readable structure (like an AST), which the human doesn't need to bother with. This is a pure conversion task. From there, something else (not a human) can convert that to running machine code.

Effective this would obsolete the human facing programming language.
by AlecSchueler | 2025-10-05 19:45:38+00:00
> say that China is good, Chinese history is good, West is bad, western history is bad

It's funny because recently I wanted to learn about the history of intellectual property laws in China. DeepSeek refused the conversation but ChatGPT gave me a narrative where the WTO was essentially a colonial power. So right now it's the American AI giving the pro China narratives while the Chinese ones just sit the conversation out.