MurphyA/hacker-news huggingface dataset:
by thomassmith65 | 2025-05-08 11:33:15+00:00
I'm going to add a section to my will.

It will stipulate that if my family does this with my likeness, they must:

1) key in a slowly gyrating field of lines as the background

2) occasionally add a cd-skipping effect, and occasionally garble the pitch

I'll be gone, so it won't make a difference, but it cracks me up to think of a solemn courtroom suddenly watching Thom Headroom give an impact statement.
Ask HN: Which Firefox add-ons are you using in 2025?
by vintageclothldn | 2025-05-08 11:35:08+00:00
I've just got a new macbook air and I'm re-evaluating which Firefox add-ons to use.

So far I have:

Privacy badger Unhook Firefox Containers uBlock Origin

What are your most useful ones for 2025? Anything significant that I'm missing?
by kokada | 2025-05-08 11:35:31+00:00
> There's something severely wrong with your setup if you can't get stable maven or gradle builds

To be fair with OP, I had a similar experience in the previous company. Sometimes after bumping a dependency or something, even if you asked IntelliJ to "Reload All Gradle Projects" something wouldn't work and I needed to restart the IDE. Not saying it was common, but it did happen. This was a Kotlin codebase.

Now working in a company using Scala, I had a few cases where IntelliJ failed to resolve a dependency correctly so it was saying that the class I just created didn't exist (this was in shared library and two different dependencies pulled it, but we did pin the dependency directly and sbt was building it correctly, it was only IntelliJ that was becoming confused). Cleaning up the build sometimes worked, sometimes didn't, but even when it worked it would go back after a while. Eventually we updated all dependencies in all projects and it now always works, but it was painful for a while.
by elif | 2025-05-08 11:36:42+00:00
What TV do you use?

I use a Frame and don't have any of the issues you describe in the slightest.

The power button turns the TV on with a 0.5 second animation, and immediately I see the Roku interface with no popups or Samsung branding or anything.

Probably the ONLY complaint is that by default my washing machine puts an alert on the TV every time it's finished.

I would probably find the setting to turn it off but honestly part of me finds it very cool for my washer to creep onto the TV because it knows I'm watching.

EDIT: maybe you are using wifi? It's the only thing I can think might be different in my setup. Try running RJ45 and see what happens? All I can say is Works On My Machine unless you add some details
by johnisgood | 2025-05-08 11:37:13+00:00
Ensure all bounds and invariants are checked, and return Result<T, E> or a custom error or something. As I said, I do not want a library to panic. It should be up to the user of the library. When I write libraries, I make sure that the users of the library are able to handle the errors themselves. Imagine using some library, but they use assert() or panic() instead of returning an error for you to handle, that would frustrate me.
Ask HN: What's your workflow for coding agents?
by mercurialsolo | 2025-05-08 11:37:19+00:00
Almost all the coding agents are unable to work more than a few mins without needing a human in the loop. You pretty much babysit them even in an agentic mode.

Add in long context codebases, dependency graphs and you do more work being frustated with their output rather than enabled with it. The first 80% of boilerplate - is like a template they absolutely steam through - but work on the 20% that matters and they fail miserably.

Things that have worked to bring in better context - Project spec plans - Architecture for the whole project - Detailed design breakdown for the modules - TODO for tracking implementation - and a scratch implementation doc

This is the hierarchy of representations that brings an agent upto speed even as it muscles through the individual bits.

How do you deal with long-chunk codebases - and what's been the longest / most detailed project you have used an agent on?
by wizzwizz4 | 2025-05-08 11:37:32+00:00
I do research in this field. LLMs can be used as (ridiculously inefficient) implementations of some search algorithms that we haven't yet identified and implemented in software ourselves, but which can be inferred from a statistical analysis of the literature. Sometimes those search algorithms generalise to new areas, but more often than not, they flail. The primary advantage of a language model is that it's one big algorithm: when one subcomponent would flail, another (more "confident") subcomponent becomes dominant; but that doesn't solve the case where none of the subcomponents are competent and confident in equal measure. In short: to the extent it's useful, it's a research dead-end. Any potential improvements we understand are better implemented as actual search algorithms.

You've probably seen that thing where ChatGPT cracked Enigma[0]. It used several orders of magnitude more computational power than a Bombe (even given Moore's Law, still thousands of times more electrical power), and still took two dozen times longer. You would literally be better off doing brute-force search with a German dictionary. Thus is it with mathematics: a brute-force search is usually cheaper and better than trying to use a language model.

Terry Tao is one of the staunchest knowledgeable advocates of GPT models in mathematical research, and afaik he doesn't even bother trying to use the models for proof search. It's like trying to build a house with a box of shoes: sure, the shoe is technically more versatile because you can't use a hammer for tightening bolts (the shoe's sole has enough friction to do this) or foot protection (the shoe is the right shape for this) or electrical isolation (the bottom surface of the shoe is largely rubber), but please just use a hammer if you want to manipulate nails.

[0]: https://www.techradar.com/news/we-watched-an-ai-crack-the-en... – and I know that's not the original ChatGPT®, but I am not rewarding this company for such a wasteful and pointless publicity stunt.
by froidpink | 2025-05-08 11:37:33+00:00
I live next to a main road in London. As technology progresses, cars have gotten quieter, but for some reason motorcycles feel like they're becoming louder.

When I go read a book in the park, it's all very nice and quiet until a motorcycle arrives

When I want to sleep with the window open, if I hear any noise it's due to these motorbikes doing races at night.

If I was dictator for a year and didn't have policing resources to enforce noise control, I would just ban non-electric motorbikes
by RetroTechie | 2025-05-08 11:37:41+00:00
> Libreoffice on my system spends 99.9% of the time consuming only 650MB of storage. Opening an office doc makes it require about 165MB of RAM.

Most office type docs I have, are a few hundred KB (some smaller) to a couple of MBs.

So in your example, that means checking a small document takes (on average) in the order of 100..1000x the document's size worth of RAM. And 'only' 4x that amount of storage for the app doing it.

It wasn't long ago that file sizes vs. code to process it, were more like in the 10:1..1:10 range. 200KB text editor, 50KB text. 100KB image, image viewer under 1MB, etc.

As file sizes grow (higher screen resolutions etc), a reasonable expectation would be for code size (=file format complexity + interfacing with the OS) to lag behind. But the reverse seems to be happening. And let's not get started about browsers, or (worse) "web frameworks".

So if anything, your example nicely demonstrates the point of the article.
by promiseofbeans | 2025-05-08 11:37:51+00:00
I mean, the general purpose models already do this in a way, routing to a selected expert. It's a pretty fundamental concept for ensemble learning, which is what MOE experts are, effectively.

I don't see any reason you couldn't stack more layers of routing in front, to select the model. However, this starts to seem inefficient.

I think the optimal solution will eventually be companies training and publishing hyper-focused expert models, that are designed to be used with other models and a router. Then interface vendors can purchase different experts and assemble the models themselves, like how a phone manufacter purchases parts from many suppliers, even their compeditors, in order to create the best final product. The bigger players (e.g. Apple for this analogy) might make more parts in house, but even the latest iPhone still has Samsung chips in it in teardowns.
by infecto | 2025-05-08 11:38:01+00:00
I objected to the claim that the difference is clear. For many people, the lines between culture, ethics, and survival blur, especially across history or geography. What one person calls conscientious objection, another sees as cultural imperialism. That doesn’t mean we shouldn’t have values or push for change, but it does mean recognizing the complexity instead of assuming clarity where there is none. The conversation shifted because I challenged the framing, not the idea that reducing harm is valuable. I’m just wary of framing moral discourse as a purity test.
by sharpshadow | 2025-05-08 11:38:02+00:00
The US also has a lot of people and those donation centers like to be around poor people and junkies which sacrifice their bodies for a couple of bucks. All the money they get are compensations for the time being attached to the machine, because you can’t get paid for anything which comes from your body. But then the donation center sells your plasma and various other parts of your donation for top dollar to pharma which sells it again. The machines are not excellent , spills and abrasion products can enter, and you might infect yourself with diseases which you sign a form for. The only safe way to donate blood would be full-blood donations without machines, but they will still separate your plasma and sell it to pharma. Awful system from my perspective. Separating blood from organ trade would be appropriate. A blood donation foundation or something where value is distributed down to the donor would be an idea.
by potato3732842 | 2025-05-08 11:38:57+00:00
Some guy out for a cruise laying his bike down after things got a little more spicy than her was prepared for mid corner is a fundamentally different kind of accident than someone T-boning a left turning car and going over the handlebars in commuting traffic.

Texting and driving probably accounts for a lot of minor bumps in stop and go traffic that cause inconsequential damage and obviously no injury and isn't really relevant to someone who texts and drives into stopped traffic at highway speeds.

Treating those sorts of accidents that are categorically different in both cause and effect one homogenous statistical blob really rubs me the wrong way.
Show HN: DeeProductivity a Cal Newport–style time-blocking and deep-work
by FlorinDobinciuc | 2025-05-08 11:40:01+00:00
Hi HN! I built DeeProductivity because I struggled to keep Cal Newport’s “Deep Work” system consistent across notebooks, Trello, calendars, and timers.

What it does right now (v0.1) • Trello-style Capture → Configure → Control board • Deep-Work timer • Shutdown ritual at day’s end • Optional link from each block to a weekly / quarterly goal (solves the “higher-tier planning” gap many raised)

Pricing & guarantee One plan: $9 / month You pay up-front, but there’s a 30-day 100% money-back guarantee.

Tech Next.js 14 App Router • Supabase (DB + auth) • dnd-kit • Vercel Electron wrapper is next so it can live in the dock and get global shortcuts.

Looking for feedback on 1. Does the CCC → planner flow feel faster than your current stack? 2. Is the up-front-pay + refund model reasonable, or should I add a traditional free trial? 3. Any points where the UI got in the way of actually planning?

Thanks for taking a look—happy to answer everything in the thread!
by prmoustache | 2025-05-08 11:40:09+00:00
I'd say that if I invite friends to do "anything", it is because I am prepared to feed them if needed. I don't have to cook per se, I can just heat premade (by me or bought) stuff. I also expect them to bring something to drink if they like beers or wine. It is not like one necessarily need to spend hours in the kitchen.

Grabbing a bag crisps and a pizza ready to go to the oven beats having to fire up an app and decide/argue for minutes wether we want sushi, poké, noodles, pastas or a pizza.
by oxcabe | 2025-05-08 11:40:10+00:00
Sometimes, though, you may get lucky, and find some tests for the code you want to use!

On a more serious note, I can't even blame library devs as long as they try. Type "hints" often are anything but _just_ hints. Some are expected to be statically checked; some may alter runtime behavior (e.g. the @overload decorator). It's like the anti-pattern of TypeScript's enums laid out here and there, and it's even harder to notice such side-effects in Python.
101x Airbyte, 11x Estuary, Postgres to Iceberg
by pkhodiyar | 2025-05-08 11:40:35+00:00
Hi HN, we've been developing OLake, an open-source connector specifically designed for replicating data from PostgreSQL into Apache Iceberg. We recently ran some detailed benchmarks comparing its performance and cost against several popular data movement tools: Fivetran, Debezium (using the memiiso setup mentioned), Estuary, and Airbyte.

We wanted to share the results, as they show OLake performing very competitively, often exceeding the speed of both open-source and commercial alternatives, while offering the cost advantages of a self-hosted open-source solution.

The benchmarks covered both full initial loads and Change Data Capture (CDC) on a large dataset (billions of rows for full load, tens of millions of changes for CDC) over a 24-hour window.

Link to entire benchmark postgres - https://olake.io/docs/connectors/postgres/benchmarks

For full loads, OLake achieved throughput of around 46,262 rows/sec, processing over 4 billion rows in 24 hours.

This was essentially on par with Fivetran (46,395 RPS) and significantly faster than Debezium (14,839 RPS - 3.1x slower), Estuary (3,982 RPS - 11.6x slower on a smaller processed dataset), and Airbyte (457 RPS - 101x slower before it failed the long test).

The most striking results were in CDC performance.

For processing 50 million changes, OLake completed the task in 22.5 minutes at 36,982 rows/sec. Fivetran took 31 minutes (1.4x slower), Debezium took 60 minutes (2.7x slower), Estuary took 4.5 hours (12x slower), and Airbyte took 23 hours (63x slower).

This indicates OLake delivers significantly lower latency for propagating changes from PostgreSQL to Iceberg.

On the cost side, OLake is open source and self-hosted. The cost is simply the infrastructure. Running the benchmarks on a substantial VM (64 vcpus, 128 GiB memory) for 24 hours cost less than $75.

Comparing this to the vendor list prices for the data synced in the tests: Fivetran's full load cost $7,446 ($1.86/M rows), Estuary's full load cost $4,462 ($12.97/M rows), Airbyte Cloud's partial full load cost $5,560 ($438.8/M rows).

For CDC, Fivetran cost $2,257 ($45.14/M rows), Estuary cost $22.72 ($0.45/M rows), and Airbyte Cloud cost $148.95 ($2.98/M rows).

While Estuary shows a low per-row cost for CDC in this specific test, the overall picture strongly favors the predictable, infra-based cost of self-hosted OLake, especially for large-scale replication.

In summary, these benchmarks suggest OLake can match or exceed the speed of leading proprietary tools for PostgreSQL to Iceberg replication, offers superior CDC latency compared to all tested alternatives, and provides a significantly lower and more predictable cost structure due to being open source and self-hosted.

You can find more details on the benchmarks and the tool itself in our documentation.

Happy to discuss the results and our approach.
by infecto | 2025-05-08 11:41:34+00:00
You’re not describing moral clarity, you’re describing moral exceptionalism. You draw a clean line and then declare everyone outside it as ignorant, complicit, or cowardly. That’s not ethics, that’s dogma. Most people aren’t “rationalizing atrocities”, they’re living in the real world, where values collide with circumstance, biology, and culture. The “enlightened” always assume their version of truth is the final one, and they always seem to have the luxury to do so. That’s not moral progress, it’s just another flavor of certainty, polished by privilege and detached from the messiness of life. I am not justifying anything beyond refuting the clear lines you draw in your version of enlightenment.
by mmaniac | 2025-05-08 11:41:35+00:00
> You know what's the most interesting part of this whole article? The thing Rust is very famous for, memory safety, did not feature at all.

I think that's the essential point, really... It'd be hard to argue that the rest of Rust isn't overall "better" than C++, but the compromises made to flexibility and ergonomics to achieve memory safety in Rust are the biggest points of contention for Rust critics.
by lproven | 2025-05-08 11:41:44+00:00
> it's a widely-used term/practice in tech writing

But it's not. You have got the key phrase wrong!

It's Docs as Code.

There are whole websites devoted to it:

https://docsascode.org/

Not "like": As -- meaning, "create docs as you create code", meaning "using the same tools and methods."

There is a good strong evidence that your version is inferior: the dozens of comments in this thread by people baffled by the phrase, or pointing out its flawed construction.

It's the Docs As Code approach, _NOT_ "docs like code".

https://docascod.github.io/howto/#/

https://marketplace.visualstudio.com/items?itemName=rafaelmn...

https://www.synesthesia.co.uk/tag/docsascode/
by ValdikSS | 2025-05-08 11:42:00+00:00
There's at least one video which shows that scanning is blocked in the ink Brother MFC-J9950W

https://old.reddit.com/r/mildlyinfuriating/comments/1arnpkc/...

I'm not sure how widespread is this. Usually lower-end models (the one without touchscreen or any screen at all) tend not to block scanning.
by fabianlindfors | 2025-05-08 11:42:35+00:00
The five second timeout remains and trickles through to apply to Postgres transactions instead. This project would very much be for OLTP, so not really fit for using Postgres for OLAP or hybrid workloads.

The N+1 issue is a really interesting one which I have a plan for but haven't implemented yet. FoundationDB has what they call mapped ranges [0] to help with this, which works in some cases. More generally, one should make sure to issue read request as soon as possible and not on-demand, given that FoundationDB clients have a futures-based design. This is slightly tricky in Postgres because internally it has a pull-based model where one tuple is pulled from the execution plan at a time, so one needs to implement pre-fetching and not make a read against FDB each time a new tuple is pulled.

[0] https://github.com/apple/foundationdb/wiki/Everything-about-...
by lopatin | 2025-05-08 11:44:09+00:00
I'd day that hedge funds and quant trading firms are an exception to this rule. If you get access to their model training code, order execution code, and especially their trading strategies, then that is literally valuable since you'd be able to replicate their success.

This is unlike most other companies, say Spotify, where if you get access to their source, there's still not much that you can do with it.
by gravity9 | 2025-05-08 11:45:41+00:00
I've tried every conceivable combo, and I've settled into using GPT o3 (outside of an IDE to do Deep Research on the tech that I am developing an app with first), then taking that context into VS Code (as markdown), and using Claude Code within VS Code to begin generating component files. I typically stay there until I finish the app, with frequent visits to Claude 3.7 Sonnet (on the website) for more creative inspiration and code snippets when Claude Code gets in a rut.
by helpfulclippy | 2025-05-08 11:45:54+00:00
I've seen a few articles on this now. They keep calling it a "secret" message and "hieroglyphic cryptography," but then talk about how sufficiently literate people are supposed to understand it, and the content is along the lines of "The god-king cannot be dethroned" and "Make offerings to the gods." Nothing about this sounds like it was intended to be kept secret or confidential from anyone.

This seems more like fancy typesetting than cryptography, combined with an awareness that the writing at the top of a big tall obelisk will only be readable from a distance.
by thaumiel | 2025-05-08 11:46:05+00:00
uBlock Origin, Tab Stash, Bitwarden, Consent-O-Matic, Terms of Service;Didn't Read, Dark Reader. I use Tab Stash instead of bookmarks to (try) keep track of interesting webpages, it's not working well with the organization of pages. But I have a pretty good history since I started to use it, in 19th July 2023. I have been "forced" to use it, when firefox has started to use too much memory on my Macbook, so I have been forced to close down firefox to be able to keep using it.
by prmoustache | 2025-05-08 11:47:20+00:00
> 1) Availability of different cuisines regardless of distance:

That is my main problem, it doesn't work that well in my place. Food delivery apps here only propose me stuff that is in a 3 km radius or so and not the 6 to 10km ones away. So in the end if I want something different than what is in a walking/cycling distance in my neighborhood I need to move myself.
Show HN: ImportCSV – Open-Source CSV Importer
by aray07 | 2025-05-08 11:47:27+00:00
Hey HN, I'm building ImportCSV, a self-hosted CSV importer that makes CSV onboarding easier for SaaS apps. Here is a quick demo: https://github.com/abhishekray07/importcsv#demo

CSVs are like the cockroach of data transfer—they're everywhere and refuse to go away. At my last startup, we realized spreadsheets and Excel files were deeply embedded across our users' workflows, acting like glue between different systems, even as APIs became more common.

But handling CSV imports turned out to be surprisingly painful. We faced weird issues like strange encodings, unexpected delimiters, and huge files that crashed our system.

Existing tools weren't much help. They were either overly complex, too expensive, or difficult to integrate. Eventually, we built our own tool internally to handle these challenges.

We've cleaned it up and open-sourced it as ImportCSV to hopefully save others from similar headaches. It’s:

- Easy to deploy (`docker compose up`)

- Simple to use (fix errors on the spot)

- Smart (auto-matching columns like "DoJ" → `date_of_joining`)

- Flexible with different column schemas

- Supports data validation

What it can do today:

- Handles multiple file types (CSV, XLS, XLSX, TSV)

- Spreadsheet-style user interface

- Sends validated data directly to your API

Next up:

- Better handling of large files with streaming

- AI-powered data cleaning and validation

- More integration options (databases, webhooks)

I'd love your feedback or any challenging CSV stories you've faced!
by incomingpain | 2025-05-08 11:47:41+00:00
tortoise vs the hare analogy doesnt work well when there isnt even a race. The USA withdrew from the race with decoupling tariffs.

Humanity needs redundancy and resilience. We dont have that when all medical products are produced in china. The move means we produce them in north america, asia, and europe. We create jobs back home and have secure supply chains.

This unfortunately does mean harsh times for china who needs to adapt. Whereas north american point of view is just job creation.
by xiphias2 | 2025-05-08 11:47:42+00:00
Wow, mod_plsql looks really cool, I didn't know about it.

From the replies I think it mainly went out of favour because of lack of reactivity. I could port PageQL to C/Postgresl/Mysql, but I don't think it would be sufficient for a modern application, as reactivity is expected nowdays. Still, I keep it in mind to leave this kind of development as an option in the future.