MurphyA/hacker-news huggingface dataset:
by HeyLaughingBoy | 2025-08-19 21:03:45+00:00
It's a nice thought but the reality is that you'll be killing animals no matter what. I have a 48" riding mower and live in a rural area. At first I was really worried about all the field mice, voles, frogs, etc., that I saw running away from the mower. After a while, I realized that no matter how hard I tried, a certain number of them were just going to die. I tend to let my lawn grow fairly tall before cutting, and it's a mix of grasses, clovers, wildflowers and other plants that just grow naturally around here. The downside is that a lot of small animals live in it. I only remember running over one bunny so far, but who knows how many I might not have seen.

At least it's not fawns. Baby deer seem to be a magnet for combines harvesting corn.
by happymellon | 2025-08-19 21:04:06+00:00
It is quite annoying that functionality just changes on products I buy. I hate applying updates because rarely are they an improvement. Sometimes it's just reduced functionality

https://www.sammyfans.com/2025/04/16/samsung-explains-why-bl...

Or sometimes it's destructive. Postman update removes all your stuff if you refuse to create account

https://news.ycombinator.com/item?id=37792690
by wuhhh | 2025-08-19 21:04:09+00:00
Thanks for calling that out, I had not got as far as installing the browser so had no idea they were default favourites / shortcuts. Seems like that telemetry report has given a couple of browser vendors the kick they needed to reduce initial connections. I wonder how much of an effect this stuff has on how snappy it feels to actually open these applications. In my dock I currently have FF and FF nightly, Chrome, Ungoogled Chrome, Arc and Safari. Ungoogled loads in the blink of an eye, the rest are all shades of sluggish. I guess this is the price of having a few extensions and “quality of life” features :shrug:
by syntonym2 | 2025-08-19 21:05:01+00:00
> The multipart streaming workload is inherently expensive.

Streaming workload is not inherently expensive. The main work is to bring the bytes of the files to the network card as quick as possible, and nearly no computation needs to be performed.

> The cost of generating boundaries and constructing headers scales with request count and payload size.

The only computation necessary to generate boundaries is to ensure that the chosen boundary does not occur in the content, and it seems that the code does not actually check this, but generates a random UUID4. Boundaries and headers are per-file and could be cached, so they don't scale with the number of requests or payload size.
by rickdeckard | 2025-08-19 21:05:17+00:00
> Given that simple truth, the only "expressive" claim that the copyright holder could make would be that "there should be an ad of some sort here."

Or he steers away from that and states "my program places an Ad here, removing this operation modifies my work", making not the Ad itself part of the work but the process (and outcome?) of an Ad being placed there...

I do hope there's a better legal conclusion the court can take here. If I am legally required to execute arbitrary code on my machine as part of some openly accessible content, I expect a clear contract to be agreed upon...
by lwansbrough | 2025-08-19 21:05:24+00:00
I live in Vancouver. People do not live normally here lmao. I pay $2300 for 430sqft in a city where the median household income is $82,000.

I’m surprised you chose Vancouver for your argument. Are you aware this is one of the worst housing markets in North America for exactly the same reason as NYC?

The one thing BC is doing correctly right now is getting rid of a lot of the market controls and introducing a lot more ways to build new housing, without any explicit focus on “affordable housing” (because that’s a tar pit.) These changes (by a social-forward party like the NDP no less) are what are easing pressure on the market, though it is still deeply unaffordable.
by popalchemist | 2025-08-19 21:05:34+00:00
Interesting link, thanks.

Perhaps it is true that one ideology can be more wholesome than another, but it is definitely true that no ideology is without its poison --

An ideology is an incomplete mythology; only a mythology is capable of orienting us toward all facets of life, as life intrinsically and inextricably involves a mysterious aspect -- the domain of all that which we don't and may not ever understand. Ideologies reduce the territory (of reality; of lived experience) to a map which excludes that.
by pulvinar | 2025-08-19 21:05:34+00:00
>Maybe if Mac had got their shit together with the keyboard (swapped ctrl and super key)

The command key has always been where it is. And it works quite nicely there, being under your left thumb, allowing you to type common commands from rest position in one stroke.

The Windows/super key came 10 years later, the swapping being Microsoft's choice.
by bcrosby95 | 2025-08-19 21:05:41+00:00
This website has always somewhat been about trends. Before AI it was the metaverse. Crypto before that. NoSQL before that. Rails before that. Arguably there's always the undercurrent of the cult of personality of PG. ...

I'm sure I've missed some things, I've taken more than one hiatus.

Nuance usually cannot be well conveyed in a blog post. Someone is always selling something. When something exists long enough the bullshit behind it is eventually revealed. Reality is messy and there's always bullshit hiding somewhere.

It doesn't mean HN is useless. I use it as a bellweather to see what other people are putting their attention on. I don't pay attention to AI other than what's on here. I mostly follow my interests, which outside my dayjob, is currently concurrency. But I don't write about it.

Ultimately the place to become a better programmer is behind a keyboard learning what works, what doesn't, where it does, where it doesn't, and why or why not. It's difficult to convey all the nuance in every decision which means most people never actually do it. Any post is dripping with assumptions. In my mind nearly any decision could be justified and would be surprised to find a place that actually attempts to teach these.

Rather than consuming media you're probably better off putting it out there and letting people tell you all the ways you're "wrong" (because they love to do that). Somewhat paradoxically I don't really follow my own advice, but that's humans for you.
by romanmokie | 2025-08-19 21:05:56+00:00
I’ve tried a bunch of projects that never worked. So every time I saw “I made $100k with ChatGPT,” I’d lose my mind.

The only thing that worked for me was YouTube. I ran channels with ElevenLabs voices, until I realized the plan I needed cost over $1300. That’s insane.

So I thought… what if I build my own TTS with similar quality?

I found some open-source models on GitHub, rented powerful GPUs on Google Cloud (NVIDIA T4), and after months of training, I got it sounding just like ElevenLabs.

At first, it was just for me. But YouTube got too saturated. So I built a landing page. Posted it.

Now I’ve got 7000 users.
by obvious_sock | 2025-08-19 21:05:57+00:00
They're being contrarian and pedantic for the sake of being contrarian and pedantic. No, DNSSEC doesn't protect anything the user cares about because it protects IP addresses and the user doesn't care about IP addresses. Yes, DNSSEC protects the user because it blocks one vector by which they can be redirected to a phishing site.
by thruflo | 2025-08-19 21:06:00+00:00
PubSub and LiveView do go a long way. However, broadcast isn't sync and LiveView isn't appropriate for all applications.

Phoenix recently added Phoenix.Sync [0], a sync engine library explicitly designed [1] to address this. In combination with a front-end library like TanStack DB [2] it goes much further towards giving you a Figma/Linear-style sync engine out of the box [3].

[0] https://hexdocs.pm/phoenix_sync [1] https://www.youtube.com/watch?v=4IWShnVuRCg [2] https://electric-sql.com/blog/2025/07/29/local-first-sync-wi... [3] https://electric-sql.com/demos/burn

Disclaimer: Electric founder. Linking to my own talk / post / demo.
by stackskipton | 2025-08-19 21:06:02+00:00
>also you should be improving docs, if they are not clear, make them clearer

I've written the docs with a tons review and feedback, this saying comes to mind: "Nothing is foolproof to a sufficiently talented fool"

There are no more sysadmins at most companies, it's just desktop support and maybe Office365 admin who was desktop support but got promoted because they were elite ClickOps. Powershell/Terraform, that's for those DevOps people over there and they want nothing to do with us.
by marksomnian | 2025-08-19 21:06:11+00:00
If I were a CodeRabbit customer, I'd still be pretty concerned after reading that.

How can CodeRabbit be certain that the GitHub App key was not exfiltrated and used to sign malicious tokens for customer repos (or even used for that in-situ)? I'm not sure if GitHub supports restricting the source IPs of API requests, but if it does, it'd be a trivial mitigation - and one that is absent from the blog post.

The claim that "no malicious activity occurred" implies that they audited the activities of every repo that used Rubocop (or any other potential unsandboxed tool) from the point that support was added for it until the point that the vulnerability was fixed. That's a big claim.

And why only publish this now, when the Kudelski article makes it to the top of HN, over six months after it was disclosed to them?
by troupo | 2025-08-19 21:06:29+00:00
1. Chrome telemetry underreports a lot of use cases

2. They have a semi-internal document https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpS... that explicitly states: small usage percentage doesn't mean you can safely remove a feature

--- start quote ---

As a general rule of thumb, 0.1% of PageVisits (1 in 1000) is large, while 0.001% is considered small but non-trivial. Anything below about 0.00001% (1 in 10 million) is generally considered trivial.

There are around 771 billion web pages viewed in Chrome every month (not counting other Chromium-based browsers). So seriously breaking even 0.0001% still results in someone being frustrated every 3 seconds, and so not to be taken lightly!

--- end quote ---

3. Any feature removal on the web has to be a) given thorough thought and investigation which we haven't seen. Library of congress apparently uses XSLT and Chrome devs couldn't care less
by rhodeon | 2025-08-19 21:06:59+00:00
I use a Samsung device which unforunately doesn't have the app lock feature.

But it does have a "secure folder" which is more or less what you mean by "spaces", I guess.

The downside of the secure folder against normal app locking is that the apps are no longer seamlessly integrated with the launcher and other apps. It's definitely more secure but is ultimately overkill for my needs.
by hansvm | 2025-08-19 21:07:25+00:00
Semantically it's just a table from instruction location to branch probability. Some nuances exist in:

- Table overflow mitigation: multi-leveled tables, not wasting space on 100% predicted branches, etc

- Table eviction: Rolling counts are actually impossible without space consumption; do you have space wasted, periodic flushing, exponential moving averages, etc

- Table initialization: When do you start caring about a branch (and wasting table space), how conservative are the initial parameters, etc

- Table overflow: What do you do when a branch doesn't fit in the table but should

As a rule of thumb, no extra information/context is used for branch prediction. If a program over the course of a few thousand instructions hits a branch X% of the time, then X will be the branch prediction. If you have context you want to use to influence the prediction, you need to manifest that context as additional lines of assembly the predictor can use in its lookup table.

As another rule of thumb, if the hot path has more than a few thousand branches (on modern architectures, often just a few thousand <100% branches (you want the assembly to generate the jump-if-not-equal in the right direction for that architecture though, else you'll get a 100% misprediction rate instead)) then you'll hit slow paths -- multi-leveled search, mispredicted branches, etc.

It's reasonably interesting, and given that it's hardware it's definitely clever, but it's not _that_ clever from a software perspective. Is there anything in particular you're curious about?
by dmoy | 2025-08-19 21:07:44+00:00
There's a bunch of ways it works. There's a tradeoff between hardware cost and accuracy. Sometimes it's static, sometimes there's a counter of varying size (1 bit, 2 bit, etc). It can get a lot more complicated.

The basic branch predictors are very cheap, and often good enough (90%+ accuracy).

Patterson & Hennessy goes into a bunch of detail.
by vanous | 2025-08-19 21:08:25+00:00
Glad you find it useful. Below is an example script to demonstrate the concept. It is awesomely powerful. In vim, select some text and do this:

:'<,'>! ./example.py #!/bin/env python3 #:'<,'>! ./example.py # ← this is how to use it import sys data = sys.stdin.readlines() for l in data: l = l.replace("a", "e").rstrip() print(l)
by hinkley | 2025-08-19 21:09:44+00:00
I've seen people react so instinctively to tap-out signals both in martial arts and sometimes outside of it that I've often wondered if you could fight dirty in a real fight by tapping out and then clocking them or at least breaking a hold during that instant where they start to back off.

I think I have used it successfully both in chiropractic and physical therapy contexts. The thing with really top-shelf pain is that if you're not screaming you can't even talk at all. But your hands still work.

These sorts of little reflexive physical communications are super effective.
by jjk166 | 2025-08-19 21:09:52+00:00
> Isn’t tracking AI usage too difficult?

> Tracking was a challenge for human developers too, yet companies managed it when capitalization mattered.

---

> Historically, that has been difficult because the cost of developer tools could not be allocated with this level of precision.

> The blind spot is that most accounting teams have not considered developer tool costs in this way because, in the past, they were used across all phases of a project and could not be allocated directly.

> The current habit of treating all AI agent costs as overhead is a carryover from a time when tool usage could not be measured and allocated. That era is over.
by nikcub | 2025-08-19 21:10:10+00:00
You can't inspect everything without creating a huge friction on trade. Australia is well known for it's tight borders - not just for security but for quarantine as well. It only inspects ~5% of containers and ~80% of interceptions are driven by intelligence.

The later is how you solve this. The stolen goods trade described in the article is likely centred around a few key networks that could be taken down with resourcing intelligence and law enforcement.

The article itself states that the UK has failed to arrest any top-level members. Cut the head off and you'll see the pull factor of street-level thefts removed, or at least disrupted.
by em-bee | 2025-08-19 21:10:21+00:00
i just built a website in XSLT and implementing some form of client side include in XSLT is not easier than doing the same in javascript. while i agree with you that client side include is sorely missing in HTML, XSLT is not the answer to that problem. anyone who doesn't want to use javascript to implement client-side include, won't want to use XSLT either.
by HeyLaughingBoy | 2025-08-19 21:10:29+00:00
I would love to hear more about this if you have information online anywhere.

I gave up on having an electric mower any time soon since I have a riding mower and a garden tractor that simply won't die. I really don't want to buy something new if I can keep repairing old stuff, no matter how annoying it gets.

However, I am interested in building an electric UTV in large part because it would be quieter than my Honda Foreman.
by LarMachinarum | 2025-08-19 21:11:19+00:00
Am I the only one who, after reading the title, had to think of the funny classic "Forklift driver Klaus" short vid (which, with its very own kind of humour, shows WHY forklifts require training)?

* For those who wouldn't know it: https://www.youtube.com/watch?v=TJYOkZz6Dck
by rkomorn | 2025-08-19 21:11:23+00:00
Ads are part of "the website". They don't just magically show up (unrelated malware aside). They're there because the people running the site want ads there. They're content the website wants you to see. They're just not the part of the content you want.

> By your logic, I should be forced to run arbitrary code on my private property. Is that correct?

I was going to say "no, obviously not", but actually, if you want to consume the content you're trying to get? Yes. That is the implicit contract for consuming web content (regardless of how aware the website is about the quality of the ads its users end up getting).

Your choice should be "I don't want these ads/this code, no thanks for the content."

And you're right: websites that don't want users with ad blockers can themselves deny access, and if ad blockers explicitly announce themselves so that the website can make that decision, great. That'd be the fair thing, right?

My actual take on this has more nuance than I'd care to fit into a HN comment (of course).

I'm not dogmatically "pro ads". I've worked at ad-supported places and I plan / hope I never do again. I think the current web browsing experience is a nightmare (ads, clickbait, content specifically made longer to fit more ads and/or increase presence). It all sucks. I'm also not absolving all the people publishing sites who would disown third-party ads like "oh well WE don't pick what's displayed" from their responsibilities.

Ultimately, though, ads is how (nearly all) websites get paid, and just as I want to get paid for my work, I think I should pay others for theirs (or at least not benefit from their work if I don't want to pay). I don't try to get around paywalls, I don't try to get around sites that think my browser isn't giving them enough latitude. I just walk away. No one's forcing me to load their ads against my will.
by grinich | 2025-08-19 21:12:27+00:00
I started a startup to fix this exact problem integrating and configuring SSO/SAML.[0]

We launched here on HN 5 years ago[1] and today power SSO for OpenAI, Cursor, Vercel, and a thousand other apps. We also found the initial configuration step to be painful for users, so we built a self-serve wizard that enables enterprise admins to fix issues.[2]

It's still crazy how much complexity there is with enterprise identity systems and managing the user lifecycle for big orgs. It's like the whole thing is made of weird edge cases and even moreso when you add SCIM, RBAC, MFA, etc etc.

(If anyone reading this also loves suffering at the intersection of IAM and developer tools, we are hiring! Email in my profile :))

[0] https://workos.com

[1] https://news.ycombinator.com/item?id=22607402

[2] https://workos.com/admin-portal
by _DeadFred_ | 2025-08-19 21:12:35+00:00
You mean the globalization and technology implemented by CEOs to raise their salary, sorry I mean their stock based compensation?

But you are right. Changing CEO compensation to be based on short term stock gains SHURELY will result in them perusing long term health policies for companies like re-investing profits into the company and not pursue short term stock manipulation policies like ordering the use company funds to repurchase stock (in effect ordering company funds be used to increase the CEOs comp value).

Totally a healthy, sustainable way to run our economy.
by thruflo | 2025-08-19 21:12:36+00:00
Just to say if you're interested in this kind of tech and are in the Bay Area, Sync Conf [0] just announced [1] its initial speaker lineup today and Arushi Bandi from Figma is one of the speakers.

[0]: https://syncconf.dev [1]: https://x.com/sync_conf/status/1957818840777122293
by delta_p_delta_x | 2025-08-19 21:12:45+00:00
> I do wonder how branch prediction actually works in the CPU, predicting which branch to take also seems like it should be expensive

There are a few hardware algorithms that are vendor-dependent. The earliest branch predictors were two-bit saturating counters that moved between four states of 'strongly taken', 'weakly taken', 'weakly not taken', 'strongly not taken', and the state change depended on the eventual computed result of the branch.

Newer branch predictors are stuff like two-level adaptive branch predictors that are a hardware `std::unordered_map` of branch instruction addresses to the above-mentioned saturating counters; this remembers the result of the last n (where n is the size of the map) branch instructions.

Ryzen CPUs contain perceptron branch predictors that are basically hardware neural networks—not far from LLMs.
by troupo | 2025-08-19 21:13:31+00:00
E.g. Google said in their document https://docs.google.com/document/d/1RC-pBBvsazYfCNNUSkPqAVpS...

--- start quote ---

As a general rule of thumb, 0.1% of PageVisits (1 in 1000) is large, while 0.001% is considered small but non-trivial. Anything below about 0.00001% (1 in 10 million) is generally considered trivial. There are around 771 billion web pages viewed in Chrome every month (not counting other Chromium-based browsers). So seriously breaking even 0.0001% still results in someone being frustrated every 3 seconds, and so not to be taken lightly!

--- end quote ---

Read the full doc. They even give examples when they couldn't remove a feature impacting just 0.0000008% of web views.
by articsputnik | 2025-08-19 21:14:00+00:00
It's a distraction free typewriter (https://www.ssp.sh/brain/distract-free-typewriter/). That particular model is a MicroJournal Rev. 2 with a Raspberry Pi Zero 2 in it.

Check it out here: https://github.com/unkyulee/micro-journal/blob/main/micro-jo...
by gpderetta | 2025-08-19 21:14:27+00:00
If I need the lifetime of an object to outlive it's presence in the map then I use boost intrusive or simply a map of (smart) pointers.

For me it is usually when I need a multi indexed map where I use a fast map of pointers for the fast access and unordered_map both to keep the object alive and as a secondary access key.

Really I should use boost intrusive or boost multiindex, but these days I value the implementation simplicity in many cases, even if I have to keep the indices in sync myself
by fakedang | 2025-08-19 21:14:29+00:00
> We accept our faults, and yet we still strive to build a better world.

Or do you? There's a significant fraction of America that is clear-cut evidence of the contrary. Your statement alone is a blatant display of misplaced American exceptionalism.

> I’m always partial to the genuine winner who gave an actual shit.

Might want to broaden your scope a bit outside your country then. Check out the following map fyi: https://brilliantmaps.com/threat-to-peace/ Most foreign citizens actively disagree with your assumptions. And since that map is now a bit dated, we ought to add Canada and Denmark to the list too.

Again, I'm nowhere asserting that China and Russia are models to aspire to. But calling today's America as the shining beacon of democracy and capitalism that every nation should aspire to is a bit of a farce. Especially given that your richest and best are secretly seeking citizenship in European nations.
by techcode | 2025-08-19 21:14:37+00:00
Not sure it's just those EU funds.

As Serbian/Dutch with wife from Croatia - I can definitely say that prices didn't rise only in Croatia.

Basically same % rise in (non-EU) Serbia, and The Netherlands.

Possibly elsewhere too - but NL/CRO/SRB is where were have family and spend enough time to really know.
by jedberg | 2025-08-19 21:15:26+00:00
> and it's worth calling out that the SSO tax has mostly nothing to do with technology or with support costs

I'm surprised this is at the top. My experience, and the experience of nearly all the commenters below, is that SSO is by far the biggest support burden they have.

SSO costs extra because it costs extra to support them. Market segmentation is a nice side effect though.