MurphyA/hacker-news huggingface dataset:
by parliament32 | 2025-10-23 17:13:58+00:00
I think you misunderstand what I'm getting at. SpamAssassin is older than Gmail. It's an old example, much newer and better spam-filtering-at-scale solutions exist (although SA is still maintained). Trying to claim that only the big boys can filter spam is an uninformed opinion.

No, you don't need an AI model to detect AI content (lmao). Heuristics already exist, and you see people mention them online all the time -- excessive use of lists, em dashes, common phrases, etc. Yes, a basic text heuristic scorer from the 1980s can pick these up without much difficulty. The magic of auto-learning heuristics (which have also existed since the 1980s, and performed fine at scale with less processing power than your smartwatch) is you can train them on whatever content you don't want to receive: marketing, political content, etc. You can absolutely apply this to whatever content suits your fancy, and it doesn't really take any more effort than moving messages you want filtered out to a Junk folder or similar.
by iwontberude | 2025-10-23 17:14:08+00:00
The toy example with two nodes incrementing and decrementing likes independently and then sharing the delta with each other would require an increasing amount of backend requests (n^2) for every like. If you had 10000 nodes and they were all sending 9999 requests to eachother for a single request, obviously that's not the best model. It did somewhat remind me of MySQLs active-active replication scheme but that has some locking to make sure drift isn't too bad. MySQL Group Sync also doesn't scale beyond 9 nodes.
by the_af | 2025-10-23 17:14:24+00:00
This tracks with my experience with architects (for home renovations): they use what they know, sometimes stubbornly so and even when I must point out it won't work out (e.g. materials inappropriate for the climate, inappropriate due to exposure to direct sunlight or water, obsession with visuals over practicality, etc).

I've dealt with enough architects by now to know this is the rule and not the exception.
by kragen | 2025-10-23 17:14:38+00:00
The "fi" thing arose during the Algol-68 process, which Steve Bourne participated in, which is why he put it in his shell. (He would have put "od" there too to terminate "do" if it wasn't already used for a hexdumper.) You also find it in, for example, Dijkstra's Discipline of Programming.

Semicolons were widely used as statement separators in Algol-family languages, but in Easy they seem to be statement terminators, so they are apparently like C rather than like earlier Algol-family languages such as Pascal.

Pascal also had the "program" thing. I'm not sure if earlier Algol languages did?
by the_gastropod | 2025-10-23 17:14:54+00:00
The 5 smallest states by population are:

- Wyoming

- Vermont

- Alaska

- North Dakota

- South Dakota

4 of these 5 are consistently "red". 1 is consistently "blue".

The 5 largest states by population are:

- California

- Texas

- Florida

- New York

- Illinois

3 of these are consistently "blue". 1 is consistently "red", and 1 is "purple" (though appears to be skewing "red" in the most recent elections)
by planckscnst | 2025-10-23 17:15:05+00:00
Definitely impossible in 2015.

If you're talking about this part:

> Initially, we were unable to add capacity to the metadata service because it was under such high load, preventing us from successfully making the requisite administrative requests.

It isn't about spinning up ec2 instances or provisioning hardware. It is about logically adding the capacity to the system. The metadata service is a storage service, so adding capacity necessitates data movement. There are a lot of things that need to happen to add capacity while maintaining data correctness and availability (mind at this point, it was still trying to fulfill all requests)
Show HN: IG Email Finder – find verified business emails from Instagram
by joseatanvil | 2025-10-23 17:15:13+00:00
We’ve been working on IG Email Finder, a web tool that helps marketers, founders, and small teams find verified business emails from Instagram accounts that do not list their contact info.

We just released an update that improves the deep research process. It now identifies more verified business emails from accounts that are otherwise unreachable and connects directly with MillionVerifier to clean and validate every contact before download.

All data sourcing follows GDPR and CCPA guidelines. The tool only uses publicly available information and verified business records to ensure compliance.

The goal is to help people who rely on Instagram for client outreach or partnerships reach verified business contacts instead of guessing addresses or relying on DMs.

Would love feedback from anyone interested in data enrichment, lead research, or compliance-focused contact discovery.
by drunx | 2025-10-23 17:15:17+00:00
Fair enough. Though standing and watching a move is also possible. But also in VR/AR you can't have a movie night with a group of people. Though I'm not sure such things even happen anymore (movie nights with friends).

I do feel a certain level of "bigger" commitment when you are in VR/AR. The content follows you. The current way of consuming content is a bit more transactional and has clear boundaries. You want to see a reel - you got to do physical activity (pick up the phone, unlock, launch an app, scroll.. Etc.).

When content "follows you", delivered to you directly as any moment in time - I just have this itchy feeling that we become more dedicated to the consumption of that content. It's an ads dream world!
by the__alchemist | 2025-10-23 17:15:37+00:00
`rust-GPU` and `rust-CUDA` fall in the category to me of "Rust is great, let's build the X ecosystem in rust". Meanwhile, it's been in a broken and dormant state for years. There was a leadership/dev change recently, (Are the creators of VectorWare the creators of Rust-CUDA, or the new leaders?), and more activity. I haven't tried since.

If you have a Rust application or library and want to use the GPU, these approaches are comparatively smooth:

- WGPU: Great for 3D graphics - Ash and other Vulkan bindings: Low-level graphics bindings - Cudarc: Nice API for running CUDA kernels.

I am using WGPU and Cudarc for structural biology + molecular dynamics computations, and they work well.

Rust - CUDA feels like lots-of-PR, but not as good of a toolkit as these quieter alternatives. What would be cool for them to deliver, and I think is in their objectives: Cross-API abstractions, so you could, for example, write code that runs on Vulkan Compute in addition to CUDA.

Something else that would be cool: High-level bindings to cuFFT and vkFFT. You can FFI them currently, but that's not ideal. (Not too bad to impl though, if you're familiar with FFI syntax and the `cc` crate)
by toomuchtodo | 2025-10-23 17:17:05+00:00
https://www.minneapolisfed.org/article/2025/what-drives-cons...

Day gig is at a firm that extends consumer credit, so I keep an eye on cost of capital tracking, monitoring the spread, etc. Any debt packaged and sold into debt markets (asset backed securities) competes against treasuries from a yield (and risk premium pricing) spread perspective. Mortgages, auto loans, some credit card books, etc.

When the Fed cuts rates, your deposit account provider is going to start cutting your interest rate paid right away, but they’re going to maintain their credit rate pricing as long as possible (considering competition from other lenders) to maintain their spread and profit as long as possible. You see this with credit card interest rates, for example.

TLDR 10Y treasury sets the rate floor, broadly speaking.
by gtech1 | 2025-10-23 17:17:10+00:00
Outlook ? Lol. In 2 years-time Outlook will only connect to MS365 and that's it. You're betting MS will switch to JMAP ? Lol again.

P.S. ("New" Outlook already only connects to MS365 servers and then stores your credentials and data on Azure, while they proxy to your actual IMAP/SMTP server )
by dredmorbius | 2025-10-23 17:17:14+00:00
Additional coverage (from other HN submissions):

QZ: <https://qz.com/trump-pardon-binance-changpeng-zhao>

Reuters: <https://www.reuters.com/world/us/trump-pardons-convicted-bin...>

The Guardian: <https://www.theguardian.com/technology/2025/oct/23/binance-t...>
by prewett | 2025-10-23 17:17:22+00:00
Debt pulls future income into the present, so yes, the $38T is what we owe to our future selves. The thing is, your present self already knows if your future self is owed something (you own a bond). So writing it off is taking that person's money and not giving it back in the future like you promised. That does obviously does not go over well, plus it has unpleasant secondary effect. What you do is that you print more money and inflate it away.

Everyone is in denial about the whole situation. The sensible solution is probably the FED targeting a higher inflation rate than the 2% they would prefer and work it out slowly. Nobody is sensible at the moment, so we risk having either out of control inflation for a shorter time, or a lot of people lose money. If you have too much debt, people are going to lose money. The question is the amount of pain (and the collateral pain from secondary effects) that goes with it.
by brokencode | 2025-10-23 17:17:32+00:00
The differentiation of the Steam Deck is the game ecosystem, ability to play your existing PC game library on the go, and low game costs compared to consoles during the frequent sales.

I don't think Linux is a differentiator for the Steam Deck. It's obviously essential as a technical foundation though, similar to how it’s essential to Android phones.

But locking it down with DRM won't affect gamer interest in the platform as long as the games are still cheap, plentiful, and run well.
by fluidcruft | 2025-10-23 17:17:53+00:00
No, the government pays for current services and then spends the rest as a loan to itself (see $38T debt above). The boomers were so big that there was massively more collected then spent. The idea was to loan that extra to the government and the government could structure the debt to smooth things out because eventually the boomers are so big that there will be more spent than immediately collected.
by drunx | 2025-10-23 17:18:43+00:00
That's actually true. You are absolutely right. Computers used to be a size of a bedroom. So yeah, this is not the end game at all.

I would think that the most ultimate end state would be (sci-fi mode ON) some kind of implants, retina projections... It's ridiculous to say this things, but best form factor is to get the value without any form:)
by elcritch | 2025-10-23 17:19:18+00:00
The IETF has made a bunch of standards lately like COSE for doing certificates and encryption stuff with CBOR. It’s largely for embedded stuff, but I could see it being a modern alternative. I haven’t used it myself yet.

CBOR is self-describing like JSON/XML meaning you don’t need a schema to parse it. It has better set of specific types for integers and binary data unlike JSON. It has an IANA database of tags and a canonical serialization form unlike MsgPack.
by gjsman-1000 | 2025-10-23 17:19:32+00:00
HN, and tech libertarians in general, have been trying to square multiple values together:

1. Decentralized

2. Anonymous

3. Trustworthy

4. Immune (from bad actors)

History has shown that these values are incompatible. Not a little incompatible - completely incompatible. We only have three decks of cards open to us:

1. Open and anonymous (and hopelessly corrupted by bad actors to the point of uselessness - phase 1 - Google only got popular in the first place because people couldn't dig through the manure)

2. Closed (held hostage by Big Tech curation - you are here - phase 2 - but corruption causes government intervention)

3. Open and accountable (identities tied to the real world, with real world accountability - incoming phase - but at least you don’t need to worry about DDoS as much)

There is no other option that works, any more than 1 + 1 + 1 = 4, no matter how badly we wish it existed.
by LegNeato | 2025-10-23 17:20:05+00:00
Yes, it is all these folks getting together and getting resources to push those projects to the next level: https://www.vectorware.com/team/

wgpu, ash, and cudarc are great. We're focusing on the actual code that runs on the GPU in Rust, and we work with those projects. We have cust in rust-cuda, but that existed before cudarc and we have been seriously discussing just killing it in favor of cudarc.
by bakugo | 2025-10-23 17:20:36+00:00
What that does is allow existing outgoing connections through a NAT to remain open long-term, it doesn't actually help with establishing an initial connection if both sides are behind a NAT or closed firewall.

Tailscale handles this, and can establish a direct connection between two machines without either of them needing an open port listening for new connections.

There's an article on their website that explains how they do it: https://tailscale.com/blog/how-nat-traversal-works
by actionfromafar | 2025-10-23 17:20:45+00:00
If the war is prolonged, you can't go around treating people like eggshells to be crushed, or morale will suffer.

Unless your target image is how Russia conducts war. Beats (their own) soldiers, puts them in cages, ties them to trees for days, and so on. In Ukraine we see the difference in practice. If the cause is just, you don't have push your soldiers at gunpoint into the fray, like Russia does.

And if the war is not prolonged, what's even the excuse to do that in the first place?
by krapp | 2025-10-23 17:21:12+00:00
You can police the execution of people's racist intent, and we often do. Freedom of speech and freedom of association mean racists aren't guaranteed a platform. Many countries (not the US, notably) police "hate speech" on the premise that such speech inevitably leads to hateful actions.

Arguing from human nature isn't compelling. Rape and murder are part of human nature as well, and people have always done both, yet it isn't controversial to police such behaviors. Racism is no different. We aren't mere animals entirely beholden to our base instincts, after all.
by instagib | 2025-10-23 17:21:29+00:00
James Smith, a fitness influencer on YouTube, had a video showing what it took for him to burn 5,000 calories then eat 5,000 calories. He set it to private for some reason recently but I liked to reference it for how long and painful both steps were.

A few other people have done the same feat or tried to: 5,000 or 10,000 calories challenge.

I don’t have the time to outrun a large blizzard (1300 calories) as a 90min session usually burns 700-900 calories according to my watch. I don’t feel like doing two sessions per day which is what Jay Cutler said he would do when cutting for Mr. Olympia. I think if I did, I wouldn’t be able to maintain it.
by zozbot234 | 2025-10-23 17:22:34+00:00
There isn't always a DMA roundtrip; unified memory is a thing. But programming for the GPU is very awkward at a systems level. Even with unified memory, there is generally no real equivalent to virtual memory or mmap() so you have to shuffle your working set in and out of VRAM by hand anyway (i.e. backing and residency is managed explicitly, even with "sparse" allocation api's that might otherwise be expected to ease some of the work). Better GPU drivers may be enough to mitigate this, along with broad-based standardization of some current vendor-specific extensions (it's not clear that real HW changes are needed) but this creates a very real limitation in the scale of software (including the AI kind) you can realistically run on any given device.
by duped | 2025-10-23 17:22:48+00:00
> 2048 additional parameters (128 controllers * 16 channels) just to receive CCs.

It's worth mentioning that it's 2 x 16 x 16,384 in MIDI 2, + 128 x 16 MIDI1 because you gotta support both.

But to quote Steinberg devs, "plugins shouldn't handle MIDI CC at all"
by nradov | 2025-10-23 17:23:05+00:00
Any large standing military will typically oscillate between a wartime footing where aggression and risk-taking are rewarded versus a peacetime (garrison) footing where avoiding politically embarrassing mistakes is rewarded. The problem is that when the next war starts the careerist officers who were promoted during peacetime produce disastrous results. It then takes several lost battles until they are replaced with competent warfighters.

For better or worse, US leadership is now attempting to place the military on a permanent wartime footing, largely on the theory that a major regional conflict with China is coming at some unpredictable time in the next couple decades. They think they're going to have to fight WWII again with China now playing the role of Japan. Some level of occasional human rights abuses are seen as an acceptable "cost of doing business" to maintain a higher level of readiness and combat effectiveness. (I am not claiming that this is a good policy, just trying to explain the current thinking within the military-industrial complex.)
by dasil003 | 2025-10-23 17:23:48+00:00
Huh? Blocking senders as you surf the web based on what you want to see is a completely different problem from blocking requests to your server based on what the intent of the requester is. I can think of no way these problems are similar except in the very narrow technical sense of maintaining a blocklist and attaching it to a request cycle, which is really not the hard part of either of these problems.
by atourgates | 2025-10-23 17:24:01+00:00
I've been using ChatGPT fairly regularly for about a year. Mostly as an editor/brainstorming-partner/copy-reviewer.

Lots of things have changed in that year, but the things that haven't are:

* So, so many em-dashes. All over the place. (I've tried various ways to get it to stop. None of them have worked long term).

* Random emojis.

* Affirmations at the start of messages. ("That's a great idea!") With a brief pause when 5 launched. But it's back and worse than ever now.

* Weird adjectives it gets stuck on like "deep experience".

* Randomly bolded words.

Honestly, it's kind of helpful because it makes it really easy to recognize content that people have copied and pasted out of ChatGPT. But apart from that, it's wild to me that a $500bn company hasn't managed to fix those persistent challenges over the course of a year.
by mullingitover | 2025-10-23 17:24:18+00:00
I don't even necessarily think a 'war on crypto' is needed. The problem is that crypto seems to function as a get out of jail free card for very straightforward financial crimes: you just do the financial crime, but apply a thin veneer of 'but with crypto' and the legal system is utterly bamboozled.

Crypto's problem is that when the law is updated to deal with these stunts, it's suddenly just a crappy version of the existing financial system.
by Spawek | 2025-10-23 17:24:55+00:00
I trained a simple neural network on 77k professional Dota 2 matches to learn which heroes tend to be picked together during drafts.

From that, I extracted 32-dimensional hero embeddings - the model's "understanding" of each character - and projected them into 2D. The result is a surprisingly coherent similarity map, showing how the game's structure emerges naturally from data.

The post includes visuals, code, and an explanation of how it works.

Happy to discuss details or answer any questions!
Show HN: Distil-NPC: a family of models for non-playable characters in games
by party-horse123 | 2025-10-23 17:25:05+00:00
we finetuned Google's Gemma 270m (and 1b) small language models specialized in having conversations as non-playable characters (NPC) found in various video games. Our goal is to enhance the experience of interacting in NPSs in games by enabling natural language as means of communication (instead of single-choice dialog options).
by Rendello | 2025-10-23 17:25:08+00:00
I'm about to try my hand at procedural macros in Rust (as a last resort), and I started thinking about code generation.

Although I've never done much with macros, I have on occasion used Python to generate big Rust files. In one project, I had a web extension that would transliterate between two (mostly equivalent) writing systems in a given language, and I had Python read a small CSV table and generate some big perfect hash maps with a lot of data.
by taink | 2025-10-23 17:25:30+00:00
Why should curation be centralized? We do not need a "decentralized dictatorship" (what would that even be? that's antithetical) and we certainly do not need a centralized one. It seems crazy that your solutions to AI, spam, and "automated traffic" (I don't know what that is, I assume web crawlers and such) is that the police control every single transaction.

First off, we can simply let the user, or client software, choose. Why should we let centralized servers do that by default?

At scale, DNS is somewhat centralized but authorities are disconnected from internet providers and web browsers. They're the best actors to regulate this.

For mail, couldn't we come up with a mail-DNS, that authenticates senders? There could be different limits based on whether you are an individual or a company, and whether you're sending 10'000 emails or just 100.

Regardless of whether these are good solutions -- why jump to extreme ones? "TINA" is not a helpful argument, it's a slogan.
Show HN: Pg_textsearch – BM25 Ranking for Postgres
by tjgreen | 2025-10-23 17:25:31+00:00
I built pg_textsearch, a Postgres extension that brings proper BM25 ranking to full-text search. It's designed for AI/RAG workloads where search quality directly impacts LLM output.

Postgres native ts_rank lacks corpus-aware signals (no IDF, no TF saturation, no length normalization). This causes mediocre documents to rank above excellent matches, which matters when your LLM depends on retrieval quality.

Quick example:

CREATE EXTENSION pg_textsearch; CREATE INDEX articles_idx ON articles USING bm25(content); SELECT title, content <@> to_bm25query('database performance', 'articles_idx') AS score FROM articles ORDER BY score LIMIT 10;

Works seamlessly with pgvector or pgvectorscale for hybrid search. Fully transactional (no sync jobs). Preview release uses in-memory architecture (64MB default per index); disk-based segments coming soon.

I love ParadeDB's pg_search but wanted something available on our managed Postgres. You can try pg_textsearch free on Tiger Cloud: https://console.cloud.timescale.com

Blog: https://www.tigerdata.com/blog/introducing-pg_textsearch-tru...

Docs: https://docs.tigerdata.com/use-timescale/latest/extensions/p...

Feedback welcome, especially from folks building RAG systems or hybrid search applications.
by Octoth0rpe | 2025-10-23 17:25:46+00:00
Sigh, the abuse of void was particularly eye-opening for me. If one really must do this - and I can think of a couple of cases where one might mostly around progressively porting old codebases to typescript - I'd strongly prefer the simple `a as unknown as B;` as one can easily grep for ` as unknown as ` to find your crimes.
by AnimalMuppet | 2025-10-23 17:26:05+00:00
So what actually happened is that Clinton said we had to get serious about the deficit, and then passed a budget that pushed the real cuts until after the end of Clinton's second term (that is, more than six years down the road).

Then Republicans took over the House in the midterms. They passed the budget (and Clinton signed it) that actually led to surplus for the first time since Andrew Jackson.

So, yes, it happened under a Democratic president. It only happened because of a Republican House, though.

(But let the president also be a Republican, and Republicans in Congress lose all fiscal discipline.)
by supriyo-biswas | 2025-10-23 17:26:59+00:00
DNS-based CDNs are also effectively this: collect metrics from a datastore regarding system usage metrics, packet loss, latency etc and compute a table of viewer networks and preferred PoPs.

Unfortunately hard documentation is difficult to provide but that’s how a CDN worked at a place I used to work for, there’s also another CDN[1] which talks about the same thing in fancier terms.

[1] https://bunny.net/network/smartedge/