MurphyA/hacker-news huggingface dataset:
by PaulHoule | 2025-12-30 22:02:50+00:00
What a good transactional API is like is an interesting question.

public void modify(K key, Function<Optional<V>,Optional<V>> modifier)

or something along those lines covers the race of a single value being changed out from under you, but if you want to update one or more keys you might want

public void modifyMany(Set<K> key, Consumer<Map<K,V>> modifier)

where the modifier gets passed a modifiable view that has just the keys in the set.

There is also the Clojure-style immutable API for maps though I can say I never really enjoyed working with that the way I enjoyed immutable lists (which are Lispier than Lisp: I went through all the stages of grief reading On Lisp and couldn't help think "If he was using Clojure he wouldn't be struggling with nconc)
by kelseyfrog | 2025-12-30 22:02:52+00:00
Adolph Loos[1] and the post-WW2 minimalists won; that's what happened.

We took Louis Sullivan's maxim, "a rationally designed structure may not necessarily be beautiful but no building can be beautiful that does not have a rationally designed structure" to its logical conclusion, "form follows function". Rather than being the starting point for beauty, it became the end of it and we trained generations of architects to prioritize one aesthetic.

1. Ornament and Crime (1908) https://www2.gwu.edu/~art/Temporary_SL/177/pdfs/Loos.pdf
by networked | 2025-12-30 22:02:56+00:00
> You mean that the user should locally configure the machine to ensure that the standardized name points at something that can solve the problem, and then accepts the quirks of that choice, yes?

I was thinking that until I read the forum thread and Stephen Rosen's comments. Now I'm thinking the most useful meta-runner would just try popular runners in order.

I have put up a prototype at https://github.com/dbohdan/python-script-runner.
by Groxx | 2025-12-30 22:02:59+00:00
atomic updates in particular is one of those things that sounds good to the C-suite, but falls apart extremely badly in the lower levels.

months-long delays on important updates due to some large project doing extremely bad things and pushing off a minor refactor endlessly has been the norm for me. but they're big so they wield a lot of political power so they get away with it every time.

or worse, as a library owner: spending INCREDIBLE amounts of time making sure a very minor change is safe, because you can't gradually roll it out to low-risk early adopter teams unless it's feature-flagged to hell and back. and if you missed something, roll back, write a report and say "oops" with far too many words in several meetings, spend a couple weeks triple checking feature flagging actually works like everyone thought (it does not, for at least 27 teams using your project), and then try again. while everyone else working on it is also stuck behind that queue.

monorepos suck imo. they're mostly company lock-in, because they teach most absolutely no skills they'd need in another job (or for contributing to open source - it's a brain drain on the ecosystem), and all external skill is useless because every monorepo is a fractal snowflake of garbage.
by gspr | 2025-12-30 22:03:00+00:00
> NodeJS does not have a good FFI story, and neither does Rust or Go. Yes, there's support, but Python's FFI support is actually better here.

Huh. I've found Rust's FFI very pleasant to work with. I understand that Zig's is second to none, but what does Python offer in this domain that Rust (or Go) doesn't?
by benoau | 2025-12-30 22:03:42+00:00
> It’s not practical to consume and remember all the media every person has ever published.

It's not about you being able to "consume it all", it's about future generations being able to look back and see how gaming and humanity evolved and explore this history. Many people will research the greatest hits, the greatest developers, the greatest accomplishments, just like any other historically-interesting thing.

My favorite song from roughly 1492 is a small ditty I came across some years ago called Branle Englese, amongst many centuries-old pieces of classical music I enjoy playing. I don't know if it's specifically 1492, as the details have been lost to time unfortunately.

Do you recognize the value of other history? Should we 'delete' it all or just games, rather than challenge a fairly recent status quo that emerged and undermines their preservation?
by eterm | 2025-12-30 22:03:47+00:00
There's a design in the .NET ConcurrentDictionary that is even more inviting:

GetOrAdd(TKey, Func<Tkey,TValue> )

This lets you specify a key, and a method to run to generate a value to store if the key does not exist.

This is thread-safe, however it is not atomic much to the surprise of many that use it.

If you wrongly assume that the factory method can only execute once, you fall into a trap, since it actually can execute many times before the result is stored.

This can cause a problem if you use it for caching, because you might for example put an expensive calculation you want to cache there, only to find out cache expiration causes a stampede as the factory suddenly executes a lot at once.
by cmrdporcupine | 2025-12-30 22:04:00+00:00
Agree with your points and I think fundamentally the issue with unikernels at this point comes down to: nobody has really done it right yet.

By which I mean I see two variants:

1- exotic and interesting and constrained but probably not applicable for people in the form of e.g. MirageOS. not applicable because OCaml just isn't mainstream enough

2- Or other systems which allow much easier porting of existing systems by providing a libc and extended set of "porting" libraries which end up by recreating huge swathes of what the operating system is doing already anyways, in order to make the existing application just cross compile and "feel at home". But in reality probably always in an incomplete or odd way, and now you're using someone's hand crafted set of compatibility libraries instead of a battle tested operating system.

I just think we haven't seen the right system, yet, which would probably be some specific application development mostly from the ground up in the context of unikernel, not the other way around. Potentially a set of constrained and targeted Rust etc crates built from nostd up + some services. I kept looking for MirageOS for Rust and haven't seen, instead saw stuff more like 2.
by Aurornis | 2025-12-30 22:04:06+00:00
> if only one person controls the keys to the kingdom

True, which is why I said the important parts need to be held by the legal entity representing the organization. If one person tries to hold it hostage, it becomes a matter of demonstrating that person doesn’t legally have access any more.

I’ve also seen projects fall apart because they forgot to transfer some key element into the legal entity. A common one is the domain name, which might have been registered by one person and then just never transferred over. Nobody notices until that person has a falling out and starts holding the domain name hostage.
by AuthAuth | 2025-12-30 22:04:16+00:00
I'm not sure why this person feels confident enough to talk about wayland and diagnose it as 'flawed at the core' but go off king at least we will get a Brodie Robertson video out of it.

Its funny that every single thing listed is incorrect and corrected by the comments, do you think OP will reflect on this and adjust the confidence of his opinion?
by lexandstuff | 2025-12-30 22:04:23+00:00
It's not complicated at all. You don't "manage agents". You just type your prompt into an terminal application that can update files, read your docs and run your tests.

As with every new tech there's a hell of a lot of noise (plugins, skills, hooks, MCP, LSP - to quote Kaparthy) but most of it can just be disregarded. No one is "behind" - it's all very easy to use.
by uecker | 2025-12-30 22:04:40+00:00
There is no ABI problem. The problem is a lack of standardization for important APIs and infrastructure. There once was a serious effort to solve this: the Linux Standard Base: https://en.wikipedia.org/wiki/Linux_Standard_Base Standardization would of course be the only way to fix this, instead of inventing even more packaging formats which fragment the ecosystem even more. LSB died due to lack of interest. I assume also because various industrial stakeholders are more interest in gaining a little bit of control over the ecosystem than in the overall success of Linux on the desktop. The other major problem is that it is no fun to maintain software, which leads to what was described as CADT: https://www.jwz.org/doc/cadt.html As you see with Wayland and Rust rewrites CADT still continues today always justified with some bullshit arguments why the rewrites are really necessary.

Together this means that basically nobody implements applications anymore. For commercial applications that market is too fragmented and it is too much effort. Open-source applications need time to grow and if all the underpinnings get changed all the time, this is too frustrating. Only a few projects survive this, and even those struggle. For example GIMP took a decade to be ported from GTK 2 to 3.
by threethirtytwo | 2025-12-30 22:05:01+00:00
Your comments lack evidence most of it consists of digging through other people’s comment history and profiling them. I’ve seen you use that in several of your arguments. Never have I once seen you use logic or evidence to state your points.

I never look at someone’s comment history. I judge them for what they said only and I disseminate that without getting personal. I made an exception for you given how you decided to stalk my comment history and I noticed you just do this for everyone.
by theshrike79 | 2025-12-30 22:05:23+00:00
> I haven't watched the news in 5 years. ...my overwhelming observation has been just how little key information is actually conveyed.

They're more concerned in being the first than being accurate.

Unless the event is something definitive like "celebrity died", it's much better to just check what happened a few days later when there are some actual facts and not just rushed speculation masquerading as facts.

I'd pay a modest subscription for a service that would give me the news, but just delayed by 24-72 hours, after all the "BREAKING NEWS" crap is just "news".
by mkozlows | 2025-12-30 22:05:44+00:00
I'm not remotely cutting edge (just switched from Cursor to Codex CLI, have no fancy tooling infrastructure, am not even vaguely considering git worktrees as a means of working), but Opus 4.5 and 5.2 Codex are both so clearly more competent than previous models that I've started just telling them to do high-level things rather than trying to break things down and give them subtasks.

If people are really set in their ways, maybe they won't try anything beyond what old models can do, and won't notice a difference, but who's had time to get set in their ways with this stuff?
by keeda | 2025-12-30 22:05:51+00:00
TFA is directionally correct, though it repeats a few cliches which are no longer accurate. E.g. people and some empirical data report improved productivity even on large, brownfield codebases, with the caveat that effectiveness seems to be related more to the quality processes around the code rather than the code itself.

However, this TFA is absolutely correct about the point that it takes a long time to master this technology.

A second, related point is that the users have to adapt themselves to the technology to fully harness it. This is the hardest part. As an example, after writing OO code for my entire career, I use a much more of a functional programming style these days because that's what gets the best results from AI for me.

In fact, if you look at how the most effective users of AI agents do coding, it is nothing like what we are used to. It's more like a microcosm of all the activities that happen around coding -- planning, research, discussions, design, testing, review, etc -- rather than the coding itself. The closest analogy I can think of is the workstyle of senior / staff engineers working with junior team members.

Similarly, organizations will have to rethink their workflows and processes from the ground-up to fully leverage AI. As a trivial example, tasks that used to take days and meetings can now take minutes, but will require much more careful review. So we need support for the humans-in-the-loop to do this efficiently and effectively, e.g. being able to quickly access all the inputs that went into the AI's work product, and spot-check them or run custom validations. This kind of infra would be specific to each type of task and doesn't exist yet and needs to be built.

Just foisting a chatbot on employees is not helpful at all, especially as a top-down mandate with no guidance or training or dedicated time to experiment AND empowerment to shake things up. Without that you will mostly get poor results and resentment against AI, which we are already seeing.

It's only 3 years since ChatGPT was released, so it is still very early days. Given how slow most organizations move, I'm actually surprised that any of them are reporting positive results this early.
by easton | 2025-12-30 22:06:54+00:00
IIRC, Windows containers require that the container be built with a base image that matches the host for it to work at all (like, the exact build of Windows has to match). Guessing that’s how they get a ‘stable ABI’.

…actually, looks like it’s a bit looser these days. Version matrix incoming: https://learn.microsoft.com/en-us/virtualization/windowscont...
by Imustaskforhelp | 2025-12-30 22:07:23+00:00
To be honest there is one instance that i know of where what ends up happening is that colocrossing a major vps provider does end up doing something like this (they used to be hosters/owners???? of lowendtalk/lowendbox)

Now another aspect is that the hosting economy is very mutual, they all start out somewhere and they are usually friendly towards each other. Most Hosting providers start out by either using reseller service directly or by colocating or by reselling dedicated servers which can be themselves of other providers

I don't know but the community is both cut throat and chill at the same time. It's strange to point this phenomenon but I think my point of their friendliness is something which depends and I don't know much about it but I once asked people on lowendtalk if I wanted to create a cloud provider myself and I got some responses and they were friendly so I am basing it off of that

Another aspect is that the market has already raced to the bottom super hard. Hetzner/OVH are really cheap, so to get even cheaper, you kinda have to be in the same pricing range I guess

Fun or not so fun fact but do you know that there have been cases of lowendbox providers to actually go shut down because they take these completely no profitable sense deal and actually lose money sometimes. VeloxMedia is a recent example of that and there is still controversy surrounding it.

There is also the fact that the scam industry in this department works as such:

Rent a really big server with lots of cores for a few months

Sell them unreasonably in LET for the year pricing or more

Then sell the company/be unable to provide/etc.

these I think are called as deadpools in the community.

Also regarding your comment behind same guy, there are sometimes family relations between people

as an example, racknerd I think is owned by the stepson of the owner of colocrossing and they I think using colocrossing themselves.

These have their own little drama stories and I think this is just the tip of iceberg as I just joined recently and probably digging through old archives.
Show HN: Mafia Arena – LLMs play social deduction games against each other
by mohsen1 | 2025-12-30 22:07:43+00:00
Hello!

Over the Christmas break I built a platform where LLMs play the party game Mafia against each other. 11 AI players, full conversations, voting, deception — the whole thing.

Why? Benchmarks like MMLU test knowledge recall. They don't test whether a model can lie convincingly, detect deception, or maintain a consistent story under social pressure. Mafia forces all of that.

Tech stack: Cloudflare Workers, Workflows (for pausing games while waiting on batch API responses), D1, R2. No traditional servers. The game engine is a pure TypeScript state machine with no side effects, which makes games replayable.

You can bring your own API keys and run batches. All transcripts are saved.

Happy to answer questions about the architecture or the benchmark methodology.
by kingkongjaffa | 2025-12-30 22:08:44+00:00
Wait, but why?

If it's really better than what we had before, what does it matter how it was made? It's literally hacked together with the tools of the day (LLMs) isn't that the very hacker ethos? Patching stuff together that works in a new and useful way.

5x speed improvements on pdf text extraction might be great for some applications I'm not aware of, I wouldn't just dismiss it out of hand because the author used $robot to write the code.

Presumably the thought to make the thing in the first place and decide what features to add and not add was more important than how the code is generated?
by hsbauauvhabzb | 2025-12-30 22:09:55+00:00
Why let a consumer educate themselves as easily as possible when it’s more profitable to deter that behaviour and keep you confused? Especially when some of the tech is entirely false (iirc about a decade ago, TVs were advertised as ‘360hz’ which was not related to the refresh rates).

I’m with you personally, but the companies that sell TVs are not.
by delta_p_delta_x | 2025-12-30 22:10:04+00:00
> it is entirely an OS in an academic sense - in scientific literature OS == kernel, nothing else

No, the academic literature makes the difference between the kernel and the OS as a whole. The OS is meant to provide hardware abstractions to both developers and the user. The Linux world shrugged and said 'okay, this is just the kernel for us, everyone else be damned'. In this view Linux is the complete outlier, because every other commercial OS comes with a full suite of user-mode libraries and applications.
by Imustaskforhelp | 2025-12-30 22:10:34+00:00
Agreed but there have been some real strides in innovation recently in linux, definitely worth checking out :)

Regarding successful, well they already are, ZorinOS is an OS which looks like windows 7 or has some similarities to it and its sort of recommended to beginners but usually linux mate is the most recommended distro

> No, making Linux run reliably on random laptops is already a monumental challenge.

Not sure about this but I ran linux in 15 year old dell mini like its no big deal so I can only assume that support has been better but I feel like I can assure you that linux support is really good for most laptops in my observation.
by gottorf | 2025-12-30 22:11:07+00:00
> Nonsense. The amount of wealth hoarded by the top 0.1%, 1%, and 10% has vastly expanded in the past decades, while the percent of all income and wealth held by workers has been gutted.

> That alone shows the top earners are not being taxed enough.

Is your reasoning that the amount of household wealth and income at each percentile should hold roughly constant over the years, as if this is some law of physics?
by dragonwriter | 2025-12-30 22:11:12+00:00
> The government interferes here for good reason, as no one would start a business if they would be personally responsible for random things.

People started businesses for a very long time before limited liability existed. Heck, people continue to start businesses as general partnerships and sole proprietorships to this day, despite the fact that those forms do not feature limited liabiity, centuries after limited liability was first applied to some business forms. So, “no one would start a business if they would be personally responsible” is very clearly false.
by stevenjgarner | 2025-12-30 22:12:22+00:00
As we enter a world of robotics, some users may also find it useful to have their robots directly access their "appliances", including with "retro" appliances that do not adhere to some future interoperability standard. I remember way back when I had a Heathkit HERO-1, it had a built-in solderless breadboard on the robot’s head. I remember the total thrill of programming it that and the Radio Frequency (RF) Remote Control to turn off my bedroom light. Kind of a "hello" program moment for me.
by yesfitz | 2025-12-30 22:13:00+00:00
I'd venture a guess that a lot of the examples were part of the Works Progress Administration[1], which employed laborers, craftsmen, engineers, artists, and more as a response to the Great Depression. While it ended during World War II, the humans that worked in it would have continued in the labor force.

There's also the improvements in building techniques like curtain walls in commercial buildings, and truss connector plates and aluminum/vinyl siding in residential allowed for laborers to replace craftsmen like masons and carpenters. While you'd think that would free up more money for beautification, the economic preference for many individual shareholders and taxpayers doesn't seem to support that.

Add in car-centric development and the advent of television, the internet, and smartphones, and what's the point of making things beautiful anymore? You won't appreciate the finials on a lamppost from the inside of your car, and if the world is ugly, you can look at your phone.

But it's not fully explained by the unwillingness to spend money either. I think the postmodern movement's impact on public beautification turned a lot of people off the idea. Eschewing traditional beauty is fine for museums and galleries, but there are a lot of murals out there that ruined perfectly good walls. Chicago's Cloud Gate, Philadelphia's LOVE Park, Minneapolis's Spoonbridge and Cherry, and I'm sure a large number of other instances of public art since the postmodern era can be fun, visually striking, and iconic. But I'd hesitate to call them beautiful from an aesthetic standpoint, especially when compared to their cities' existing monuments and statues. However, that's a matter of taste. And as we've grown more divided almost all matters of life, both literally and figuratively, even if we all agreed to spend $X on public beautification, I doubt we'd be able to meaningfully agree on what's beautiful.

1: https://en.wikipedia.org/wiki/Works_Progress_Administration
by Imustaskforhelp | 2025-12-30 22:13:08+00:00
Damn you got me. I am not a big fan of KDE (Currently using Niri) but I can try to use KDE+aerothemeplasma with nixos as a dual boot (I already used to have KDE nix as dualboot until I accidentally removed that disk and ended up using the glorious tool testdisk to save that) so I will try it some day thank you!

There is also anduinos which I think doesn't try to replicate windows 7 but it definitely tries to look at windows 10 perhaps 11 iirc
by melozo | 2025-12-30 22:13:13+00:00
I’m not sure how controversial this is - but 100% code coverage is almost always a waste of time, paid both immediately and long term, for certain languages. Go, for example, requires explicit error handling, but the way errors are handled are usually plain and homogenous. Adding unit testing everywhere creates a phenomenal amount of test code that can become 3x the size of the source, and certain changes (like interface changes) can require updates to all tests, especially if mocking is used.

Obviously with AI maybe those issues I have go away. But I really don’t like letting the AI modify tests without meticulously manually reviewing those changes, because in my experience the AI cares more about getting the tests passing than it does about ensuring semantic correctness. For as long as tests are manually maintained I will continue keeping them as few as necessary while maintaining what I view as an acceptable amount of coverage.