MurphyA/hacker-news huggingface dataset:
by nh2 | 2025-12-27 11:22:36+00:00
When you're shipping software, you have full control over LD_LIBRARY_PATH. Your entry point can be e.g. a shell script that sets it.

There is not so much difference between shipping a statically linked binary, and a dynamically linked binary that brings its own shared object files.

But if they are equivalent, static linking has the benefit of simplicity: Why create and ship N files that load each other in fancy ways, when you can do 1 that doesn't have this complexity?
by Jesserio-17 | 2025-12-27 11:23:13+00:00
In recent years, the mining machinery industry in China has undergone significant transformations, shifting from an emphasis on scale expansion to a focus on high-quality development. Quzhou Dongda Machinery Co., Ltd. stands out as a prime example of this evolution, successfully navigating industry fluctuations and establishing itself as a trusted provider in the niche market of down-the-hole drills. With over 15 years of dedication, the company has built a solid reputation among its clients, both domestically and internationally. This article explores the journey of Dongda Machinery and the key factors contributing to its success, highlighting the importance of quality, innovation, and customer-centric approaches in the mining machinery sector.https://info.minedrillings.com/beloved-by-customers-the-rise...
by godelski | 2025-12-27 11:23:27+00:00
Or

Your argument is dumb because it's objectively better to optimize x conditioned on y than optimize y conditioned on x.

Maybe the worst variant of this is where people don't realize they're actually arguing for different things but because it's the same general topic they assume everything is the same (duals are common). I feel like this describes many political arguments and it feels in part intentional...
by bregma | 2025-12-27 11:24:18+00:00
It's not a hard-running race. PREEMPT_RT is soft realtime and if you rely on it for your brakes you're going to crash. AGL has not yet produced any kind of usable system that can be certified for functional safety under ISO 26262 or IEC 61508. Just a core kernel with no drivers.

We run into a lot of OEMs who switch to Linux because of AGL and come crawling back to QNX many expensive months later to start over with a viable solution so they can deliver.
by Lio | 2025-12-27 11:24:45+00:00
I think they've missed a trick there, they could have used `|` like low-type does.

e.g.

def greet(name: String | "Hello"): String

I know it's all subjective but I think that reads better and it's valid ruby.

To be honest low-type with a static analysis tool would be my favourite syntax for this.

https://github.com/low-rb/low_type
Show HN: Ducky – AI for the thinking parts of engineering
by adiadd | 2025-12-27 11:28:19+00:00
hi hn!

i’m experimenting with an ai “rubber duck” idea that helps engineers think through bugs and design decisions by asking questions instead of spitting out code. this is an early prototype and i’m trying to validate whether ai tools are hurting code understanding.

most ai software engineering assistants like cursor and claude code focus on the implementation details/results but don’t help teams upskill or build in a reliable manner.

would love to get any feedback and thoughts!
by swores | 2025-12-27 11:28:53+00:00
Keep in mind that "making money" doesn't have to be from people paying to use uv.

It could be that they calculate the existence of uv saves their team more time (and therefore expense) in their other work than it used to create. It could be that recognition for making the tool is worth the cost as a marketing expense. It could be that other companies donate money to them either ahead of time in order to get uv made, or after it was made to encourage more useful tools to be made. etc

Edit: 6 months ago, user simonw wrote a HN comment "Here's a loose answer to that question from uv founder Charlie Marsh last September [2024] : https://hachyderm.io/@charliermarsh/113103564055291456

«« I don't want to charge people money to use our tools, and I don't want to create an incentive structure whereby our open source offerings are competing with any commercial offerings (which is what you see with a lost of hosted-open-source-SaaS business models).

What I want to do is build software that vertically integrates with our open source tools, and sell that software to companies that are already using Ruff, uv, etc. Alternatives to things that companies already pay for today.

An example of what this might look like (we may not do this, but it's helpful to have a concrete example of the strategy) would be something like an enterprise-focused private package registry. A lot of big companies use uv. We spend time talking to them. They all spend money on private package registries, and have issues with them. We could build a private registry that integrates well with uv, and sell it to those companies. [...]

But the core of what I want to do is this: build great tools, hopefully people like them, hopefully they grow, hopefully companies adopt them; then sell software to those companies that represents the natural next thing they need when building with Python. Hopefully we can build something better than the alternatives by playing well with our OSS, and hopefully we are the natural choice if they're already using our OSS. »»
by NekkoDroid | 2025-12-27 11:30:49+00:00
> What do you do when you are working on something and are forced to switch to working on something else in the middle of it?

`git stash` is always an option :) but even if you want to commit it, you can always undo (or `--amend`) the commit when you get back to working. I personally am also a big fan of `git rebase -i` and all the things it allows me to fix up in the history before merging (rebasing) in to the main branch.
by wvbdmp | 2025-12-27 11:33:15+00:00
I’ve always wondered about this. I guess typographically they should just occupy the same horizontal space, or at least be kerned closer in such a way as to prevent the ugly holes without cramming.

It’s true, though, that the hierarchically wrong option looks better, IMHO. The whitespace before the comma is intolerable.

This is an interesting case where I am of two autistic hearts, the logical one slowly losing vehemence as I get older and become more accepting of traditions.
by nosianu | 2025-12-27 11:33:22+00:00
It is not CloudFlare that is ruining the Internet, but the spammers and attackers. On the second level, that catching and punishing them is impractical or even impossible depending on their location.

Businesses were perfectly fine to accept the low security of 1990s email, webserver, and all the other configurations and software. They did not suddenly out of nowhere ask for more restrictions (such as email sending restricted to using the email server "officially responsible" for that domain- it used to be you could do the same as with physical mail, where you can drop letters into mailboxes writing a "From" address that was not in the same city as the mailbox location). They certainly did not volunteer to make everything much more difficult -- and expensive -- to set up and use. It also leads to a lot more work for their IT staff and a lot more user problems to respond to.

All these annoying restrictions were forced to be implemented by attacks of all kinds.

Because it is so difficult, compromises needed to be made. CFs methods are of course full of them, such as taking country and IP ranges into account. Feel free to make practical and implementable and affordable suggestions for alternative solutions. You may even get a reward from CF if you can come up with something good that allows them to cut back on restrictive policies while at least maintaining the current level of security. It is in the interest of CFs customers to be as accessible as possible, after all.
by pepperball | 2025-12-27 11:34:23+00:00
I would love to see these people ripped apart as they tell the masses that’s it’s ok they’re children can’t eat now, because in 100 years, they’ll be able to afford more mind raping spyware and slop.

Or as they’re brutally killed in some sort of modern reign of terror, just shrug, let them know it’s ok, it’s just human nature that’s happened again and again and that a new, better society will eventually be born from it so they should just accept it.
by inciampati | 2025-12-27 11:35:46+00:00
> CAD. Sure, you can do that in text... but it takes much more room to do and magnitudes more time to interpret.

Fascinating example for me. I do CAD... using text! My only experience with it is programmatic in openscad. We check the visualization, but only on output of the final product. For me it's dramatically easier to work with. That may be a personal defect but it's also consistent. Underneath the rendering is always data, which is text, markup, but strings of fundamental data.

And in science it's not a stretch at all that numbers come first. I'll argue you're reaching. Today no one is drawing their numbers from experiments directly on a graph. They record them digitally. In textual form typically, and then render them visually to obtain generic understanding. But also there, in the end, your conclusions (per tradition) need to be point estimates with error bounds expressible in concise textual terms. You may obtain them from looking at images but the hard truth is numerical, digital, textual.
by uplifter | 2025-12-27 11:36:35+00:00
> An observer says "the infection wants to be resistant"

I can confidently claim that literally nobody says this because a google search for this exact phrase has only one result, and its this thread.[0]

Really though, I have never met a biologist who thought this way. All of the ones I've met and worked with knew that development of antibiotic resistance is not in any way like a decision process, and they usually understood on an intuitive level that bacterial cultures don't have a goal of developing the capability. Its just something that evolves, which is a distinct category of process.

Talking about it the other anthropomorphic way, like you claim is normal and acceptable, just confuses things; it is the opposite of helpful analogy. Infections don't "want" anything, they are better understood using the details of their actual biomolecular mechanics, which are about as far different from how brains work as could be imagined.

[0]https://www.google.com/search?q=%22the+infection+wants+to+be...
by saidnooneever | 2025-12-27 11:37:01+00:00
seems handy but mostly the ppid is outputted as the reason for starting. its 'who dun it', not really _why_ it was started. (service file, autorun, execve etc.)

i see you support multiple output format including json thats nice. id recommend to assume automation (ssh script/commands) and make the default output really easily greppable , or json (jq) since itll be more appealing to parse (shouldnt reduce readability, for the default output it looks like just removing some linebreaks to make it parse more consistently. (maybe the lines are wrapped tho? unclear from the img)
Show HN: Dokimos – LLM evaluation framework for Java
by fkapsahili | 2025-12-27 11:37:58+00:00
I'm working on an open-source project dokimos, because every LLM eval framework I found was Python and TypeScript-only, but a lot of companies will be building LLM apps and AI agents with Java.

Key features:
- JUnit 5 integration for test-driven evals
- Works with LangChain4j
- Framework-agnostic
- Supports custom evaluators and datasets

GitHub: https://github.com/dokimos-dev/dokimos

Would love contributions or to team up with anyone who has Java experience and wants to work on this together.
by sublinear | 2025-12-27 11:38:14+00:00
I had something come up recently that I think sounds similar. That project needs several time-sensitive jobs. When any one of them runs, the first thing it does is check a holidays.json file.

It parses the file using jq and compares its entries with the current time according to GNU date. At the root is the names of the jobs. Each job has its own list of holidays. Each of these holiday items in the job's respective list has keys for the display name of the holiday, the formatted date to compare to, and in a few cases the ISO day-of-week and a string containing a modulo arithmetic function (e.g. don't run the friday before Christmas, etc.).

Sorry, yes that means I call eval on that string and yes that means some of these are repeated in the same file under the arrays for the other jobs. Also, such lists will have to be maintained and the exact observed dates cannot always be known ahead of time beyond about a year since people can change their minds for various reasons (think bank holidays). Depending on your use case you may also want to define a start time and end time for a window of when this should or shouldn't run (i.e. business hours).

I don't know if that helps. I know it's hacky, but I don't think there's a nice way to handle things like "second monday after 4th of july, but if the 4th also happens to be monday then it should instead be the second tuesday". God help you if you also need to handle each holiday being observed in different timezones. At least at the end of the day none of this would be much code, just very terse code dense with meaning.
by dmezzetti | 2025-12-27 11:38:24+00:00
The message here is good. I've now spent over 5 years in the OSS world (https://github.com/neuml). I started by picking a problem I was interested in and checking the work into GitHub. I've been extremely fortunate to have gained a following over the years.

Even with a following, most of the time when you publish it goes into the abyss. Every once in a while something hits but most of the time it takes a lot of patience and resolve. I've had some good visibility over the years from Reddit and Hacker News (though any post I make now on HN is marked as [dead]). It's not always fair and others can "pay" to get the visibility.

I've seen some of the other comments talking about the burden of OSS but I haven't felt that. I set my own agenda and fix what I want to fix. If someone wants to change my priorities that becomes a paid effort.
by svat | 2025-12-27 11:38:38+00:00
I see them prevalent in fiction just as well. Looking at the first few pages of a few random works of fiction, continuing from my other comment: https://news.ycombinator.com/item?id=46400974

- The Great Gatsby, F. Scott Fitzgerald, 1925: 28 on the first 10 pages https://archive.org/details/greatgatsby0000fitz_i1g1/page/n9...

- Love among the chickens, P. G. Wodehouse, 1909: 15 on the first 16 pages (and some of them spaced and extra long; apparently this publisher had a very “inflationary” style!) https://archive.org/details/loveamongchicken00wodeuoft/page/...

- Of Human Bondage, W. Somerset Maugham, 1915: eight on the first ten pages https://archive.org/details/ofhumanbondage0000wsom_j3w4/page...

- Howards End, E.M. Forster, 1910: at least 49 in the first ten pages https://archive.org/details/howardsend0000fors_q9r3/page/n9/...
by thehim58 | 2025-12-27 11:39:05+00:00
Hey, husband of that friend here,
The bought company had huge debts to the investors (it is a startup, not tiny but small one, ran for several years) and after cashing those out from the purchase deal, the employees were left with shares that were worth 0$.
(might be that the founders also grabbed some money out of that purchase, no one knows tho)

The employees of that bought company were given an incentive by the buying company to stay for a while and help tearing down and integrating their product into the buying company.

One could say shady, I'd say that it was just a bad deal.
by akst | 2025-12-27 11:39:05+00:00
(Note I share your sentiment, however)

Is there any data that’s supports this suggestion users with older devices are actually being discriminated? (% of users actually using older devices incapable of upgrading to browser versions supported by cloud flare)

I just find it hard to believe users are actually getting denied access because their device are old. Surely you can still run new versions of Chrome and Firefox on most things [1].

——————

[1] Don’t get me wrong I use Safari and I find it inflammatory when a site tells me to use a modern browser because they doesn’t support safari (the language more so). But I wouldn’t call it discrimination seeing as I have an opinion to run firefox/chrome from time to time.
by pmdr | 2025-12-27 11:39:19+00:00
> I'm not running my own ISP and I'm not in a country known for originating DDoS attacks (Sweden), yet just using Firefox on Linux seems to be enough to be forced to click on traffic lights many times an hour.

I'm in the same situation. Linux, Firefox, Sweden, with a residential IP that has been mine for weeks/months. Who's massively DDoS'ing with residential Telia IPs?!
by adrian_b | 2025-12-27 11:39:30+00:00
Dijkstra did not say anything about "break" and "continue".

Moreover, "continue" has been invented only in 1974, as one of the few novel features of the C programming language, some years after the Dijkstra discussion.

Both simple "break" and "continue" are useful, because unlike "goto" they do not need labels, yet the flow of control caused by them is obvious.

Some languages have versions of "break" and "continue" that can break or continue multiple nested loops. In my opinion, unlike simple "break" and "continue" the multi-loop "break" and "continue" are worse than a restricted "goto" instruction. The reason is that they must use labels, exactly like "goto", but the labels are put at the beginning of a loop, far away from its end , which makes difficult to follow the flow of control caused by them, as the programmer must find first where the loop begins, then search for its end. Therefore they are definitely worse than a "goto".

Instead of having multi-loop break and continue, it is better to have a restricted "goto", which is also useful for handling errors. Restricted "goto" means that it can jump only forwards, not backwards, and that it can only exit from blocks, not enter inside blocks.

These restrictions eliminate the problems caused by "goto" in the ancient non-structured programming languages, which were rightly criticized by Dijkstra.
by user____name | 2025-12-27 11:39:47+00:00
Interesting video, but I think the takeaway is that they are currently beating everyone by hust having strict policy and enforcement. AI automation seems to be in the early stages. The video shows a single arm replacing 3 workers according to the firm representative. Also the video notes that the figures might be misleadinf as a large amount of plastics are "downcycled" as in incinerated.
by InsideOutSanta | 2025-12-27 11:39:59+00:00
Yes, this is what I meant. I used the word "harmful" in the context of the argument that LLMs are harmful because they consume resources (i. e. increase entropy).

But everything humans do does that. Everything increases entropy. Sometimes we find that acceptable. So when people respond to Pike by pointing out that he, too, is part of society and thus cannot have the opinion that LLMs are bad, I do not find that argument compelling, because everybody draws that line somewhere.
by bregma | 2025-12-27 11:40:58+00:00
> We'll see if it reaches bare metal some time, instead of relying on QEMU

You can already get a free license for QNX and grab a BSP (board support package) to create a bare metal image. You have been able to for quite a while. People who understand how a computer works, what a device driver is and how and when to use one, are not the target for this demo. It's targeted at the people who think the user interface is the software and the desktop GUI is the operating system.
by vintagedave | 2025-12-27 11:41:46+00:00
I’m curious how the choice of which blog is located next to which was made. The writeup mentions “dimensionality”. I found my blog, and the eight surrounding it are interesting people, but everything one of them is an AI researcher with degrees from Berkeley or similar, and the sites are predominantly CVs.

Luminous company but not my level, nor is my blog about AI, nor is it a CV. I can’t see any reason for the location.
by stockresearcher | 2025-12-27 11:42:50+00:00
Snap Circuits are just standard electronic components that combine with each other using standard snap buttons [1] from the textile industry. The real “genius” of them is that the grid spacing and the width/thickness of each component is well-balanced such that they are held together securely while being easy to separate using the lever action that a child naturally produces when grabbing something (ie don’t pull straight up). It should be easily replicable and I’d be surprised that there aren’t knockoffs in all the countries that they block from their website.

[1] https://en.wikipedia.org/wiki/Snap_fastener
by burnt-resistor | 2025-12-27 11:43:25+00:00
Aren't the choices straightforward, or looking specific product links?

Generally:

- Robots with lights that make nonstop loud noises without helping with household chores

- Glue

- Glitter

- Finger paint

- Bass guitar, drum kit, or trombone

- Baking cookbooks

- Things worse than IKEA flat packs with zillions of tiny, fragile pieces like laser-cut wood models
by cesarb | 2025-12-27 11:43:37+00:00
> The Cargo example at the top is striking. Whenever I publish a crate, and it blocks me until I write `--allow-dirty`, I am reminded that there is a conflation between Cargo/crates.io and Git that should not exist. I will write `--allow-dirty` because I think these are two separate functionalities that should not be coupled.

That's completely unrelated.

The --allow-dirty flag is to bypass a local safety check which prevents you from accidentally publishing a crate with changes which haven't been committed to your local git repository. It has no relation at all to the use of git for the index of packages.

> Crates.io should not know about or care about my project's Git usage or lack thereof.

There are good reasons to know or care. The first one, is to provide a link from the crates.io page to your canonical version control repository. The second one, is to add a file containing the original commit identifier (commit hash in case of git) which was used to generate the package, to simplify auditing that the contents of the package match what's on the version control repository (to help defend against supply chain attacks). Both are optional.
by uplifter | 2025-12-27 11:44:36+00:00
In The Selfish Gene, Dawkins emphasized that the primary unit of evolution was the individual gene, not whole genomes. The genes were replicators and the genomes were just collections of replicators, and the way the selection pressure math worked out, there was too much diffusion of responsibility for whole genomes that typically evolution could not work coherently at that scale, or at least that's my best recollection of the book's main theory.

Regarding intentionality being a good practical assumption, I actually don't recall Dawking recommending that, and it seems doubtful because that can lead to all kinds of fallacious reasoning. I mostly considered Dawkins a data-based neo-darwininian, so it would surprise me that he would recommend that.

Could you recall a quote or chapter from the book that bolsters your point?
by zargon | 2025-12-27 11:44:56+00:00
I revisited Assassin's Apprentice recently, as an audiobook, having read the series 20 years ago. Personally, I will not be continuing. The best term I came across to describe it is "injustice porn" or "misery porn." Fitz and the other protagonists are stymied and beaten at every turn, through the entire series (I checked summaries to see if there would ever be any payoff in continuing). If you're in the mood for an extremely depressing read with no positive outcomes, this is the series for you. I have been in that place before, but I have no tolerance for that at this stage of my life.