MurphyA/hacker-news huggingface dataset:
by osigurdson | 2025-11-19 18:50:18+00:00
The Linux story is much better now. Back end the day it was necessary to try to use Mono which wasn't fully compatible and the code had to have #if defs all over the place. That is thankfully all gone now.

Most things can be done with the dotnet cli but for editing code, realistically you will want to use an editor like vscode, Rider or Visual Studio itself. I found the LSP support in vim quite bad for C#.
by bigstrat2003 | 2025-11-19 18:51:15+00:00
The free market can sort something like this out, but it requires some things to work. There need to be competitors offering similar products, people need to have the ability to switch to using those competitors, and they need to be able to get information about the strengths and weaknesses of the different offerings (so they can know their current vendor has a problem and that another vendor doesn't have that problem). The free market isn't magic, but neither are business regulations. Both have failure modes you have to guard against.
by mainecoder | 2025-11-19 18:51:16+00:00
Well the Chinese are powerful and without the help of the US the Netherlands can't do much. Additionally, the process of moving discrete semiconductor production to China is already underway. Production in Hamburg will stop sometime in late 2029 and the R&D center in Nijmegen, Delft will close done late 2028. The US should have helped the Netherlands but now it is over the Chinese won this battle and fairly easily they did not need to use much of the leverage that they had. The commentary by EU officials shows that they used a top down approach using the EU to pressure the Dutch.
by nosianu | 2025-11-19 18:51:35+00:00
> there's still a skill element evolved.

Uhm... yes???

Obviously even a baby has "skills".

The point is the comparison between the levels of tech. Your accountant is constant, the tools they use is variable.

Interpreting the OPs point as "absolute zero skill" is against HN rules to interpret comments reasonably. You guys are trying to find the most stupid angle possible for the sake of an "argument". I hate this antagonistic debate culture so much.
by nsingh2 | 2025-11-19 18:51:45+00:00
Telling of where the boundary of competence is for these models. And to show that these models aren't doing what most expect them to be doing, i.e. not counting legs, and maybe instead inferring information based on the overall image (dogs usually have 4 legs) to the detriment of find grained or out-of-distribution tasks.
by atonse | 2025-11-19 18:51:46+00:00
Agree 1,000%.

I just won’t even waste my time with the google stuff cuz I can’t figure out how to pay with it.

And that’s a problem everywhere at google. Our google play account is suspended cuz I can’t verify the company. It won’t let me cuz it says I’m not the owner. I’ve always been the owner of my company. For 18 years. There is no one else.

Once some error said make sure the owner email matches your profile in google payments and I was like, what is google payments and where do I even begin with that? I’ve never paid for google play so what does payments have to do with anything?

It’s totally random stuff. Get your shit together, google. Make your products and payment systems coherent, rather than it obviously looking like it was designed by a fiefdom full of territorial managers.
by legitster | 2025-11-19 18:51:51+00:00
Let me steelman the new proposal a little bit:

You run a merch store. You want to share with your suppliers order data so that you can get the right number of sizes/colors/etc. Is this PII under GDPR rules? Technically, yes! Not only is there information on gender, but also people's height and weight and maybe even family makeup. Does it make sense to call this data sub-processing? Eh? Maybe? (To my knowledge, I don't know if any examples like this actually caught any enforcement.)

Under the new proposal, sharing this data is okay, so long as you use pseudo-anonymous identifiers (customer-1234, customer-1235). You still can't share sensitive identifiers (name, address, email, login, etc).

Obviously the elephant in the room is AI and training data. But this also simplifies a lot of the ticky-tacky areas in GDPR where PII rules are opaque and not-consistently enforced anyway.
by watwut | 2025-11-19 18:51:51+00:00
I remember brouhaha a whole bunch of pundits and thinkers defending him against evil feminists. On the grounds of intelectual curiosity and rational thinking.

Hey, turns out the dude trades "how to flirt with women in workplace whem they do presentation" advice with literal child abuse sex ring leader.

Surely he could not possibly be sexist, nah.
by masgis | 2025-11-19 18:52:00+00:00
Bret Victor speaks so idealistically it's difficult to disagree with his vision, but in reality he's a radicalized, scrappy cult leader. His ideas sound super cool but they're impractical - that's why nobody can make them work. We're delusional for worshiping him.

https://christophlocher.com/notes/ethnographic-research-on-d...
by danudey | 2025-11-19 18:52:01+00:00
There are also a lot of things about Perl that prevented new developers from choosing it when other options were available.

I learned Python from reading a pocket language reference that just described the syntax and standard library, because the language was simple and easy to understand and everything made sense.

Conversely, I was trying to debug a script someone else ran and came across a line that said '$|++'; it was impossible to search for on the web, and when I asked on IRC the only answer I got was 'man perldoc' which also did not answer my question in any reasonable way.

For anyone wondering: `$|` is an alias for `$OUTPUT_AUTOFLUSH`; it defaults to 0 (line-buffered) but any non-zero value means 'flush output immediately'. Thus '$|++' changes 0 to 1 (or 1 to 2, etc), which means that '$|++' means 'turn off output buffering'. No one could be bothered to say that; if you had questions about the language you clearly didn't RTFM well enough so that became the default/only answer I ever saw.

Meanwhile, the PHP community was often welcoming and helpful to newcomers, despite most of them being bad at programming and giving bad advice, and the Python community produced a language that was so often self-explanatory that new user questions were more about how Python did things or asking about how to implement things they didn't realize were in the standard library.

So yeah, lots of things contributed to Perl's decline, but the community being a bunch of elitist toxic dicks sure didn't help matters and it meant that as the set of people looking to learn how to do programming on Linux grew past the neckbeards looking for any metric to show that they were better than other people then Perl's growth potential was finite.
by Karrot_Kream | 2025-11-19 18:52:05+00:00
Then you get the other side of this problem, the echo chamber effect. If people self sort they'll eventually end up in social circles that are completely illegible from the realm of physical politics, which leads to a political instability of a different kind.

It's a hard problem. I think multi armed bandit based algorithms can help. Bluesky is a sort of "live" example of self filtering and it ends up creating a lot of fractional purity politics over which filter bubble is the just/moral filter bubble.
by _dain_ | 2025-11-19 18:52:21+00:00
the shortage of driving test slots is entirely the fault of inefficient government bureaucracy. people are rationally responding to the scarcity by using bots.

if the supply of tests were allowed to rise naturally to meet the existing demand, this problem wouldn't exist. we are only in this situation because the government artificially limits the supply.

this is a very common pattern where people get upset at high prices but are completely incurious as to where the shortage really comes from.
by alistairSH | 2025-11-19 18:52:25+00:00
I occasionally shoot RAW, use Apple's OSes, and primarily shoot with an OM-System mirrorless camera.

Currently, I'm using Photomator alongside Apple Photos. Workflow is roughly... - Import photos from camera into Photos - Edit photos in Photomator - Share photos to Shared Library in Photos

Wife will also share her photos via Shared Library so I can edit.

For non-professional this works well. Native file library integration (including shared library and shared albums), edit across all OS variants (iOS, iPadOS, MacOS), and Photomator is as close to native as you can get today (they're owned by Apple).
by computerex | 2025-11-19 18:52:26+00:00
Couldn't agree more about the google product offerings. Vertex AI? AI Studio? Maker studio? Gemini? The documentation is fragmented with redundant offerings making it confusing to determine what is what. GCS billing is complicated to figure out vs OpenAI billing or anthropic.

Sad part is Google does offer a ChatML/OpenAI compliant endpoint to do LLM calls and I believe they in an experiment also reduced friction in getting an API key to start making calls right away but discoverability ever remains a challenge with google services.
by iLemming | 2025-11-19 18:52:27+00:00
You're just waving off the whole bag of benefits:

Yes, js runs in a single-threaded environment for user code, but immutability still provides an immense value: predictability, simpler debugging, time-travel debugging, react/framework optimizations.

Modern js engines are optimized for short-lived objects, and creating new objects instead of mutating uses more memory only temporarily. Performance impact of immutability is so absolutely negligible compared to so many other factors (large bundles, unoptimized images, excessive DOM manipulation)

You're blaming the wrong thing for overblown memory. I don't know a single website that is bloated and slow only because the makers decided to use immutable datastructures. In fact, you might be exactly incorrect - maybe web pages getting slower and slower because we're now trying to have more logic in them, building more sophisticated programs into them, and the problem is exactly that - we are reaching the point that is no longer simple to reason about them? Reasoning about the code in an immutable-first PL is so much simpler, you probably have no idea, otherwise you wouldn't be saying "this is not the way"
Show HN: Run Unsloth Dynamic GGUFs using Docker model runner
by ericcurtin | 2025-11-19 18:52:52+00:00
We've been working with Docker to make running quantized models easier with Docker. This integration allows users to pull and run Unsloth-optimized models using the native Docker CLI.

Key features:

Uses docker model run syntax.

Supports Dynamic GGUFs (handling quantization overhead).

Cross-platform support.

Example usage: docker model run ai/gpt-oss:20B

Happy to answer questions about the implementation or the quantization methods used.

https://docs.unsloth.ai/models/how-to-run-llms-with-docker
by nonethewiser | 2025-11-19 18:52:59+00:00
>One change that’s likely to please almost everyone is a reduction in Europe’s ubiquitous cookie banners and pop-ups. Under the new proposal, some “non-risk” cookies won’t trigger pop-ups at all, and users would be able to control others from central browser controls that apply to websites broadly.

Wait, what? So they are now mandating browsers implement this? Also, something bothers me about the conflation of regulators changing the regulation (accurate) with regulators changing the thing that resulted from the previous version of the regulation (inaccurate). They arent getting rid of the cookie banners. They are changing the underlying rules that gave rise to them. It remains to be seen what the effects of the new rules will be.
by jeffbee | 2025-11-19 18:53:13+00:00
I doubt that your conclusion is correct (because local DNS resolvers that consult blocklists are often surprisingly slow) but I think your theory of the matter is accurate. The raw speed of the DNS server is almost irrelevant because there are other much larger systemic performance issues at stake. For example Cloudflare does not forward EDNS to the origin, so the records it returns are suboptimal for services that use DNS-based service affinity. It doesn't make a difference to me if Cloudflare is a few microseconds faster — and by the way I sincerely doubt that this python program is observing meaningful microsecond-scale differences — because overall it makes applications slower.
by _dan | 2025-11-19 18:53:41+00:00
My experience of working with Perl as a primary language from late 90s to today: Perl was dead long before Perl 6/Raku was a real thing. By the time that happened it had already lost massive ground to PHP, Python, Java, etc.

PHP had replaced CGI as the easiest way to get code on a webserver, Python and Java were easier to read and understand, easier to structure large systems with, and generally easier to use. Ruby came along and MVC frameworks became the thing for complex web platforms.

Meanwhile Perl was sorta keeping up, the "Modern Perl" movement helped dispel myths about "write only" code, things like Moose, DBIC, Catalyst, Mojolicious, etc meant you could write pretty modern stuff with it. But the community was smaller, fractured by Perl 6 and dominated by some ahem divisive characters which made it intimidating for newcomers, and it just slowly died from there.

By the time Stack Overflow came along it was easy to see that other languages had vibrant communities surrounding them and for me it never really recovered.
by m3047 | 2025-11-19 18:54:04+00:00
Things built with asyncio and dnspython are close to my heart. ;-)

So, my impression from the doc (and a quick browse of the code) is that this is a tool for monitoring DNS caching / recursing resolver (RD) performance, not authoritative. If performance really matters to you, you should be running your own resolver(s). [0] Granted, you will quickly realize that some outfits running auth servers seem to understand that they're dependent on caching / recursing resolvers, and some are oblivious. Large public servers (recursing and auth) tend to "spread the pain" and so most people don't feel the bumps; but when they fall over they fall over large, and they bring some principles (and thereby create "vulnerabilities") at odds with what the DNS was architected for and throw the mitigation on the other operators, including operators who never accepted these self-anointed principles to begin with.

I have a hard time understanding how DNS is adding 300ms to every one of your API requests... unless DNS is both the API and transport, or you're using negative TTLs /s.

Good doc, by the way.

[0] Actual resolvers. Not forwarders.
by cogman10 | 2025-11-19 18:54:08+00:00
> Also, even if Perl 6 had never happened the way it did and instead we'd just had smaller evolutions of the language in major versions, I think usage would still have shrunk over time.

Maybe. I mean the whole point of 6 was to modernize perl.

Perl needed efforts like 6 to happen, but it needed them delivered in smaller chunks over the years rather than as a big decade long "And now 6 is here".

Java learned this lesson after Java 8 and 9 which took multi-year effort to deliver 1 or 2 big changes to the language and the JVM. Now Java has multiple efforts in flight which have trickled in over the years (tickling me as a dev). Every 6 month release is a little better which makes the multi-year efforts seem all that much more worth it when they land.
by taurath | 2025-11-19 18:54:16+00:00
It’s a difference in values. To some, the ends justify the means and human life has no inherent value and the world is zero sum, and to some, a lying malignant narcissist deciding who lives and who dies is a personification of evil.

To some people, it’s literally a choice between that “lens of curiosity” and their families lives. But people for whom politics has never directly impacted them past a few % up or down in their paychecks can’t understand that, or feel safe in the idea that “they won’t come for me”.
by chuckadams | 2025-11-19 18:54:19+00:00
We'd have been a lot further along if tools like make had ever adopted hashes for freshness checking rather than timestamps. We'd have ccache built in to make, make could hash entire targets, and now we're halfway to derivations. Of course that's handwaving over the tricky problem of making sure targets build reproducibly, but perhaps compiler toolchains would have taken more care to ensure it.
by canucker2016 | 2025-11-19 18:54:21+00:00
Eudora was open-sourced in 2018.

see https://computerhistory.org/blog/the-eudora-email-client-sou...

and from https://en.wikipedia.org/wiki/Eudora_(email_client)

The last 'mainline' (pre-OSE) versions of Eudora for Mac and Windows were open-sourced and preserved as an artefact by the Computer History Museum[2] in 2018; as part of the preservation, the CHM assumed ownership of the Eudora trademark. The only actively maintained fork of the software, known as Eudoramail as of June 2024, originates from 'mainline' Eudora for Windows as preserved by the CHM. Hermes, its current maintainers, describe Eudoramail 8.0 as currently being in alpha; Wellington publisher Jack Yan, meanwhile, points out its stability, a number of well-characterised and reproducible display bugs notwithstanding.

from https://en.wikipedia.org/wiki/Eudora_(email_client)#Hiatus_a...

On May 22, 2018, after five years of discussion with Qualcomm, the Computer History Museum acquired full ownership of the source code, the Eudora trademarks, copyrights, and domain names. The transfer agreement from Qualcomm also allowed the Computer History Museum to publish the source code under the BSD open source license. The Eudora source code distributed by the Computer History Museum is the same except for the addition of the new license, code sanitization of profanity within its comments, and the removal of third-party software whose distribution rights had long expired.

recent news, see https://en.wikipedia.org/wiki/Eudora_(email_client)#Under_He...
by aebranton | 2025-11-19 18:54:43+00:00
Hey HN! I built this because managing multiple AI providers and getting structured outputs was painful.

What it does:

• Chatbots: Upload docs/PDFs, they’re vectorized into a RAG knowledge base. Write instructions, pick any model (GPT-4, Claude, Gemini, etc), get a working chatbot with iframe embed in ~30 seconds.

• Structured APIs: Define JSON schemas for outputs. Create functions that take any input type (images, PDFs, video, audio, text) and return your structured data. Switch AI models anytime without code changes.

• Custom Knowledge: Vector DB for RAG across all your tools. Upload once, use everywhere.

Real examples: Nutrition extraction from food photos, form validation against company policies, batch PDF data extraction, image analysis with structured outputs.

Dev features: Schema versioning, A/B test different models (cost vs quality), unlimited API keys with per-key analytics, OpenAPI specs auto-generated, full observability.

Everything is hosted and production-ready immediately. One subscription gets you access to all flagship AI models.

Happy to answer questions! Feedback very welcome. Live: easyai.passiolife.com
by danudey | 2025-11-19 18:54:51+00:00
Not to mention that trying to understand existing Perl by asking the community 'what does this do' or 'how does this work' often (in my experience) resulted in 'RTFM' or 'man perldoc' rather than someone taking any time to actually answer the question, whereas other communities were more welcoming and helpful to each other. That made it difficult to learn Perl through other people's code compared to other languages.
by mesadb | 2025-11-19 18:55:10+00:00
Some implementation details, since getting this to work well was not trivial.

My goal was “press hotkey, start talking, see text within ~1–2 seconds” on an M2 MacBook Pro, and support multiple languages.

First attempts (cloud) – I tried Hugging Face real-time transcription. It worked but latency was all over the place and costs would not scale. – I tried OpenAI real-time transcription. Latency was better, but when there was background noise, it'd transcribe wrong things. Saw 200ms responses. I can bring that back if I can make it stable. – I briefly experimented with Gemini for transcribing and formatting multi-language text. Quality was not consistent enough compared to Whisper for Multi language.

Local experiments – I used FFmpeg + Whisper CLI in a bunch of ways: batching, buffering, trying to “stream” partial results out of Whisper to make it feel live. – I also tried a local Llama model to format the raw transcript into an email. On an M2 Pro this took ~2 seconds for short emails and got much slower for long text. It looked nice but the latency was not acceptable for everyday use.

Where I ended up (for now) – Current version sticks to FFmpeg + Whisper CLI locally, optimized for short chunks so you usually see text within about 1–2 seconds. – I dropped the heavy on-device LLM formatting and keep the formatting logic much simpler so it stays predictable and fast.

Next step is to re-introduce “smart” formatting and meeting notes, but only when I can do it without blowing up latency. Happy to dig deeper into any of these if people are curious.
by throwaway150 | 2025-11-19 18:56:20+00:00
It's not important to look it up. I only suggested it because you posted two programs and neither solve the problem people are discussing here. If you really want to solve a boring version of the problem, by all means you should. I'm nobody to tell you otherwise.

All I'm saying is that if you water the problem down into something trivial and boring, the solution will be trivial and boring too. No surprise there. The other answers here are more complicated because they solve the canonical FizzBuzz problem, not the boring version of it that is trivial to solve without conditionals.
by johnfn | 2025-11-19 18:56:34+00:00
I've been using a lot of Claude and Codex recently.

One huge difference I notice between Codex and Claude code is that, while Claude basically disregards your instructions (CLAUDE.md) entirely, Codex is extremely, painfully, doggedly persistent in following every last character of them - to the point that i've seen it work for 30 minutes to convolute some solution that was only convoluted because of some sentence I threw in the instructions I had completely forgotten about.

I imagine Codex as the "literal genie" - it'll give you exactly what you asked for. EXACTLY. If you ask Claude to fix a test that accidentally says assert(1 + 1 === 3), it'll say "this is clearly a typo" and just rewrite the test. Codex will rewrite the entire V8 engine to break arithmetic.

Both these tools have their uses, and I don't think one approach is universally better. Because Claude just hacks its way to a solution, it is really fast, so I like using it for iterate web work, where I need to tweak some styles and I need a fast iterative loop. Codex is much worse at that because it takes like 5 minutes to validate everything is correct. Codex is much better for longer, harder tasks that have to be correct -- I can just write some script to verify that what it did work, and let it spin for 30-40 minutes.