MurphyA/hacker-news huggingface dataset:
by YeGoblynQueenne | 2025-12-22 13:18:17+00:00
Well then that's not nitpicking, it's cherry-picking, trying to fit your claim into a specific but arbitrary period. You start by saying "medieval European art", then you reduce that to "between about 500 and 1300". Why between 500 and 1300 specifically? What happened to the other ~200 years?

It doesn't matter. There was plenty of good art between 500 and 1300 too. I mentioned the Rouen cathedral, whose west front, the one with all the statues of saints and the hyper-detailed architecture wikipedia tells me was "first built in the 12th century, entirely redone in the 13th century, and then totally redone again at the end of the 14th century, each time become more lavishly decorated" (https://en.wikipedia.org/wiki/Rouen_Cathedral#West_front). That's just one example that fits your spec, that I have personally visited. As I say I'm no expert.

Here's another: the sixth-century basilica of San Vitale in Ravenna, Italy, with some of the most famous mosaics ever, including those depicting emperor Justinian, his wife, empress Theodora, and his court, which again Wikipedia tells me were completed in 547.

With a cursory look online I can also find a bunch of other famous art pieces from your chosen period that I haven't seen myself, like e.g.the Diptych of the Virgin and Child Enthroned and the Crucifixion (https://www.artic.edu/artworks/16241/diptych-of-the-virgin-a...) which however is very typical of the ecclesiastical art I've seen in many museums and art galleries I've visited.

So I do think your claim is a bit exaggerated, even if you try to limit the time period carefully. There was always good art made in Europe.

Btw, I'm Greek so I'm not offended by your claim about Europeans, in case there was a lingering doubt about that. The Greek middle ages (i.e. Byzantium) are usually not included in the European middle ages but Byzantium produced absolutely gobsmacking art throughout the medieval so leaving it out is also a bit arbitrary (but that's not your fault).
by xorcist | 2025-12-22 13:18:20+00:00
That's the thing though. Most European states (inside and outside the EU) consider the US their strategic ally, and they will support whatever it takes to make that strategy work. Policy at international level is made for strategic reasons, and you have to look at what countries do, not at what they say.

The strongest state, economically and military, can get away with a lot others wouldn't, since everyone else will want to be on their good side. The new US administration has clearly shifted in terms of what they say, but not yet much in terms of what they do. Maybe Ukraine will be the exception here.
by danw1979 | 2025-12-22 13:19:07+00:00
The gotcha will be the “poor” round trip efficiency, in comparison to other storage technologies.

It’d be interesting to see if there’s any loss of efficiency with increasing storage duration too (relating to boil-off of the cryogenic side of the storage ?) because this would impact the economics of charging too.

I just get the feeling lithium/sodium ion for electricity and big piles of sand/dirt for heat are going to more-or-less win the energy storage race.
by gbuk2013 | 2025-12-22 13:19:41+00:00
I was absolutely only speaking “in general”. Even with 20 years in the industry my experience can only be anecdotal given that I only had time to work with fewer than 10 companies. :)

That said, I suspect a bad technical decision may have people and communication causes and not fixing the problem once it is apparent is definitely rooted in these.

Technical debt and leadership vacuum are both interesting and intertwined hard problems.
by maciejzj | 2025-12-22 13:19:51+00:00
From the perspective of someone in their late 20s, the timing of this article feels quite off when entering 2026. The reality has become far different from the gist of what is presented here.

Career paths and opportunities have been getting broken and changing so much in recent years that I find it hard to plan anything. I don't even know what kind of "goal" is sustainable, let alone what the path towards it is.

The only sensible career that seems to offer a steady trajectory is medicine. Apart from that, my most successful peers were the ones that followed immediate money and speed-ran into owning some kind of real estate, which is a game changer. Besides that, people try to do as many side hustles as possible and diversify their income to save as much as they can and brace for a possible recession. I find it hard to apply any of these 8 steps in such volatile reality.
by mrweasel | 2025-12-22 13:19:56+00:00
Great, now I need an extra large bit set.

I really don't see the point of this, it won't take a year for that bit to appear on shelves at the local hardware store if people need it. I have bit sets containing ever imaginable "security" bit, security torx are pretty much standard in set now. So are the weird flathead with the middle cut out. You almost can't buy an iFixIt kit without Apples stupid pentalob bit. This is just another bit to add to the collection, BMW will achieve nothing by introducing it.

The design is neat though, using their logo at the head of the screw is sort of cute. Completely unnecessary, but cute.
Show HN: SiteIQ–Automated security tests for LLM APIs(prompt inj,jailbreaks,DoS)
by sastrophy | 2025-12-22 13:20:12+00:00
Hi HN,

I'm an 11th grader learning cybersecurity. I built SiteIQ, an open-source security testing tool that includes 36 automated tests specifically for LLM-powered APIs.

Why this matters: Most security scanners focus on traditional web vulnerabilities (SQLi, XSS). But if you're shipping an LLM-powered feature, you need to test for prompt injection, jailbreaks, and LLM-specific DoS attacks. I couldn't find a good open-source tool for this, so I built one.

What it tests:

- Prompt Injection – Direct, indirect, RAG poisoning
- Jailbreaks – DAN-style, persona continuation, "grandma exploit", fictional framing
- Encoding Bypass – Base64, ROT13, nested encodings, custom ciphers
- Refusal Suppression – Attacks that block the model from saying "I cannot"
- Hallucination Induction – Tries to get fake library names/CVEs (package hallucination attacks)
- ASCII Art Jailbreaks – Visual text that bypasses keyword filters
- Recursive Prompt DoS – Quine-style prompts, Fibonacci expansion, tree generation
- System Prompt Leakage – 12 extraction techniques
- Cross-Tenant Leakage – Session confusion, memory probing
- Plus: PII handling, emotional manipulation, Unicode/homoglyphs, multi-turn attacks, tool abuse...

The tool also does traditional security/SEO/GEO testing, but I think the LLM module is most useful given how many teams are shipping AI features without proper adversarial testing.

GitHub: https://github.com/sastrophy/siteiq

Feedback welcome – especially on attack vectors I'm missing.
by GeneralMayhem | 2025-12-22 13:20:26+00:00
Same here. I've worked on one project that used code generation to implement a DSL, but that would have been the same in any implementation language, it was basically transpiring. And protobufs, of course, but again, that's true in all languages.

The only thing I can think of that Go uses a lot of generation for that other languages have other solutions for is mocks. But in many languages the solution is "write the mocks by hand", so that's hardly fair.
by NiloCK | 2025-12-22 13:20:37+00:00
Wow that was a garbage comment!

My introduction to this type of model measuring came from an interview where the repeatedly hammered-home point was that Sonnet 4.0 nailed a gigantic refactor (conversion of a large legacy asp.net or similar into react server-side components or similar) in a loop whose runtime was some large number of hours. I mistakenly attributed the same framing here.
by sheepscreek | 2025-12-22 13:20:46+00:00
I’m actively doing that for a fun side project - systematically rewriting SQLite in Rust. The goal is to preserve 100% compatibility, quirks and all. First I got it to run the native test harness, and now it’s basically doing TDD by itself. Have to say, with regular check-ins, it works quite well.

Note: I’m using the $20 plan for this! With codex-5.2-medium most of the time (previously codex-5.1-max-medium). For my work projects, Gemini 3 and Antigravity Claude Opus 4.5 are doing the heavy lifting at the moment, which frees up codex :) I usually have it running constantly in a second tab.

The only way I can now justify Pro is if I am developing multiple parallel projects with codex alone. But that isn’t the case for me. I am happier having a mix of agents to work with.
by Youden | 2025-12-22 13:21:22+00:00
Isn't it relatively trivial to remove one of these by epoxying something to it or using a drill or dremel to modify it in some way (e.g. dremel a slot that a standard flathead can turn, or drill and use a screw remover)?

Or is the purpose less to prevent people from removing the screw and more tamper evidence?

Even in that case, with a photo or impression of the screw head, an unauthorized key/bit could be produced with with 3D printing (JLC3DP offers it cheap) or EDM.
by d4nyll | 2025-12-22 13:22:43+00:00
Working on the metro makes a boring commute fly by - blink and you are at your destination already. 30 minutes each way is 1 hour a day. Over the entire year it's 250+ hours or 9 whole 16-hour days.

That's why whenever I move to a new city, I typically look to live somewhere that's at the end of the metro line. It meant in the morning commute I can _always_ get a seat.

That was one of the reasons I liked living in Hammersmith when I worked in Shoreditch/Old Street - it's at the end of the Hammersmith and City Line and I don't have to change lines. There's also the add bonus that the line is above ground until Paddington which meant I have more than enough time to load up any tabs I need to use before the Internet blackout.

In Hong Kong I worked at Central and lived in Tsuen Wan. Literally from one end of the line to the other. This had the added bonus that I was also guaranteed a seat on the way home as well.
Show HN: I analyzed 15k user-submitted rents to map NYC's seasonal pricing
by rorcodes | 2025-12-22 13:23:26+00:00
Last week I had a post go viral in r/nyc for a free rental advice tool I made and 15,000 redditors in new york submitted their rent data. I crunched the numbers and created a free seasonal rent analysis showing the outcomes. Doing all of this as a hobby project:

TLDR: The best time of year to sign a lease is right now:

Cheapest: December (-10% vs average)
Most expensive: July (+10% vs average)
Total swing: ~20% difference peak to trough

That's roughly $8000 saved each year on a typical NYC apartment just from timing alone.

I'd been hearing this for years but never actually seen it in data form before. Explanations from what I understand: People don't move during the holidays. Vacancy rates climb to 4.5% in winter vs under 2% in summer. Landlords get desperate—72-78% offer concessions (free months, waived fees) in winter vs almost none in peak season.

Meanwhile, June-August is chaos. College grads flood the market, families move when school's out, apartments go in hours, and landlords have zero incentive to negotiate.

Real estate agents are pretty clued onto this and anyone who has tried to sign a winter lease has probably been asked to sign it for 18 months instead of 12 so that it ends in the summer (this happened to me when I moved here too!)

I made a little plot showing the covid impact on the data too.

Hope this is interesting to some of you! Happy to answer any questions or add any additional features/diagrams that people might find useful.

Interesting secondary finding: negotiation power correlates inversely with vacancy rates (obvious in hindsight, but the magnitude surprised me—85% negotiation success in Jan vs 15% in Jul).

Tool is free, this is a hobby project of mine, no sign up required etc.

Hope this is interesting to some of you! Happy to answer any questions or add any additional features/diagrams that people might find useful.
by mschuster91 | 2025-12-22 13:23:55+00:00
Now if a consequence of that could be that one (as an author of a piece of not-yet-debianized software) can have the possibility to decently build Debian packages out of their own repository and, once the package is qualified to be included in Debian, trivially get the publish process working, that would be a godsend.

At the moment, it is nothing but pain if one is not already accustomed and used to building Debian packages to even get a local build of a package working.
by sombragris | 2025-12-22 13:24:17+00:00
> I do know it's rare to open an existing .docx in LibreOffice and have it look right; who knows what it looks like in Word after I've edited and saved it.

This is not true except as hyperbole. Most docx open and let themselves edit quite well in LibreOffice Writer, and they look right.

However, you still have a point. There are always some cases when the compatibility is not good, and the only way to use said docx files would be in MS Word.
by baobun | 2025-12-22 13:24:20+00:00
> Manjaro

That's your problem right there. EndeavourOS is also a beginner-friendly Arch derivative but less breaky.

> Wifi to work ootb

I definitely feel you on that one, it's just the luck of the draw sometimes... If you haven't considered it, in some laptops the wifi module is a replacable mPCIe or m2 module and if that's the case, more compatible replacements shouldn't be hard to find for cheap or salvaged from broken laptops.
by mschuster91 | 2025-12-22 13:26:08+00:00
> Isn't that part of why LiFePO was supposed to take off tho? Sure the energy density is a bit lower but theoretically they are cheaper to produce per kWh and don't have any of the toxicity/rarity issues of other lithium designs...

LFP cells have long since taken off. Tesla has been making vehicles with LFP battery packs for half a decade now.
by gethly | 2025-12-22 13:26:09+00:00
> Also think about returning lambda's. Should it look like this?
>
> fn foo(n i32) (i32 i32) {}

It should be

fn foo(n i32, m i32) (i32, i32) {}

It will also allow future implementation of named returns, like in Go:

fn foo(n i32) (a i32, b i32) {}

As for semicolon, that is needed only if you have inline expression:

for (;;;) {}

Or inline block, like in Go:

if foo := a + b; foo > c {}
by m0llusk | 2025-12-22 13:26:28+00:00
It isn't only companies, it is a mass social movement. Anyone with basic coding experience can download some basic learning apparatus and start feeding it material. The latest LLMs make it extremely easy to compose code that scrapes internet sites, so only the most minimal skills are required. Because everything is "AI" now aspiring young people are encouraged to do this in order to gain experience so they can get jobs and a careers in the new AI driven economy.
by suspended_state | 2025-12-22 13:27:27+00:00
I think ungrouping make sense if you consider reverse parentheses as a syntactic construct added to the language, and not replacing the existing parentheses.

For instance, using "] e [" as the notation for reverse parentheses around expression e, the second line showing reverse parenthese simplification, third line showing the
grouping after parsing, and the fourth line using postfix notation:

A + B * (C + D) * (E + F)

=> A + B * (C + D) * (E + F)

=> (A + (B * (C + D) * (E + F)))

=> A B C D + E F + * * +

A + ] B * (C + D) [ * (E + F)

=> A + B * C + D * (E + F)

=> ((A + (B * C)) + (D * (E + F)))

=> A B C * + D E F * + +

So what ungrouping would mean is to undo the grouping done by regular parentheses.

However, this is not what is proposed later in the article.

Possibilities include reversing the priority inside the reverse parentheses, or lowering the priority wrt the rest of the expression.
by ragebol | 2025-12-22 13:28:15+00:00
The article mentions
> If the worst happens and the dome is punctured, 2,000 tonnes of CO2 will enter the atmosphere. That’s equivalent to the emissions of about 15 round-trip flights between New York and London on a Boeing 777. “It’s negligible compared to the emissions of a coal plant,” Spadacini says. People will also need to stay back 70 meters or more until the air clears, he says.

So: 70 meters
by legacynl | 2025-12-22 13:28:55+00:00
lol. Where is all this anti-psytrance hate coming from?

Are you people actually that childish that you don't understand the concept of taste, and that everyones' is different? People who have like different music than you aren't stupid. Electronic musicians aren't bad musicians.

You know that nice feeling you get when you listen to music from your preferred composer/artist/genre? Other people feel exactly the same, but with different kinds of music. Some people even love the thing that you hate! wow! Who knew? Except for anybody above the age of 5.

TLDR; just because you dont like Indian food, doesn't make Indian food bad. It's the same for music or other things that are dependent on taste.
by cons0le | 2025-12-22 13:29:13+00:00
bruh, we're never making it to space as a society if you can't stop getting hung up on pointless shit like this

who friggen cares? why can the president diddle kids, but a random internet user has to have perfect grammar to be taken seriously?

the poster of this article could probably not care less if you "take them seriously"

i actually interact with ideas, not grammar. Especially in a fun personal blog post like this
by lb1lf | 2025-12-22 13:29:30+00:00
Oh, he works for the county, but happened to live just up the hill from us.

There's so much old stuff around here that he is basically being called out to perform an assessment every time anyone wishes to build anything.

Where we live now, for instance, there are a handful of burial mounds from God knows when (all plundered long ago), lots of old charcoal pits, a couple of late stone age fish traps in the lake in a corner of our farm.

To exaggerate just a little - where we could build our home was basically dictated by where we could find a spot noone had claimed thousands of years ago...
by bgwalter | 2025-12-22 13:29:45+00:00
It is nice that he speaks about some of the downsides as well.

In many respects 2025 was a lost year for programming. People speak about tools, setups and prompts instead of algorithms, applications and architecture.

People who are not convinced are forced to speak against the new bureaucratic madness in the same way that they are forced to speak against EU ChatControl.

I think 2025 was less productive, certainly for open source, except that enthusiasts now pay the Anthropic tax (to use the term that was previously used for Windows being preinstalled on machines).
by s_ting765 | 2025-12-22 13:30:40+00:00
I use the same exact trick from the source the article mentions.

I call it `temu` anubis. https://github.com/rhee876527/expert-octo-robot/blob/f28e48f...

Jokes aside, the whole web seems to be trending towards some kind of wall (pay, login, app etc.) and this ultimately sucks for the open internet.
Show HN: Split Image – split images into grids
by msdg2024 | 2025-12-22 13:30:59+00:00
I built a simple web tool that splits images into grid layouts (2×2, 3×3, 4×4, or custom sizes up to 20×20).

Everything runs client-side using HTML5 Canvas, so images never leave the browser. No server uploads, no accounts, no tracking.

I originally made it for creating Instagram grid posts, but it's also useful for puzzles, multi-panel prints, and splitting large images for tiled printing.

Live at: https://split-image.org/

Would appreciate any feedback on the UX or feature suggestions.
by oliverpaddock | 2025-12-22 13:31:46+00:00
A few months ago I outlined a spec for a new modern programming language inspired by LilyPond I call Capo. I haven’t done anything with it yet but the idea is that it compiles to MNX, which is the (still in development) successor to MusicXML, becoming a language that could be used as a scripting language in any program that supports MNX or as a standalone text-based music tool. Thought this group might find it interesting: https://github.com/Capo-Lang/capo
by anonym29 | 2025-12-22 13:32:10+00:00
>They just want an easy way to connect with their friends and family

You'd be surprised how many people in your life can be introduced to secure messaging apps like Signal (which is still centralized, so not perfect, but a big step in the right direction compared to Whatsapp, Facebook, etc) by YOU refusing to use any other communication apps, and helping them learn how to install and use Signal.
by 56J8XhH7voFRwPR | 2025-12-22 13:32:21+00:00
I'm curious in this instance how the system was activated. According to literature "activation happens manually via a dedicated button (cockpit/cabin) or automatically if the system detects pilot incapacitation (no inputs, emergency descent after depressurization, or Level Mode active too long)"

In this scenario I wonder which it was.
by TimorousBestie | 2025-12-22 13:33:31+00:00
> What other choice is there?

This argument is a moral event horizon and the problem should be resolved by other means.

Once one decides to ration healthcare based on estimated remaining QALY, the same logic says we shouldn’t subsidize, e.g., healthcare for people who suffer from cystic fibrosis, or HIV, or aggressive cancers, or. . .

Or if you’d rather, there are millions of children without healthcare in the United states. Would you forgo your access to healthcare for them?

> $365 billion of it went for end-of-life care. [1]

That’s all? Musk alone is worth twice that, and who knows how many QALYs he has left but it can’t be that many. He seems pretty miserable most of the time.
by justacrow | 2025-12-22 13:33:33+00:00
You'd hope there is room for a lot of stuff in between as well. I tried searching for some of yhe more unknown artists I follow (and have bought stuff from!) but didn't see any clear way to filter it to Spotify/music metadata only. Restricting to metadata+other cuts it down somewhat but it's still 100s of results for most topics.

Will be interesting to see what's there and not once the actual music torrents come up, should make it easier to search.
by crazygringo | 2025-12-22 13:33:46+00:00
> And that's a questionable assertion for which you've provided no support.

You're the one who's provided zero evidence that the Del key is used with any appreciable frequency at all. And the fact that Apple doesn't even bother to include one strongly suggests it's rarely used. You're literally the first person I've ever heard even complain about it. Since you've started this topic, if you want evidence from someone else, you really ought to start by providing your own.

> You seriously think people Backspace old E-mails away? They Backspace unwanted files away? They Backspace selected areas away in Photoshop? OK.

Um, yes? If you insist on calling it Backspace, the key that deletes the previous character is also the key that deletes e-mails in Mail.app, that deletes files in Finder (with Cmd), and that deletes the selected area in Photoshop on a Mac. Which is why it also makes sense that it's called Delete on a Mac. It's all extremely consistent and logical.

> Except most people don't find that at all, because it's not marked on the keyboard.

And most people don't need to, because they never want to use it anyways, even when it's a dedicated key wasting spacing on the keyboard.

> And again, you're asserting that a secret, two-keyed, two-handed hotkey is easier than pressing a clearly marked button?

Yes, because the Del position on most PC laptops is awkwardly far away and smaller than Backspace. If you find two hands or two keys difficult, are capital letters with Shift hard for you?

> And there is no separate function row on Apple laptops.

I don't know what that means? Apple laptops certainly have a function row, which is where the Eject button you're talking about has always been. And where the Eject key was is where the TouchID button is now.

> ... easily reachable.

Eject/TouchID is one of the two farthest keys on the keyboard, the polar opposite of "easily reachable". There is literally no position less reachable on the keyboard. It's not ergonomic to make it something used in regular text editing, if you're one of the few people who utilize forward delete.