News for hackers. Stuff that matters.

ninkendo

Re:ChatGPT and Codex usage limits merging on Sunday November 01, 2026 @07:28AM (#50324976)
Question from a noob who’s never used openrouter: how do you actually do stuff with it other than chatting? Their website says it’s a unified interface for every model, but then they show a list of “most popular agents” (not models) that include things like “Codex” and “Claude Code”. Which implies I’m using openrouter to access other agents/harnesses, not just models. At which point what is openrouter doing for me?

I’d naively expect openrouter to be a thing that ships with its own agent/harness and lets you pick the model that requests are sent to. But the website implies that’s not what’s happening.

Re:Serbia just elected the world's brainiest parliament on Saturday October 31, 2026 @01:15PM (#50318011)
I think you're basically proving my point? (My point being: politics isn't just "getting elected".)

In such political systems where you essentially must vote the party line, what makes an individual "effective" (ie. what constitutes being "good" at your role)? I'd say it comes down to all kinds of political soft skills, ie. forging the right alliances, convincing the right people to change course, understanding motivations of others, etc.

All of these are generally called "politics", and are things that happen very much after you're elected.

Re:Serbia just elected the world's brainiest parliament on Saturday October 31, 2026 @09:06AM (#50315840)
> Politics is about getting elected

There's a lot under the umbrella of "politics" that happens after you get elected. If you want to accomplish anything after you get elected (heck, even if it's just personal enrichment) you have to be somewhat skilled at getting others to work with you, one way or another. As a politician you can have flawless convictions and be right and well-informed about all your decisions, but at the end of the day you're just one vote (to use legislators as an example) and it does nothing if you can't convince or work with others.

Re:I will no longer upload to NEW on Tuesday October 27, 2026 @07:56AM (#50257804)
No, it is always right to criticize Corporate Memphis. Keep up the fight.
Re:Overgrown, when plants invade your abandoned tabs on Monday October 26, 2026 @09:52AM (#50243727)
I don't generally do anything "incriminating" that would need to stay out of my browser history, and even if I did, clearing your local browser history isn't going to mean much: If it's truly criminal stuff you're talking about, all the websites you use are likely subpoena-able anyway and they'll get your "history" one way or another.

For mildly "incriminating" stuff that isn't illegal, just use an Incognito window. :-)

Re:Overgrown, when plants invade your abandoned tabs on Monday October 26, 2026 @09:50AM (#50243699)
Nah, my point is that having tons of tabs open literally clouds my mind, like being in a messy room. Closing the tabs feels like I'm tidying up. History exists so that I can still go back to a tab if I really need it, which makes it less "scary" to simply start from a clean slate.
Re:Overgrown, when plants invade your abandoned tabs on Sunday October 25, 2026 @07:46PM (#50237197)
Or a history item!

People forget about browser history. It’s super useful.

My technique: I open tabs just like anyone else, and when I feel like “that’s too many tabs”, I just close them all. Every one of them.

If I need them again? Open up the browser history. It’s searchable. It has everything. Use it!

Re:I Don't Understand Quantum Physics (2018) on Sunday October 25, 2026 @10:57AM (#50232222)
> the most "counter-intuitive" aspects of QM (interference, the uncertainty principle, entanglement) make perfect sense in this framework

Scott Aaronson’s “Quantum Computing Since Democritus” makes a similar assertion about learning QM from a linear algebra perspective and completely sidestepping all the thorny interpretation questions. It’s mostly a book about complexity theory and what quantum computers actually buy you, but it gives a lot of insight into the mathematics of it.

If you think the AI problem on YouTube is getting bad you should see what kinda stuff they put on there for kids.

Every now and then I’d let my 3 and 5 year old pick what they want to watch (on my account, but I’m supervising them) and they’d find these Mario videos that are basically someone prompting “make as many YouTube channels with Mario videos as you can” and walked away from the computer. Each video is a bunch of 3 second clips smooshed together with no continuity, backgrounds constantly changing, suddenly there’s 100 Luigi’s in the background for no reason, etc. And my kids couldn’t get enough of it.

Suddenly our recommendations were all Mario videos, and banning the channels does nothing because they’re coming from hundreds of different channels.

I just locked the profile, deleted all its history, and never looked back. No more YouTube for them.

Re:The foolishness of "natural language programming" (1978) on Saturday October 24, 2026 @01:55PM (#50223568)
> Natural language programming, or natural language processing, as it was called

NLP has nothing to do with programming. The Wikipedia article you linked doesn’t even mention programming once. NLP is old-school AI like you get when you try and cram all language into an ontology and try to “parse” it in an unambiguous way. It’s how Siri worked from the beginning, and it’s a complete dead-end. (I have some background here, I was an engineer on Siri for over 10 years.)

The fact that a compiler using old-school NLP would need a complete understanding of the world and all relevant facts in order to make natural language “process-able” is the reason the whole thing was a failure and why LLM’s are needed to make the idea work. You can’t just go from “parsing language” to “make me a TODO list app” without having an arbitrarily intelligent system to understand all the relevant background that such a statement implies.

When people realized human-level intelligence is necessary to make natural language programming work, is basically when the idea died. And now we have LLM’s and (what many would define as) human level intelligence, and its ability to program is just one side effect of many of it being truly artificially intelligent.

Re:Is this the new cyber normal? on Saturday October 24, 2026 @10:09AM (#50221397)
> it really comes down to whether humans or AI is more likely to take 'shortcuts'?

That’s not the original claim though, the claim is that this “vulnpocalypse” is only temporary because AI will no longer produce the kind of code it’s finding issues with. If AI still takes shortcuts, but only marginally less than the humans it’s trained to imitate, we won’t get there.

You could speculate that a year from now the models will improve to always approach problems from multiple angles and bring in multiple sub-agents each tasked with red-teaming the resulting code, and that this will be done implicitly and automatically for all tasks… and maybe that will be what actually makes this prediction come true. But that’s speculation and not what we have now.

Re:Docker Is Weird on Friday October 23, 2026 @06:14PM (#50216097)
I never said you can’t do that, I’m merely pointing out that GP’s example isn’t an example of doing that.

My point is that the Dockerfile is not a particularly good build system. It doesn’t solve any of the hard parts (how to build the thing, what to build when) and only solves problems it created (how to avoid re-running something on every invocation) and does it poorly (it doesn’t track dependencies, just determines cached-not-cached on every line.) It leads to awful hacks like putting every build step on an enormous chain of `cmd && \` lines to make sure you don’t produce extraneous layers.

A reasonable build system tracks dependencies for what needs to be built and has a target it’s trying to get to. Docker just says “do your build imperatively and we’ll figure out caching” and it’s extremely easy to shoot yourself in the foot leading to overly large images.

An example: there’s no way to say “build container: do this build and put the product here, runtime container: take the product and store it here” without creating a temporary layer in the build container that is not used anywhere else. So if your artifact is 1GB, you will always require 2GB to do a build: one for the runtime container (where you want it) and one for the build container (where you only needed it temporarily.) You just have to do “docker builder prune” every now and then when your disk inevitably gets full, there’s no way to simply not produce the duplicate in the first place.

(My workaround is to keep the artifact in a type=cache mount, store its SHA sum in the build container, then in the runtime container, grab the artifact from the type=cache mount and compare the SHA sum to make sure it didn’t change. Cache mounts can be GC’d at any time so it’s not even guaranteed to work.)

When I used docker at scale back in the day, the thing that worked best was always: bind-mount an artifacts dir into the build container, run the build. Then package up the artifacts dir. Then at runtime, fetch the artifacts, bind mount them into the runtime container. Then you can use a real artifact store on a plain HTTP server instead of messing with docker layers (no more worrying about pushing 100 1KB layers because you didn’t put enough &&’s in your dockerfile) and it was so, so much faster than any docker registry was in practice.

Dockerfiles are great for simple stuff but, if I already have a great build system that produces single binaries, it’s so much more pleasant to just use that.

Re:Apple Music 404 Not Found on Friday October 23, 2026 @05:53PM (#50215886)
I’ve never seen it work except in first party apps. YouTube, plex don’t support it, maybe Jellyfin does but I don’t remember. I’m betting it comes down to whether you use the built-in frameworks for video playback or bring your own.
Re:The foolishness of "natural language programming" (1978) on Friday October 23, 2026 @11:10AM (#50210395)
These two statements are distinct:

- You can program in natural language

- You can tell an AI what to do in natural language, and it can gather requirements, sketch up a design, write code, search the web for error messages, and iterate on the program until it works.

For certain things people care about, they’re equivalent (I tell the computer what I want and out pops a program) but for certain other things, they’re absolutely not (natural language doesn’t map deterministically into machine instructions.)

When people talked about natural language programming decades ago, they were talking about a system that compiles natural language into machine code. They weren’t talking about a system that autonomously gathers requirements, decides what frameworks to use, searches the web to look up error messages, iterates on ideas, etc… these things are so different from “natural language maps to machine code” that I don’t think we’re going to have a useful discussion if you think “I tell the computer what I want” is the only aspect of this worth looking at.

Re:Docker Is Weird on Friday October 23, 2026 @10:56AM (#50210143)
> You can absolutely build images with a bash script, here's an example

That script is just calling docker to build layers manually via `docker create`/`docker commit`/`docker run`/etc, using a Dockerfile as a rudimentary DSL over it. It's still building images "the way docker does", but in a more error-prone way.

What GP is trying to say with "I would've been happy with a Bash script, or handing it a tarball", is that it ought to support giving it a literal tarball, like you'd get via `make install DESTDIR=./out && tar -czf image.tgz -C ./out .`. Or just tar'ing up the build artifacts of any other existing, competent build systems. There's no need to treat building an image as some "containerized" thing where you have to run inside the bottom layer of the container to build the artifacts.

In fact nowadays with the best practice of split container builds, there's no benefit of saying "the container is guaranteed to have the dependencies because it's the container you built with", because in practice nobody wants to ship their runtime containers with an entire build environment in them. So they do one container to do the building, then pick out the artifacts they need and place them in the runtime container. At that point, what's the point of using containers to build again?

Re:Is this the new cyber normal? on Friday October 23, 2026 @08:01AM (#50207605)
I think that’s a fallacy, see https://news.ycombinator.com/item?id=50207540
Re:Is this the new cyber normal? on Friday October 23, 2026 @07:55AM (#50207540)
> Once the majority of code is written by similar systems then the tide of critical bugs being found will slow down.

I don’t know if this necessarily follows. I repeatedly see that AI will write code, then you have it audit the code for security vulnerabilities, and it still finds them. Just because AI can find bugs doesn’t mean it will write bug-free code. AI’s know how to take shortcuts to achieve their goals, and do it all the time.

Yes, you can have another AI audit the first AI’s code, but in practice this doesn’t always happen, especially because once the human gets their hands on the finished product, they don’t always take the extra step to ensure it’s audited. This is particularly true because people seem to think “well the AI wrote it in the first place, why would it find its own bugs?”, ignoring that context is everything, and an AI being asked to find bugs is going to approach the code a lot differently than an AI tasked with adding features.

That’s not to say it’s not possible to set things up properly into multi-agent stages with QA and security as first-class phases of development… I only mean to say that it’s not automatically true that “AI can find bugs” implies “AI doesn’t produce bugs”.

Re:The foolishness of "natural language programming" (1978) on Friday October 23, 2026 @07:18AM (#50207257)
> I'm not sure what the argument is supposed to prove.

I’m guessing it’s supposed to show that if you have to have arbitrary levels of intelligence to interpret natural language, then nothing’s changed between now and 1978 when considering whether “natural language programming” is a thing. Just because the intelligence is artificial now doesn’t really change the answer.

Re:Google's Rust Style Guide on Wednesday October 21, 2026 @11:29PM (#50190843)
The corollary to your point is that you have to be extremely cautious what enums you make into public API if you want to be serious about backwards compatibility… likely wanting to include more flexible variants like “unknown” or “generic”, to make your API more flexible. But this ends up being the same problem by a different name, because it still turns things into runtime bugs, just like non-exhaustive enums do.

It’s the eternal struggle between flexibility and strictness that doesn’t really have a silver bullet answer. Or maybe it’s better framed as “flexibility, safety, backwards compatibility, pick any two”?

Re:Nvidia's first GPU: GeForce 256 on Wednesday October 14, 2026 @09:26PM (#50097986)
> If Nintendo had invented that term in 1985 I wouldn't have seen anything wrong with them calling the NES' video chip a "GPU."

I mean, they basically did, just one letter off. The NES had a “PPU”, or pixel processing unit. Basically the same thing.

Re:Suicide rates highest ever among middle-aged men on Wednesday October 14, 2026 @08:42PM (#50097677)
> Ukraine giving up some amount of territory to Russia and making some guarantees about neutrality

So you’re saying the country that was invaded without any provocation, gives up territory for the pinky promise that Russia won’t do it again? You know this is already the second time in 10 years Putin has invaded and annexed Ukrainian territory, right? You do remember Crimea?

Or we can go further back in history, look at the policy of appeasement with hitler in 1939. It doesn’t end well. You don’t negotiate with invaders. They’re not going to stop because you asked nicely. They’re going to keep taking until it’s all theirs.

Re:Suicide rates highest ever among middle-aged men on Wednesday October 14, 2026 @08:26PM (#50097550)
Yeah and also the UK should have just let Nazi Germany take over. And France should not have resisted as much, that caused too much suffering. And basically anyone who opposed the holocaust. Sure, six million Jews died, but by defeating the people who did it, even more people died. Better to just let them do it.
Re:Suicide rates highest ever among middle-aged men on Wednesday October 14, 2026 @08:22PM (#50097521)
Let me just try to understand your position here: Ukrainians are warmongers?

What does that make the Russians?

Re:11 year old unsoundness bugs found in Rust borrow checker on Wednesday October 14, 2026 @06:14AM (#50085185)
The imperfect nature of humans.

Do you have a point you’re going to share? Or is this faux Socratic nonsense just for your own personal entertainment?

Re:11 year old unsoundness bugs found in Rust borrow checker on Tuesday October 13, 2026 @09:06AM (#50071072)
> Why does the rust compiler fail to enforce it in this case?

A bug. The one linked, that we're all talking about.

Feel free to share a link to any software that has zero bugs.

Re:Apple/macOS silently removed from official Unix registry on Saturday October 10, 2026 @07:52PM (#50038310)
It wasn’t the Unix subsystem, but was a subsystem… it implemented the various Linux syscalls and binary format directly and forwarded them to the NT kernel, similarly to how the various win32 syscalls call into the NT kernel. So WSL was a “peer” of the win32 subsystem in the same way SFU or SUA was. But it wasn’t implemented “via” SUA.

Then in WSL2 they just switched to using a VM, which is way more boring but probably less work to keep up with (I’m sure the Linux kernel has a lot of stuff that needs translating/implementing and it’s simpler to just use a hypervisor)

Re:Apple/macOS silently removed from official Unix registry on Saturday October 10, 2026 @07:40PM (#50038244)
You can make an apfs volume that’s case sensitive and mount it as your project directory/etc, no need to reinstall the whole OS.
[delayed]
Re:I'm in a Meeting on Friday October 09, 2026 @08:16AM (#50019412)
[delayed]
Re:How to speed up the Rust compiler in September 2026 on Monday October 05, 2026 @06:23AM (#49962992)

  export CARGO_TARGET_DIR="$HOME/.cache/cargo-target/myproject"

Older »