MurphyA/hacker-news huggingface dataset:
by CraigJPerry | 2025-05-10 08:40:09+00:00
Vendoring is a step in the right direction, you’ve constrained one side of the equation.

But you’re still open to typo squatting and similar issues like crates falling unmaintained - the article mentions the now famous dotenv vs. dotenvy issue (is this solvable with a more mature governance model for the crates ecosystem? At this point dotenv should probably be reclaimed). So after vendoring a baseline set of dependencies, you need to perform comprehensive auditing.

Maybe you can leverage LLMs to make that blob of vendored deps smaller / cheaper to own. Maybe you can distill out only the functionality you need (but at what cost, now you might struggle to backport fixes published upstream). Maybe LLMs can help with the auditing process itself.

You need a stream of notifications of upstream fixes to those vendored deps. Unfortunately in the real world the decision making will be harder than “ooh, there’s a sec fix, I should apply that”.

I always wonder why someone like JFrog don’t expand their offering to provide “trusted dependencies” or something similar. I.e. you pay to outsource that dependency governance and auditing. Xray scanning in the current product is a baby step toward the comprehensiveness I’m suggesting.

Taking a step back though, I’d be really careful not to throw the baby out with the bath water here. Rust has a fairly unique capability to compose work product from across unrelated developers thanks to its type system implementation (think about what happens with a C library, who’s responsible for freeing the memory, you or me?). Composition at scale is rusts super power, at least in terms of the productivity equation for large enterprises - in this context memory safety is not the sales pitch since they already have Java or whatever.
by peer2pay | 2025-05-10 08:40:32+00:00
Out of everything wrong in this comment the funniest one is "Even Amazon orders […] suck"

Care to elaborate? Last time I was in the US my prime order took over a week to be delivered because it had to get shipped from a warehouse in rural Ohio to San Diego. Here in Germany you get absolutely everything next day because the country is about the size of an average US state.
by xucian | 2025-05-10 08:41:01+00:00
there is a fine balance between new features and performance (e.g. android/ios apis, .net apis in unity game engine etc.)

but I think there's a consensus around certain software not keeping its responsiveness acceleration on par with hardware capability acceleration, some of it driven by ideas like "everyone phone now has 8gb of ram, c'mon", but most of it by profit incentives on the other side, e.g. cloud providers.

I was really happy to discover proxmox (my micro-homelab is a dell mini pc, a mid-range asus gaming router, a 2-slot synology nas, and it's rocking)

then, hetzner (for workloads that cannot be hosted on my homelab), they have an outstanding performance for 3-5$ monthly. before that I used aws lightsail, digital ocean droplets, and before that I used google cloud. I basically started with the worst and ended up with the best, I'm quite sad about that as I've wasted so many hours learning the stupid GCP ui, which was buggy and convoluted af. basically I went on one of the worst paths in terms of devops/sysadmin leverage, wasting time on semi-non-transferrable skills. this was not my main job, though, it was mostly hobby projects but still
by sjducb | 2025-05-10 08:41:06+00:00
Trump wants to deport a few million people. You can’t do that while following the rule of law. The hearings and appeals take too much time and money.

This is why they’re not trying to fix mistakes. Once you set a precedent of allowing appeals everyone will want one.

Trump is using ICE to create a parallel legal system where people have no rights. This is exactly what early (1933) Nazi Germany was like.
by aden1ne | 2025-05-10 08:41:17+00:00
> Europe really needs to fix the funding issue and language fragmentation.

The language fragmentation certainly is an issue in the general workplace. But academia does use English as its lingua franca throughout most of the EU, though it might depend on the country. Certainly in places I've worked in academia - and yes, that has been in multiple countries in the EU - I've never had to utter a single word in something other than English in the workplace. But it is International English alright, which may be somewhat of a novelty to the native English speaker if they haven't been exposed.

> Even Amazon orders

That's wholly Amazon's problem. If I order something from BOL or Coolblue it arrives within 12-24 hours. Even small pop-and-mom webstores usually deliver within 1-2 business days. It's only Amazon that somehow manages to average more than a week (my last order at Amazon only arrived after 2 months. Guess why I no longer use their service).
by jonquark | 2025-05-10 08:42:04+00:00
It's the only social media I still use.

I don't notice "disjointed communities" I just look at the posts from people I follow without knowing which server they are on. I'm aware you can see a list of posts on your local server but I imagine people on most instances (unless the instance has a strong theme like for people from a particular location) never use it.
by lenkite | 2025-05-10 08:43:54+00:00
Software written in a simpler language like Objective-C - verbose, fast to grok and fast to compile is actually more maintainable in the long run than a so-called "developer friendly", humongous, complex and slow-compilation language like Swift.

A lean language reduces the surface area for beautiful expressiveness by clever people - making sure the dumb/junior guy who is maintaining your project in the future can actually fully understand what is written. And it can build and run fast - so you can iterate and test out software behaviors fast.

No one in this world is immortal. If it takes too much time to grok code, write/compile/run tests - a developer will be disincentivized to do so, no matter how amazing the language features are.

My guess is that Swift has adversely affected Apple's overall software quality. As more software moved from Objective-C to Swift, quality has dropped precipitously.
by tome | 2025-05-10 08:46:22+00:00
> Read no business books. Read Sun Tzu and Thucydides. They were contemporaries a world apart from one another and 25 centuries apart from us, yet no modern quarrel nor accomplishment escapes their analysis.

Tim Sweeney https://x.com/TimSweeneyEpic/status/1610103077599674368

Tim Sweeney has just won one of the rounds in his own version of the Peloponnesian war. I ended up listening to Kenneth W. Harl's "Great Courses" lecture series on The Peloponnesian War and it was mind blowing. One of the best lecture series I've ever listened to.
by bruce511 | 2025-05-10 08:46:51+00:00
I presume you're referring to the concept of alchemy in the middle ages?

The problem in that context is test it would have been impossible to keep the process a secret. To be useful (to say the king) it would have to be more than one guy in a castle. And between spies, and traitors who could be materially incentivised), and outright kidnapping and torture, well, I just don't see it staying hidden.

And its not like a King could really even hide the fact that he had a "gold mine" producing endless quantities of gold.

It's kinda like the story of the goose laying the golden eggs. The story fails to elaborate on what they did with the eggs. Presumably they sold them, but to whom? And did that person not get curious as to the source of the gold? And what did he do with all that gold? He'd need to sell enough of it to pay the peasant. Did his customer not notice the increase in volume?

So no, alchemy wouldn't have remained a secret for long. And the king would just be financing wars to protect it.
by Khelo | 2025-05-10 08:47:24+00:00
Roulette’s unpredictable outcomes keep players engaged, often creating a cycle of hope and despair that mirrors other forms of addictive behavior. Many fall into the trap of believing their next spin will change everything, driven by cognitive biases like the gambler’s fallacy and confirmation bias. This pattern often leads to prolonged playing sessions, financial loss, and emotional distress.
by hyperman1 | 2025-05-10 08:48:31+00:00
I was thinking about translating 'mal' to 'evil', as a non-native speaker for both languages.

For me, 'evil' seems to have a source and religious undertones. Evil can be stopped by adressing that source. People can avoid it. 'Flowers of evil' are probably given to you by the devil, and you've made a bad choice.

'Mal' is much more passive. It seeps into the world, slowly. It can't be avoided or adressed, only be felt, experienced. I'd translate it closer to 'badness'. The 'flowers of bad' are something you find in your room, and they'll stay there, with you, forever.

I don't even know if this is right, but funny how an attempt to translate shifts the meaning so much for me.
Dia – Executive Assistant Waitlist is now live
by AnshulT | 2025-05-10 08:49:46+00:00
Dia - a digital Chief of Staff or a smart EA for folks like us, juggling too much.

Not another tool to manage your work, an actual do-it-for-you assistant.

She reads and replies to emails in your tone/voice, schedules meetings and follow-ups just how you like, and does the research for all cold emails that you get.

Been a long time coming. Early access is opening soon - would love for you to join the waitlist. The link is mydia.app
by nickdothutton | 2025-05-10 08:50:27+00:00
The picture is a staged and is a caricature not a depiction or reenactment of anything real. Yes, there was child labour in many industries and it was dangerous to them in both the long and the short term. No, 3 year olds were not used to sweep chimneys (but slightly older children were, 5, 6, 7). Yes, this was outlawed long before the picture was taken. In the UK an act was passed in 1788 restricting the minimum age to 8, although like many such laws it was not well enforced.
by brucehoult | 2025-05-10 08:51:47+00:00
It's not like it's hard to find a harmless 3 cycle instruction.

For example Store A/X/Y to any unused/scratch Zero Page location.

Or condition branch to the next instruction using a condition known to be true .. BCC/BCS is often the most convenient. Or just JMP to the next instruction, though it's 3 bytes of code instead of 2.

INC/DEC of a scratch Zero Page location is useful for a 5 cycle delay in 2 bytes of code if you don't mind changing NZ flags, but the store/branch/jump alternatives don't even do that.
by dfe | 2025-05-10 08:52:12+00:00
As someone who lived through a flood caused by a hurricane, without power for 10 days, I have first-hand experience with FEMA.

Some fat-ass government worker showed up with a tablet, checked a bunch of boxes on an electronic form to gather statistics on all the damage, gave us some information on government-backed loans, then left. This about 2 or 3 days after.

I will never forget how absolutely useless FEMA was.
by gabriel666smith | 2025-05-10 08:53:51+00:00
I would love to write video games (novelist by day-job). The formal possibilities are absolutely fascinating, and so wide, and getting wider by the day with LLMs. ‘Disco Elysium’ is one of the most interesting works of literature I’ve ‘read’ in years, and there’s scope to do so, so much more.

The barrier to entry seems confusing, though. None of my agents seem to understand that world (fair enough!). I’ve written whole scripts for games - as writing exercises - but I find the learning curve of the engines too vicious to realistically have time to do a good job of producing a whole game solo.

I wonder if anyone has any advice. It doesn’t feel like book / film world, where you get an agent, they shop your story around, etc. I wouldn’t even know where to start, given how many production companies there are.

But it’d be incredibly interesting - creatively, and in terms of seeing the other side of the process, the limitations that need to be written around, etc - to work with someone, or a small team. I’d love to try that. There is so much room for innovation in storytelling when compared with writing for the page or screen.

(Though I’m certain there are a million dudes out there who think: “I have a great idea for a game!”, lol.)
by ezst | 2025-05-10 08:53:59+00:00
For the record, XMPP has OMEMO as its standard E2E/PFS-preserving encryption protocol (based on your usual double-ratchet aka Signal encryption), which is regularly audited for security (and as recently as last month in the case of the Conversations Android client).

XMPP being used by several law enforcement agencies and institutions like NATO, I wouldn't default to making fun of its security.
by danpalmer | 2025-05-10 08:54:05+00:00
I cannot figure out what Bonfire is.

- The homepage has a bunch of "Bonfire is...", but they don't tell me much about how Bonfire achieves any of those goals like to be a "commons".

- There's a codebase and documentation, but it comes in six different "flavours", although I can only really differentiate between two.

- Most of the FAQs just say "wip".

- It proudly states that there are no ads, no tracking, etc, but doesn't tell me what there are no ads on, or what isn't tracking me.

- It proudly states that it's federated, but as far as what it federates with, that's "wip".

I'm all for more federation, more data control, and experiments in social networking, but I'm a technical user and I have no idea what this is or does. It feels like in service of wanting to be as abstract and flexible, it maybe just doesn't solve any actual concrete problems.

If it's a toolkit with which to build social networks, that's great, but much of the documentation suggests that it's also a network itself, suggesting perhaps limited use as a toolkit. If it supports ActivityPub or AtProto, it really needs to come out and say that up front. "Bonfire is a framework for building custom AtProto based social networking applications" would be a great summary, or "Bonfire is a Mastodon alternative exploring the frontier of ActivityPub federated applications" would be great too.
by atemerev | 2025-05-10 08:54:47+00:00
Oh well.

When Russian scientists were escaping the horrible realities of Putin's regime, had someone in Europe attempted to "lure" them? No, they were fired by hundreds [1] and students were not allowed anymore [2]. Not counting the immense indirect pressure like closing their bank accounts and not prolonging their existing residence documents even when they had jobs.

When Ukrainian scientists tried to escape the horrible war of aggression and cruelty that Russia brought on them, did someone try to "lure" them in? No, they had some charity help and some temporary programs, but mostly they get "emergency temporary" permits with the condition they have to go home afterwards. These temporary protection measures are now being phased out [3] and many Ukrainian scientists will be shown the door.

Now, American scientists are escaping the horrible realities of their regime. But for them, EU is much more friendlier and welcoming.

What is the difference?

[1] https://www.swissinfo.ch/eng/science/cern-to-expel-500-russi...

[2] https://t-invariant.org/2024/12/swiss-cross-on-russian-stude...

[3] https://www.icmpd.org/blog/2025/phasing-out-temporary-protec...
by ak_111 | 2025-05-10 08:55:08+00:00
"dependency" here I guess means something higher-level that your compiler can't make the assumption you will never use.

For example you know you will never use one of the main functions in the parsing library with one of the arguments set to "XML", because you know for sure you don't use XML in your domain (for example you have a solid project constraint that says XML is out of scope).

Unfortunately the code dealing with XML in the library is 95% of the code, and you can't tell your compiler I won't need this, I promise never to call that function with argument set to XML.
by gambiting | 2025-05-10 08:56:38+00:00
Well but it's posted as a real thing, not a re-enactment. It's dishonest at its core. Especially since it says it's as recent as 1930 which is just straight up not true.

It's like if we reenacted it in 2025 and said "look at this toddler chimney sweep in 2025!".

Obviously part of the outrage would be at the practice, part of it would be at the fact that it's in 2025.
by dzdt | 2025-05-10 08:57:10+00:00
I more examples from when that kiddie chimney sweep photo/film session went viral in the late 1920's. Interestingly the fakeness of it was never acknowledged.

Here is Horst Bohnke in Spanish literary/art magazine Blanco y Negro in 1928. It includes one more photo not already in the original Fake History Hunter article. [1]

And here he is in American newspaper photo collages, in a syndicated 1927 Central Press spread "The Day's News in Pictures" : "Starting Early - Horst Bohnke, two and one-half years old, of Berlin, Germany, has just entered the chimney sweeping profession, proving that chimney sweeps are born and not made. He is working as an apprentice to his father" [2].

And in Knickerbocker Press Artgravure Picture Section, March 6, 1927 : "Infant member of an ancient trade. Horst Bohnke, two and a half years old, is apprentice to his father, a Berlin, Germany, chimneysweep" [3]

[1] https://www.google.com/books/edition/Blanco_y_negro/NujrMJPr...

[2] https://fultonhistory.com/highlighter/highlight-for-xml?altU...

[3] https://fultonhistory.com/highlighter/highlight-for-xml?altU...
by gingerBill | 2025-05-10 08:57:30+00:00
Odin itself does not care what naming conventions you use. Use whatever you prefer.

For Odin native libraries, we usually for the convention of `snake_case` for variables and procedures and `Ada_Case` for types. However for anything that is third-party/foreign, we try to keep to the same convention as the original library to make it easier to people reference the original documentation, as well as not have any of the problems that certain naming conventions cannot be translated to another. So the raylib code uses the original raylib naming conventions because of the reasons I described.
by bjackman | 2025-05-10 08:58:32+00:00
That would be a neat usecase but it's not a slam dunk.

TEEs in theory eliminate the need for the user to trust the owner of the hardware. But for a cloud you need to eliminate the other direction too.

Cloud companies achieve this by... Spending a LOT of money on it. And the technical project of doing that is easier, because they control the whole host stack. I'm not sure it's technically feasible to achieve that in an environment where the host also needs to also support stuff like running Steam!

But still, maybe if you constrained the requirements enough it could be possible, it would have been a really cool thing to try!
by surgical_fire | 2025-05-10 08:59:12+00:00
> You people are too good at critical thinking to read "an investment of 500 million euros between 2025 and 2027" and not instantly write this off as empty grandstanding.

Such is life when you can't infinitely print money for being the world reserve currency. When the whole world is buying your debt no questions asked, it's much easier to write some larger checks you know.
by hyperman1 | 2025-05-10 08:59:18+00:00
It's worse. There is no Europe. There is no one who can decide to pay.

It's a marriage of convenience between states that know they are ignored if they speak on their own. But each of them sees all others as a way to amplify their own voice but surely not have an independent thought. It's the penultimate example of trying to herd cats.

Europe is good at commerce because it has to, the member states want to sell to each other. In the same way, it's bad at politics, military and vision because it still can afford to.
by mrd3v0 | 2025-05-10 09:00:11+00:00
It is just one comment on Y Combinator's link aggregation service. People who haven't tried starting a serious FOSS project, do not understand how unsustainable it is. Funny thing is, like you mentioned, the monetisation isn't even imposed on the software itself, the entire software is free. It is on the *gratis* service to host it.

Entitlement knows no bounds. Don't worry about those disheartening comments, they are not coming from a place of genuine concern.
by junto | 2025-05-10 09:00:20+00:00
This is the route I would go too, but quite honestly once you’re using the more non-standard WCF bindings in CoreWCF, you’re kind of playing with fire anyway. Microsoft never really intended to support WCF and SOAP in Core since it relied on so much Windows API’s under the hood in .NET Framework and they only added some support behind CoreWCF because so many enterprise customers still had SOAP and .NET services flying about that they had pressure to support something in this area.

public class StreamingService : IStreamingService { private readonly ILogger<StreamingService> _logger;

public StreamingService(ILogger<StreamingService> logger) { _logger = logger; } public Stream GetRandomStream() { var random = Random.Shared; var isClientConnected = true; var context = OperationContext.Current; context.InstanceContext.Closed += (s, e) => { _logger.LogInformation("Client closed connection."); isClientConnected = false; }; context.InstanceContext.Faulted += (s, e) => { _logger.LogWarning("Client connection faulted."); isClientConnected = false; }; return new MonitorableRandomStream(random, () => isClientConnected, _logger); }

}

public class MonitorableRandomStream : Stream { private readonly Random _random; private readonly Func<bool> _isClientConnected; private readonly ILogger _logger; private long _sequence;

public MonitorableRandomStream(Random random, Func<bool> isClientConnected, ILogger logger) { _random = random; _isClientConnected = isClientConnected; _logger = logger; } public override bool CanRead => true; public override bool CanSeek => false; public override bool CanWrite => false; public override long Length => throw new NotSupportedException(); public override long Position { get => _sequence; set => throw new NotSupportedException(); } public override void Flush() {} public override int Read(byte[] buffer, int offset, int count) { if (!_isClientConnected()) { _logger.LogInformation("Stopping stream: client disconnected."); return 0; } var span = new Span<byte>(buffer, offset, count); _random.NextBytes(span); _sequence += count; return count; } public override int Read(Span<byte> buffer) { if (!_isClientConnected()) { _logger.LogInformation("Stopping stream: client disconnected."); return 0; } _random.NextBytes(buffer); _sequence += buffer.Length; return buffer.Length; } public override long Seek(long offset, SeekOrigin origin) => throw new NotSupportedException(); public override void SetLength(long value) => throw new NotSupportedException(); public override void Write(byte[] buffer, int offset, int count) => throw new NotSupportedException(); }
by sjducb | 2025-05-10 09:00:46+00:00
It doesn’t matter who he is.

The problem is that he hasn’t had an opportunity to plead his case.

Good law enforcement officers regularly make honest mistakes. Courts are a safeguard against this.

Imagine that you get caught up in an immigration raid. Maybe you were at a Mexican restaurant. ICE shows up and half the staff quickly sit at tables pretending to be customers. ICE arrests everyone, including you.

Will ICE let you go home to go look for your birth certificate? If your wife hires a lawyer what process will your lawyer use to present your birth certificate to ICE?

Due process and the rule of law protects you from the arbitrary power of the state.
by Ygg2 | 2025-05-10 09:01:08+00:00
> To be fair, there is no language that has a framework that contains all of these things.

Depends. There is Godot Script. Seeing how it comes with a game engine.

But original claim was

> actually dotnet also does not need too many dependencies for games and desktop apps.

If you're including languages with big game engines. It's a tautology. Languages with good game engines, have good game engines.

But general purpose programming language has very little to gain from including a niche library even if it's the best in business. Imagine if C++ shipped with Unreal.