MurphyA/hacker-news huggingface dataset:
by lolinder | 2025-05-17 13:24:16+00:00
I'm in a similar position to the author—running NixOS on a Framework 13 for about a year—and while I agree with some of their points I think I disagree with others.

> However, this means that your projects end up populated with Nix files, which is particularly annoying when you want to submit PRs to upstream projects

This is a legitimate gripe, but it does have a mitigation, which is to add those files to your global gitignore. The trade-off you make here is that you have to explicitly add the files to repos that actually do need them, but that's a one and done cost.

> I'm now responsible for configuring this entire system. I am also responsible for updating this system.

On the contrary, I have felt much less responsible for configuring and updating my whole system since switching to NixOS. Most of my system is just whatever the upstream channels are doing. My whole system config is maybe 300 lines long, and most of that is a list of the programs I want installed, which is something that I've always wished I could have on other distros but can't.

On other distros I have felt much more responsible for controlling my whole system because random crap would break all the time and I had to learn how it was configured. That has never happened to me on NixOS.

Also, containers are totally available on NixOS and I use them all the time. I've avoided flatpak so far not because it's not available but because I want to try to do things the NixOS way and I haven't felt the need to move away from fully declarative.

None of which is to say that NixOS is right for you or anyone in particular, but so far my experience has been that there is a very steep initial learning curve that you do get over. Maybe someday I'll give Fedora Bluefin a shot, but in the meantime I'm definitely not regretting leaving behind the traditional distro model.
by password4321 | 2025-05-17 13:24:22+00:00
Code complexity scanners⁰ eventually force pushing ifs down. The article recommends the opposite:

By pushing ifs up, you often end up centralizing control flow in a single function, which has a complex branching logic, but all the actual work is delegated to straight line subroutines.

⁰ https://docs.sonarsource.com/sonarqube-server/latest/user-gu...
by bgwalter | 2025-05-17 13:24:59+00:00
In an article full of marketing speak, NASA only promises a quieter sonic thump:

https://www.nasa.gov/news-release/nasa-lockheed-martin-revea...

"The X-59 is expected to fly at 1.4 times the speed of sound, or 925 mph. Its design, shaping and technologies will allow the aircraft to achieve these speeds while generating a quieter sonic thump."

Further, if the atmospheric conditions aren't right, the cutely named "thump" will turn into a boom again.

I suppose if Qatar gifts Trump the first golden supersonic private jet, it'll also pay fines for "thumps" exceeding the limits.
by petesergeant | 2025-05-17 13:25:39+00:00
This really hasn't matched my experience, and maybe I'm just blind to it. I have absolutely not found any LLM on the market able to produce text or organize my ideas well, and I spend all days cajoling LLMs into producing text for a living.

I've found it very useful for proof-reading, and calling me out on blind-spots. I'll tell ChatGPT, Claude, and Anthropic that my drafts were written by a contractor and I need a rating out of ten to figure out how much I should pay him. They come back with ideas. They often wildly disagree. I will absolutely ask it to redraft stuff to give me inspiration, or to take a stab at a paragraph to unblock me, but the work produced is almost always dreck that needs heavy rework to get to a place I'm happy with. I will ask its opinion on if an analogy I have created works, but I've found if I ask it for analogies by itself it rarely comes up with anything useful.

I've found it immensely useful for educating myself. For me, learning needs to be interactive to stick. I learn something by asking many clarifying questions about it: "does that imply that" and "well isn't that the same as" and "why like this instead of like that" until I really get it, and the models are beautiful for that. It doesn't -- to me -- feel like I'm atrophying my thinking skills when I do this, it feels like I am managing to implant new and useful concepts because I can really sink my teeth into them.

In short, I think it's improved my writing by challenging me, and I think it's helped me understand complex topics much more efficiently than I would have done by banging my head against a text book. My thinking skills feel sharper, not weaker, from the exercise.
by cromniomancer | 2025-05-17 13:26:09+00:00
The first season of True Detective is amazing TV for many reasons, but the scene I'll never forget involves a tense moment when suddenly the first gunshot goes off inside a small cottage and all hell breaks loose.

Instead of a silly overacted action sequence where the hero darts around killing everyone with miraculous hip-fired headshots, instead you hear a sudden jarring crack-FWOOMP followed by an intensely loud tinnitus ringing. It takes half the scene for the ringing to slowly clear while the hero somewhat realistically tries to escape without harming anyone or blowing his cover, while also staying out of the line of fire.

It was so against the norm for action sequences that it nearly broke the immersion for me until it settled in how well put together that scene was.
by proberts | 2025-05-17 13:26:12+00:00
"Sponsorship" is not a legal term but like an H-1B, it requires a job offer so it is not just an individual filing. Broadly, there are two ways to get a TN, one by applying with U.S. Customs and Border Protection with a letter from an employer and the other is for that employer to file a TN petition with USCIS. When the latter approach is taken, the employer must complete, sign, and submit forms as the petitioning (read, "sponsoring") employer and these forms are many of the same forms that an H-1B petitioning employer must submit. So, "sponsorship" by an employer is required for those seeking to work in TN status.
by jaas | 2025-05-17 13:26:18+00:00
Rustls uses aws-lc-rs for cryptography, which, roughly speaking, is based on the cryptography from BoringSSL, which is a heavily modified fork of OpenSSL from a long time ago. I'm not sure how similar OpenSSL and aws-lc-rs cryptography implementations are today (maybe someone else knows?), but it's probably not accurate in a useful way to say that aws-lc-rs just uses cryptography from OpenSSL.

In any case, OpenSSL does a whole bunch of things, and one of those is providing low-level cryptographic routines. When people talk about issues with OpenSSL, they're usually not (in my experience) talking about issues with its low-level cryptographic routines. They're talking about things like the TLS implementation and API.

Rustls has its own Rust code for the TLS protocol and certificate parsing/validation, which doesn't come, directly or by lineage, from OpenSSL or any OpenSSL derivatives.
by StefanBatory | 2025-05-17 13:28:10+00:00
back in days you'd just be "allowed" to make fun out of minorities with them not being able to fight back. now you aren't, and thus the majorities are "oppressed" and everything is "politically correct".

i'm bi. sometimes I watch old Polish comedies or standups. The amount of "jokes" that are just good old bigotry is stupendous.

so when people say they're tired of "political correctness", I do wonder if they mean - I am no longer allowed to be bigot openly, why can't I kick those who I consider to be below me.
by hardwaresofton | 2025-05-17 13:28:13+00:00
> Too bad there are those who think they should use Rust to write GUIs and end-user applications, which is where Rust ergonomics breaks down fast.

Disagree here, happy that those people are experimenting, and Rust is being used all the way up and down the stack. I may not prefer using Rust for web pages, but I'm super glad that some people want to -- projects like Dioxus and Tauri are really fantastic to use, and reflect well on the ecosystem as a whole.

I think Rust gained from this enthusiasm, because it's one of the languages that I think goes almost everywhere, if you pay the high upfront cost of learning. There really aren't that many domains where you absolutely couldn't write Rust. The fact that Swift is also chasing this quality suggests it's valuable.
by bandoti | 2025-05-17 13:28:50+00:00
I find the opposite after reading the spec. Did you read the spec? I mean the actual spec. not Python API documentation and such. :)

It’s just JSON RPC between a client, one or more servers. The AI agent interaction is not part of what the protocol is designed for except for re-prompting requests made by tools. It has to be AI agnostic.

For tool call workflow: (a) client requests the list of tools from the known servers, then it forwards those (possibly after translating to API calls like OpenAI toolcall API) to any AI agents it wants; when the AI then wants to call a tool (b) it returns a request that needs to be forwarded to the MCP server for handling; and (c) return the result back to the AI.

The spec is actually so simple no SDK is even necessary you could just write a script in anything with an HTTP client library.
by lelanthran | 2025-05-17 13:28:51+00:00
> I dunno, it kind of accurately reflects the view that in capitalist firms employees are resources, e.g. to be exploited.

Not that accurate, in my view: a resource is something that's a positive thing to be exploited.

"Human resources" in most companies are not there primarily to exploit the employee to their full potential/productivity/burnout level. They're there to protect the company from the employees!
by ajross | 2025-05-17 13:29:57+00:00
> How much better

That's the real rub. Hashed data structures were a revelation in the early 90's when we all started using perl. None of this work really changes any of that calculus. It's not like we're all going to be chatting at the water cooler about "Remember the days when all we had was djb2?! How the world has changed!"

Still interesting, but unless you're directly involved in a heavily benchmarked runtime, it's probably not worth trying to integrate.
by appreciatorBus | 2025-05-17 13:29:59+00:00
This assumes that decarbonizing aviation is the only way to address the issue.

A much simpler one, that costs nothing, is simply if we did less aviation. If we had the political will, even just trying to get somewhere close to pricing pollution externalities of aviation (in addition to other pollution sources, to be clear), would immediately reduce demand and make other forms of transportation more competitive.

Of course we don’t have that political will, so it may be true that the only choice is to come up with expensive and esoteric technologies to decarbonize aviation. But I think it’s important to acknowledge that flying less was always an option we (collectively) had, but chose not to take.
by hardwaresofton | 2025-05-17 13:30:36+00:00
> Aka buy lightbulbs and switches from ikea and you can right out start using them, I believe you only need a hub to create groups of devices which then can get controled with one switch. You then could unplug the hub and still use them, only needing a hub for ethernet bridging and automations.

Yeah thanks for pointing this out -- just need a single Zigbee coordinator (if my light research has been correct so far) and I'm ready to go.

I think IKEA bulbs will also be in my future.
by gibbitz | 2025-05-17 13:31:01+00:00
To put it another way: if we made a machine that could instantly create a baby, how would that effect the notion of motherhood? Sure children are adopted or born to surrogacy but the connection formed during gestation and that time itself is a huge part of our notion of the connection between mother and child. Being an Artist is the same thing, an identity bred from gestation proved by the ends.

Before the rise of Western culture, ancient cultures didn't attribute an artist to a work. Think Ancient Greece or Egypt. These cultures still produced Art because the culture valued it, but in society these creators were seen as tradesmen or they were slaves. AI used in this way both reduces cultural value and removes or reduces the social status of the creator.

I find it telling that LLMs are quite adept at mash-ups and decisions based on data analysis which in my experience is what most business managers do. Why are we not using AI to replace worthless middle management? After all they are lower skilled and higher paid than many developers. I'd argue that anyone who thinks you can replace a job with AI is not doing that job as a career. AI devs who think LLM can replace Java web developers are not Java web developers. Internet trolls who think LLM can replace Artists are not Artists. I think this moment we're in is revealing that we've become so siloed that we have lost our curiosity about each other and cultural history. It's frightening to see how we're changing our culture to accommodate a technology at the expense of people and just how blase we are about it.
by paulcole | 2025-05-17 13:31:52+00:00
> Having a person with no tech experience leading a tech department is a very easy way to create a terrible tech department.

I agree with this. Having a tech person lead the tech department creates a reasonable floor for output of the team.

However, I think the ceiling is higher when a non-tech person is leading the group. When a tech person is leading the group the ceiling is (roughly) their technical ability. The non-tech person can be more open to new ideas, alternative approaches, flexibility, change, etc. because they don’t have the same built-in biases and preconceived notions as a tech person.

Again this is a risky approach and has a high failure rate but the biggest wins can be massive.
by masklinn | 2025-05-17 13:32:36+00:00
Note that depending on use case, it may be preferrable to use `DisposableStack` and `AsyncDisposableStack` which are part of the `using` proposal and have built-in support for callback registration.

This is notably necessary for scope-bridging and conditional registration as `using` is block-scoped so

if (condition) { using x = { [Symbol.dispose]: cleanup } } // cleanup is called here

But because `using` is a variant of `const` which requires an initialisation value which it registers immediately this will fail:

using x; // SyntaxError: using missing initialiser if (condition) { x = { [Symbol.dispose]: cleanup }; }

and so will this:

using x = { [Symbol.dispose]() {} }; if (condition) { // TypeError: assignment to using variable x = { [Symbol.dispose]: cleanup } }

Instead, you'd write:

using x = new DisposableStack; if (condition) { x.defer(cleanup) }

Similarly if you want to acquire a resource in a block (conditionally or not) but want the cleanup to happen at the function level, you'd create a stack at the function toplevel then add your disposables or callbacks to it as you go.
by ignoramous | 2025-05-17 13:32:54+00:00
> For me, the integration is mind-blowing. When I tried the Playwright MCP integration ... I still get goosebumps thinking about it.

Same. To see apps reverse engineered by LLMs with Ghidra [0] blew me away. It CTFed-out hard-coded access tokens and keys from .so's in seconds.

[0] https://github.com/LaurieWired/GhidraMCP
by lxgr | 2025-05-17 13:33:10+00:00
A perfectly aligned QR code, displayed on a bright mobile phone display, can work acceptably fast.

Practically, many people however only start thinking about possibly needing to open some app to display it while they’re already blocking everybody else’s way at the transit gate…

The biggest practical benefit of IC cards is that they are by nature always “armed”, unlike QR codes in apps, and are readable from both sides.

On top of that, due to being able to run mutual authentication and being able to store a trusted balance, they are much more resilient to outages of any backend system. QR code tickets invariably need networking and a central backend.
by lucasyvas | 2025-05-17 13:33:30+00:00
The more this stuff gets introduced the more I’m convinced to use Rust everywhere. I’m not saying this is the Rust way - it’s actually reminiscent of Python/C#. But, Rust does it better.

If we keep going down these roads, Rust actually becomes the simpler language as it was designed with all of these goals instead of shoe-horning them back in.
by elyase | 2025-05-17 13:33:33+00:00
What you're missing is how to use the tools properly. With solid documentation, good project management practices, a well-organized code structure and tests, any junior engineer should be able to read up on your codebase, write linted code following your codebase style, verify it via tests and write you a report of what was done, challenges faced etc. State of the art coding agents will do that at superhuman speeds.

If you haven't set things up properly (important info lives only in people’s heads / meetings, tasks dont have clear acceptance criteria, ...) then you aren't ready for Junior Developers yet. You need to wait until your Coding Agents are at Senior level.
by pcblues | 2025-05-17 13:33:34+00:00
I should have made my post clearer :)

There isn't one perfect solution to SQL queries against complex systems.

A suduko has one solution.

A reasonably well-optimised SQL solution is what the good use of SQL tries to achieve. And it can be the difference between a total lock-up and a fast running of a script that keeps the rest of a complex system from falling over.
by proberts | 2025-05-17 13:34:47+00:00
That depends on a number of factors, such as your activities/purpose when you are in the U.S. (whether these activities constitute "employment" and if so whether they are in line with your H-1B position and job duties), your compensation when you are in the U.S. (are you getting paid and if so, how much and by whom), etc. The question here really is whether H-1B work authorization is required or whether ESTA business travel is fine.
by ArinaS | 2025-05-17 13:34:59+00:00
> "I don't want to care"

There are many distros for people who don't want to care - Ubuntu, Mint, Elementary OS, MX Linux, etc. I don't see how NixOS not being one of them is NixOS's problem.

> "I believe that the core idea of NixOS is fundamentally opposed to the idea of what the average person wants in their desktop."

What an average person wants in their desktop is Windows - not Linux and certainly not some obscure independent distro. And this is still not a problem of that distro or Linux.
by yomismoaqui | 2025-05-17 13:35:12+00:00
I loved NixOS when I tried it, its value is real. But the problem as always is the cost you have to pay for that value.

In my case I was using Flutter for an app and when a new version was released the version supported by the current NixOS version was old. So I had to search for a flake that supported the new version but it was abandoned some versions ago. So finally I had to search for a how to create a flake so the latest version would work.

Cue some hours of work until I had it working.

Compare this to Ubuntu where I execute "flutter upgrade" and I have it working in a minute.

For my dev machine if I need some kind of reproducibility I have Docker at hand. It's a 100% perfect value solution for this? No, but the cost to pay is much lower than Nix.
by orbital-decay | 2025-05-17 13:35:12+00:00
Having heard her before, I can assure you she's not sarcastic. This completely fits her character of a pure, devoted paladin of a totalitarian imperialistic communist (heh...) religion of her own making, with a bizarrely self-contradicting pantheon in her head. Putting it bluntly, she's batshit insane. Which is probably the only kind of person that can be good at this sort of work.
by j1elo | 2025-05-17 13:35:49+00:00
A couple weeks ago I powered a laptop that had been sitting unused for several months. It had Ubuntu 22.04 installed. The initial `apt-get update` took some time to download new indexes, and almost 3 minutes to process them all afterwards, while I was right there staring at the screen wondering why I was there staring at the screen for so long, because this experience always happens as soon as any of my machines stay off for more than a couple weeks. apt is indeed very slow.
by izacus | 2025-05-17 13:35:59+00:00
I'm one of those people and I went through enough app publishing that I can already tell you that it's very likely it'll get rejected again in future updates.

We went through this song and dance for actual file explorers more times than I can count. It usually "sticks" for a few updates before the rejections start again.

The policy hasn't changed.

It also doesn't change the fact that they demand access to every single personal photo, media item and document on device instead of using an API that allows user to have control over what they share with the app - it's the same behaviour as Facebook, Instagram and other companies showed before the policy was enacted. Instead of respecting the user, they demand the user gives them access to everything with "trust us, we won't do anything bad" attitude while refusing to do better.
by chipsa | 2025-05-17 13:36:28+00:00
Welcome to the jeune ecole. The problem of $1000 drones is range and speed. A carrier is moving at 20kt, regularly. More if conducting flight operations. $1k drones are group 1 drones in DoD classification. There are limited in speed and range. If they teleported into range of the carrier, sure, they could reach it, and keep up with it. But if they don’t start near the carrier, how close do they need to start to do so?

To get holes at the water line, you’re going to have to take your drone down to the water line. Which means you’re going to have to deal with the waves and spray from being down there. Cheap drones are not notable for dealing well with hitting the water.

Beyond the thick steel plating, and compartmentalization, there’s also the fact that little holes just won’t let in much water. If you want to sink a ship, you need to let in more water than the pumps can take out.

If you start talking about $50k drones, then a bunch of these objections start changing. You can get much more range, much more speed, much larger warheads, and much greater capabilities in general. But your cost curve has changed a bunch, so you get 200 drones instead of 10k drones for a given amount of cash.
by freeone3000 | 2025-05-17 13:37:01+00:00
Sound is the vibration of matter. Waves do not move matter! Like, look at a leaf on a lake. The leaf moves up and down with the ripples, but does not move back and forth. The water isn’t moving, the wavefront is.

Sonic booms are nothing more than a collapsed wavefront of that wavefront. The speed of sound, definitionally, is the maximal speed at which any physical wavefront can propagate through a medium. (We hear it in air as sound, but no wave can be propagated through the medium any faster than this. You cannot move air any faster than the speed of sound in air.) This causes all of the disturbances from the aircraft moving through the air to be compressed into a single, maximal wave that itself moves at the speed of sound, since it can’t move any faster. Thus the boom.

(You can see a similar cool thing with Cherenkov radiation, where neutrons moving faster than light in water produce a bright blue glow — or, waves of light!)
Show HN: SRE Assistant – An AI-powered agent for Kubernetes and AWS operations
by serkanh | 2025-05-17 13:37:09+00:00
I built an interactive SRE assistant that helps manage Kubernetes clusters and AWS resources through natural language conversations. It uses Google's Agent Development Kit to provide: Comprehensive K8s management (pods, deployments, logs, scaling) AWS cost analysis and reporting Slack integration for team collaboration Demo videos show cost reporting and EKS cluster operations in action. Built for SREs who want to streamline operations through conversational AI.