MurphyA/hacker-news huggingface dataset:
by andai | 2026-02-18 14:02:41+00:00
https://en.wiktionary.org/wiki/morg

Morg doesn't seem to be a word in English (though it is in Irish!), but it sounds like it should be.

This is one aspect of AI I will miss, if we ever figure out how to make it go away. The delightful chaos. It invented a word here, without even meaning to.

For example, I vibe coded a QWOP clone the other day, and instead of working human legs, it gave me helicopter legs. You can't walk, but if you mash the keyboard, your legs function as a helicopter and you can fly through the sky.

That obviously wasn't intentional! But it was wonderful. I fear that in a few years, AI will be good enough to give me legs that don't fly like a helicopter. I think we will have lost something special at that point.

When I program manually, I am very good at programming bugs. If I'm trying to make something reliable, that's terrible. But if I'm trying to make a computer do something nobody even realized it can do... making it do things you weren't expecting is the only reliable way to do that.

So I've been working on a way to reintroduce bugs mechanically, by mutating the AST. The fundamental idea is sound -- most of my bugs come from "stuff I obviously meant to type, but didn't" -- but it needs a bit more work. Right now it just produces nonsense even I wouldn't come up with :)

I currently have "mess up the file". The next 2 phases would be "in a way so that it still compiles", and "in a way so that it doesn't (immediately) crash at runtime", (since the whole point is "it still runs, but it does something weird!"). More research needed :)
by pseudohadamard | 2026-02-18 14:03:05+00:00
It's also possible to run an economy on empty for a long, long time provided there's a war on. Look at Germany, who literally ran the country on empty throughout all of WWII, books like Adam Tooze's "Wages of Destruction" cover this in great detail. There was a saying in the last few years, "enjoy the war, the peace will be terrible", and it was, because once you took the wartime tourniquet off all the toxins flooded your body. It wasn't until the Marshall Plan that the bare subsistence life was slowly eradicated.

Now, can you see anyone giving Putin's kleptocracy a few trillion dollars to rebuild Рашка? The Marshall Plan rebuilt Germany because the US realised that without that as the economic powerhouse of Europe the place would be a basket case in need of US support for decades, but when you're just a gas station masquerading as a country (McCain) no-one's going to bail you out except insofar as it keeps the gas flowing, and if you look at places like Nigeria you don't need much to keep the gas flowing.
Show HN: DayTap – A privacy-first dead man's switch iOS app
by mitch292 | 2026-02-18 14:04:03+00:00
Yes this was largely made with Claude Code's assistance (I go into that in the blog), but it was not just an afternoon's throwaway work. Hopefully the blog still has some interesting tidbits.

Some direct links
- iOS download: https://apps.apple.com/app/daytap-daily-check-in/id675825790...
- Landing page: https://daytap.app
Show HN: I built a fuse box for microservices
by rodrigorcs | 2026-02-18 14:04:04+00:00
https://www.openfuse.io

Hey HN! I'm Rodrigo, I run distributed systems across a few countries. I built Openfuse because of something that kept bugging me about how we all do circuit breakers.

If you're running 20 instances of a service and Stripe starts returning 500s, each instance discovers that independently. Instance 1 trips its breaker after 5 failures. Instance 14 just got recycled and hasn't seen any yet. Instance 7 is in half-open, probing a service you already know is dead. For some window of time, part of your fleet is protecting itself and part of it is still hammering a dead dependency and timing out, and all you can do is watch.

Libraries can't fix this. Opossum, Resilience4j, Polly are great at the pattern, but they make per-instance decisions with per-instance state. Your circuit breakers don't talk to each other.

Openfuse is a centralized control plane. It aggregates failure metrics from every instance in your fleet and makes the trip decision based on the full picture. When the breaker opens, every instance knows at the same time.

It's a few lines of code:

const result = await openfuse.breaker('stripe').protect(
() => chargeCustomer(payload)
);

The SDK is open source, anyone can see exactly what runs inside their services.

The other thing I couldn't let go of: when you get paged at 3am, you shouldn't have to find logs across 15 services to figure out what's broken. Openfuse gives you one dashboard showing every breaker state across your fleet: what's healthy, what's degraded, what tripped and when.
And, you shouldn't need a deploy to act. You can open a breaker from the dashboard and every instance stops calling that dependency immediately. Planned maintenance window at 3am? Open beforehand. Fix confirmed? Close it instantly. Thresholds need adjusting? Change them in the dashboard, takes effect across your fleet in seconds. No PRs, no CI, no config files.

It has a decent free tier for trying it out, then $99/mo for most teams, $399/mo with higher throughput and some enterprise features. Solo founder, early stage, being upfront.

Would love to hear from people who've fought cascading failures in production. What am I missing?
by K0balt | 2026-02-18 14:04:40+00:00
This is because the vast majority of white collar activity in a large corporation produces no direct economic value.

Making it easier/better just means more/higher quality “worthless” work is performed. The incentives in the not-directly -productive parts of organizations are to keep busy and maintain a stream of signals of productivity. For this , AI just raises the bar. The 25% of the work that -is- important to producing economic value just gets reduced to 15%.

The workforce in large orgs that is most AI adjacent is already idling along in terms of production of direct economic value. Making them 10x more productive in nonproductive work will not impact critical metrics in a short timeframe.

It’s worth noting that these “not directly productive” activities actually can (and often do) produce value, eventually. Things like brand identity, culture, and meta-innovation, vision (search-space) are intangibles that present as cost centers but can prove invaluable in longer timescales if done right.
by AMARCOVECCHIO99 | 2026-02-18 14:04:50+00:00
I've been building with AI coding tools for the past year and kept noticing the same patterns in the code they generate: API routes with zero error handling, catch blocks that just do `catch (e) {}`, database queries inside loops, imports of packages that don't exist on npm, no rate limiting anywhere.

None of it breaks locally. Tests pass, types check, everything looks fine. But these are the kinds of things that blow up in production, and AI assistants produce them consistently.

So I built prodlint. It's a linter tuned specifically for patterns AI gets wrong. `npx prodlint` in any JS/TS project gives you a 0-100 score across security, reliability, performance, and "AI quality" (stuff like TODO placeholders, hallucinated imports, inconsistent naming from copy-pasting different AI outputs).

27 rules right now. Some examples:

- SQL injection via string concatenation (AI loves template literals in queries)
- dangerouslySetInnerHTML without sanitization
- Packages that don't actually exist on npm (AI hallucinates names constantly)
- .findMany() with no LIMIT
- Missing auth on API routes

Also runs as an MCP server (`npx prodlint-mcp`) so your AI editor can use it while writing code. And there's a GitHub Action that posts scores on PRs.

I ran it on my own production app and it flagged 8 critical issues across 175 files that I'd missed during review.

175 files in ~600ms, zero config, 22kb on npm. MIT licensed.

What production issues do you keep seeing in AI-generated code? Always looking for new rules to add.

https://prodlint.com
by yoavm | 2026-02-18 14:04:50+00:00
The torrents are coming directly from Anna's Archive torrents list generator, which suggests their torrents based on how rare their content is. There's currently 177TB of data that is only seeded by 4 computers around the world, which I personally find worrisome.

People seem to be very concerned, but putting aside the legal risks (which I accept - don't use this if you're in one of the ~10 countries it could get you in troubles for), I don't really get it. The idea is to support Anna's Archive. If you do not trust the project, why support it? Levin is meant for people that want to support Anna's Archive, and my assumption was that this implies some kind of trust in their torrents.

Edit: just adding that "finding the list of what you want to seed and vetting that list yourself" is extremely not practical and not won't really help anyone. Torrents work because we're all seeding the same torrents. If I'd seed a torrent of my 5 favorite books and you seed a torrent of your 5 books, our torrents will forever have 1 seeder each. And good luck manually vetting all the files in one AA torrent. I am planning to let people manually add/remove torrents from Levin, but I highly suspect it will be used by very, very few.
by codethief | 2026-02-18 14:05:14+00:00
> AdAway (in F-Droid) can block with /etc/hosts (no VPN involved)

lifts head

> if you have root

Sigh. :)

Sure, on LineageOS back in the day I used to edit /etc/hosts by hand. On GrapheneOS I no longer have root, though (unless I compile it myself), which generally I think is a good idea, weren't it for Linux's absolutely abysmal access control system that requires you to be root for almost everything.
by ethbr1 | 2026-02-18 14:05:17+00:00
Alternative take, in light of upthread -- Salesforce, SAP, et al. are positioned to be the biggest beneficiaries of this.

Because their product is actually two things: (1) a UI/app & (2) a highly curated data model.

My imagined future... they just stop building (1), or invest much less in it, and focus on (2).

If they can build a compelling data foundation (ingest / processing / storage / exposing) + do much less work to still cover 80% of UI functionality + offload the remaining 20% of work onto customers, that looks defensible financially and strategically.

There's a ton of feature requests that are driven by a few customers. Aka the "You're using it wrong. We don't care, we want it to do X" cases

There are very few VP+'s out there that would take on strategic data integrity risk in exchange for anything, and as new SaaS code quality likely goes down (lets be honest) the imprimatur of a "known name" on the data side becomes more important.
by vrighter | 2026-02-18 14:06:22+00:00
Tell me you've never written any python without telling me you've never written any python...

Those are both syntactically valid lines of code. (it's actually one of python's many warts). They are not ambiguous in any way. one is a number, the other is a tuple. They return something of a completely different type.

My example will unambiguously NOT give an error because they are standard conforming. Which you would have noticed had you actually took 5 seconds to try typing them in the repl.
by DamonHD | 2026-02-18 14:06:23+00:00
You do realise that the last 2 times the GB grid had major glitches (since 2000) part of the issue was thermal (nuke, gas, coal) plants going down in big chunks beyond the overall system capacity to cope.

1) The system works as a system

2) Big single plants going down (eg 'tripping') are more hazadous to grid stability than smaller individual generators

3) All generators have to be 'backed up' by spare capacity, especially big thermal

4) Yes this stuff is priced in, especially as in some grids some of the time it is over 50% of the generation
by bilekas | 2026-02-18 14:07:03+00:00
> The only way to outlaw Meta’s dangerous and egregious behavior is to pass legislation, like the Kids Online Safety Act, which will hold their feet to the fire and force them to protect children and teens.

This is no surprise he lied, that's just what businesses do, their bottom line for the shareholders is all that matters. But the answer is NOT the "Kids Online Safety Act"

Legislation will definitely help things, regulations more so, but that safety act is not the answer ie Age Verification. So rewrite it, do your job, use the researchers and experts available to you to bring a bill proposal that doesn't have special interest groups or lobbyists behind it and then we can see some improvement.
by andai | 2026-02-18 14:07:25+00:00
I think you made the right diagnosis with "cringe" :) They forgot to turn down the cringe slider!

Have you played with the pre-RLHF models? I think Davinci is still online, though probably not for much longer.

They're a lot harder to work with (they don't have instruct training, so they just generate text similar to what you give them, rather than obeying commands). But they seem almost immune to the problem of mode collapse. They'll happily generate horrifying outputs for you. They're unsanitized. What cringe is in there, is authentic! Raw cringe, straight from Common Crawl.

It's a lot of fun to play with. It's also very strange, because it seems like there should be a lot more interest in them, for several reasons (they're the most language-modely of the language models, and ideal for research and experiments, to say nothing of censorship, exploring alternative approaches to LLM development, etc.), and it seems like nobody is talking about them or doing anything with them.
by fastasucan | 2026-02-18 14:07:31+00:00
I emailed HR and asked what to do to best ask for leave in case of a future event (serious illness with a family member, I just wanted to be one step ahead and make sure I did everything right even in the state of grief).

HR wouldn't tell me what would be the best and most correct course of action, the only thing that they said was that it was my responsibility as an employee to find out. Well, what did they think I was doing.
by ptx | 2026-02-18 14:07:36+00:00
> this new method is possible to work because FreeBSD switched from Heimdal Kerberos implementation to MIT Kerberos in FreeBSD 15.0-RELEASE … and I am really glad that FreeBSD finally did it.

What was the problem with Heimdal? The FreeBSD wiki says they used an old version, but why not upgrade to a newer version of Heimdal instead of switching to an entirely different implementation?
by codethief | 2026-02-18 14:08:00+00:00
So uh… why not just use Firefox directly?

Yes, I already do that but:
- Vanadium is said to be safer.
- The reality is that websites often don't work in Firefox anymore.
- I want to be able to block social media at certain times. (Today I often circumvent such blocking in FF by just opening Vanadium…)
by AnishhGiri | 2026-02-18 14:08:17+00:00
Publishing a TypeScript package correctly requires configuring a surprising number of things: dual ESM/CJS builds, .d.ts generation, getting the exports field right, type-level tests, changelogs, npm publish. I was managing separate configs for tsup, publint, attw, tsd, and changesets across multiple packages and it was getting unsustainable.

tspub combines all of this into one tool:

- `tspub build` esbuild-based ESM + CJS builds with automatic .d.ts generation. Handles __dirname/__filename shims for CJS, conditional .d.cts/.d.mts for dual packages.

- `tspub check` 70-rule linter for your package before you publish. Catches things like CJS/ESM format mismatches (file contents don't match what exports claims), wrong "types" condition ordering (TypeScript silently resolves `any`), leaked sensitive files, excessive `any` in declarations, and more. Also has `--fix` for safe auto-fixes.

- `tspub test-types` runs type level tests (.test-d.ts files) to verify your public API types are correct.

- `tspub publish` version bump, changelog generation, npm publish, and GitHub release creation in one command.

- `tspub init` scaffolds a correctly configured package from scratch.

The checker also works as a web playground you can check any published npm package without installing: tspub.dev/check/axios

Everything works standalone. You can use just `tspub check` without adopting the build or publish features.

It's still early. I'd appreciate honest feedback especially on the checker (false positives?) and the build output (edge cases I'm missing?).

GitHub: https://github.com/tspub/tspub
by gus_massa | 2026-02-18 14:09:44+00:00
Congratulations!

The first week is brutal! The baby sleep at random times, and you barely sleep. The good part is that the first week only is a week long. Then the difficulty gets automatically reduced to hard.

Protip 1: If the baby has gas, s/he will have strong stomachache. Some massage help. Ask the nurses at the hospital for instructions. It's like magic.

Protip 2: Try to sleep as much as possible. Yes, I know it's not that easy.
by codethief | 2026-02-18 14:10:07+00:00
> it's possible to use WhatsApp with no access whatsoever to your contacts and I used it that way for years.

Yeah, that's what I do right now.

> Connecting with people is slightly jankier but it still works.

Without GrapheneOS's contact scopes, how exactly do you do that? Doesn't the other person have to message you first?
by satgate | 2026-02-18 14:10:10+00:00
Kimi K2.5 just shipped Agent Swarm — one prompt spawns up to 100 parallel sub-agents making 1,500+ tool calls. Manus (now Meta, $2B) runs agents async while you sleep. So: how do you budget-cap 100 parallel agents sharing one API key?

Rate limits won't help — they're per-key, not per-agent. Spending alerts won't help — by the time the email arrives, the swarm is done. Revoking the key kills all 100 agents, not just the one that's hallucinating against a paid API.

We built satgate-proxy to solve this with macaroon delegation trees. Macaroons are bearer tokens with cryptographically enforced caveats. The key property: any token can be attenuated (made more restrictive) without contacting the server. So an orchestrator with a 1,000-credit token can locally mint 100 child tokens capped at 10 credits each. Each sub-agent gets its own token. When agent #37 burns through its budget, it gets blocked — the proxy returns either HTTP 402 (server mode) or a JSON-RPC error (local mode) — and stops. The other 99 keep running.

No dashboard to watch. No human in the loop. The budget is enforced on every request.

Try it:

npx satgate-proxy --local --budget 5.00 --config satgate.yaml

Zero dependencies. Wraps any MCP tool server with hard budget caps locally. Every tool call deducts from the budget. When it hits zero, the proxy returns a clean JSON-RPC error and the agent stops. No account needed for local mode.

The npm package is the lightweight proxy. The full server (macaroon minting, delegation trees, L402/Fiat402 protocol support) is the Go codebase: https://github.com/SatGate-io/satgate

Both MIT licensed. We're building the economic constraint layer for agent systems. Happy to answer questions about the macaroon model, the protocol design, or how this fits into MCP.
by sensanaty | 2026-02-18 14:10:21+00:00
> Well you or anyone else can't do that...

But that's what these tools are doing, in a large number of cases? At least the end result is basically the same, like that Clawdbot or whatever name they've decided to try ride the coattails of guy who has 70k commits in the last few months that I saw being touted as an impressive feat on HN the other day. How much broken, unusable code exists within those 70k commits that ultimately would've had the same effect as if he had just pushed a `--allow-empty` commit thousands of times?

Now whatever, if it's people pushing slop into their own codebase that they own, more power to them, my issue stems from OSS projects being inundated with endless spam MR/PRs from AI hypesters. It's just making maintainer's lives more difficult, and the most annoying part of it all is that they have to put up with people who don't see the effort disparity between them prompting their chatbot to write up some broken bullshit vs the effort required for maintainers to keep up with the spam. It hurts the maintainers, it hurts genuine beginners who would like to learn and contribute to projects, it hurts the projects themselves since they have to waste what precious little time and resources they already have digging through crap, it hurts quite literally everyone who has to deal with it other than the selfish AI-using morons who just take a huge dump over everyone and spouts shit like "Well 4% of all code on Github is now AI-generated!" as if more of that is somehow a good thing.
by PurpleRamen | 2026-02-18 14:10:29+00:00
> But shouldn’t search be responsible for reducing or at least ranking the results in such a way that no matter how many results you find what you are looking for in the top N?

Maybe if you are Google, having well paid teams and excessive data on what people with your profile are usually searching at the moment. Obsidian is lacking all this, so the search-quality is very depending on the amount of files and results.
by mark_l_watson | 2026-02-18 14:10:31+00:00
Two mildly contrary points:

AI is a fantastic learning tool. Getting smarter usually leads to more success.

AI is great when you don’t have skilled co-workers to bounce ideas off of: as an indy mostly open source developer, for a few decades I would write up five to ten pages of design notes, perhaps a few diagrams like UML sequence diagrams, and then mull over my little pile of design artifacts for a while, and then start coding. Now I still create my little pile of design artifacts but will burn tokens on Gemini in research mode to critique my ideas. Very useful.
by hansmayer | 2026-02-18 14:10:51+00:00
Well Bill Gates declared it 20 years ago : "Content is king", so here we are. "Content" everywhere, and not just the Internet - go to anny tourist hotspot, there is a ratio of 5:1 of idiot influencers all stretching their faces in front of the same landmarks. Your utility company now produces "content" for some reason. Every lazy Tom, Dick and Joe produce "content" instead of doing their trade. Apps that summarise your books so you can "read" them on your commute. To the ghouls who are driving the "content" economy, everything is "content". They don't really understand either long form or novels, or music or anything creative. To them it's all just content, to be bought, sold and consumed by the pound.
by JoelMcCracken | 2026-02-18 14:11:38+00:00
I’m not in favor of these tariffs. At all. However, it seems that they haven’t had such an impact yet on the economy, at least regarding consumer prices. You’d expect much larger inflation given the tariffs IIUC.

My current understanding of the general consensus is that many companies have been eating the tariffs with the hope SCOTUS will strike them. If they are upheld, prices will likely rise significantly
by andai | 2026-02-18 14:11:42+00:00
The real question is can we get consistency without mode collapse? Are they orthogonal, or necessarily opposed?

Or to put it more bluntly.. can we get correctness without cringe ;)

I think it could be done, to a degree, with current systems, but it would be more expensive. You'd increase the temperature, and then you'd do more runs. And you could do that iteratively... re-generate each paragraph a few times, take the best of N. So you end up with interesting output, which still meets some threshold of quality.

Actually that doesn't sound too hard to slap together right now...
by vrighter | 2026-02-18 14:12:32+00:00
The AI is the one which made the mistake in the first place. Why would you assume it's guaranteed to find it?

The few times I've tried giving LLMs a shot I've had them warning me of not putting some validations in, when that exact validation was exactly 1 line below where they stopped looking.

And even if it did pass an AI code review, that's meaningless anyway. It still needs to be reviewed by an actual human before putting it into production. And that person would still get scrolling blindness whether or not the ai "reviewer" actually detected the error or not.