MurphyA/hacker-news huggingface dataset:
by Tadpole9181 | 2025-11-21 16:41:27+00:00
I don't even understand what you're getting at; as if RBAC is an alien concept? Do you think everyone should have root access to any machine they touch?

It's the parent's computer and they have a right to put a password on the BIOS and a child lock on the system that forces these types of headers, with no available bypass for the child account. Or, if they do please, have the router filter any website outside of a whitelist without a password.

We do worse for OpSec all the time?
by comp_raccoon | 2025-11-21 16:42:10+00:00
Olmo author here! Your are absolutely spot on on

> It was impossible for me to actually fact-check any of the claims in the response based on the matched training data.

this is true! the point of OlmoTrace is to show that even the smallest phrases generated by a langue model are a product of its training data. It’s not verification; a search system doing post hoc checks would be much more effective
Show HN: Markov Models and Dynamical Systems – Software and Book
by fraserphysics | 2025-11-21 16:42:20+00:00
This is a draft of a second edition of this book from SIAM https://epubs.siam.org/doi/book/10.1137/1.9780898717747?mobi...

There are three things to show:

1. A pdf of the draft: https://www.fraserphysics.com/book.pdf

2. The hmm project which provides code for state-space models: https://gitlab.com/fraserphysics/hmm with documentation at https://fraserphysics.gitlab.io/hmm/

3. The hmmds project which provides code for using state-space models to address some examples: https://gitlab.com/fraserphysics/hmmds with doumentation at https://fraserphysics.gitlab.io/hmmds/ The default target for hmmds is to build the book. On my home system it takes about 10 hours to build the book.

I would be grateful for comments or suggestions on any aspect of any of the three things.

I am particularly interested in help with the following:

1. I use NixOS for developing. I've documented progress on making the code useful in other enviroments at https://fraserphysics.gitlab.io/hmmds/getting_started.html Please let me know if you are able to use the code elsewhere.

2. In the draft of the book, I have an analysis of the convergence properties of the EM algorithm spread between Section 2.5 "The EM algorithm" on page 43 and Appendix B "EM Convergence Rate" on page 137. The analysis is different from anything I've seen published. I would like feedback with corrections and or citations.
by Froztnova | 2025-11-21 16:42:36+00:00
I'm not sure if it's the proper method, but I actually did implement parallax in my project, though I just did it by essentially creating a layer which I marked as parallax and then had my game draw it with a parallax offset from the rest of the map depending on the camera position.

https://doc.mapeditor.org/en/latest/manual/layers/#parallax-...

These docs do seem to go more in depth about the canonical values related to parallax that Tiled offers though.
by swatcoder | 2025-11-21 16:42:58+00:00
Like C always will, C++ mostly still echoes the diversity of hardware architectures and runtime environments out there. That diversity is still broader than many people who don't work in weird specialties and fringes realizes, and it's useful to have a "modern" language that respects the odd quirks of those systems and how you sometimes need to leverage them to meet requirements.

If you're just writing application software for consumers or professionals, or a network service, and it's destined to run on one of the big three families of operating systems using the one of the big few established hardware architectures at that scale, there are definitely alternatives that can make your business logic and sometimes even your key algorithms simpler or clearer, or your code more resistant to certain classes of error.

If you look at Rust and see "this does everything I could imagine doing, and more simply than C++", there's nothing wrong with that, because you're probably right for yourself. But there are other projects out there that other people work on, or can expected themselves working on someday, that still befit C++ and it's nice for the language to keep maturing and modernizing for their sake, while maintaining its respect for all the underlying weirdness they have to navigate.
by atoav | 2025-11-21 16:44:24+00:00
As another European: Yes?

Invasion doesn't have to mean they plan to roll tanks all the way to Paris.

Have you realized Russian agents blew up a train in Poland this week, after some weeks prior flying planes and drones into NATO airspace and disrupting air travel in Denmark with drones started from shadow fleet tankers. The grounds for further action are being tested as we speak.

Invasion just means Russian soldiers enter Poland, Latvia, Estonia, Finnland. Countries parts of which Putin painted rightfully Russian territories in his speeches. I wouldn't bet a lot on that not happening, especially if the geopolitical situation deteriorates in favor of Putin.
by _djo_ | 2025-11-21 16:44:38+00:00
Indeed. There was even a question of whether they could legally be considered Ukrainian or Russian weapons, regardless of where the command centre was. To solve that while the talks were ongoing they set up a ‘joint’ command centre in Moscow with ex-SSR countries theoretically sharing joint control over the weapons with Moscow.

Ukraine at one point wanted to formally claim ownership over the weapons, as after all breaking the permissive action locks wasn’t that difficult. The US talked them out of it, as a lead up to the Budapest Memorandum.

We all know how much the security guarantees of that agreement were worth.
Show HN: OCR Arena – A playground for OCR models
by kbyatnal | 2025-11-21 16:44:45+00:00
I built OCR Arena as a free playground for the community to compare leading foundation VLMs and open-source OCR models side-by-side.

Upload any doc, measure accuracy, and (optionally) vote for the models on a public leaderboard.

It currently has Gemini 3, dots.ocr, DeepSeek, GPT5, olmOCR 2, Qwen, and a few others. If there's any others you'd like included, let me know!
by VladimiOrlovsky | 2025-11-21 16:45:03+00:00
import decimal

def solve_kangaroo_limit(): # Set precision to handle the "digits different from six" requirement decimal.getcontext().prec = 50

# For U(0,1), H(x) approaches 2x + 2/3 very rapidly (exponential decay of error) # At x = 10^6, the value is indistinguishable from the asymptote x = 10**6 limit_value = decimal.Decimal(2) * x + decimal.Decimal(2) / decimal.Decimal(3) print(f"H({x}) ≈ {limit_value}") # Output: 2000000.66666666666666666666...

if __name__ == "__main__": solve_kangaroo_limit() ....p.s. for airheads=idiots: """decimal.Decimal(2) / decimal.Decimal(3)""" == 0.6666666666666666666666666666666666666666666666666666666666666666666666666 ... This is your Fukingly 'smart' computer???
by sys_64738 | 2025-11-21 16:45:39+00:00
You shouldn't be making decisions such as Brexit on economic terms. It doesn't matter if it's a mistake just as it doesn't matter about thinking the country can go back. Brexit is a 100% permanent outcome from the referendum vote. Those changing their minds now as they thought it might not happen, or doing it for fun, are directly responsible for the outcome. BoJo delivered what the people demanded and now Britain's place as an island off the NW coast of the EU is cemented - warts and all.
by TimorousBestie | 2025-11-21 16:45:46+00:00
> They're still there last time I checked. Hiroshima has a population of ~1m. Nagasaki closer to 300k.

This is an argument by equivocation. There’s still a “World Trade Center” in NYC but it’s not the one that fell in 2001. Nor does saying it’s so restore the dead to life.

> An invasion of Japan would have cost an order of magnitude more lives. It was the 4th year of an extremely bitter conflict that Japan started. There were no real good options on the table. Only "shit" and "extremely shit".

This is a legal defense strategy that was never heard before an international tribunal because, notably, one was never held.

I don’t have the energy to skim through the Nuremberg transcripts right now, but I also believe “it was the best of bad options” was a legal defense attempted there, with mixed results.

EDIT: I’m being rate limited, so I can’t answer any more questions today. But suffice it to say that in Truman’s place I would have extended the relative protection that Kyoto received to every large Japanese city and contained the air force to bombing primarily military and industrial targets, with the understanding that precision bombing was not as advanced in 1940s as it is today.

Here is a more in depth analysis of options other than nuclear bombardment (though it only discusses nukes, which is not the primary locus of my criticism). https://blog.nuclearsecrecy.com/2015/08/03/were-there-altern...

Also I did not say they were “erased from the map,” that was a different commenter.
by allears | 2025-11-21 16:46:16+00:00
Numbering the strings from 0-5 may make sense for a programmer, but not so much for a musician. I've been a player for over 60 years, and every method book I've seen uses 1-6. This could be confusing if this tool is part of a collection of tools that need to work together, or could add extra mental load if you're already used to standard string numbering.
by vlovich123 | 2025-11-21 16:47:00+00:00
I think you’ve misidentified the reason this stuff is harder in Rust and it has nothing to do with “true OOP” if by that you mean class based inheritance. The primary challenge is mapping how GUIs are traditionally mutated onto Rust semantics. Even then, efforts like Slint show it’s eminently feasible so I’m not sure your argument holds.

It’s important to remember that c++ has a 30 year head start on Rust, especially at a crucial growth part of computing. Thats why it tops the TIOBE index. But I fully expect it to go the way of COBAL sooner rather than later where most new development does not use c++.
by ryandrake | 2025-11-21 16:47:21+00:00
Easy bugs might exist at small and medium size companies, but when you are a $1T+ company, there is no such thing as an easy fix. Your change could have unforeseen side effects that take down some critical revenue-generating service that causes us to lose $millions. It's got to go through multiple code reviews, have unit and integration tests written, be able to show those test passing more than once, it may need to get reviewed by legal, it may need to get reviewed by security and privacy teams. And tons of other process overhead I'm not even recalling. Just getting a one-liner from an engineer's fingertips properly deployed into production could take months.

Whether or not you fix a bug weighs on the scale against the cost of all of the above things, the cost of time, the cost of these people's attention, and the opportunity cost of them doing something else. And these costs tend to not scale with the size of the pull request. They're fixed costs that have to be paid no matter how small an issue is.

I work at a BigCo, and occasionally get comments from developer friends about "Hey, why doesn't BigCo fix this obvious bug I reported! It's simple! Why are you guys so incompetent??" I look at the bug internally, and it's either 1. got a huge internal comment chain showing it's not as simple as an outsider would think, or 2. it's indeed trivial, but the effort to fix it does not outweigh the costs I outlined above.
by VWWHFSfQ | 2025-11-21 16:48:17+00:00
> We all know how much the security guarantees of that agreement were worth.

They were worth 30 years of peace. It wasn't a treaty. Everyone knew it was a handshake agreement without consequences for breaking it. It prevented an immediate war in eastern Europe after the fall of the USSR. A war that could have been much worse involving nuclear weapons.

Unfortunately the war came 30 years later.
by nickreese | 2025-11-21 16:49:09+00:00
I'm just now moving my main workflows off openai over to local models and I'm starting to find that these smaller models main failure mode is that they will accept edgecases with the goal of being helpful.

Especially in extraction tasks. This appears as inventing data or rationalizing around clear roadblocks.

My biggest hack so far is giving them an out named "edge_case" and telling them it is REALLY helpful if they identify edgecases. Simply renaming "fail_closed" or "dead_end" options to "edge_case" with helpful wording causes qwen models to adhere to their prompting more.

It feels like there are 100s of these small hacks that people have to have discovered... why isn't there a centralized place where people are recording these learnings?
by amluto | 2025-11-21 16:50:04+00:00
IMO destructive move is rather tangled up with another language feature: the ability to usefully have a variable of type T where all values must be actual values that meet the constraints of a T.

Suppose T is a file handle or an owning pointer (like unique_ptr), and you want to say:

T my_thing = [whatever]

and you want a guarantee that T has no null value and therefore my_thing is valid so long as it’s in scope.

In C++, if you are allowed to say:

consume(std::move(my_thing));

then my_thing is in scope but invalid. But at least C++ could plausibly introduce a new style of object that is neither copyable nor non-destructively-movable but is destructively movable.

Interestingly, Go is kind of all in on the opposite approach. Every instance of:

my_thing, err := [whatever]

creates an in-scope variable that might be invalid, and I can’t really imagine Go moving in a direction where either this pattern is considered deprecated or where it might be statically invalid to use my_thing.

I actually can imagine Python moving in a direction where, if you don’t at least try to prove to a type checker that you checked err first, you are not allowed to access my_thing. After all, you can already do:

my_thing: T | None = [whatever]

and it’s not too much of a stretch to imagine similar technology that can infer that, if err is None, then T is not None. Combining this in a rigorous way with Python’s idea that everything is mutable if you try hard enough might be challenging, but I think that rigor is treated as optional in Python’s type checking.
by Atlas667 | 2025-11-21 16:50:22+00:00
A bunch of anecdotal evidence follows:

There's this popular notion that humans are fundamentally different beings to everything else, which I believe is just a form of narcissism.

If intelligence is used to navigate the world, then it is derived FROM the world, and your role is to be able to use those facts in your mind to change the world.

I'm sure a wolf is as, or more, intelligent at surviving in the wild, with the tools it has, than your average suburban adult.

Wolves understand distance, time, sun-time light levels, resource economy, body-energy economy, they know prey behaviors, complex hunting tactics, the basics of sound transmission, they know about self security, seeking adequate shelter, they know the basics about fall damage and how that may relate to height/weight, they know how to step when running, they know momentum, etc

They absolutely do calculate a very very basic physics and animal psychology.

Because, essentially, beings know/are intelligent about the things related to their survival. They have to be, its their existence.

Therefore I speculate bees may know more about time than even this article suggests. And probably as well as sound transmission and perception and maybe even air pressure due to flying being such an important role for them. Maybe they also have a basic space-time vulnerability conception. They for sure have excellent home etiquette and social awareness.

Im sure having a tiny brain doesnt eliminate the basic physics processing capacity that all beings need, maybe it just makes it shallower.
by jasomill | 2025-11-21 16:51:18+00:00
Before you could assume...null pointer derefs will be trapped by the OS

Before when?

Microsoft(R) MS-DOS(R) Version 6.22 (C)Copyright Microsoft Corp 1981-1994. C:\TMP>type foo.c void main() { long q = 0; q = 0/q; } C:\TMP>cl /Od foo.c Microsoft (R) Optimizing Compiler Version 5.10 Copyright (C) Microsoft Corp 1984, 1985, 1986, 1987, 1988. All rights reserved. [...] C:\TMP>foo run-time error R6003 - integer divide by 0 C:\TMP>type bar.c void main() { long far *p = 0; long q = 0; *p = 0; q = 0/q; } C:\TMP>cl /Od bar.c [...] C:\TMP>bar

(system hangs)
by dxdm | 2025-11-21 16:51:59+00:00
GP is talking about the invasion of Ukraine, taking place just beyond the EU eastern border, and very much shaking up the European security situation, and the EU and its member states are visibly having to "deal with it", diplomatically, economically and in terms of their practical defense postures. That's what they meant with "at the border", and not a literal invasion of the EU.

(Edited for a less confrontational beginning of the first sentence.)
by pizzafeelsright | 2025-11-21 16:52:09+00:00
I do not care for this problem as it is not a real problem.

Kaprekar's constant is interesting. This one is not.

As for explaining complex math to children, I like to start with zero not being a real number. "If you have zero cookies why are we talking about cookies? There are none. You're now thinking of cookies, which means you have zero cookies, and if you want one then you have negative cookies."
by wat10000 | 2025-11-21 16:52:13+00:00
The war might end in Ukraine being flattened by Russian nuclear weapons if that happened. Putin would be backed into a corner. End the invasion after suffering a nuclear strike (or just the threat of one) and he'll risk being deposed and meet a gruesome end. Retaliate overwhelmingly and risk escalation from other nuclear powers. It's not clear to me that the second risk would be worse, and definitely not clear to me that Putin wouldn't see that as the better of two bad options.

As has been illustrated so well over the past few years, the power of nuclear weapons is a paradox. It allows you to make the ultimate threat. But that threat isn't credible unless people believe you'll use them. Because the consequences of using them are so severe, they're only credible if used in response to a correspondingly severe threat. Russia's arsenal hasn't allowed it to stop a constant flow of weapons to its enemy, an enemy which has invaded and still controls a small bit of Russian territory, and which frequently carries out aerial attacks on Russian territory. Ukraine faces much more of an existential threat (Ukraine has no prospect of conquering Russia, but the reverse is a serious possibility) so a nuclear threat from Ukraine would be more credible, but it could easily still not be enough. Certainly they're not an automatic "leave me alone" card.
by _djo_ | 2025-11-21 16:52:14+00:00
20 years, not 30, and not even that. There were other clashes plus massive Russian interference in Ukrainian affairs just a few years after Budapest.

For something as serious as giving up a nuclear arsenal it’s reasonable to expect to get more than 20 years of peace and for the co-signers to actual fulfil their parts of the agreement, whether legally binding or not.

The end result is that no country will soon trust a Russian non-aggression promise and none will trust an American promise of support.
by dylan604 | 2025-11-21 16:52:35+00:00
Growing up, I never had the budget of a real TV studio, but had equipment that would approximate a real TV studio. I would come up with ways to recreate what they were doing because it could clearly be done, but by using totally different equipment that only looked like it was up for the task. Asking the real TV people if it could be done, they'd say no. I'd say hide and watch (too young to have a beer to ask them to hold).

Sometimes, the box a degree stuffs you into with all of that learning often means losing some creative out-of-the-box thinking abilities. I get away with things all the time because I didn't know you weren't supposed to not do this, yet now that I have, it works just fine.
by omoikane | 2025-11-21 16:52:39+00:00
I remember EXIF orientation in JPEG also took a few years to get fixed:

https://issues.chromium.org/issues/40448628

When it got fixed, some sites were still depending on the old behavior of not rotating JPEGs, and had to add "image-orientation:none" to explicitly ignore EXIF:

https://issues.chromium.org/issues/40716313
by l9o | 2025-11-21 16:52:55+00:00
I've been working on something similar, a typed shell scripting language called shady (hehe). haven't shared it because like 99% of the code was written by claude and I'm definitely not a programming language expert. it's a toy really.

but I learned a ton building this thing. it has an LSP server now with autocompletion and go to definition, a type checker, a very much broken auto formatter (this was surprisingly harder to get done than the LSP), the whole deal. all the stuff previously would take months or a whole team to build. there's tons of bugs and it's not something I'd use for anything, nu shell is obviously way better.

the language itself is pretty straightforward. you write functions that manipulate processes and strings, and any public function automatically becomes a CLI command. so like if you write "public deploy $env: str $version: str = ..." you get a ./script.shady deploy command with proper --help and everything. it does so by converting the function signatures into clap commands.

while building it I had lots of process pipelines deadlocking, type errors pointing at the wrong spans, that kind of thing. it seems like LLMs really struggle understanding race conditions and the concept of time, but they seem to be getting better. fixed a 3-process pipeline hanging bug last week that required actually understanding how the pipe handles worked. but as others pointed out, I have also been impressed at how frequently sonnet 4.5 writes working code if given a bit of guidance.

one thing that blew my mind: I started with pest for parsing but when I got to the LSP I realized incremental parsing would be essential. because I was diligent about test coverage, sonnet 4.5 perfectly converted the entire parser to tree-sitter for me. all tests passed. that was wild. earlier versions of the model like 3.5 or 3.7 struggled with Rust quite a bit from my experience.

claude wrote most of the code but I made the design decisions and had to understand enough to fix bugs and add features. learned about tree-sitter, LSP protocol, stuff I wouldn't have touched otherwise.

still feels kinda lame to say "I built this with AI" but also... I did build it? and it works? not sure where to draw the line between "AI did it" and "AI helped me do it"

anyway just wanted to chime in from someone else doing this kind of experiment :)
by davidsainez | 2025-11-21 16:53:08+00:00
Thanks for sharing. I hear people make extraordinary claims about LLMs (not saying that is what you are doing) but it's hard to evaluate exactly what they mean without seeing the results. I've been working on a similar project (a static analysis tool) and I've been using sonnet 4.5 to help me build it. On cursory review it produces acceptable results but closer inspection reveals obvious performance or architectural mistakes. In its current state, one-shotted llm code feels like wood filler: very useful in many cases but I would not trust it to be load bearing.
by m101 | 2025-11-21 16:53:16+00:00
Couple comments having read gist of comments here:

1) It's not about bad regulation either: it may be impossible to design good regulation

"The curious task of economics is to demonstrate to men how little they really know about what they imagine they can design." - Friedrich Hayek

2) Everyone agrees that controlling bad externalities is good. The point is at what cost?

3) Regulation isn't the only answer to things. Perhaps the issue is private property isn't properly enforced? Perhaps things could be solved through insurance schemes? There are many complex systems that have been solved without the use of government mandated regulation