MurphyA/hacker-news huggingface dataset:
by hammyhavoc | 2025-07-20 00:40:30+00:00
The big platforms always use a variety of solutions. Always some kind of database of hashes of known CSAM available via an API. Always human beings on a trust and safety team. Takes considerable time, money, and emotional toll.

Not just anyone can access all of the SaaS databases and it's approved on a case-by-case basis. Obviously not all CSAM is in these databases, and gen AI output adds another hurdle to preventing this kind of malicious behaviour.

Personally, I feel a potential solution could be that user clients could opt into referencing hashes of media before it is downloaded, and that could either be handled by their home server, or a third-party. However, something like that is really idealism and not realistic at this point, despite being a great solution in a perfect world where people maintain encryption, yet don't expose themselves to CSAM inadvertently.

In terms of the Matrix.org homeserver, perhaps an alternative (though would prove unpopular) is only allowing Matrix.org users to upload media if they're a paying supporter of the Matrix.org homeserver with a valid payment method on their account, thus obviously linking their identity to their account.

https://matrix.org/membership/

The knock-on effect would be that it may offload some users onto their own infrastructure and alleviate the moneypit of a public instance, or directly fund the public instance itself if they do choose to support it financially. The Matrix.org instance doesn't support users adding bridges, so it isn't that much of a stretch to forbid media uploads from non-supporters. Portable identities would make this a no-brainer, but even without them, I still feel as if the public instance is largely an incredibly generous demo to help folks take Matrix for a spin. Decentralisation is such a major selling point that's vastly underutilized.

I do think that people should at least attempt to become decentralized and manage their own community by themselves, be it public or private. Large public homeservers are always going to be considerable targets for this kind of problem. It's a lot of digital eggs in one digital basket for a lot of reasons.

Nothing stopping people uploading images onto a third-party file storage system and providing the URL if they absolutely need to share a screenshot or similar on the public Matrix.org instance. Anyway, fleeting thoughts.
Metis Agent Starter Kit – Build production AI agents in minutes, not weeks
by cjohnsonpr | 2025-07-20 00:41:23+00:00
Building AI agents shouldn't require weeks of setup and boilerplate code. So our Metis Analytics team is releasing our Metis OS Agentic Orchestration Framework as Open Source that will get you from idea to working agent in minutes, not days.

What it solves: Instead of spending days wiring up LLM APIs, memory systems, and tool integrations, you get a working agent in ~5 minutes.

Get started: pip install metis-agent

Key features:

Templates for common agent types (research, coding, customer support) Encrypted API key management (stores locally, never in code) Adaptive memory system that learns what's important

Works with Groq, OpenAI, Anthropic, HuggingFace Production deployment examples (CLI, web API, embedded)

Why it matters: Most AI agent tutorials give you toy examples. This gives you something you can actually ship.

The starter kit repo has 10+ working examples and customizable templates. Everything's Apache 2.0 licensed.

PyPI: https://pypi.org/project/metis-agent/ GitHub:https://github.com/metisos/metisos_agentV1 Would love feedback from the community - especially if you've built similar tooling or have ideas for additional agent templates.
by AnimalMuppet | 2025-07-20 00:41:38+00:00
I fight to remind myself that my identity does not lie in "success". It would be nice, but I don't need it to feel OK about myself or to make myself into somebody or to make my life worthwhile.

Where do I find my identity? I find it in Jesus Christ.

I recognize that a lot of people are going to look at that as an illusion, as me deceiving myself. But "success" is also an illusion, especially as a source of identity.
by duped | 2025-07-20 00:41:45+00:00
About 20 years ago your choice of language basically boiled down to what you were going to pick for your web server. Your choices were

- Java (popular among people who went to college and learned all about OOP or places that had a lot of "enterprise" software development)

- Ruby on Rails (which was the hot new thing)

- Python or Perl to be the P in your LAMP stack

- C++ for "performance"

All of these were kitchen sink choices because they wound up needing to do everything. If you went back in time and said you were building a language that didn't do something incredibly common and got in the way of your work, no one would pick it up.
by lokeg | 2025-07-20 00:41:48+00:00
Something like the following? I am trying and failing to reproduce the issue, even with mutable AST nodes.

use bumpalo::Bump; use std::io::Read; fn main() { let mut arena = Bump::new(); loop { read_and_process_lines(&mut arena); arena.reset(); } } #[derive(Debug)] enum AstNode<'a> { Leaf(&'a str), Branch { line: &'a str, meta: usize, cons: &'a mut AstNode<'a> }, } fn read_and_process_lines(arena: &Bump) { let cap = 40; let buf: &mut [u8] = arena.alloc_slice_fill_default(cap); let l = std::io::stdin().lock().read(buf).expect("reading stdin"); let content: &str = str::from_utf8(&buf[..l]).unwrap(); dbg!(content); let mut lines = content.lines(); let mut latest: &mut AstNode<'_> = arena.alloc(AstNode::Leaf(lines.next().unwrap())); for line in lines { latest = arena.alloc(AstNode::Branch{line, meta:0, cons: latest}); } println!("{latest:?}"); }
by throw10920 | 2025-07-20 00:42:12+00:00
> This is just not an appropriate response

It's entirely an appropriate response given that you made multiple factual claims without providing evidence, and you made several statements that just were incoherent and so I couldn't even understand what your points were.

> I'm happy you feel like you made your point

Factually, I did make my point. I made factually correct statements, and you responded with false claims and fallacies, and eventually realized that you couldn't actually refute my points and so started emotionally attacking me. That indicates that you don't understand the difference between feelings and things that are factually true.

> Was it your intent to shut down a conversation?

No, it was my intent to discover truth. Do you not realize that facts and truth matters and that you can't just lie about things? If you can't justify your positions with facts and logic, you're just a hypocrite and your opinions are meaningless.

Also, Hacker News is specifically about intellectual curiosity. I want to know if what you're saying is true, and engage with points that you make (feelings are not points), and so I ask questions and challenge. Emotional outbursts, like yours, are the polar opposite - they're anti-intellectual, and shut down curiosity.
by PaulHoule | 2025-07-20 00:42:28+00:00
By the end of his life people thought McLuhan hadn't aged well. His answers, such as the "hot and cold" concept, were questionable, but his questions were priceless

https://en.wikipedia.org/wiki/Tetrad_of_media_effects

His prediction that television would displace reading was way too early: in his day it was ABC-NBC-CBS with no Selectavision, VHS, DVD, Laserdisc, Cable and then YouTube, Netflix, and all that; there was CCTV then but it was expensive, you couldn't get a Amcrest camera for $35, never mind be able to afford the footage or transmit it wherever. When my son started learning how to do things from YouTube though, I knew he was right. It took television 75 years to get to TikTok, but YouTube was the real revolution that we didn't realize was a revolution because it happened so slowly and across all age groups.

(Even the pictures can be a red herring in that a lot of YouTube content plays just fine with or without the video such as Joe Rogan or The Ezra Klein Show which must be the establishment left counterpart)

I don't blame the nepo baby, the vast majority of them are agreeable and talented enough. The Ivy League needs the SAT to keep the bottom 20% of them out. What I miss is the paths for other people to rise up, people like

https://en.wikipedia.org/wiki/Eric_Hoffer

https://en.wikipedia.org/wiki/Stanley_Aronowitz

I worked on the latter's campaign for governor. (Met him multiple times, videotaped him accepting the nomination at the Green Party convention, went to a fundraiser at Howie Hawkin's house, etc.) I was outside the debate and watched a Republican in a Syracuse Orangeman jacket punch out a hippie, reported it on our web site, and got a call from the Marijuana legalization candidate who told me it wasn't one of his activists. Aronowitz was smart and he worked really hard but he struggled to connect even with activists and got less than 1% of the vote in the end and us Greens lost our ballot line.
by nobodyandproud | 2025-07-20 00:42:52+00:00
You’re blaming conservatives but it’s the Democrat leadership that is desperately out of touch, which enables the worst of the conservatives.

Age, institutional donors, and a general upper-middle-class mindset have made the leadership ineffective.

What’s worse is that rank-and-file Democrat voters in this upper-middle-class to upper class bloc—generally older white-collar voters, tech millionaires, or trust-fund kids—refuse to see that they are part of the problem.

Any constructive criticism or calls for introspection is deemed “bad faith” or conservative trolling.
by Spivak | 2025-07-20 00:43:34+00:00
You hear a faint whisper from the alleyway: you should try Kagi.

I know it's the HN darling and is probably talked about too much already but it doesn't have this problem. The only AI stuff is if you specifically ask for it which in your case would be never. And unlike Google where you are at the whims of the algorithm you can punish (or just block) AI garbage sites that SEO their way into the organic results. And a global toggle to block AI images.
by YmiYugy | 2025-07-20 00:45:06+00:00
I think under the constrained of not using GC and not defaulting to unsafe memory that the borrow checker is a decent design. The constraints mean that you need some form of formal verification of your lifetimes. These can get very complex and difficult to use. So it might make sense to limit their expressiveness and instead rely on unsafe escape hatches. I think Rust's borrow checker provides a decent tradeoff between easy of use and how often unsafe is needed. There are rough edges and progress has been slow, but I have yet to see anything radically better. Other system PLs require a lot more unsafe usage (e.g. Zig) and I'm not aware of any mainstream system PLs that offer much more expressive verification.
by FollowingTheDao | 2025-07-20 00:45:19+00:00
> We've come far enough to see and manipulate individual atoms, emit and count individual photons

The fact that you don’t see the downsides of manipulating atoms, and the trouble is causing in this very day with the risk of nuclear war, literally proves that we are not that smart.

> Eugenics was about leveraging population control to ensure only the "good" genes get passed on

Everyone’s assumption are that these genes that are killing these children are “bad“. They know these jeans survived thousands of years of evolution for a reason. And that’s because on Balance They are not bad, but for some they are very bad. Human genetics cares about our survival, it is totally a moral. It would rather a few babies die so that hundreds could live.
by johnnyanmac | 2025-07-20 00:45:26+00:00
Letters had a time and potential money cost to send. And most letters don't need to be personalized to the point where we need handwriting to justify them.

>Change is inevitable. Most people just won't like it.

people love saying this and never taking the time to consider if the change is good or bad. Change for change's sake is called chaos. I don't think chaos is inevitable.

>And honestly, my ego doest’t like it because I used to think I was more intelligent than them. Turns out I wasn't. It was just my perception, based on the fact that I speak the language natively.

I don't think I ever heard that argument until now. And to be frank that argument says more about the arguer than the subject or LLM's.

Have you simply considered 3) LLM's don't have context and can output wrong information? If you're spending more time correcting the machine than communicating, we're just adding more beauracracy to the mix.
by twotwotwo | 2025-07-20 00:46:50+00:00
The "they do different things" bullet is worth expanding.

Wikipedia, arXiv dumps, open-source code you download, etc. have code that runs and information that, whatever its flaws, is usually not guessed. It's also cheap to search, and often ready-made for something--FOSS apps are runnable, wiki will introduce or survey a topic, and so on.

LLMs, smaller ones especially, will make stuff up, but can try to take questions that aren't clean keyword searches, and theoretically make some tasks qualitatively easier: one could read through a mountain of raw info for the response to a question, say.

The scenario in the original quote is too ambitious for me to really think about now, but just thinking about coding offline for a spell, I imagine having a better time calling into existing libraries for whatever I can rather than trying to rebuild them, even assuming a good coding assistant. Maybe there's an analogy with non-coding tasks?

A blind spot: I have no real experience with local models; I don't have any hardware that can run 'em well. Just going by public benchmarks like Aider's it appears ones like Qwen3 32B can handle some coding, so figure I should assume there's some use there.
by IAmGraydon | 2025-07-20 00:47:00+00:00
Why don’t we call this by its true name - Amazon? You guys do realize that Amazon intentionally keeps its name off the product for a reason, right? They have Amazon batteries, web hosting, makeup, and every other thing you could possibly imagine. This product though? It’s just “Ring” so that Amazon can avoid the brand damage that comes from facilitating a police state. That is their intention, and they are keeping it at arms length for that reason. The headline of this article should read “Amazon Ring introducing new feature…” not just “Ring”. If we want it to stop, we need to hold the company responsible for what they’re doing.
by PaulHoule | 2025-07-20 00:47:03+00:00
I can't say I am either rich or poor. I own a house, in fact I own two (on the same lot) That puts me in much better shape than a lot of people. I have good health insurance, I can see my primary care doc for $20 and fill many generic scripts for $5, I am not spending $200 for a telehealth "consult" with Lemonaid or Hims and then getting a $80 month for some sketchy compounded medication that isn't really approved by the FDA.
by gchamonlive | 2025-07-20 00:47:12+00:00
A good time as ever for a shameless plug.

For my archlinux setup, configuration and backup strategy: https://github.com/gchamon/archlinux-system-config

For the backup system, I've cooked an automation layer on top of borg: https://github.com/gchamon/borg-automated-backups
by hannofcart | 2025-07-20 00:47:32+00:00
Since there's a lot of shade being thrown about imprecise information that LLMs can generate, an ideal doomsday information query database should be constructed as an LLM + file archive.

1. LLM understands the vague query from human, connects necessary dots, and gives user an overview, and furnishes them with a list of topic names/local file links to actual Wikipedia articles 2. User can then go on to read the precise information from the listed Wikipedia articles directly.
by vineyardmike | 2025-07-20 00:47:53+00:00
Not only that but it's used for "occupancy detection" to detect crowd sizes.

I once stayed at an AirBnB with some friends and the power went out in the evening one day of the trip. The next door neighbor also lost power, and came over to check on us - and didn't even step in the house. The next morning I got a nasty email from the host accusing me of abusing the occupancy limit. Clearly there were some hidden cameras or something in the house.

As silly as this example is, its just another annoying example of how technology is abused to monitor compliance with what should be a social issue.
by missingcolours | 2025-07-20 00:48:08+00:00
Yes, I feel like it's important to clarify that this is one specific hotel which happens to be associated with Hyatt, not a general program instituted by Hyatt or any specific chain.

If Hyatt refuses to address this scam after being made aware of it, that's a different story, but for now this is a story about specific hotel properties' wrongdoing.
by shakna | 2025-07-20 00:48:26+00:00
Not what the author of React says:

> Yes, the first prototype of React was written in SML; we then moved onto OCaml.

> Jordan transcribed the prototype into JS for adoption; the SML version of React, however great it might be, would have died in obscurity. The Reason project's biggest goal is to show that OCaml is actually a viable, incremental and familiar-looking choice. We've been promoting this a lot but I guess one blog post and testimonial helps way more.

https://news.ycombinator.com/item?id=15209814
by al_borland | 2025-07-20 00:49:01+00:00
It isn’t about how well AI can answer solved problems. Can it invent the future?

And let’s say AI does automate all human labor… what’s the plan? That happening, will lead to chaos, without some massive changes in how society is organized and functions. That change itself with be chaotic and massively disruptive and painful for millions. If someone can’t answer that question, they have no business hyping up the end of human involvement in civilization.
by yberreby | 2025-07-20 00:49:21+00:00
Interesting that you had such a smooth experience. I was mainly using Homebrew on the daily between 10 and 14 years ago, so I couldn't give you specifics. My experience at the time was poor; maybe I was using it wrong. My impression from looking at recent user reports was that Homebrew's stability has continued to lag behind pacman's, but I agree that my assertion in the latter part of the excerpt you quoted was insufficiently substantiated, so I'll remove it.
by yladiz | 2025-07-20 00:50:03+00:00
Without getting into the differences about the benefits you get in many European countries compared to the US, I think it's pretty naive to think you could realistically save enough from a salary alone to live for an extended period of time (something like 1-2+ years) in the US simply because the net salary is higher. Expenses are high, and when you become unemployed they become higher (e.g. you have to pay out of pocket for your health insurance, either from the ACA exchanges or from COBRA), and if you end up having an unexpected expense it could cause a lot of issues since you don't have a regular stream of money coming in. If you're lucky it could be okay, but it's luck dependent.

Besides that, if we assume AI will take many jobs in the coming years, what are you to do if you suddenly become unemployable with your current skill set and need to, for example, go back to school, or find an entry level job in another field with a potentially significantly lower salary? Live off of your savings?
by mnemonk | 2025-07-20 00:50:47+00:00
I disagree about the magical part :)

It is truly refreshing to see how simple web development can be when using htmx instead of a full spa framework.

I do full stack (angular, aspnet core, mssql) development in my daytime job. It can be... tiresome. Past couple of years i've built a soundcloud-like app using htmx, nodejs, express, mysql. Loved every minute.

Thank you for all your effort on htmx.

Edit: spelling.
by trebligdivad | 2025-07-20 00:51:27+00:00
I'm not claiming they pay as much tax or spend as much as percentage; but they do spend money in the country; it might not be a fair amount etc - but it's a useful amount going into the pot. So if you emphasise fairness they leave and you have less tax to spend on the poor. As long as they're not actively doing bad things, I'd rather have the cash coming into the country.
by nine_k | 2025-07-20 00:51:43+00:00
Well, I have read TFA.

The author may have a point in the idea of borrowing record fields separately. It is possible if we assume that the fields are completely orthogonal and can be mutated independently without representing an incorrect state. It would be a good option to have.

But a doubly-linked list (or graph) just can't be safely represented in the existing reference semantics. Dropping a node would lead to a dangling pointer, or several. An RDBMS can handle that ("on delete set null"), because it requires a specific way to declare all such links, so that they can be updated (aka "foreign keys"). A program usually does not (Rc / Arc or shared_ptr provide a comparable capability though).

Of course a bidirectional link is a special case, because it always provides a backlink to the object that would have a dangling pointer. The problem is that the borrow checker does not know that these two pointers belonging to different structs are a pair. I wish Rust had direct support for such things, then, when one end of the bidirectional link dies, the borrow checker would unset the pointer on the reciprocal end. Linking the objects together would also be a special operation that atomically sets both pointers.

In a more general case, it would be interesting to have a way to declare some invariants over fields of a struct. A mutual pair of pointers would be one case, allowing / forbidding to borrow two fields at once would be another. But we're far from that.

Special-casing some kinds of pointers is not unheard of; almost every GC-based language offers weak references (and Java, also Soft and Phantom references). I don't see why Rust could not get a BidirectionalRef of sorts.

Until then, Arc or array with indexes seem to be the only guaranteed memory-safe approaches.

Also, in the whole article I could not find a single reason why the author chose Rust, but I suppose it's because of its memory efficiency, considering the idea of keeping large graphs in RAM. Strictly speaking, Go could be about as efficient, but it has other inflammation points. C++... well, I hope Rust is not painful enough to resort to that.
by alisonatwork | 2025-07-20 00:51:46+00:00
You can kind of extrapolate this meta layer if you switch languages on the same topic, because different languages tend to encode different cultural viewpoints and emphasize different things. Also languages that are less frequently updated can capture older information or may retain a more dogmatic framing that has not been refined to the same degree.

The edit history or talk pages certainly provide additional context that in some cases could prove useful, but in terms of bang for the buck I suspect sourcing from different language snapshots would be a more economical choice.
by lxgr | 2025-07-20 00:51:46+00:00
> In this case, presenting arguments you yourself do not even understand is dishonest, for multiple reasons.

I fully agree. However, the original comment was about helping people express an idea in a language they're not proficient in, which seems very different.

> And I thought we went past the "thesaurus era" of communication where we just proliferate a comment with uncommon words to sound smarter.

I wish. Until we are, I can't blame anyone for using tools that level the playing field.