MurphyA/hacker-news huggingface dataset:
by slow_typist | 2025-09-08 06:00:34+00:00
At least in my country the metering is done _in_ the house so my neighbour has to break and enter to tap the line behind the meter. I would probably notice well before bills would pile up. If he taps it outside, probably no one would ever notice if done right. The grid looses energy all the time. Not every kWh that goes into the network is billed in the end.

As always, it just doesn’t make an awful lot of sense to compare physical and virtual worlds. As in leaving your front door unlocked in rural areas vs not securing your remote shell access.
by pluto_modadic | 2025-09-08 06:01:04+00:00
This reminds me that in protocol buffers you can deprecate and extend field names in a backwards compatible way and it's handled semi-sensibly. At the very least, it makes you think about schema migration (of HTTP fields in this case. DB fields and class fields are different...). If you aren't using practices that make e.g. adding another enum option to state sensible (e.g. in a language or linter that requires passing interface checks, class X must provide method Y)
by c0l0 | 2025-09-08 06:01:17+00:00
I've been on AM4 for most of the past decade (and still am, in fact), and the mainboards I've personally had in use with working ECC support were:

- ASRock B450 Pro4 - ASRock B550M-ITX/ac - ASRock Fatal1ty B450 Gaming-ITX/ac - Gigabyte MC12-LE0

There's probably many others with proper ECC support. Vendor spec sheets usually hint at properly working ECC in their firmware if they mention "ECC UDIMM" support specifically.

As for CPUs, that is even easier for AM4: Everything that's not based on a APU core (there are some SKUs marketed without iGPU that just have the iGPU part of the APU disabled, such as the Ryzen 5 5500) cannot support ECC. An exception to that rule are "PRO"-series APUs, such as the Ryzen 5 PRO 5650G et al., which have an iGPU, but also support ECC. Main differences (apart from the integrated graphics) between CPU and APU SKUs is that the latter do not support PCIe 4.0 (APUs are limited to PCIe 3.0), and have a few Watts lower idle power consumption.

When I originally built the desktop PC that I still use (after a number of in-place upgrades, such as swapping out the CPU/GPU combo for an APU), I blogged about it (in German) here: https://johannes.truschnigg.info/blog/2020-03-23#0033-2020-0...

If I were to build an AM5 system today, I would look into mainboards from ASUS for proper ECC support - they seem to have it pretty much universally supported on their gear. (Actual out-of-band ECC with EDAC support on Linux, not the DDR5 "on-DIE" stuff.)
by xg15 | 2025-09-08 06:02:10+00:00
> Yet, this common-sense definition is unsatisfying if we consider that a lower-dimensional object might end up straddling a higher-dimensional space. If a line segment is rotated or bent, does that make it 2D? Or is that object forever one-dimensional, somehow retaining the memory of its original orientation and curvature?

Isn't that exactly what topological manifolds are for?

https://en.wikipedia.org/wiki/Manifold
by adrian_b | 2025-09-08 06:02:15+00:00
This is weird. I have used many ASUS MBs specified as "can run ECC and non-ECC" and this has always meant that there was an ECC enabling option in the BIOS settings, and then if the OS had an appropriate EDAC driver for the installed CPU ECC worked fine.

I am writing this message on such an ASUS MB with a Ryzen CPU and working ECC memory. You must check that you actually have a recent enough OS to know your Threadripper CPU and that you have installed any software package required for this (e.g. on Linux "edac-utils" or something with a similar name).
by raspasov | 2025-09-08 06:03:51+00:00
>> The goal of having every developer viewing the code with their own preferences just isn't that important.

Bah! So, what is more important? Is the average convenience of the herd more important? Average of the convenience, even if there was ever such a thing.

What if you really liked reading books in paper format, but were forced to read them on displays for... reasons?
by motorest | 2025-09-08 06:04:06+00:00
> To me, this article misses the mark.

Yes, I agree. The blogger shows a fundamental misunderstanding of what it means to "make invalid states unrepresentable". I'll add that the state machine example is also pretty awful. The blogger lists examples of usecases that the hypothetical implementation does not support, and the rationale to not implement it was that "this can dramatically complicate the design". Which is baffling as the scenario was based on complicating the design with "edge cases", but it's even more baffling when the blogger has an epiphany of "you need to remain flexible enough to allow some arbitrary transitions". As if the whole point was not to allow some transitions and reject all other that would be invalid.

The foreign key example takes the cake, though. Allowing non-normalized data to be stored in databases has absolutely no relation with the domain model.

I stopped reading after that point. The blog post is a waste of bandwidth.
by int_19h | 2025-09-08 06:04:43+00:00
It's an idiomatic Tcl thing. E.g. `expr` (the standard word used to evaluate infix expressions like `1+2`) does the same exact thing, handling the expansion itself and expecting the caller to use {} to ensure that a variable expansion not incorrectly treated as a bunch of operators. Similarly, when you're writing the condition for a loop, you need to use {} to delay expansion so that the loop word can do it anew for each iteration. One can argue that this is somewhat error prone, but at least there's a consistent pattern here, and once you know what it is and why it exists, it's pretty straightforward.
by gloosx | 2025-09-08 06:05:39+00:00
I would say when working with synths, the difference between 15ms and 2ms is just swing, it is noticeable but it doesn't feel wrong, just makes things more interesting.

When a drummer plays drums all the hits are off-timing 10-40ms, and it is still considered natural-sounding swing, if it is agonisingly noticeable for you – you have a quite robotic sense of rhythm, it's very subjective after all.
by jraph | 2025-09-08 06:06:44+00:00
Yep. That's what I was going to comment.

I'm not convinced, because you have to deal with invalid state in some way or another in any case.

If you have to delete some record referenced by other records using foreign keys, you'll have to handle the complexity in any case, except if this is enforced by the database, you'll have no choice than to think about this upfront, which is good. It might lead you to handle this differently, for instance by not deleting the row but mark it as deleted, or by changing the id to some "ghost" user.

If you don't do this, all the complexity of not having to deal with the inconsistencies when you are creating them will have to be encoded in your code at write time, with null or exception checks everywhere.

Constraints encodes what safe assumptions your code make to be simpler. If an assumption needs to be relaxed, it's going to be hard to change things as you'll have to update all the code, but the alternative is to make no assumption at all anywhere, which is hard too and leads to code that's more complicated than necessary.

And then what does an invalid reviewer_id mean? Was this caused by a user deletion? Or a bug somewhere? Or some corruption?

Bonus: some commenters here write that it can depend on which programming language is used, I don't think it matters at all. You'll have to handle the null or dangling values in any case, whether the language guides you for this or not.
by Ray20 | 2025-09-08 06:06:50+00:00
> I'm describing the current consensus by population experts.

These are not experts, they are deep state propagandists.

I mean, fortunately (or unfortunately), such processes have been going on for decades, and these experts have been in business for decades. So, nothing prevents us from analyzing their early models, explanations, projections, and forecasts, and comparing them with reality in order to form an opinion about the level of their expertise

> Their birth rate is already a massive problem.

Not exactly. Low birth rate itself is not a problem. What is a problem is the future consequences of low birth rate . And these consequences generally have not yet occurred, i.e. there is no problem yet.

> Koreans seem unwilling to consider more drastic measures

Yes, because there is no problem yet

> once it reaches the tipping point

Then it will become a problem and nothing will stop them from bringing in some foreign labor to fix it.

> They would need massive immigration to live there

Not that massive. Your ideas about the required amount of immigration to fix the labor shortage problem are probably formed by extrapolating Western immigration processes. But the point is that you can’t extrapolate like that. There are no obstacles to carrying out immigration tens of times more effectively than the West does.

Just to understand how irrelevant this issue is for Korea at the moment: the twentieth century was quite a turbulent time for Koreans, and now quite a lot of ethnic Koreans live outside of Korea. Many of them know the Korean language, want to move to Korea, but even with repatriation programs, this is not such an easy process. Korea has so many Koreans inside the country that they are quite reluctant to grant residence permits even to other Koreans with foreign citizenships.
by hannasm | 2025-09-08 06:07:06+00:00
This article is barely a comment on some other situation; but I've been saying this to anyone who wants listen for years.

There's nothing special about whitespace (unless you write python).

Capitalization and a bunch of other stuff in your coding convention document are usually just signs that you have poor tooling and lack of skill.

Give me a PR that satisfies the requirements and the appropriate test cases and i'll happily rewrite it to spaces only indented with curly braces on newlines and etc... as I see fit.

The hard part is the first two tasks, you can train an intern to do the third
by aredox | 2025-09-08 06:07:43+00:00
Doré, Grandville:

https://essentiels.bnf.fr/fr/article/73d641d9-bbf0-4334-ae2b...

But there has been a lot of others: https://www.polkadot.fr/content/21-les-fables-de-la-fontaine
by troupo | 2025-09-08 06:08:35+00:00
> Of course you would, as long as they meet your requirements.

Key word: "as long as they meet your requirements".

I've yet to meet an LLM that can predictably do that. Even on the same code with the same tools/prompt/rituals a few hours apart.

> AI is likely less predictable than human, doesn’t mean it isn’t helpful.

I'm struggling to see where I said they weren't helpful or that I dismissed them
by neRok | 2025-09-08 06:09:19+00:00
> I think a lot of it boils down to load profile and power delivery

You said the right words but with the wrong meaning! On Gigabyte mobo you want to increase the "CPU Vcore Loadline Calibration" and the "PWM Phase Control" settings, [see screenshot here](https://forum.level1techs.com/t/ddr4-ram-load-line-calibrati...).

When I first got my Ryzen 3900X cpu and X570 mobo in 2019, I had many issues for a long time (freezes at idle, not waking from sleep, bios loops, etc). Eventually I found that bumping up those settings to ~High (maybe even Extreme) was what was required, and things worked for 2 years or so until I got a 5950X on clearance last year.

I slotted that in to the same mobo and it worked fine, but when I was looking at HWMon etc, I noticed some strange things with the power/voltage. After some mucking about and theorising with ChatGPT (it's way quicker than googling for uncommon problems), it became apparent that the ~High LLC/power settings I was still using were no good. ChatGPT explained that my 3900X was probably a bit "crude" in relative quality, and so it needed the "stronger" power settings to keep itself in order. Then when I've swapped to 5950X, it happens to be more "refined" and thus doesn't need to be "manhandled" — and in fact, didn't like being manhandled at all!
by beAbU | 2025-09-08 06:09:26+00:00
I pay roughly €1 for every 100km I drive here in Ireland. My annual car road tax is €120 in stead of 200+. My annual service involves kicking the tires and having a peek under the car.

I bought my ev used for 16k, with a basically brand new battery (mandatory recall) still under warranty. I'm not gonna resell it, I'm probably gonna keep it till the wheels fall off.
by worldsayshi | 2025-09-08 06:10:13+00:00
Workers are over specialized. And our business domain models are rigid. We want to streamline and standardize which often means that code is written in few places.

It would be nice if we could have the cake and eat it here. With LLM:s there's certainly opportunities if we can find ways to allow both custom scripting and large scale domain constrained logic.
by Xmd5a | 2025-09-08 06:12:27+00:00
>"Here's a screenshot of text, please transcribe it"

I took pictures of a book, asked Gemini to transcribe, then to translate them and I'm now in the process of having it reproduce the whole book in latex (lot of figures). Not sure exactly what I'm doing but but I've been wondering: Should I reproduce the publishing house logo? Or invent my own? Damn, this is fun.
by jader201 | 2025-09-08 06:12:37+00:00
I still wish a better name had been coined/had stuck.

It’s hard to take the name “vibe coding” seriously, and maybe that was the whole point, but I feel like AI coding is a bit more serious than the name “vibe coding” implies.

Anyone that disagrees that it should be taken more seriously can surely at least agree that it’s likely it will cross that threshold in the not too distant future, yet we’re still going to be stuck with the silly name.
by adrian_b | 2025-09-08 06:12:52+00:00
Whether you will see ECC errors depends a lot on how much memory you have and how old it is.

A computer with 64 GB of memory is 4 times more likely to encounter memory errors than one with 16 GB of memory.

When DIMMs are new, at the usual amounts of memory for desktops, you will see at most a few errors per year, sometimes only an error after a few years. With old DIMMs, some of them will start to have frequent errors (such modules presumably had a borderline bad fabrication quality and now have become worn out, e.g. due to increased leakage leading to storing a lower amount of charge on the memory cell capacitors).

For such bad DIMMs, the frequency of errors will increase, and it may become of several errors per day, or even per hour.

For me, a very important advantage of ECC has been the ability to detect such bad memory modules (in computers that have been used for 5 years or more) and replace them before corrupting any precious data.

I also had a case with a HP laptop with ECC, where memory errors had become frequent after being stored for a long time (more than a year) in a rather humid place, which might have caused some oxidation of the SODIMM socket contacts, because removing the SODIMMs, scrubbing the sockets and reinserting the SODIMMs made disappear the errors.
by p0w3n3d | 2025-09-08 06:13:30+00:00
It's certainly better than google/bing search (non-ai). To be honest I had been observing google/bing (via duckduckgo) decline of search capabilities over recent years. I "had been" unless I stopped observing it because it went below any acceptable level. TBH the only thing I can find on them nowadays is products, and sometimes general information. All the technical articles, api links, etc. are unfindable. Among others that's why I'm holding to hackernews recently (which was the best thing I learned from my colleague, and it breaks my information bubbles). So basically I'm usually starting with ddg, then go to google, and if failed, falling back to chatgpt which is very accurate nowadays.

Example query: a keyboard stand with music (notes) stand.

-- Disclaimer--

It might be connected to the web enshittification process which has been undergoing for quite some time already.
by toofy | 2025-09-08 06:15:05+00:00
> I think everyone should give this kind of work a shot. You learn a lot about people.

absolutely. the things you learn/absorb in that kind of atmosphere are entirely different than what we learned in school social activities. you learn how to deal with coworkers having a bad day, shitbag bosses, how to differentiate if a customer is a true unempathetic dbag or just a regular person having a bad day.

and one of the most valuable lessons you learn to the absolute core, you absorb this to be one of the great truths: one nice person can take one of the worst hellfilled days of your life, and with a single snap of their fingers your day turns around. from one quick interaction with a nice person. and it happens regularly because at the end of the day, an absolute fuckton of people are kinda awesome.

the things you pick up about the world and about other people are invaluable tools that a lot of people are lacking (and it shows.)

…apparently i just entirely and verbosely over analyzed why i like to order my fries in person?

“and that my dear fellows is why it’s important to always order your milkshake in person. i now cede back any remaining time.”
by owenversteeg | 2025-09-08 06:15:22+00:00
Nuclear and solar are actually pretty competitive here at MW scale, optimistic projections for both are in the ballpark of 100 tons per MW including associated power electronics. That's to say, if Starship continues on the trajectory it's on, putting aside a few MW on Mars to operate a smelter is within the realm of possibility.

On a larger scale (GW) the answer is likely nuclear, unless we can come up with a realistic way to produce solar panels on Mars. Mass-wise, nuclear scales very well, but solar is nearly linear.

There's also some possibility we come up with a creative way to produce methane or another fuel.
by whstl | 2025-09-08 06:15:25+00:00
I said “Later interpretations of Monads”, I did not say “monads”.

Fielding’s dissertation is fine in itself. The web itself, AtomPub, OData, among others, all follow REST and HATEOAS.

Same for Monads: the laws are fine and the implementation in Haskell is fine, but meme tutorials and later implementations miss the mark.
by smokel | 2025-09-08 06:15:54+00:00
I've never understood why we still look at the plain text representation of code, and not a visualization of the code that makes more sense.

Note that, in my mind, this visualization is not automatically generated, but lovingly created by humans who wish their code to be understood by others. It is not separate from the code, as typical design documentation is, but an integral part of it, stored in metadata. Consider it an extension of variable and function naming.

There is of course "literate programming" [1], but somehow (improvements of) that never took off in larger systems.

[1] https://en.wikipedia.org/wiki/Literate_programming
by aabhay | 2025-09-08 06:15:59+00:00
I wish there were some actual stories here about tricky migrations and how they were handled, rather than defaulting to the naturally turf war framing here.

If my experience, writing code that is “future migration friendly” is one of the hallmarks of senior developer knowledge. It’s just the kind of thing that burrows into your brain, because most senior devs have seen, built, or maintained code with randomly cordoned off “WARNING NONSENSICAL THING HERE” style sections of massive codebases that are artifacts of various migration things.

For context about how we do it, we use a giant NoSQL single table design, with zero joins. All joining is handled in the application, which ends up forcing everyone to consider how to parallelize and lookahead rather than join. Additionally, any complex data is stored as row level binary blobs from a versioned schema, which also helps localize issues to a particular subtype rather than leaking it into all schemas (for example if you change what qualifies as an “update”, your “updatedAt” column doesn’t suddenly change meanings for all things.
by Shank | 2025-09-08 06:16:32+00:00
Almost all of the Enterprise/Corporate AI offerings are a significant step in cost that needs to bear actual fruit in order to be worthwhile, not to mention the compliance and security requirements most places have in order to get these things approved. We know there are use cases where AI makes sense, but we also know that there are many things that it can't do (at least right now). It makes sense that people aren't plunking down large amounts of money on this stuff, especially since the state-of-the-art so-often changes. What if you buy Claude and something new comes along, or ChatGPT gets better? It's difficult to make these purchasing decisions when products are static, and much more so when everything changes on a bi-weekly cadence.
by walaueh | 2025-09-08 06:17:24+00:00
When the Ipod launched, Apple sold "U2 Special Edition" ones that had the band's autographs etched to the back. Guess what Creative did for the launch of their Zen mp3 players (supposed iPod killers)? 10 limited edition ones autographed by CEO Sim Wong Hoo. Like "Who cares about U2 and other artistes (admittedly there were few famous ones in SG then) right? We've got a special one signed by our CEO!" The person who thought of this should have been fired and condemned to never work in marketing ever again.
by pluto_modadic | 2025-09-08 06:17:25+00:00
I've known users to type passwords in the username field. you implicitly do NOT know all secrets (e.g., a password is hashed).

secrets can also churn, so even if you did your example would require something besides an in-memory array.

and, the final point: what if your secret masking code fails on an exception, too ;)
by simonw | 2025-09-08 06:18:17+00:00
This is a common theme with LLMs (and LLM criticism).

The context: I was rushing for a train, I ran into Starbucks at the station for a coffee, I noticed they didn't have cake pops and the staff member didn't appear to know what they were.

I see three choices here:

1. Since I'm mildly curious about Starbucks and cake pop availability in the UK, I get on the train, open up my laptop and dedicate realistically a solid half hour or more to figuring out what's going on.

2. I fire off a research question at GPT-5 Thinking on my mobile phone.

3. I don't do any research at all and leave my mild curiosity unsaturated.

Realistically, I think the choices are between 2 and 3. I was never going to perform a full research project on this myself.

See also: AI-enhanced development makes me more ambitious with my projects, which I wrote in March 2023 and has aged extremely well. https://simonwillison.net/2023/Mar/27/ai-enhanced-developmen...

I do plenty of deep dive research projects myself into topics both useful and pointless - my blog is full of them!

Now I can take on even more.
by theshrike79 | 2025-09-08 06:18:23+00:00
LLM assisted coding can get you from an idea to MVP in an evening (within maybe 1 or 2 Claude 5 hour quota windows).

I've done _so_ many of these where I go "hmm, this might be useful", planned the project with gemini/chatgpt free versions to a markdown project file and then sic Claude on it while I catch up on my shows.

Within a few prompts I've got something workable and I can determine if it was a good idea or not.

Without an LLM I never would've even tried it, I have better and more urgent things to do than code a price-watcher for very niche Blu-ray seller =)
by up2isomorphism | 2025-09-08 06:18:30+00:00
Every human in NYC come with 1.5 cars attached? You are definitely in touch with the reality.

Pretty much the only people who can afford a car in NYC are those 0.1%, and no 1% is likely not enough. Rest of the vehicles are pretty much driven by the people bringing food, materials etc into the city so guys like you can write such out of touch crap.