MurphyA/hacker-news huggingface dataset:
Show HN: A tool to help websites appear in AI-generated answers
by HansP958 | 2025-12-20 17:33:49+00:00
Hi HN,

Over the last months, I noticed something odd:

many websites that rank well on Google simply don’t appear when you ask ChatGPT, Gemini, or Perplexity for recommendations or explanations.

At first I assumed it was just noise. But after testing dozens of sites, a pattern started to emerge: AI systems don’t reward “SEO-optimized” pages — they pick sources that are clear, structured, and easy to reuse as answers.

SEO tools don’t really explain this. Manual prompt testing is inconsistent. And most advice around “AEO” is still vague or theoretical.

So I built a small tool to experiment with this problem. It analyzes a site and highlights what might prevent it from being selected as a source by AI systems (structure, clarity, intent signals).

This is still early and very much a learning project. I’m mostly interested in feedback from people who are also trying to understand how AI-generated answers work in practice.

Happy to answer questions and share what I’ve learned so far.

Project: https://x102.tech
by raw_anon_1111 | 2025-12-20 17:34:22+00:00
So are you really arguing that tech companies that pay top of the industry don’t require that you demonstrate that you can handle responsibility that requires you to be able to work at a larger scope, impact and dealing with ambiguity and go through a promotion process with a promo doc?

Are you saying that when you interview for one of those tech companies that they don’t level you according to your past experience?

Yes I know the answers to all of these questions from both personal experience of interviewing and hiring at one BigTech company and ignoring outreach from another’s hiring manager who I had worked with in the past.

(At 51, I would rather get a daily anal probe with a cactus than ever work at a large company again and I am damn sure not going back into an office)
by bgwalter | 2025-12-20 17:34:25+00:00
Regarding the stochastic parrots:

It is easy to see that LLMs exclusively parrot by asking them about current political topics [1], because they cannot plagiarize settled history from Wikipedia and Britannica.

But of course there also is the equivalence between LLMs and Markov chains. As far as I can see, it does not rely on absurd equivalences like encoding all possible output states in an infinite Markov chain:

https://arxiv.org/abs/2410.02724

Then there is stochastic parrot research:

https://arxiv.org/abs/2502.08946

"The stochastic parrot phenomenon is present in LLMs, as they fail on our grid task but can describe and recognize the same concepts well in natural language."

As said above, this is obvious to anyone who has interacted with LLMs. Most researchers know what is expected of them if they want to get funding and will not research the obvious too deeply.

[1] They have Internet access of course.
by svat | 2025-12-20 17:34:43+00:00
The page is about tips for writing fast code. Much of it applied 20 years ago, and will apply 20 years from now. If by "the numbers" you mean specifically just the table ("rough costs for some basic low-level operations") in the "Estimation" section (which accounts for less than 0.5% of the words on the page), then that table was initially created in 2007, and is up-to-date as of 2025. Other numbers on the page are given with their dates, like 2001 and so on. So 2023 does not seem relevant in any way.
by jabelburns | 2025-12-20 17:35:30+00:00
That quote is exactly why I have mixed feelings too

I don’t think blameless postmortems mean “no accountability” or “nothing bad happened.” They’re more about separating learning from discipline.

In my experience, the postmortem is the wrong place to assign consequences — once people feel personally on trial, the document becomes defensive and you lose signal about system failures.

You can and should still hold people accountable elsewhere, but the writeup itself should be boring, factual, and focused on how the system allowed the failure. This tool is opinionated in that direction, which definitely isn’t universal.
by pixl97 | 2025-12-20 17:35:38+00:00
So what error do you put if the server is over 500 miles away?

https://web.mit.edu/jemorris/humor/500-miles

Or you can't connect because of a path MTU error.

Or because the TTL is set to low?

Your software at the server level has no idea what's going wrong at the network level, all you can send is some kind of network problem message.
by notKilgoreTrout | 2025-12-20 17:35:55+00:00
The arguments against seemed to show the weakness of frequentists in practical deduction.. It certainly could have been a domestic where the police already knew but weren't communicating it but otherwise most suggestions didn't match the statistics of the specific demographic/locations to compete with the anomaly of a total AWOL with good luck, nothing to lose and a connection to top academia who wasn't dead or in jail.
by 1-6 | 2025-12-20 17:36:41+00:00
+1 to simple machines.

As an analogy and anecdote, I've learned a lot about cars through RC racing as a teen. Building differentials, CVDs and Universal Joints, hydraulic shocks towers, and tuning radios really gave me the baseline to know and fix cars as an adult.

I still lack a very basic understanding of computers which has somewhat neutered what I'm capable of doing today. I'm now sorta getting back into learning these things but it's kinda hard when it is limited to weekends and holidays. I hope RPI keeps going with their vision as a publicly traded company. Kids need to learn these things.
by uniq7 | 2025-12-20 17:37:44+00:00
The error doesn't need to be extremely specific or point to the actual root cause.

In your example,

- "Error while serving file" would be a bad error message,

- "Failed to read file 'foo/bar.html'" would be acceptable, and

- "Failed to read file 'foo/bar.html' due to EIO: Underlying device error (disk failure, I/O bus error). Please check the disk integrity." would be perfect (assuming the http server has access to the underlying error produced by the read operation).
by wreath | 2025-12-20 17:37:51+00:00
> Take AWS RDS. Under the hood, it's:

Standard Postgres compiled with some AWS-specific monitoring hooks A custom backup system using EBS snapshots Automated configuration management via Chef/Puppet/Ansible Load balancers and connection pooling (PgBouncer) Monitoring integration with CloudWatch Automated failover scripting

I didn't know RDS had PgBouncer under the hood, is this really accurate?

The problem i find with RDS (and most other managed Postgres) is that they limit your options for how you want to design your database architecture. For instance, if write consistency is important to you want to support synchronous replication, there is no way to do this in RDS without either Aurora or having the readers in another AZ. The other issue is that you only have access to logical replication, because you don't have access to your WAL archive, so it makes moving off RDS much more difficult.
by NitpickLawyer | 2025-12-20 17:38:32+00:00
Why do you think it's not relevant to the "optimise in a loop" thing? The way I think of it, it's using LLMs "in a loop" to move something from arch A (that costs x$) to arch B (that costs y$), where y is cheaper than x. It's still an autonomous optimisation done by LLMs, no?
by visarga | 2025-12-20 17:39:06+00:00
You 100% need to test work done by AI, if it's code it needs to pass extensive tests, if it's just a question answered, it needs to be the common conclusion of multiple independent agents. You can trust a single AI as much as a HN or reddit comment, but you can trust a committee of 4 as a real expert.

More generally I think testing AI by using its web search, code execution and ensembling is the missing ingredient to increased usage. We need to define the opposite of AI work - what validates it. This is hard, but once done you can trust the system and it becomes cheaper to change.
Show HN: I built a tool to learn from LLMs through Wiki-style rabbit holes
by tootyskooty | 2025-12-20 17:39:10+00:00
I've been building this for a few months now, started because I was frustrated with how I learn using LLMs. You get a wall of text that vanishes into chat history. Wikipedia's the opposite: endless rabbit holes without structure. I wanted something in between.

Periplus generates courses as connected markdown documents, tailored to your level. It asks a few questions upfront, builds a syllabus, and each concept links to related ones. Click a term you don't understand and it opens a new document side-by-side.

Heavy inspiration from Obsidian - the graph view is similar, and there's an Obsidian export if you want to keep your notes locally.

It also generates quizzes and flashcards from any document, which helps with the forgetting problem I always have with passive reading.

Stack: React, Node/Express, Postgres with pgvector, Sonnet 4.5 for generations. Graph uses D3 with a WASM-optimized many-body I made [1].

Still plenty to iron out! Would love feedback on course quality, I've mostly tested technical topics.

[1]: https://www.npmjs.com/package/d3-manybody-wasm
by reactordev | 2025-12-20 17:39:17+00:00
Just noting there’s a difference between THC in your system and THC in your blood. THC leaves the bloodstream after your high. Goes into fat cells and other areas to be broken down and processed (up to a month) later. Having it in the bloodstream after an accident means they were intoxicated at the time according to science. Whether their CB1 receptors were letting it through is another matter. I can smoke a lot of weed and not “feel high” yet I would test off the charts on this test.

For drunk drivers it’s rather easy to assess whether someone is impaired. With marijuana it’s not. So until we have a valid method of testing if someone is “too stoned to drive” we have to push back on any attempt to classify marijuana users as ineligible to drive.
by omoikane | 2025-12-20 17:39:22+00:00
> The same iterator object can't be used concurrently in different threads, even for nominally const operations such as dereferencing (internally, thread-unsafe epoch traversal is triggered)

If I understand correctly:

thread safety random access stable iterators ------------- ------------- ---------------- std::list thread-compatible no yes std::vector thread-compatible yes no std::deque thread-compatible yes no semistable::vector thread-unsafe yes yes

I think there are more times when I wanted concurrent reads and (random access OR stable iterators), than when I wanted both random access AND stable iterators but not concurrent reads. I wonder what's the intended application?
by bossyTeacher | 2025-12-20 17:39:31+00:00
> Self-hosting is more a question of responsibility I'd say. I am running a couple of SaaS products and self-host at much better performance at a fraction of the cost of running this on AWS

It is. You need to answer the question: what are the consecuences of your service being down for lets say 4 hours or some security patch isn't properly applied or you have not followed the best practices in terms of security? Many people are technically unable, lack the time or the resources to be able to confidently address that question, hence paying for someone else to do it.

Your time is money though. You are saving money but giving up time.

Like everything, it is always cheaper to do it (it being cooking at home, cleaning your home, fixing your own car, etc) yourself (if you don't include the cost of your own time doing the service you normally pay someone else for).
by tguvot | 2025-12-20 17:39:46+00:00
Joan Donoghue, who has just retired as president of the International Court of Justice (ICJ), spoke to BBC Hardtalk’s Stephen Sackur about the case brought by South Africa to the ICJ over alleged violations of the Genocide Convention by Israel.

Ms Donoghue explained that the court decided the Palestinians had a “plausible right” to be protected from genocide and that South Africa had the right to present that claim in the court.

She said that, contrary to some reporting, the court did not make a ruling on whether the claim of genocide was plausible, but it did emphasise in its order that there was a risk of irreparable harm to the Palestinian right to be protected from genocide.

https://www.bbc.com/news/av/world-middle-east-68906919
by zbentley | 2025-12-20 17:40:36+00:00
I’ve worked for banks, multiple large and small US healthcare-related companies, and businesses that didn’t use their software when they were closed for the night.

All of those places needed their backend systems to be up 24/7. The banks ran reports and cleared funds with nightly batches—hundreds of jobs a night for even small banking networks. The healthcare companies needed to receive claims and process patient updates (e.g. your provider’s EMR is updated if you die or have an emergency visit with another provider you authorized for records sharing—and no, this is not handled by SaaS EMRs in many cases) over night so that their systems were up to date when they next opened for business. The “regular” businesses closed for the night generated reports and frequently had IT staff doing migrations, or senior staff working on something at midnight due the next day (when the head of marketing is burning the midnight oil on that presentation, you don’t want to be the person explaining that she can’t do it because the file server hosting the assets is down all the time after hours).

And again, that’s the norm I’ve heard described from nearly everyone in software/IT that I know: most businesses expect (and are willing to pay for or at least insist on) 24/7 uptime for their computer systems. That seems true across the board: for big/small/open/closed-off-hours/international/single-timezone businesses alike.
by teo_zero | 2025-12-20 17:41:22+00:00
This doesn't resonate with my experience. I place the line between a warning and an error whether the operation can or can't be completed.

A connection timed out, retrying in 30 secs? That's a warning. Gave up connecting after 5 failed attempts? Now that's an error.

I don't care so much if the origin of the error is within the program, or the system, or the network. If I can't get what I'm asking for, it can't be a mere warning.
by DanHulton | 2025-12-20 17:41:24+00:00
If you're logging and reporting on ERRORs for 400s, then your error triage log is going to be full of things like a user entering a password with insufficient complexity or trying to sign up with an email address that already exists in your system.

Some of these things can be ameliorated with well-behaved UI code, but a lot cannot, and if your primary product is the API, then you're just going to have scads of ERRORs to triage where there's literally nothing you can do.

I'd argue that anything that starts with a 4 is an INFO, and if you really wanted to be through, you could set up an alert on the frequency of these errors to help you identify if there's a broad problem.
by evilsocket | 2025-12-20 17:42:15+00:00
I just meant that it was very convenient to have the firmware images there on S3, nothing else :D Many vendors make the process of even just obtaining a copy of the firmware much harder than that, so for once I was glad it has been much easier. Also being able to bindiff two adjacent versions of the same firmware is great ... all in all I was just expressing my happiness :D
by avianlyric | 2025-12-20 17:42:16+00:00
There’s a big difference between a change which modifies the languages API, and one that just modifies the implementation of the API.

Given GoLangs compatibility guarantee, any mistake in the design of a language API has to be preserved forever, and is very difficult to improve.

But implementations of the GoLang spec and language APIs are much easier to evolve. There’s nothing preventing the Go team rolling out future improvements to deal with this issue, without having to worry about long term consequences. There’s also nothing preventing other implementations of the GoLang spec choosing a different approach.
by satvikpendem | 2025-12-20 17:43:00+00:00
No, it's saving time because some things might work on one OS but not another, and then dealing with updates to each OS that might break something, or we need a new piece of software but it doesn't work on Windows for local development, et cetera, et cetera, et cetera. There are so many ways it goes wrong, I speak from personal experience.
by jandrewrogers | 2025-12-20 17:43:25+00:00
You need a clock but you can have more than one. This is an important distinction.

Arbitrating differences in relative ordering across different observer clocks is what N-temporal databases are about. In databases we usually call the basic 2-temporal case “bitemporal”. The trivial 1-temporal case (which is a quasi-global clock) is what we call “time-series”.

The complexity is that N-temporality turns time into a true N-dimensional data type. These have different behavior than the N-dimensional spatial data types that everyone is familiar with, so you can’t use e.g. quadtrees as you would in the 2-spatial case and expect it to perform well.

There are no algorithms in literature for indexing N-temporal types at scale. It is a known open problem. That’s why we don’t do it in databases except at trivial scales where you can just brute-force the problem. (The theory problem is really interesting but once you start poking at it you quickly see why no one has made any progress on it. It hurts the brain just to think about it.)
by ocdtrekkie | 2025-12-20 17:43:37+00:00
Heh I also only sprung for 32 GB of RAM this time, which is still double my 4790K's 16 GB. But I don't use Chrome so RAM doesn't get used that heavily. ;)

I think it's very telling so many people upgrading now are coming from Haswell chips, they are a legendary chip generation, and arguably the last time anyone needed a CPU upgrade short of operating system support or warranty concerns.
by reactordev | 2025-12-20 17:43:38+00:00
>The CO2 emitted by aircraft only causes about half the climate impact of aviation. The other half comes from contrails— artificial clouds that are created by soot in the engine exhaust.

Then what does that mean?

I find it strange. Clouds happen naturally. Contrails are mini clouds (literally a cloud chamber), are we saying that all those “chemtrails” are pollution?

Or are we saying the unspent fuel particulate inside that they formed around is?

This is where this bizarro science is going off the deep end for me. As any object traveling through the atmosphere at that altitude, disrupting air, is going to form condensation and cloud trails. The more moisture in the atmosphere, the more trails. Sure there’s a little bit of unspent kerosene particles but hardly enough to even be a glycerin on a well working engine.

Are we suggesting changing flight routes and wasting more fuel (which pollutes more) to protect the ground from these 0.0000001% reduction in light cloud trails? Seriously. I want to know the science behind how this plays out.

I’m all for shutting down the black exhaust engines and cleaning up how we produce thrust. I’m all for that. This argument that clouds cause pollution is just wacky.

What about wingtips. Those cause trails (though not as pronounced as the engines turning at 12,000rpm), those contain no particulates and yet, they exist. Atmospheric science can explain a lot of what you see at 30,000ft (10,000m). This all sounds like NIMBY science posturing and pseudo-science to me.
by LunaSea | 2025-12-20 17:44:36+00:00
> Also, pedantically, you can run RDS on bare metal with local NVMEs.

Only if you like your data to evaporate when the server stops.

I'm relatively sure that the processing power and memory you can buy on OVH / Hetzner / co. is larger and cheaper even if you take into account peaks in your usage patterns.
by ajross | 2025-12-20 17:44:49+00:00
Somewhat disappointing. The tl;dr is that the author uses an off-the-shelf 6502 compression library and just de-interlaces the Hi-Res framebuffer to improve spacial locality.

The reasoning behind the oddball framebuffer layout is handwaved away with "you can probably blame Woz for this" and "possibly to save a few chips on the motherboard".

Well, yes, to both. And the Apple II scan hardware is an absolute masterpiece of the era (surpassed only, IMHO, by the Disk ][ card he invented a year later). That's what we should be talking about.
by libraryofbabel | 2025-12-20 17:45:04+00:00
Thanks for articulating this position. I disagree with it, but it is similar to the position I held in late 2024. But as antirez says in TFA, things changed in 2025, and so I changed my mind ("the facts change, I change my opinions"...). LLMs and coding agents got very good about 6 months ago and myself and a lot of other seasoned engineers I respect finally starting using them seriously.

For what it's worth:

* I agree with you that LLMs probably aren't a path to AGI.

* I would add that I think we're in a big investment bubble that is going to pop, which will create a huge mess and perhaps a recession.

* I am very concerned about the effects of LLMs in wider society.

* I'm sad about the reduced prospects for talented new CS grads and other entry-level engineers in this world, although sometimes AI is just used as an excuse to paper over macroeconomic reasons for not hiring, like the end of ZIRP.

* I even agree with you that LLMs will lead to some maintenance nightmares in the industry. They amplify engineers' ability to produce code, and there a lot of bad engineers out there, as we all know: plenty of cowboys/cowgirls who will ship as much slop as they can get away with. They shipped unmaintainable mess before, they will ship three times as much now. I think we need to be very careful.

But, if you are an experienced engineer who is willing to be disciplined and careful with your AI tools, they can absolutely be a benefit to your workflow. It's not easy: you have to move up and down a ladder of how much you rely on the tool, from true vide coding for throwaway use-once helper scripts for some dev or admin task with a verifiable answer, all the way up to hand-crafting critical business logic and only using the agent to review it and to try and break your implementation.

You may still be right that they will create a lot of problems for the industry. I think the ideal situation for using AI coding agents is at a small startup where all the devs are top-notch, have many years of experience, care about their craft, and hold each other to a high standard. Very very few workplaces are that. But some are, and they will reap big benefits. Other places may indeed drown in slop, if they have a critical mass of bad engineers hammering on the AI button and no guard-rails to stop them.

This topic arouses strong reactions: in another thread, someone accused me of "magical thinking" and "AI-induced psychosis" for claiming precisely what TFA says in the first paragraph: that LLMs in 2025 aren't the stochastic parrots of 2023. And I thought I held a pretty middle of the road position on all this: I detest AI hype and I try to acknowledge the downsides as well as the benefits. I think we all need to move past the hype and the dug-in AI hate and take these tools seriously, so we can identify the serious questions amidst the noise.
by kube-system | 2025-12-20 17:45:23+00:00
Yeah, drug use is also influenced by social and economic status, which also influences driving risks. People of lower socioeconomic status drive less safe cars on less safe roads for longer commutes. This is something valid to evaluate with a drug like THC which is detectable long after use. It would be nice to see the distribution of levels detected and not just the average.
by Frostlike1417 | 2025-12-20 17:45:25+00:00
There are multiple efforts and a good number of VC working on AI DA system. DA is fundamentally a hand-crafted optimization process just like NN. I once reimplemented an EnKF in pytorch and it works amazingly fast. But our observations are so dirty and sparse. ECMWF tuned their system so well. NOAA definitely has potential being even better, but no hope any soon future IMHO.