MurphyA/hacker-news huggingface dataset:
by piltdownman | 2025-08-19 11:58:42+00:00
They're certainly not endangered. They were "Least Concern" up until the last few years but have been reclassified as "Near Threatened" due to greenfield sites turned over to land development fragmenting their habitats. The most likely place a person will see them in 2025 is flattened on a road.

Domestic gardens make up an almost insignificant percentage of their natural habitat in any case, and any sort of HOA or Estate Management scenario would likely make it a violation to rewild a garden sufficient to create an amenable hedgehog habitat.

In short, its the responsibility of land utilised for agriculture - and this is recognised by measures around Europe such as the Eco-Scheme and ACRES (Agri-Climate Rural Environment Scheme) which indirectly support the re-establishment of hedgehog populations.
by jeroenhd | 2025-08-19 12:02:32+00:00
I don't really get the hatred for XSLT. It's not the most beautiful language, I'll give you that, but it's really not as bad as people make it out to be.

I can't imagine wanting to use anything more complex than a for-each loop in XSLT. You can hack your way into doing different loops but that's like trying to implement do/while in Haskell.

Is it that I've grown too comfortable with thinking in terms of functional programming? Because the worst part of XSLT I can think of is the visual noise of closing brackets.
by aquariusDue | 2025-08-19 12:04:10+00:00
I don't have anything useful to add per se but I'd like to thank you for validating my intuition that pros and cons lists not only don't generalize as to be useful universally but also that the more "rigorous" you get with it the whole things evolves into an exercise of ridiculousness.

An example I like to give is the wood chipper. Pros it can do a lot of useful things around the yard (that you can list individually), cons it can chop your arm off. How many pros do you need to overcome that con? Though I'll admit there's a difference between "can" and "will", the latter hinging on improper use.

tl;dr I'm a bit tired with people glorifying a semi-useful cognitive device.
by tom_ | 2025-08-19 12:04:20+00:00
Another tip: don't use normal asprintf as-is, but write your own very similar helper!

1. have it free the passed-in buffer, so that you can reuse the same pointer

2. have it do step 1 after the formatting, so the old value can be a format argument

3. when getting the size of the full expansion, don't format to NULL, but do it to a temp buffer (a few KB in size) - then if the expansion is small enough, you can skip the second format into the actual buffer. Just malloc and memcpy. You know how many chars to memcpy, because that's the return value from snprintf

(Don't forget to check for errors and all that.)
by weinzierl | 2025-08-19 12:05:35+00:00
"I really doubt anyone would chose to use it for anything new these days."

Funny how went from "use it for everything" (no matter how suitable) to "don't use it for anything new" in just under two decades.

To me XML as a configuration file format never made sense. As a data exchange format it has always been contrived.

For documents, together with XSLT (using the excellent XPath) and the well thought out schema language RelaxNG it still is hard to beat in my opinion.
by criddell | 2025-08-19 12:06:49+00:00
I'm with you. I think this should be a downloadable plugin, not a standard plugin.

I kind of wish they would slow down development and just polish what is already there. They are on this treadmill where they feel the need to keep adding new features, new maintenance burdens, bloating the product in every dimension.

In a few years somebody fresh will come along with a product that's a lightweight alternative. It sucks, but that seems to be the lifecycle of this kind of thing. For now, I've turned off automatic updates on Obsidian which isn't ideal either. :(
by viridian | 2025-08-19 12:06:59+00:00
As much as I love all the maps you mentioned, and could probably sketch their layouts from memory, I think Rust and Nuketown from the call of duty series are probably better known by a wide margin. Rust has been featured in 3 different games that had a combined sales of over 2 billion dollars, but even that is small peanuts compared to Nuketown.

Nuketown has been featured in six different games, with 17 total variants of the map existing, and 8 different game modes that are Nuketown maps 24/7.
by BobbyTables2 | 2025-08-19 12:07:17+00:00
I’d argue this is one of the cursed design choices of the standard library.

Way to easy to use the returned value as the “actual length” of the written string. Sure, that was never the intent, but still…

The standard library also makes appending a formatted string to an existing one surprisingly nontrivial…

What should be a 1-liner is about 5-10 lines of code (to include error handling) and is somewhat hard to read. The “cognitive load” for basic operations shouldn’t be high…
by blueboo | 2025-08-19 12:07:24+00:00
I used Whispering routinely last year; the value + glitches and ux failures drove me to gladly pay for Superwhisper; whose rough iPhone keyboard drove me to Wispr Flow (and tried otter too); whose poor transcriptions (oh THATS why they’re fast) drove me back to Superwhisper

Still lots of quality headroom in this space. I’ll def revisit whispering
by tyleo | 2025-08-19 12:07:50+00:00
Sounds like, “Apple and Amazon will miss AI because they aren’t following the herd mentality and doing what everyone else does.”

They are doing something different and it might fail but I’m glad different large tech companies are trying different strategies.

I for one am a fan of Apple’s local-first approach. If they can get it to work it aligns more with my ideals. If it fails, at least they kept things interesting.
by rapnie | 2025-08-19 12:08:27+00:00
Yes, this is the real issue, and it is a pity so many comments delve into json vs. xml and not on the title stating that "google is killing the open web". A new stage of the web is forming where Big Tech AI isn't just chatbots, but matured to offer fully operational end-to-end services. All AI-operated and served, up to tailor-made domain-specific UI. Then the corporations, winners in their market, don't have a need for open web anymore to slurp data from. All open web data absorbed, now fresh human creativity flows in exclusively via these service, directly feeding the AI systems.
by brookst | 2025-08-19 12:08:54+00:00
Respectfully, I think you missed the point of GP, as you are agreeing with them.

Being a technology follower is 100% compatible with being a user experience innovator.

Like you said, Nintendo saw that consumers didn’t really want more polygons/second, they wanted fun. Similarly, Apple saw Rio and other MP3 players and realized that consumers didn’t want a 800 128kbps mp3s in their pocket, they wanted a stylish way to listen to music on the go.

Sure, the Wii controllers and iPod clickwheel were novel and innovative user experiences and big hits, but they weren’t heavy lifting technically.
by aldonius | 2025-08-19 12:09:00+00:00
You'll find that when the number of columns is a multiple of 6 you'll get obvious columns in the dots, and if it's +1 or -1 modulo 6 the columns become diagonal stripes (the process sort of continues for ±2 and at ±3 it's pretty broken down).

It's a fairly straightforward number theory result that every prime > 3 is congruent to ±1 modulo 6 so that's probably what you're seeing. (Can't be +2 or +4 because that's divisible by 2, can't be +3 because that's divisible by 3, leaving +1 and +5 aka -1.)
by IndrekR | 2025-08-19 12:09:10+00:00
Used to develop readers based on similar UHF chips (868 MHz in EU). They were quite expensive compared to printed bar codes those were replacing. Also large. With (folded) antennas we are still talking about 40*10 mm minimum for the label. You can not use them on metal surfaces. Readers nearby will interfere as it works by EM wave backscattering, unlike NFC which is essentially a transformer (with electric field intentionally supressed usually). I think it still is a solution looking for problem. QR codes are cheap and NFC (14 MHz) readers are everywhere.
by yladiz | 2025-08-19 12:09:55+00:00
You cannot say that users as a whole accept cookies/tracking as it’s heavily region dependent. At a previous job we implemented a cookie consent banner and tracked statistics of accept/reject, and while some regions were very high (95+%), Germany was particularly low (70%), so it’s hard to paint a picture in a general way.

Regardless, I’m not sure if you’re right that it’s contentious about what is allowed with respect to GDPR here. My understanding is that it is illegal to do what’s here (not just in Austria but in the GDPR directly), and the companies that do this are doing it in bad faith (and/or following in the footsteps of Meta), and in reality what they’re doing is banking on the fact that going through the courts takes a long time. We wouldn’t even be having this discussion if these companies just put ads without tracking/selling user data, which, as mentioned, is fine.
by bombcar | 2025-08-19 12:10:17+00:00
If I can go the other way - one thing the USA has that Europe, at least, doesn’t - the ADA.

US businesses are basically all wheelchair accessible - easily, too. Most sidewalks have curb cuts at street crossings. Ramps are commonplace.

This is NOT the cause in Europe, and not only in the historic old buildings.

Even using a stroller is noticeably different; I can’t imagine being in a wheelchair in some cities.
by TYPE_FASTER | 2025-08-19 12:10:17+00:00
Yup. Content that may be read-only from a user's perspective might get updated by internal services. When those updates don't need to be reflected immediately, a CDN or similar works fine for delivering the content to a user.

When changes to data are important, a library like Hollow can be pretty magical. Your internal data model is always up to date across all your compute instances, and scaling up horizontally doesn't require additional data/infrastructure work.

We were processing a lot of data with different requirements: big data processed by a pipeline - NoSQL, financial/audit/transactional - relational, changes every 24hrs or so but has to be delivered to the browse fast - CDN, low latency - Redis, no latency - Hollow.

Of course there are tradeoffs between keeping a centralized database in memory (Redis) and distributing the data in memory on each instance (Hollow). There could be cases where Hollow hasn't sync'd yet, so the data could be different across compute instances. In our case, it didn't matter for the data we kept in Hollow.
by xmcqdpt2 | 2025-08-19 12:10:24+00:00
It's really not hard to reproduce,

- vt1 locks lock1

- vt1 suspends on lock2

- n VTs attempt to initialize a singleton that requires lock1, so they all suspend within pinning class init.

- you release lock2.

- all platform threads are pinned, so vt1 can't run and you hang forever.

There is no lock inversion and progress would have been entirely possible with platform threads, even with just one.

It happened on our system because we have parallel streams that all access the same singleton at the same time, which is fairly easy to do (you have lots of parallelism, you have a map operation that needs a value from your singleton and that's it.)

The solution is to never suspend while in a static block, but it's hard to generalize because... any method may suspend, and there is no way to know that it will because of colourlessness. And also the singleton pattern is common, often involve accessing expensive resources or IO (and suspending) and doing so with class init lock is recommended and common,

https://shipilev.net/blog/2014/safe-public-construction/#_sa...

In our case this involves scala's object {} which is a singleton defined using class init. Kotlin probably works the same way.
by ndriscoll | 2025-08-19 12:10:49+00:00
Are you talking about the billboard hot 100 (singles)? The billboard 200 (albums) seems like what you might expect. e.g. I believe Led Zeppelin never had singles but they had 2 number one albums in 1970.

https://en.wikipedia.org/wiki/List_of_Billboard_200_number-o...
by jeroenhd | 2025-08-19 12:11:38+00:00
XSLT is a terrible tool for that job. RDF combined with something like SPARQL is much closer to that, and makes for one of the greatest knowledge processing tools nobody ever uses.

XSLT is designed to work on XML while HTML documents are almost always SGML-based. The semantics don't work the same and applying XML engines on HTML often breaks things in weird and unexpected ways. basic HTML parsing rules like "a <head> tag doesn't need to be closed and can simply be auto-closed by a <body>" will seriously confuse XML engines. To effectively use XSLT to extract information from the web, you'd first need to turn HTML into XML.
by ants_everywhere | 2025-08-19 12:11:54+00:00
> in 2023, Google renames their chatbot from Bard to [Gemini][gemini] thereby completely eclipsing the 4-year-old independent protocol by the same name; this is possibly coincidental, which would make it the only unintentional attack on the open web by Google in the last 15 or so years —and at this point even that is doubtful;

So the theory is that Google chose the name of its AI -- easily one of the hardest and most revenue-impacting naming decisions it's made in years -- in order to create a name collision with a protocol nobody's heard of that's trying to revive GOPHER?

This is so obviously false that you have to re-read the rest of the article with the knowledge that the author is misunderstanding what they're seeing.

Much of what the author describes is increasing security and not wanting to work with XML.
by devn0ll | 2025-08-19 12:12:12+00:00
These days I use the automated pricing of Uber, and groceries based on the person and/or time of day, what apps you have on your phone, etc as the reason why we DEFINITELY want more privacy.

Without it, we are being manipulated because of all the stuff these parasites now know about us. All in the name of "enhancing the customer experience".. #puke
by roenxi | 2025-08-19 12:12:13+00:00
Looking at the list, what actually jumps out at me is there is probably a gap in the world of standards for a JSON-based replacement to RSS. Looking it up someone came up with the idea of https://www.jsonfeed.org/ and hopefully it gains traction.

In hindsight, it is hard to imagine a JSON-based RSS-style standard struggling to catch. The first project every aspiring JS developer would be doing is how to add a feed to their website.
by brookst | 2025-08-19 12:12:44+00:00
That’s a pretty spectacular way to miss the point.

The implication that these “fanatics” are misguided because they fail to prioritize “cutting edge” over every other purchase criteria tells me you haven’t been around the block enough to realize that cutting edge is not a positive product attribute. Believe me, I have storage bins full of obsolete cutting edge products that I got less joy from than many boring old appliances I use every day.
by lelanthran | 2025-08-19 12:13:09+00:00
> The goal absolutely IS to select columns from a table.

No. The goal is to have an output column $FOO, where $FOO is meaningful and might not even be in the database in the first place.

> my goal is not to select created_at, my goal is to select Foo's created_at.

Then your goal is to get a value out of a specific table, namely `Foo`, presumably because the end-user wants to see some value in the results.

The end-user getting the value has neither an interest in nor knowledge of your schema. `Foo.created_at` is no more meaningful in the result sets than an unadorned `created_at`.

For this specific example, the end-user might want a column in the output called `age` (if it came from an inventory table`, or `duration` (if it came from a metrics tables), or perhaps `expiry` (if it is a table containing perishable stock). These are all a column in a Foo table, but the request that caused you to write the query in the first place does not mention table at all.

You get their requirement as either `age`, `duration`, `expiry` or similar. That is what you are starting from: "a need for a specific piece of data". You are not starting from "a need from a specific table", because the information needed is coming from someone who neither knows nor cares what your schema looks like.
by moomoo11 | 2025-08-19 12:13:17+00:00
No. It’s a pita to organize and most information I consume is dynamic.

Articles from 5 years ago are mostly useless today. Maybe for someone else they might be valuable, but I’m not a librarian not interested in collecting garbage. Very few things are worth collecting, and I enjoy collections. (Not hoarding which is what bookmarking is)

As for cooking I make my own recipes from things I find online.
by graemep | 2025-08-19 12:13:22+00:00
> Also, the tweet is only about protecting American people. I personally still don’t feel very safe about it and keep my backups local, thanks.

Its a deal between the British and American governments, that only protects Americans from British spying. its very specific.

Nothing about the UK, or the rest of the world, or the details of the deal. Apple might have made a lot of concessions to either or both governments. It needs a lot of trust in both governments (something many people will lack) to trust this.
Show HN: AICMaker – Generate Origina Characters for Games and Animation
by qianjin1979 | 2025-08-19 12:14:04+00:00
Hi HN,

I’m excited to launch AICMaker (AI Original Character Maker), a tool we built to solve a persistent problem in AI image generation: character consistency.

If you've ever tried to create a story or game concept with an AI, you know the frustration. You generate a great character, but you can't get the same character from different angles, in different outfits, or with different expressions. You end up with a collection of similar-looking strangers, not a consistent persona.

AICMaker fixes this. Our tool lets you create a "character core" and then generate that exact same original character in any pose, style, or scene while maintaining their core identity (face, body type, etc.). It's designed for indie game developers, writers, animators, and TTRPG enthusiasts who need reliable visual assets.

How it works (the tech stack):

We fine-tune a core model on specific techniques for identity preservation.

The process involves creating a custom LoRA (Low-Rank Adaptation) or a similar concept for your character, but wrapped in a simple UI—no need to understand the underlying ML concepts.

You start with a few base images (or generate one from a text prompt), and the system learns the character's identity to ensure all future renders are consistent.

Why we built it: As game developers ourselves, we found existing tools either too technically complex (requiring local SD setup and manual LoRA training) or too simplistic (failing at true consistency). We wanted a web-based, accessible tool that just works.

Try it out / Examples: You can create a character and generate a few images for free.

Link: https://aiocmaker.com/

Example Gallery: [Link to an example gallery if you have one]

We'd love your feedback. This is very much an MVP, and the insights from this community are invaluable. What are your biggest pain points with generative AI for character design? Does our approach make sense?

Looking forward to your thoughts and questions.
Show HN: Harbor Guard – Manage and Scan Container Images (Open Source)
by rakeda | 2025-08-19 12:14:24+00:00
Hey HN, I’m Brandon, developer for Harbor Guard, an open-source container security platform that unifies multiple scanning tools into a single intuitive dashboard.

Over the past month, I got tired of juggling different CLI scanners (Trivy, Grype, Syft, Dockle, etc.), for my work in DevSecOps. Stitching results together started becoming a hassle and my organization started heavily focusing on container security. It was messy, repetitive, and hard to keep track of active vulnerabilities.

So I built Harbor Guard, a modern, Next.js app that runs all major open-source container scanners, stores the results, and turns them into interactive visualizations you can actually use.

What Harbor Guard does:

- Runs 6 major tools: Trivy, Grype, Syft, Dockle, OSV Scanner, and Dive

- Unified dashboard: View and compare results without jumping between CLIs

- Historical tracking: Persist and compare scans across versions

- Advanced visualization: Interactive scatterplots, severity-based grouping, and layer-by-layer analysis

- Report export: Grab JSON or full ZIP packages for compliance

- API access: REST endpoints for automation and integrations

- Docker-native: Run it with a single docker run -p 3000:3000 …

Personally, I needed a tool that made vulnerability data easier to explore visually and had some fun putting something together.

Try it out

GitHub: https://github.com/HarborGuard/HarborGuard

Live Demo: https://demo.harborguard.co

It’s free, open source, and I’d love feedback, bug reports, or feature ideas. Contributions welcome too.

Thanks, Brandon
by klohto | 2025-08-19 12:14:26+00:00
> Electromagnetic Radiation: HHS in partnership with other Departments and federal agencies will undertake a study on electromagnetic radiation and health research to identify gaps in knowledge, including on new technologies to ensure safety and efficacy.

This is absolutely fine by me. There is nothing hyperbolic about the statement and it's quite literally just a research request. How did it got turned into this headline?
by Firehawke | 2025-08-19 12:14:32+00:00
This is exactly the same for me. I definitely like being able to switch between a tablet/e-reader for regular reading and using my phone when I'm stuck waiting in line or transport.

I don't specifically need the physical book; space-wise it'd be difficult to keep all of the books I'd like to own. Just not enough space. That means that DRM becomes a major concern; I have absolutely no issue with stripping DRM for my own use whether it's a game, movie, music, or book.
by mjmas | 2025-08-19 12:15:01+00:00
Pluhging in an LLM breaks it when those features require it to be worded a certain way. Agree that it shouldn't, but that seems to be the way it is often done.

For example, I tried Google's Gemini a while ago instead of Google Assistant on my phone and it was unable to do basic things like 'open the Signal app' and would instead go on a big tangent about how it can't open the Signal app for me, but that I could open the Signal app by finding it on my home screen or if I don't have it installed I can download it from the play store etc.
by fantasy4z | 2025-08-19 12:15:04+00:00
I can somewhat relate as the creator of fy_iceworld (if you believe). The one who commented on the Rock Paper Shotgun article.

The quote from the NY Times article, "it allows amateurs to add imagination with limited resources." is exactly what I was feeling at that time. I knew nothing about programming, had minimal art skills, but was able to create CS maps.

It makes me nostalgic and wonder, "What if I started making a mod or a game today?" I really miss those golden days of modding.
by Klaster_1 | 2025-08-19 12:15:08+00:00
For real, I've been using FreeCAD for small hobby stuff for 7 years and still often find extremely frustrating UX issues in features new to me, stuff that wouldn't pass QA (I'm a FE dev and know a thing or two about that). When I proceeded to understand why overconstraints are an error and not a warning, I immediately discovered a multiple page thread on FreeCAD forums with regulars gaslighting how everything was exactly as needed because "performance", despite this being a deliberate choice, not a solver limitation. This gatekeeping attitude is really off-putting, the project needs a UX expert and a good community manager to root out that power user crap.