MurphyA/hacker-news huggingface dataset:
by carlosjobim | 2025-11-24 22:11:59+00:00
The big problem with Cmd+Tab in MacOS is that it only works well on a US keyboard where you have the little ' key next to Tab to switch between app windows. For non-US keyboards I never figured it out.

So yes, it's a weak point in MacOS. But the discussion isn't whether Apple devices have weak points, it's whether they are innovating or not. And even if they're not perfect, they are still way ahead of the competition, IMO.

You're implying that Linux file managers are much ahead of Finder, what are the innovations they have? One innovation I still miss in Finder is z-snake menus for navigating, moving and copying files:

https://discuss.haiku-os.org/uploads/default/original/2X/f/f...

On the other hand Finder does have Miller columns, which to me is the best way to manage and explore files.
by tracker1 | 2025-11-24 22:12:17+00:00
Commenting while reading...

On classes, I get it... tbf though I'm fine with prototype inheritance as well, there's positives and negatives to both approaches... not to mention, there are benefits to not really having either and just having objects you can interrogate or even that are statically assigned at creation (structs).

What's funny on the Method Syntax for me, is that I actually don't like mixing classes that hold data and classes that do things more often than not. I mean, I get the concepts, but I just don't generally like the approach. The only exception might be a controller with a handle to a model(state) and the view... but even then, the data itself (model) is kind of separated as a reference, and don't tend to attach too many variants of state to anything... I'm generally a fan of the single state tree approach (often used for games, and famously via Redux).

On information hiding... I'm generally not too much of a fan of hiding members of an object used to hold data... I mean, I can see filters when you're passing something to the edge of a system, like a hashed password on a user object exposed via an api. But internally, I'd almost rather see immutability as a first class over locking bits and pieces down, then exposing member methods to mutate the object internally. Just my own take.

On Encapsulation, like above... I'm more on the side of the Data oriented design approach. To me this is where you have API surfaces and like above I tend to separate modules/classes that do things, from templates/models/classes that hold data.

I'm mixed on Interfaces.. they're definitely useful for plugin systems or when you have multiple distinct implementations of a thing... but after a couple decades of C#, they're definitely overrated and overused.

No strong opinions on Late Binding pr Dynamic Dispatch... other than I do appreciate it at times in dynamic language environments (JS).

Inheritance and SubTyping imo are, similar to Interfaces, somewhat overrated... I just try to avoid them more than use them. There are exceptions, I'm actively using this in a project right now, but more often than not, it just adds undue complexity. With prototype based inheritance, it's also possible to really slow down certain processes unintentionally.

Strong proponent of Message Passing approaches... it often simplifies a solution in terms of the surface you need to be aware of at a given point. Allows you to construct decision trees and pipelines of simpler functions.

Interesting overall... but still not a fan of some of the excesses in OOP usage in practice that I've had to deal with. I just prefer to break problems up slightly differently... sometimes blurring clear lines of separation to have a simpler whole, sometimes just drawing the lines differently because they make more sense to me to break up for a given use case.
by foresto | 2025-11-24 22:12:49+00:00
On the other hand, the developer convenience offered by Electron et al. comes by sacrificing runtime efficiency. It's astonishingly wasteful of resources, and that waste gets multiplied by every computer that runs the program, and every time it is run. The long-term costs saved by the developer are thereby amplified and pushed onto the users, in the form of shorter hardware upgrade cycles (and potentially increased electricity usage).

Just as a book will be read many more times than it is written, the burdens associated with a program's architecture will be borne many more times (collectively) by its users than by its developer. This is why I avoid web-based tech when building applications.

Relatedly, I'm glad to see that sustainable computing has begun showing up in global discourse.
by yellow_cobra | 2025-11-24 22:13:08+00:00
This is not true. Even the Free plan has DDoS protection. L3/L4 (TCP SYN floods, UDP reflection attacks and similar) filtering is built-in and always-on, by default. CloudFront terminates TLS, and only forwards valid HTTP(S) requests to cache / origin.

The "Always-on DDoS Protection" on L7 is protection against massive requests spikes, built natively into CloudFront. Detection and mitigation of these attacks happens inline.

The "Advanced DDoS Protection" on L7 is adjustable, score-based DDoS protection configurable on AWS WAF (https://aws.amazon.com/blogs/networking-and-content-delivery...). Detection and mitigation of these attacks happens within seconds.
by stepquiet | 2025-11-24 22:13:42+00:00
Postman posted a blog entry about the event: https://blog.postman.com/engineering/shai-hulud-2-0-npm-supp...

"Our security engineering team is investigating the matter and thus far has concluded that while some public Postman NPM packages were infected, (1) Postman as an app is not compromised, and (2) our production cloud services are also not compromised."
by Dylan16807 | 2025-11-24 22:13:57+00:00
> you didn't answer the question (someone else did), you misinterpreted it

> doing so and then trying to turn it

Do you have me confused with someone else? I did not reply until after you said why you asked. I didn't misinterpret anything.

I'm not trying to do any sneaky redirection. I just think it's bad to bring up AI on non-AI topics!

> At school they say: There are no stupid questions, only stupid answers. Consider what negative value you have brought to this conversation, without providing any insight whatsoever.

You said you dislike the AI dominating the front page, right?

You're contributing to that when you ask questions like the above.

Questions are usually good but sometimes a question is so off-topic that it detracts from the conversation.
by IgorPartola | 2025-11-24 22:14:33+00:00
No. My argument is valid if you have deadlines and your resources are not infinite. Either you were the only one reporting bugs at which point of course you could fix the as you found them because they were always in your work context or you had no deadlines and could afford to switch context without the inefficiency of it affecting anything.

In most situations you have users who also find bugs and report them when they want, not when you are ready for them.

You can even see that your argument does not apply generally by the fact that bugs exist in software for years. If your way was both more efficient AND more aligned with human nature then everyone would be working like this but clearly almost nobody can afford to drop everything to fix a user’s random low priority bug the minute it is reported.
by DNewecki | 2025-11-24 22:14:41+00:00
What keeps an AI from drifting into unmaintainable chaos?

I started building the answer four years ago: CORE — open-source framework for constitutionally aligned AI-driven development.

Key pieces: - Immutable Constitution: 10-min readable, copy-paste into any project - ConstitutionalAuditor: blocks drift instantly - Human Quorum: required for edge cases (GitHub/Slack ready) - Self-Healing Loops: `core-admin fix all` stays inside the rules - Mind–Body–Will architecture: fully modular & traceable

Alpha, MIT, 5-minute QuickStart.

Built for the post-Opus world: AI codes fast; CORE ensures it codes right.

Docs: https://dariusznewecki.github.io/CORE/ Worked example: https://github.com/DariuszNewecki/CORE/blob/main/docs/09_WOR...
by tptacek | 2025-11-24 22:14:51+00:00
The standards people have problems with weren't run as open processes the way AES, SHA3, and MLKEM were. As for the rest of it: I don't know what to tell you. Sounds like a compelling argument if you think Daniel Bernstein is literally the most competent living cryptographer, or, alternately, if Bernstein and Schneier are the only cryptographers one can name.
by ck2 | 2025-11-24 22:15:06+00:00
I wish someone would take on an open-source project for a sports watch with full features like vo2max estimation, etc.

like a cyanogenmod or lineageos but for an older watch model

someone has completely decompiled the firmware for the Garmin Forerunner 245 which is very similar to a Fenix 5

imagine if someone took on making open firmware for it

https://github.com/anvilsecure/garmin-ciq-app-research/

if taking on a brand name might incur lawsuits there are other watches like the wahoo rival which was completely retired and they got out of the business (it was only $99 too)

or there are other ppen hardware options from China
by rstuart4133 | 2025-11-24 22:15:25+00:00
Trumps Standard Operating Procedure for bad news is to flood the zone with bullshit. [0]

The Epstein files are going to be released. Around the same time we've heard Trump threaten US senators with execution, threaten to hand over Ukraine to Russia, attack a major supporter Marjorie Taylor Greene who then announced her resignation, and I have no doubt a shower of other crap I've managed to avoid.

Trumps behaviour is so predictable now if we pay attention to it with headlines like this, we must share some of the culpability for it.

[0] https://theconversation.com/trumps-attacks-are-worsening-why...
by btown | 2025-11-24 22:15:42+00:00
There's another variable, though, which is how valuable "engineering time now" is vs. "engineering time later."

Certainly, having a regular/automated update schedule may take less clock time in total (due to preserved knowledge etc.), and incur less long-term risk, than deferring updates until a giant, risky multi-version multi-dependency bump months or years down the road.

But if you have limited engineering resources (especially for a bootstrapped or cost-conscious company), or if the risks of outages now are much greater than the risks of outages later (say, once you're 5 years in and have much broader knowledge on your engineering team), then the calculus may very well shift towards freezing now, upgrading later.

And in a world where supply chain attacks will get far more subtle than Shai-Hulud, especially with AI-generated payloads that can evolve as worms spread to avoid detection, and may not require build-time scripting but defer their behavior to when called by your code - macro-level slowness isn't necessarily a bad thing.

(It should go without saying that if you choose to freeze things, you should subscribe to security notification services that can tell you when a security update does release for a core server-side library, particularly for things like SQL injection vulnerabilities, and that your team needs the discipline to prioritize these alerts.)
by int_19h | 2025-11-24 22:15:55+00:00
Yes, I did the math. Wish I still had the spreadsheet.

It's not as simple as multiplying the population. The point is that if everyone gets that check, then you can raise the nominal tax rate much higher but still get the effective tax rate (i.e. income - tax + UBI) in reasonable territory. As I recall I actually went all in and also made it a flat income tax to see how much the UBI offset would work at making it effectively progressive, and that also works out.
by GianFabien | 2025-11-24 22:16:38+00:00
Vibe coding in the hands of competent, experienced developers provides amazing leverage. For example, whipping together utilities to perform domain specific tasks. Of course, it could be done the conventional way but why bother when your AI "junior dev" can whip it up in minutes.

Instead of downloading various open-source utilities and finding none does exactly what you require, you can have AI build a bespoke program, just for your specific needs.
by alvaroflm | 2025-11-24 22:16:45+00:00
Hey HN!

I got tired of writing field names twice: once in the struct tag and once as a constant. It was too much work to keep them consistent. So I explored two solutions: one that works at runtime with some overhead, and one with code generation. Both of these approaches have their pros and cons. But I would like to know what you guys think, and more importantly, how do you tackle this issue?

In the readme i documented the process and reasoning. It also includes some lazy benchmarks if you want to take a look

Thank you for your time

Alvaro
by amarant | 2025-11-24 22:16:49+00:00
>The discussion of technology should be able to withstand the good and bad points of its conception

True, but that's a poor excuse to make up hypothetical problems that don't even exist. Tying it into the current craze about data privacy is a bit too transparent imo.

The journalists should do better, the article makes a downright dishonest interpretation of the issue by shoehorning it into a lens of a long ongoing controversy about data privacy that is in no way applicable to the technology they're discussing.

The privacy issue is not only hypothetical, but far enough off in the future that it'd be a better fit for a sci-fi novel then nature.com reporting.

The problem is not discussing the downsides, the problem is doing it dishonestly, as the article does.
by protocolture | 2025-11-24 22:16:59+00:00
Few if any of them permit outside contact. I remember having to get a customer to escalate their PSN case after removing the GEOIP configuration because PSN didnt reflect the change immediately. Its really difficult from a customer service perspective, because the error messages tend to pin the blame on the ISP, despite it wholly being a circumstance of the content owner.

You do get lucky, IIRC theres a few blog posts where people go into detail about how to contact some providers, but I found that some of them rotated those emails pretty regularly.
by eli | 2025-11-24 22:17:28+00:00
An HTTP Range request asks the server to send parts of a resource back to a client. Range requests are useful for various clients, including media players that support random access, data tools that require only part of a large file, and download managers that let users pause and resume a download.

https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/Ran...
by estimator7292 | 2025-11-24 22:17:47+00:00
"Monopoly" does not mean "one and only vendor of XYZ good/service that exsits ever"

Monopolies can exist when there is technically still competition. Being a monopoly does *NOT* mean you've destroyed all other competitors or that you are literally the only entity in the entire universe offering a good or service.

Whether an entity represents a monopoly is a subjective measure. It is *NOT* a binary true/false based on trivially observable data. It mostly comes down to how the entity behaves with regard to competitors. Principally, using unfair and uncompetitive pricing and sales strategies, egregious lock-ins, and using your market-dominant position to force competitors and consumers to operate in certain ways.

The fact that other ad markets exist at all does not disqualify google from being a monopoly.
by njovin | 2025-11-24 22:17:59+00:00
I recently tasked Claude with reviewing a page of documentation for a framework and writing a fairly simple method using the framework. It spit out some great-looking code but sadly it completely made up an entire stack of functionality that the framework doesn't support.

The conventions even matched the rest of the framework, so it looked kosher and I had to do some searching to see if Claude had referenced an outdated or beta version of the docs. It hadn't - it just hallucinated the funcionality completely.

When I pointed that out, Claude quickly went down a rabbit-hole of writing some very bad code and trying to do some very unconventional things (modifying configuration code in a different part of the project that was not needed for the task at hand) to accomplish the goal. It was almost as if it were embarrassed and trying to rush toward an acceptable answer.
by tptacek | 2025-11-24 22:18:17+00:00
I think their argument is verkakte but I literally don't know what they're talking about or who the NSA stooge they're referring to is, and it's not so much that I want to make them squirm so much as that I want to draw the full argument out.

I think your complaint isn't with me, but with people who hedge when confronted with direct questions. I think if you look at the thread, you'll see I wasn't exactly playing cards close to my chest.
by observationist | 2025-11-24 22:18:24+00:00
I get that, but there's no need to complicate things unnecessarily.

I'll make an even stronger claim, that biological brains are not only computers, but that they operate in binary, as well. Active and inactive - the mechanisms that trigger activation are incredibly nuanced and sophisticated, but the transfer of information through the network of biological neurons is a matter of zeroes and ones. A signal happens, or doesn't. Intensity, from a qualia persepective, ends up being a matter of frequency and spread, as opposed to level of stimulation. That, in conjunction with all sorts of models of brain function, is allowing neuroscience to make steady, plodding progress in determining the function and behavior of different neurons, networks, clusters, and types in the context in which they are found.

All else being equal, at the rate neuroscience is proceeding, we should be able to precisely simulate a human brain, in functionally real-time, using real brain networks as models, by around 2040. We should have a handle on every facet of brain chemistry, networking, electrical signaling, and individual neuronal behavior based on a comprehensive and total taxonomy of feature types down to the molecular level.

Figure out the underlying algorithms and you can migrate those functional structures to purely code. If you can run a mind on code, then it doesn't matter whether you're executing a sequence of computations in a meat brain, in a silicon chip, or using a billion genetically engineered notebook monkeys to painstakingly and tediously do the computations and information transfer manually, passing sheets of paper between them. ( the monkeys, of course, could not operate in real time.)

There won't be another significant phase change, like we saw from hydraulics to computation equivalence. Computation is what it actually, physically is, at the level of electrical signals and molecular behaviors. It's just extremely complex and sophisticated and elegantly interwoven with the rest of the human organism.

Brain gut interactions aren't necessary for human subjective experience or cognition. You could remove your brain entirely from your skull, while maintaining a equivalent level of electrical and chemical signaling from an entirely artifical platform of some sort, and as long as the interface between the biological and synthetic maintains the same signaling frequency, chemistry, and connectivity, then it doesn't matter what's on the synthetic end.

There are independently intelligent aspects to things like the gut biome, and other complex biological systems. Those aren't necessary for brains to do what brains do, except in a supportive role. Decouple the nutrition and evolutionary drives from the mind, and you're left with a fairly small chunk of brain - something like 5B neocortical neurons is the bare minimum of what you'd need to get human level intelligence. Everything on top of that is nice to have, but not strictly necessary from a proof of concept perspective.
by yardstick | 2025-11-24 22:18:44+00:00
Within the IETF it’s not 100%.

See section 3.3 of one of their RFCs for proof.

https://www.rfc-editor.org/rfc/rfc2418.html#section-3.3

“ Working groups make decisions through a "rough consensus" process. IETF consensus does not require that all participants agree although this is, of course, preferred. In general, the dominant view of the working group shall prevail. (However, it must be noted that "dominance" is not to be determined on the basis of volume or persistence, but rather a more general sense of agreement.) Consensus can be determined by a show of hands, humming, or any other means on which the WG agrees (by rough consensus, of course). Note that 51% of the working group does not qualify as "rough consensus" and 99% is better than rough. It is up to the Chair to determine if rough consensus has been reached.”
by Lerc | 2025-11-24 22:18:57+00:00
That's kind-of where compatibalism comes in. For most definitions of free will, it is fighting the feeling that we would like to have it because it feels like we have it, and the evidence that says that the feeling that we have it does not provide any proof.

Sapolsky takes the approach to come up with a definition that can't be met and declare that it can't be met. Compatatablisim is more about finding a definition that is consistent with the feeling because without the feeling there isn't really anything to anchor the idea to anything meaningful. It doesn't use the feeling of making decisions as proof of any power as such, it is treating the feeling more like a measurement of the concept. Doing what we feel like doing is free will. What we feel like doing can be caused by anything and it still wouldn't matter.

Considering the inverse situation makes it seem like any other definition of freedom would be intolerable. If you 'freely' chose to do X but consistently had the perception of wanting to do not-X, it seems like you would not have a happy life. Similarly considering the alternative to determanism for your decisions seems like literal chaos. If something has no cause, it is literally random. Any pattern you can discern would indicate that it has a cause.

Then of-course you get into the nature of what is a cause and consequently considering the nature of time itself. Something travelling backwards in time interacting with something that you see appears uncaused because there was literally no preceding event that indicated it was going to happen (because it wasn't preceding, it came from the other direction)

That's one of those weird things I wonder about when people ask why is there more matter than antimatter, or why does times arrow mainly point in one direction. It feels like riding the crest of a wave wondering why all the water is going the same direction.
by 3836293648 | 2025-11-24 22:19:52+00:00
That's being disingenuous. Of course a high level api has to be implemented in terms of hardware specifics, but you're implying, hopefully unintentionally, that that hardware interface is Metal, and it's not.

You can run Vulkan on Apple Silicon as natively as you can run Metal, even if some parts of it don't map too nicely to the hardware.

We only seriously say translate when we go from one high level API to another, just like we call some compilers transpilers even though literally everything is a compiler for something.
by theideaofcoffee | 2025-11-24 22:20:28+00:00
How about just dispense with the AI nonsense in education and go to totally in-person, closed-book, manually-written, proctored exams? No homework, no assignments, no projects. Just pure mind-to-paper writing in a bare room under the eye of an examiner. Those that want to will learn and will produce intelligent work regardless of setting.
by nebula8804 | 2025-11-24 22:20:29+00:00
Possibly but also plausible is that its a deep joke that everyone is in on.

When googling the company, the marketing slogan that comes up is "Linde is Everywhere" but that works on so many levels. They sell air, air is everywhere. Therefore Linde is everywhere.

They are a company that sells air: that stuff that people breathe. Forget this AI nonsense. Jensen has to constantly pull something out of rear to keep food on the table. These guys sell air. What a business. :)