MurphyA/hacker-news huggingface dataset:
by ben_w | 2025-10-30 22:41:30+00:00
Alignment researchers have heard all these things before.

> The control paradigm fails because it creates exactly what we fear—intelligent systems with every incentive to deceive and escape.

Everything does this, deception is one of many convergent instrumental goal: https://en.wikipedia.org/wiki/Instrumental_convergence

Stuff along the lines of "We're gambling civilization" and what you seem to mean by autopoietic autonomy is precicely why alignment researchers care in the first place.

> Engineer genuine mutualism where neither human nor AI can succeed without the other.

Nobody knows how to do that forever.

Right now is easy, but also right now they're still quite limited; there's no obvious reason why it should be impossible for them to learn new things from as few examples as we ourselves require, and the hardware is already faster than our biochemistry to a degree that a jogger is faster than continental drift. And they can go further, because life support for a computer is much easier than for us: Already are robots on Mars.

If and when AI gets to be sufficiently capable and sufficiently general, there's nothing humans could offer in any negotiation.
by smcin | 2025-10-30 22:44:12+00:00
"the portfolio that maximizes an adjusted CAGR" over the ranges 2015-2025? Isn't that one just massively overfitting to the unique geopolitical events of 2016-current? 1970-2025 sounds better. But still that's baking in the USD exchange rate.

What happens if you backtest it by finding the equivalent portfolios for 1998-2008 (or even 1919-1929?)
by Matterless | 2025-10-30 22:44:55+00:00
I don't know why I'm surprised every time to see so many people astounded in the comments every time another of these articles come out. I guess I thought by now this phenomenon would be more common knowledge... I'm a non-seer and a non-self speaker. That is, I do not have any clear monologue whatsoever, nor can I visualize anything at all. However, I have a pretty great memory, just not for the experience of things, but instead only the circumstances, the trivia, the conclusions, and all of those can be very granular.

Words exist for me in the space beyond my lips, or my fingertips; what that feels like, in the moment, is that it is the act of externalization of words which makes them come into being, but not for a moment are they ever out of my control.

I can't remember the sound of my mother's voice. Not really. Of course if I heard it in a recording it would be as recognizable as any voice, and in fact when I watch animated shows, like classic King of the Hill for example, I'm extremely good at picking out all the celebrity voices and I'm often surprised that I can identify a voice I didn't know that I knew.

I used to have an internal monologue. I used to be able to picture things. That all went away in my teens. Not only can I somewhat remember what that was like, I'm able to experience vivid internal pictures and internal sounds sometimes in the moments just before I'm fully asleep. It doesn't happen very frequently, but it's enjoyable when it does.

And that's it. If you have any questions for thisaphantasic non-self-speaker, have at it.
by andyferris | 2025-10-30 22:45:19+00:00
Most effect-tracking languages have a GC and allocations/deallocations are handled implicitly.

To perform what we normally call "pure" code requires an allocator but not the `io` object. Code which accepts neither is also allocation-free - something which is a bit of a challenge to enforce in many languages, but just falls out here (from the lack of closures or globally scoped allocating/effectful functions - though I'm not sure whether `io` or an allocator is now required to call arbitrary extern (i.e. C) functions or not, which you'd need for a 100% "sandbox").
by kyrra | 2025-10-30 22:45:40+00:00
The biggest for me: merge-conflict as first-class state within JJ.

I regularly have multiple commits being worked on at a time across different parts of the codebase. If I have to sync to head (or any rebase) and one of my side branches that I'm not actively working on hits a merge conflict, I don't have to deal with it in that moment and get distracted from my work at hand (ie: I don't need to context switch). This is a big productivity win for me.

If you want some other points, check out: https://fallthrough.transistor.fm/43#t=0h31m5s

Some points from the episode:

* With no separate index vs commit, (everything is just a commit), you don't need different commands and flags to deal with the different concepts, they are all just marked together. In JJ, if you want to stack/stage something, it's just a normal commit (no reason to have different concepts here).

* You don't have to name/commit a change at all. Every time you run any JJ command (like `jj log`, or `jj status`), it will snapshot the changes you have. This means that if you want to go work on some other branch, you don't have to go and commit your changes (they auto-commit, and you don't have to write a description immediately), then update to master branch and start working again.

* Or you can just `jj split` (https://jj-vcs.github.io/jj/latest/cli-reference/#jj-split), and split a working changeset into 2 separate commits.
by Agingcoder | 2025-10-30 22:45:53+00:00
The git documentation is one of the nastiest docs ever just like the whole git ui. It’s technically entirely correct, but won’t help you understand how it works in any way.

It’s exactly like folks in 1995 telling you to rtfm when you’re trying to install Linux from a floppy disk. It’s doable, but annoying, and it’s not that easy.
by theodorejb | 2025-10-30 22:45:58+00:00
One option to make it a little safer is to add ignore-scripts=true to a .npmrc file in your project root. Lifestyle scripts then won't run automatically. It's not as nice as Pnpm or Bun, though, since this also prevents your own postinstall scripts from running (not just those of dependencies), and there's no way to whitelist trusted packages.
by derefr | 2025-10-30 22:46:29+00:00
I didn't make any assertion about AI, only about "AI" (note the quotes in my GP comment) — i.e. the same old machine-learning-based features like super-resolution upscaling, patch-match, etc, that people have been adding to image-editing software for more than a decade now, but which now get branded as "AI" because people recognize them by this highly-saturated marketing term.

Few artists want generative-AI diffusion models in their paint program; but most artists appreciate "classical" ML-based tools and effects — many of which they might not even think of as being ML-based. Because, until recently, "classical ML" tools and effects have been things run client-side on the system, and so necessarily small and lightweight, only being shipped if they'll work on the lowest-common-denominator GPU (esp. "amount of VRAM") that artists might be using.

The interesting thing is that, due to the genAI craze, GPU training and inference clusters have been highly commoditized / brought into reach for the developers of these "classical ML" models. You don't need to invest in your own hyperscale on-prem GPU cluster to train models bigger than fit on a gaming PC any more. And this has led to increased interest in, and development of, larger "classical ML" models, because now they're not so tightly-bounded by running client-side on lowest-common-denominator hardware. They can instead throw (time on) a cloud GPU cluster to train their model; and then expect the downstream consumer of that model (= a company like Canva) to solve the problem of running the resulting model not by pushing back for something size-optimized to be run locally on user machines, but rather by standing up an model-inference-API backend running it on the same kind of GPU IaaS infra that was used to train it.
by bruckie | 2025-10-30 22:46:34+00:00
I run a "Bank of Dad", tracked in a spreadsheet for my kids. They can choose to "invest" their money with me or not. To make investing meaningful for them, I pay 10% interest per month, up to a $50 balance.

To avoid bankrupting myself—and to encourage them to get a real investment account when the time comes—the rate drops as the balance increases, similar to progressive tax brackets. By the time they get to $1000 balance, the annualized rate works out to ~6%, and after that it drops fast enough that it's essentially free for me to operate.

Overall, it's been quite successful. Now whenever the kids get money, they invest it immediately. And they often delay or forego spending so that they can get more interest the next month. They haven't turned into complete misers, but it has encourage a mentality of thinking about saving, and I think the concept of interest has landed quite well. I think things really started to click for them around age 8 or 9.

If you're interested in doing something similar, I made a sanitized version of the spreadsheet. Feel free to copy: https://docs.google.com/spreadsheets/d/1f3FgHUohw26sHuCoO40s...
by ficklepickle | 2025-10-30 22:47:33+00:00
> Add remote control door opening without destroying my flat's intercom system.

Oh hey, I made that[0] at a previous apartment! It sat on my LAN and I'd VPN in if I was out of wifi range.

I struggle to find time/motivation for stuff like that these days. I was contracting back then and had downtime between jobs.

[0] https://github.com/jeremy21212121/doorman-building-arduino
by seec | 2025-10-30 22:48:02+00:00
Exactly. I have been (forced) in catholic circles in my youth because of my mother and it's absolutely frightening how bad those people can act/talk, often openly. Similarly, I have some far-left friends who constantly advocate for things close to communism but they are (by far) the stingiest and least sharing people I know.

I think there is some sort brain gymnastic that protects them against the incoherence.
by jibbit | 2025-10-30 22:48:10+00:00
If you could see a photographic-quality image in your mind, you could answer questions about it the way you’d answer questions about a photograph in front of you. 'what’s written on the sign?' 'how many windows?' That's photographic memory. Since that’s not real, the 'normal visualization' everyone's comparing themselves to doesn’t exist either. Yet we keep treating as credible people who assert what others experience based on not experiencing it themselves. This is epistemically bankrupt.
by netsharc | 2025-10-30 22:48:18+00:00
> common dialog boxes and common controls.

Ah, makes me reminisce installing Office 6.0 on Windows 3.1 and getting "3D" dialogs, from ctl3d.dll

This post has screenshots of the dialogs: http://www.win3x.org/win3board/viewtopic.php?t=14706
by Jnr | 2025-10-30 22:48:30+00:00
Except many new cars are locked down in software, for example not allowing to release rear parking brakes without authorized service subscription, keeping the electronic keys for each VIN unique and stored in the cloud. Yes, there are workarounds on releasing the brakes manually but it is a burden.

Also similarly as with iPhones, many cars require connecting to the authorized service to change headlights and other parts since they are paired with the MCU.

I know how to work on my car but I am not able to because someone decided to lock it down.
by BrandoElFollito | 2025-10-30 22:48:36+00:00
For me this is the other way round. When I was a student (physics) I had a very, for a lack of a better word, "practical" visualization in my head - what I needed to understand what I was studying. There was a lot of maths too, visualized.

Today, 30 years later, I have vivid representations of calligraphy or art, especially when I fall asleep. I fall asleep within at worst minutes so I cannot really take full pleasure of watching these ilages and during the day I am too surrounded by sources of sound, images etc. to meaningfully repeat the exercise.
by derefr | 2025-10-30 22:48:52+00:00
The price ceiling has little relation to cost, sure. But COGS sets an effective price floor — you'll be revenue-negative unless you do the math to ensure you're charging customers (especially your largest customers) at least COGS. COGS is the most critical number your enterprise salespeople will ask you for in order to backstop their negotiations.

For some companies, COGS and customer LTV are numbers with such different orders of magnitude that they don't even have to think about the COGS side.

But "software you charge a one-time fee for" generally produces a very low customer LTV; and "renting compute on someone else's GPU IaaS" generally produces a very high (customer-lifetime-integrated) COGS; so if they were sticking to the "just charge for the software" model, "COGS rising faster than CLTV" would be a direct threat to their business model. Which is... why they don't want to do that.
by sfink | 2025-10-30 22:49:26+00:00
This is only absent from git because you said "easily". ;-) git can certainly handle doing this, it has more than enough functionality for it. But you're kind of fighting against the grain to do it.

Yes, jj very much supports this workflow. It's not a single feature, though:

- `jj absorb` automatically guesses what patches in your stack your changes should go to and puts them there, leaving uncertain ones behind. Combine this with `jj undo`, and you can first try an absorb and then immediately undo it if it gets it wrong. - `jj squash --interactive --into X` (aka `jj squash -i -t X`) is the more controlled option, where you can select the specific files/hunks/lines to amend X with. The auto-rebasing then adjusts the rest of the stack to match. If it creates conflicts, you can either undo, fix them now, or fix them later. - if you want to experiment with reordering your stack (or more generally, reorganizing your DAG), you can do so without it making a bigger mess than is absolutely necessary. That's not just because of undo. If you try to rebase a patch too early and it produces tons of conflicts, you can rebase it back and the conflicts will be gone (assuming you didn't have some in the first place, but if you did you'll be back to the same ones). You can try different places within the stack and see what'll work best. - As an expansion of the above, you can also split off pieces of one diff and insert it or squash it anywhere in the stack (eg `jj split --revision X --insert-after Y` aka `jj split -r X -A Y`, or `jj squash --interactive --from X --into Y` aka `jj squash -i -f X -t Y`). You don't need to be "at" X to rip off pieces and put them elsewhere, you can do it anytime.

In summary, the full answer is "hell yeah!"

Note that this doesn't magically eliminate all problems that arise from collaboration. You can't push your stack somewhere and have other people start working off of it and modifying it while modifying it yourself locally. Or rather, you can, but you'll end up with a mess. Perhaps much less of a mess than eg git, because jj tracks evolving changes and not just commits and so you might be able to have some idea of what's going on once you've pulled the conflicting mutations back into your local repo. But generally speaking, you still have to be disciplined about changing anything that other people can see and possibly depend upon. (jj can help by automatically making such things immutable once you've made them visible to others, but that too can be a bit confusing and require setup specific to your situation.) This comes up a lot in code review, and there are solutions that handle parts of the problem with varying degrees of success, but I've already rambled quite a bit.
by acoustics | 2025-10-30 22:49:27+00:00
jj has been fantastic for my productivity, but most of that comes from its alignment with the particular SWE practices on my team: trunk-based development, small atomic commits, quick review turnaround.

Getting rid of the staging area and allowing conflicts are the biggest wins for me day-to-day. No more stashing/popping or littering my workspace with WIP commits. It's so easy to whip up a change, send it for review, then ping-pong between writing new code on top of the change and making reviewer-requested edits further down the stack.
by kassner | 2025-10-30 22:49:33+00:00
How do you tell iOS/Android which website to open? You do that by hijacking the request to http://captive.apple.com and then 301/302 it to your domain, with or without https. If the first request iOS made was to be secure, you’d have to have a valid certificate for captive.apple.com running in your infrastructure OR the iOS would have to allow self-signed without asking for exceptions. Both sound like a terrible idea.
by mattmanser | 2025-10-30 22:50:21+00:00
I'm in the UK, if you're hosting US that's probably part of it, it's easy to forget that mainstream websites have a ton of CDN.

But yeah, they were gradual rendering over 1-2 seconds.

I was on mobile, not sure if you've used responsive image sizing or not as it's a faff to inspect source, but if you haven't it's a game changer for making image heavy websites snappy.

Then again, depends where you're getting the images from, could just be you were getting throttled because you got a bit of a HN hug of death.
by freehorse | 2025-10-30 22:50:29+00:00
Julia evaluates NaN === NaN to true, as long as the underlying bit representations are the same. Eg NaN === -NaN evaluates to false, as happens also with NaNs where for some reason you tinker with their bytes. I think it makes sense that it is so though, regardless that I cannot think of any actual use cases out of doing weird stuff.
by canada_dry | 2025-10-30 22:50:31+00:00
I'm curious why a GRUB based replacement for ventoy isn't popular? SSDs are ubiquitous/inexpensive.

SSD+USB+GRUB with either a single GRUB partition and multiple ISO files stored in subdirectories, OR one parition per ISO/OS.

Adding new ISOs would require some manual editing of the grub config but wouldn't this be a decent substitute??

Like many people I'm hesitant to use an OS installation tool that has not been thoroughly reviewed to ensure there is no malware in binary blobs.
by FredPret | 2025-10-30 22:51:14+00:00
Depends on what it gets spent on - capital purchases dont reduce net income. You can write it off, but there are rules limiting how much.

So you could have a situation where you have $1m in profit, and you want to buy a $1m machine, but the machine goes on your balance sheet and not your income statement, so your books still show $1m in profit, even though you now have no cash. And now you still have to pay tax on the $1m.

Now, in the next year, the rules allow you to write off say $200k of that machine, reducing your profit by that much. Eventually, you get to write off much / all of the machine.

But cash is king, and on a cash basis, the tax man is doing very much better than the business in this scenario.

Better to dispense with all the accounting intrigues, tax corporations at 0%, and just tax dividends, buybacks, and salaries.
by andyferris | 2025-10-30 22:51:29+00:00
Personally I find this really cool.

One thing I like about the design is it locks in some of the "platforms" concepts seen in other languages (e.g. Roc), but in a way that goes with Zig's "no hidden control flow" mantra.

The downstream effect is that it will be normal to create your own non-posix analogue of `io` for wherever you want code to hook into. Writing a game engine? Let users interact with a set of effectful functions you inject into their scripts.

As a "platform" writer (like the game engine), essentially you get to create a sandbox. The missing piece may be controlling access to calling arbitrary extern C functions - possibly that capability would need to be provided by `io` to create a fool-proof guarantees about what some code you call does. (The debug printing is another uncontrolled effect).
Ask HN: Codex vs. Claude
by SunshineTheCat | 2025-10-30 22:51:59+00:00
I've been using ChatGPT's Codex and after learning some of its quirkiness, I have a workflow I'm pretty happy with for building out next.js apps (and some lingering WordPress tasks). That said, I almost never hear anyone mention it (Codex). It seems almost everyone uses Claude Code.

That said, I'm genuinely curious for those who have used both. Have you seen a big advantage with one over the other? I'm wondering if there's anything major I'm missing that may be worth diving into Claude as an alternative.
by poly2it | 2025-10-30 22:52:24+00:00
From the comments here I'm almost getting the impression aphantasia is more common than not, which is wild to me. I'm quite sure I'd place myself on one. I can imagine an apple, and it will vividly appear. I can transform it, see reflections on it or imagine the feel and sound from slicing it. However, I do not experience the apple as part of an overlay, as some others have described it. Rather, it's as if I use a different set of eyes, ears or a another skin. The more vividly imagine the apple, the less aware I become of my actual senses. I can of course also imagine how the apple would interact with the environment around me, but the combined environment is still distinct from reality. I also have very precise memories of faces I've seen. I've always wondered if there's an inverted correlation with my number memory, which is much more diffuse.
by anyfoo | 2025-10-30 22:52:44+00:00
Since we're being pedantic, there is some confusion of ideas here (even though you do make a valid overall point), and the strawman may not be as ridiculous.

First, I think when you say FFT, you mean DFT. A Fourier transform is both non-discrete and infinite in time. A DTFT (discrete time fourier transform) is discrete, i.e. using samples, but infinite. A DFT (discrete fourier transform) is both finite (analyzed data has a start and an end) and discrete. An FFT is effectively an implementation of a DFT, and there is nothing indicating to me that hearing is in any way specifically related to how the FFT computes a DFT.

But more importantly, I'm not sure DFT fits at all? This is an analog, real-world physical process, so where is it discrete, i.e. how does the ear capture samples?

I think, purely based upon its "mode", what's happening is more akin to a Fourier series, which is the missing fourth category completing (FT, DTFT, DFT): Continuous (non-discrete), but finite or rather periodic in time.

But secondly, unlike Gabor transforms, wavelet transforms are specifically not just windowed Fourier anythings (whether FT/FS/DFT/DTFT). Those would commonly be called "short-time Fourier transforms" (STFT, existing again in discrete and non-discrete variants), and the article straight up mentions that they don't fit either in its footnotes.

Wavelet transforms use an entirely different shape (e.g. a haar wavelet) that is shifted and stretched for analysis, instead of windowed sinusoids over a windowed signal.

And I think those distinctions are what the article actually wanted to touch upon.
by ajross | 2025-10-30 22:52:51+00:00
They did, and no one is perfect. But Debian is the best.

FWIW, the subject at hand here isn't accidentally introduced security bugs (which affect all software and aren't well treated by auditing and testing). It's deliberately malicious malware appearing as a dependency to legitimate software.

So the use case here isn't Heartbleed, it's something like the xz-utils trojan. I'll give you one guess as to who caught that.
by Bender | 2025-10-30 22:53:30+00:00
I only see one [dead] comment under your username [0] which looks to be a bot advertising things. One of your early submissions is also [flagged][dead] for advertising [1] when your account was new. Please take some time to read through the guidelines [2] to reduce the chances of a submission or comment being flagged.

[Edit] I also see your historical comments are asking how to get on assorted platforms. They will not be accomodating to advertising either.

[0] - https://news.ycombinator.com/item?id=45109800

[1] - https://news.ycombinator.com/item?id=34483943

[2] - https://news.ycombinator.com/newsguidelines.html