MurphyA/hacker-news huggingface dataset:
by forrestthewoods | 2025-07-25 02:11:15+00:00
Cross-compiling is super super easy conceptually. All you need is headers and an import library.

Windows is trivial to cross compile for because there is a single set of headers. And for DLLs Windows compiler like to generate an import lib. Which is basically a stub function for all exports.

Linux is stupid and sucks. Linux doesn’t have a single set of headers because programmers in the 80s didn’t know better. And Linux linking to a shared library expects you to have a full copy of the library you expect to exist at runtime. Which is fucking stupid and ass backwards. But I digress.

So. Why is Zig awesome for crosscompiling C++? Because Zig fixed Linux sucking ass. Zig moves mountains to generate thin “import libs” of the half dozen .so files you need to link against to run on Linux.

If you want to cross compile C++ for Linux all you need is clang++ executable, headers, and those stub .so files. Zig generates the libs implicitly as part of its zig cc build process. I’m asking for the half dozen (C) or dozen (C++) libs to be explicitly exportable by Zig. So that they can be trivially used in other build systems.

I’ve got a custom polyglot build system that leverages Zig. But I have to zig cc a hello_world.cpp and parse the output to get the paths to those libs. Which is annoying and janky.

Hopefully that helps?
by mzk_pi | 2025-07-25 02:11:49+00:00
What if a society could be driven not by capital or currency—but by contribution?

We’ve defined such a structure as a quantitative model, and proved its convergence to π—a symbol of natural harmony.

The model integrates trust, behavioral history, and systemic response into a mathematical framework. It may provide a foundation for decentralized governance and contribution-based social currencies.

We’ve published the structure in a clear and engineer-friendly format on GitHub. Would love to hear your thoughts and feedback.

Full model here on GitHub https://github.com/contribution-protocol/contribution-protoc...
by pauljara | 2025-07-25 02:11:52+00:00
I'm a recently licensed firearms owner from Canada and as part of the safety training part of the licensing process, I became aware of how unsafe the P320 seemed to be. It really feels like that model needs to be taken off-market, undergo significant redesign, and for Sig's marketing sake, probably re-emerge as some new model like the SP321 where the S stands for "safety" :-)

What I'm not as familiar with is why hasn't Sig done this? It really feels like they've been doing ad-hoc patch design adjustments to a fundamentally unsafe design at this point. But I'm also not very knowledgeable about firearms yet.
by Twirrim | 2025-07-25 02:12:19+00:00
I had a few minutes. This turns out to be really easy to do with FastAPI:

from fastapi import FastAPI from starlette.responses import StreamingResponse from fastapi.middleware.gzip import GZipMiddleware app = FastAPI() app.add_middleware(GZipMiddleware, minimum_size=0, compresslevel=9) def lol_generator(): while True: yield "LOL\n" @app.get("/") def stream_text(): return StreamingResponse(lol_generator(), media_type="text/plain")

Away it goes, streaming GZIP compressed "LOL" to the receiver, and will continue for as long as they want it to. I guess either someone's hard disk is getting full, they OOM, or they are sensible and have timeouts set on their clients.

Probably needs some work to ensure only clients that accept GZIP get it.
by codys | 2025-07-25 02:12:20+00:00
The post is a demonstration that a class of problems: causing Go to treat a integer field as a pointer and access the memory behind that pointer without using any of Go's documented "unsafe.Pointer" (or other documented as unsafe operations).

We're talking about programming languages being memory safe (like fly.io does on it's security page [1]), not about other specific applications.

It may be helpful to think of this as talking about the security of the programming language implementation. We're talking about inputs to that implementation that are considered valid and not using "unsafe" marked bits (though I do note that the Go project itself isn't very clear on if they claim to be memory-safe). Then we want to evaluate whether the programming language implementation fulfills what people think it fulfills; ie: "being a memory safe programming language" by producing programs under some constraints (ie: no unsafe) that are themselves memory-safe.

The example we see in the OP is demonstrating a break in the expectations for the behavior of the programming language implementation if we expected the programming language implementation to produce programs that are memory safe (again under some conditions of not using "unsafe" bits).

[1]: https://fly.io/docs/security/security-at-fly-io/#application...
by nostrademons | 2025-07-25 02:12:46+00:00
Competition. If all your competitors are doing something that you want to do but know will piss off your employees, you can safely do it too and know that they don't have anywhere else to go. Most of these big tech companies operate in markets with huge barriers to entry and very differentiated skillsets; a new competitor isn't going to spring up overnight without some form of warning.

Most hired executives play not to lose rather than playing to win; the nature of their compensation packages incentivizes it, where big wins accrue largely to diffuse shareholders while big losses mean they lose their fat executive pay package. It takes a founder-CEO to play to win, but if the hired CEO had that skillset and that inclination, they'd be a founder rather than a CEO.
by lovich | 2025-07-25 02:14:18+00:00
> I use it at home via the $20/m subscription and am piloting it at work via AWS Bedrock. When used with Bedrock APIs, at the end of every session it shows you the dollar amount spent which is a bit disconcerting. I hope the fine-grained metering of inference is a temporary situation otherwise I think it will have a chilling/discouraging effect on software developers, leading to less experimentation and fewer rewrites, overall lower quality.

I’m legitimately surprised at your feeling on this. I might not want the granular cost put in my face constantly but I do like the ability to see how much my queries cost when I am experimenting with prompt setup for agents. Occasionally I find wording things one way or the other has a significantly cheaper cost.

Why do you think it will lead to a chilling effect instead of the normal effect of engineers ruthlessly innovating costs down now that there is a measurable target?
by mbananasynergy | 2025-07-25 02:14:28+00:00
You can argue most bad people won't know about it - but I would say we can't really know.

I think the main problem is that people can be affected that aren't even using it, which is why it is such a big problem. You can't really hide it's GrapheneOS either, even just by virtue of the features available on the device, you'll be able to deduce what it is.

I understand the idea behind it but it simply isn't realistic to provide and can put people in danger - the very thing it's meant to prevent.
by reactordev | 2025-07-25 02:14:45+00:00
Nothing wrong with covers. Anything that gets you where you want to be. The issue I have is with musicians who just play covers and didn’t learn what went into making/writing the song. Like @Slow_Hand mentioned, being able to recreate a song is the epitome of a cover. You’ll be able to write a song then, given you had an idea of course.

I also like the idea of doing that for programming. There’s so much out there you can learn from. Just start building…
by shadowgovt | 2025-07-25 02:14:50+00:00
Technically no, but only in the technical sense that makes the idea a little useless.

Technically, 99% of Down's cases aren't hereditary (it's a spontaneous mitotic change), so you don't "improve the gene pool" by excluding it; as far as we know, basically anybody can have a kid with Down's syndrome if the mitotic dice come up snake eyes.

(But in the sense most people understand the term? Yes.)
by zetaplusae | 2025-07-25 02:16:11+00:00
I’ve open-sourced Timestone, a small Java library that lets you abstract time sources for testable, deterministic time-based logic.

It provides an interfaces `Time` with two implementations `SystemTime` for real system clock, and `MutableTime` that can be advanced programmatically. It lets you control time precisely, without relying on mocking frameworks.

What prompted me to build this is that many large projects (like Apache Kafka and Apache Flink) implement their own internal solutions for time control:

- in Kafka: [org.apache.kafka.common.utils.Time](https://github.com/apache/kafka/blob/trunk/clients/src/main/...) - in Flink: [org.apache.flink.util.clock.Clock](https://github.com/apache/flink/blob/master/flink-core/src/m...)

I saw a pattern of duplicated fake clock logic across open source and internal codebases, and decided to make a reusable, standalone alternative.

And, it has been published to Maven Central: - `io.github.predatorray:timestone-api:1.0.0` for API (optional) - `io.github.predatorray:timestone-test:1.0.0` for test

I would love feedback on the design, and to hear how others test time-sensitive code.
by fujiwarachoki | 2025-07-25 02:16:54+00:00
... it costs $10 a month, and it also has these features:

1. Text-to-Speech

2. YouTube Video Summarization

3. Notion Integration

4. Multiple Providers (Grok, OpenAI, Anthropic, Moonshot, Qwen, Gemini, Meta & more!)

Feel free to check it out.

Oh and we also have a bunch of themes :)

Here's a 20% off discount for your first month: HN20
by mdaniel | 2025-07-25 02:17:22+00:00
There seems to be a GH discussion wherein they explain the choice: https://github.com/posit-dev/positron/discussions/3820

If you find that interesting, there are actually quite a few others

https://github.com/airbytehq/airbyte-platform/blob/main/LICE...

https://github.com/apollographql/federation/blob/main/LICENS...

https://github.com/PeerDB-io/peerdb/blob/main/LICENSE.md
by userulluipeste | 2025-07-25 02:17:49+00:00
"We work to extend terrestrial networking into solar system space..."

Minor nitpick: it's the Solar System - i.e. capitalized (since it's a proper name). The Solar System is the planetary system that we reside in, the one that has the star Sol at its center.

https://en.wikipedia.org/wiki/Solar_System#Definition
by Fricken | 2025-07-25 02:17:50+00:00
I can't even google showtimes anymore. I'm not sure the deal, it seems local theatre companies just won't inform Google when a movie is coming out. Sometimes I hear about a movie I want to see, and I can't find out whether it will be on screens next week or next year. It's the information age. We live in it.

Then I get 30 minutes of ads at the theatre, which is basically the movie theatre telling me loudly that I am boorish lowbrow unculvtivated trash for showing up and giving them my money at all. It's a fully enshittified experience with or without an Imax screen. I don't want to give the multiplexes my money because they hate me and they're explicit about it.

The repetoire theatre is OK. they don't beat me into subissiom with humiliating and degrading advertisements, and it's easy to look up their screening schedule months in advance.
by ChadNauseam | 2025-07-25 02:17:51+00:00
What the GP described could be achieved with dependent types, but could also be achieved with a less powerful type system, and the reduced power can sometimes lead to enormous benefits in terms of how pleasant it actually is to use. Check out "refinement types" (implemented in Liquid Haskell for example). Many constraints can be encoded in the type system, and an SMT solver runs at compile time to check if these constrains are guaranteed to be satisfied by your code. The result is that you can start with a number that's known to be in [0..10), then double it and add five, and then you can pass that to a function that expects a number in [10..20). Dependent types would typically require some annoying boilerplate to prove that your argument to the function would fall within that range, but an SMT solver can chew through that without any problem.
by jonstewart | 2025-07-25 02:17:52+00:00
The hilarious part I’ve found is that when it runs into the least bit of trouble with a step on one of its plans, it will say it has been “Deferred” and then make up an excuse for why that’s acceptable.

It is sometimes acceptable for humans to use judgment and defer work; the machine doesn’t have judgment so it is not acceptable for it to do so.
by strcat | 2025-07-25 02:18:07+00:00
Fairphone devices have 1-2 month delays for partial security patches. They have a year or more of delays for new major releases. Their recent Fairphone 5 uses the Linux 5.4 LTS branch going end-of-life in December 2025 with no plan to port to a new LTS branch. Their past devices use end-of-life Linux kernel branches. They do not provide the expected security patches even shortly after release. They aren't doing the bare minimum and aren't even compliant with recent EU regulations for device updates.

Google provided resources for the Linux kernel to extent LTS support for 6 years for their 5 year guarantee with the Pixel 6. It ended up not being needed since Pixels began moving to newer Linux LTS branches. The official Linux kernel LTS support is back down to 2 years. The 6 years was meant to benefit all Android devices but it proved to be too difficult to do well and it makes more sense to invest a far smaller amount of resources moving to new LTS branches.

Fairphone presents providing an Android OS release 3 years after it was released as providing 3 more years of extra support compared to an OEM releasing it in the month it was launched as their final update. That doesn't make sense.

They've repeatedly had blatant security flaws such as using publicly available private keys for signing the OS on the Fairphone 4. These issues are downplayed rather than being acknowledged.

There are important security features missing, but the main issues are the lack of proper updates and their approach to security flaws being reported and discussed.

Many Android OEMs are a better fit for a partnership with us and we're working with one.

https://discuss.grapheneos.org/d/24134-devices-lacking-stand... is a better thread about this than the one you linked.
Why Nvidia is going to have it's deepseek moment soon
by Taikhoom10 | 2025-07-25 02:18:21+00:00
So back in February, the tech world was in scrambles. China wasn't years behind us in AI, they were only 6 months. It was a wake up call, that we cannot get complacent in the AI race, let alone slow us down with regulations.

NVIDIA is a stock with a high barrier of entry. It has been on a rise for a while now and so investing in the company right now would not be smart. Waiting for the barrier of entry to go down would be the right time.

NVIDIA is going to see its own version of the deepseek panic, that blew up the markets. Right now china is not producing GPU's at the level the US is. But it is only a matter of time. The reason I say that is China is way ahead of us in energy production and it isn't even close. NVIDIA is producing energy efficient GPU's. China does not have to worry about that. And there bound to produce GPU's at the level we are sooner or later. Where it is six months or a year. It is bound to happen, and when it does the stock market is gonna go nuts. Investors are gonna panic, and NVIDIA stock is gonna plumet. That is the ideal time to invest heavily in NVIDIA.
by dstroot | 2025-07-25 02:19:15+00:00
Here's an alternative take, but along similar lines. Many high level business leaders in large established companies loathe taking risks and sticking their necks out. Instead, they hire a management consulting company (think McKinsey) who do a study and make recommendations that said executive can take to the other execs, or to the board. If it works, executive takes credit. If not, it was those darn consultants. The thing is, the consultants are giving companies the same advice. In fact, it is even stronger when "competitor A and B" are already doing "strategy C" and they are ahead of you. I've seen this movie many times...
by preommr | 2025-07-25 02:19:18+00:00
> A repeated trend is that Claude Code only gets 70-80% of the way, which is fine and something I wish was emphasized more by people pushing agents.

I have been pretty successful at using llms for code generation.

I have a simple rule that something is either 90%>ai or none at all (exluding inline completions, and very obvious text editing).

The model has an inherent understanding of some problems due to it's training data (e.g. setting up a web server with little to no deps in golang), that it can do with almost 100% certainty, where it's really easy to blaze through in a few minutes, and then I can setup the architecture for some very flat code flows. This can genuinely improve my output by 30%-50%
by llmthrow103 | 2025-07-25 02:19:34+00:00
I understand where they're coming from, but I believe it comes from a place of local and specific concern (the child with Down's syndrome) and not the wider impact.

The way I think about it; 10-20% of known pregnancies (and a larger number of all pregnancies) end in miscarriage, the majority of which are due to genetic errors and chromosomal abnormalities that, unfortunately, mean the fetus wasn't viable to begin with.

While some genetic defects don't kill the baby in the womb, the resulting baby is not healthy and will never be self-sufficient. Terminating these pregnancies lets the couple try again and gives the chance for another, healthy baby to come into the world, and possibly more because they won't have the burden of a many-orders-of-magnitude more difficult and perpetually child to raise.
by shadowgovt | 2025-07-25 02:20:23+00:00
It's not the runtime; it's how the borrow-checker interoperates with threads.

This is an aesthetics argument more than anything else, but I don't think the type theory around threads and memory safety in Rust is as "cooked" as single-thread borrow checking. The type assertions necessary around threads just get verbose and weird. I expect with more time (and maybe a new paradigm after we've all had more time to use Rust) this is a solvable problem, but I personally shy away from Rust for multi-threaded applications because I don't want to please the type-checker.
by vtbassmatt | 2025-07-25 02:20:28+00:00
As the parent of a child with Down syndrome, I really appreciate the way you and the parent comment approached this topic. Thank you.

Tiny nit, in the US it’s “Down syndrome”, not “Down’s”. Apparently we name conditions with a possessive if named for someone with it (“Lou Gehrig’s”) and without the possessive if named for, say, the person who first described the condition in a medical journal.
by bern4444 | 2025-07-25 02:20:38+00:00
This seems like a conclusion derived from the ideas in parse don't validate[1].

The goal is to encode the information you learn while parsing your data into your type system. This unlocks so many capabilities: better error handling, making illegal states unrepresentable, better compiler checking, better autocompletion etc.

[1]https://lexi-lambda.github.io/blog/2019/11/05/parse-don-t-va...
by throwaway-0001 | 2025-07-25 02:21:31+00:00
But also in your case criminals can threaten you to give access to bank accounts you don’t have.

When I say hide, again for 99% of the people. Splash screen, setting spoofing. Sometimes good enough is better than perfect.

And even if the attacker can see the other profile you can just say was your friend’s profile and it’s lost.

Or better, not sure if possible: export the profile in a file like veracrypt. Then when you need the profile import from this file and would restore the secret profile.
by borroka | 2025-07-25 02:21:38+00:00
As someone who has practiced and followed sports before, during, and after the revolution in analytics and optimization, I can say that “back in the day,” sports were definitely more fun, interesting, and creative, whereas now they are more regimented and boring, but individual athletes and teams are much better at winning. There is no longer much room for eccentric, flamboyant characters, “geniuses,” or charismatic competitors who, thanks to their instincts and intuition, were able to make the winning move.

But, as in business and personal relationships, finding what works best and putting it into practice tends to be more likely to succeed than simply hoping it will work--look at me, it has never been tried before!
by Nathanba | 2025-07-25 02:23:25+00:00
Trump causes uncertainties in some areas but I would not say that fab investment or factories is one of those areas. The democratic president after Trump has pretty much kept the exact same course as Trump, even going so far as continuing to build the border wall that Trump started, continuing the tariff behavior as you noticed too and certainly they will continue to want chips factories at home in the US. That much is already clear when you look at what the democrats say and do. I would struggle to find anything other than deportation or tax schemes that the next president will change. And even there.. it's not like the democrats changed the so called Trump tax cuts "for the rich" when they were in power. One main area that comes to mind that democrats will attempt to change are social issues like policies around sports for trans people or bathrooms or POC/LGBT specific funding. As much as they (quite hilariously) keep telling everyone else to stop caring about this supposedly fringe issue, that's really the first thing they will probably try to reimplement. I still remember how Biden, in his ~1st week in office, immediately implemented farmer funding specifically for POCs. It's so absurd but this seems to be what they care about most, essentially on its face racial policies.
by phendrenad2 | 2025-07-25 02:23:35+00:00
Yes it's puzzling. And I don't buy the answers to your comment so far. Chargebacks? Wanting to control everything? Those are just silly hand-waving explanations that lack supportive evidence. They sound good to the people who say them, but I want more. I want data. Or at least some "aha!" evidence. Or, at least I can make up my own hand-wavy speculation.

These groups like "Collective Shout" don't seem organic to me. Where do they find members? In churches? I'm pretty clued-in to the going on in various churches, nobody knows anything about Collective Shout. It just materialized out of thin air, with a slick website and loudly claiming responsibility for these bans. "Look at us! We did this! No need to look elsewhere!"

Let me put on my aluminum-foil hat for a minute... Could this all be social engineering by some government agency that wants to ban porn (not outright, but make porn sites go out of business) to increase the birth rate to avoid demographic collapse? Just asking questions here.
by someone32849283 | 2025-07-25 02:25:21+00:00
Just built WeBuyBack — a resale marketplace where you can sell and buy stuff locally or online, kind of like OfferUp + AI magic.

Trying to get first 50 users. Would love feedback, early signups, or just a roast

Link: https://webuyback-marketplace-hub.lovable.app

If you flip gear, collect cool stuff, or just wanna list something, it’s free & instant.
by alephnerd | 2025-07-25 02:26:48+00:00
^^^ this.

There are very valid reasons to oppose the Chinese government, but it should NOT sink into jingoism or red scare style BS.

A globalized world like ours today makes it incredibly difficult to be heavy handed the same manner the USSR was back in the day.

(Doesn't mean organs like the UFWD aren't active, but their capabilities are vastly overstated for the sake of jingoism - and I'm saying this as someone who carries a burner and uses non-American ID at GITEX)