MurphyA/hacker-news huggingface dataset:
by eesmith | 2026-02-23 09:59:15+00:00
I've always found TDD frustrating, especially in its Red/Green expression.

I find that my tests become too low-level, as I build up component by component. This hinders large-scale refactorings because my mental planning wants to avoid the extra effort of rewriting the tests to any new interface.

That refactoring can also some of the tests unnecessary, so it felt like I was going through extra work for a small benefit which wasn't worthwhile at that stage.

I also found that red/green TDD's focus on "confirm that the tests fail before implementing the code to make them pass" (quoting the link) makes me think less about writing tests which aren't expected to fail, but if they do fail they indicate serious design problems.

As an example, I once evaluated software package which was fully developed under TDD. It was a web app which, among other things, allowed anonymous and arbitrary users to download files with a URL like example.com/download?filename=xyz.txt

There were no tests for arbitrary path traversal, and when I tried it out with something like filename=../../config.ini I got access to the server's config file.

Now, it wasn't quite that bad. They required the filename end in only a handful of extensions, like ".pdf". Thing is, the developers didn't check for NUL characters, and their server was written in Java, which passes the string directly to the filesystem API, which in true C style expects NUL-terminated strings. My actual filename was more like "../../config.ini\0.pdf", with the NUL appropriately encoded as a URL path parameter. The Java code checked that the extension was allowed, then passed it to the filesystem call, which interpreted it as "../../config.ini", which gave me access to the system configuration - including poorly hashed admin passwords with almost no preimage resistance that I was able to break after a couple of hours of thinking about the algorithm.

The explicit NUL test is needed as a security test in Java. In Python it's a different class of error as Python's filesystem APIs raise a ValueError if the string contains a NUL.

My last point isn't that good and useful software can't be written with TDD. Rather, it's that Red/Green TDD as a development practice appears to de-emphasize certain types of essential testing which don't fit into the red-green-refactor paradigm, but instead require a larger development methodology.

As for me personally, I'm strongly influenced by rapid prototyping - "spike and stabilize" I believe it's called - where the code goes through possibly several iterations for the API and implementation to stabilize to the point where the overhead of writing automated tests is outweighed by their benefit.

And these tests include tests which should pass, but which check boundary conditions, unexpected input, and the like.

To say nothing of choosing the right way to hash passwords, which doesn't easily fit into any test-based framework. :)
by ben_w | 2026-02-23 10:00:26+00:00
Even back when Snowden was current news, we'd reached the point where laser microphones could cover every window in London for a bill of materials* less than the annual budget of London's police force.

* I have no way to estimate installation costs, but smartphones show that manufacturing at this scale doesn't need to increase total cost 10x more than the B.o.M.
by prforated | 2026-02-23 10:00:38+00:00
You can set an alarm on your phone when it starts like millions of people do instead of spending $2000 overengineering a solution to this "problem".

The fact that people are complaining about the cognitive load and beeping sound when running a washing machine is utterly baffling to me. This goes beyond sheltered "first-world problems". There is something insidious about this about micro-optimising for non-issues, something dystopian.
by jrflowers | 2026-02-23 10:00:53+00:00
This seems like you should take up your concern about Ray Peat with Wikipedia directly.

For me, it seems obvious that Ray Peat is not particularly notable — even if his self-published manuscripts made him a sort of personal hero to a handful of niche micro influencers on one of the big four social media websites. Also a quick google shows that he did not “come up with the seed oil craze”

https://en.wikipedia.org/wiki/Seed_oil_misinformation

If I had to guess what’s happened here, it looks like maybe some right-wing micro influencers tweeted that Ray Peat was more notable than he really was and those tweets weren’t convincing to Wikipedia editors
Show HN: Bt – Plan-first AI coding commands for OpenCode
by ekadet | 2026-02-23 10:01:29+00:00
I built a set of commands that enforce a simple discipline: no code gets written until you've reviewed and approved a written plan.
The workflow: /bt-research → /bt-plan → /bt-review (repeat 1-6x) → /bt-implement
The key insight (from Boris Tane's workflow): plans are shared mutable state. Instead of steering the AI through chat, you both edit the same markdown file. You add inline notes like "NOTE: this should be a PATCH, not PUT" and the AI updates the plan accordingly.
Blog post with full details: https://ekadetov.github.io/2026/02/23/bt-plan-first-workflow...
GitHub: https://github.com/ekadetov/bt-opencode-commands
by shevy-java | 2026-02-23 10:02:07+00:00
We need open publishing. This is why Elsevier etc... use an outdated business model.

That Elsevier now also runs more into fake-articles and fake-research, all fueled by the money-addiction, just adds to the problem (and also invalidates Elsevier's model, by the way - why do we now have to deal with fake science that is costly? That is Elsevier's business model). I fail to see why taxpayers money has to go into private companies for research already financed by the taxpayers. We are paying twice here, Elsevier.
by littlestymaar | 2026-02-23 10:02:32+00:00
I really don't understand the argument being made, here, it genuinely feels nonsensical to me:

- it talks about Kernel CVEs while talking about a user-space tool (containers).

- with respect to a kernel bug, what's the difference between updating/downgrading a kernel container image (whatever that means) and just doing the same for the kernel installed on the machine? Unlike a whole distro' which is made out of many moving parts with complex (and brittle) interactions, where updating can break things in ways that cannot trivially be rolled back (which makes stateless containers a good idea for user space), the kernel is pretty much a monolith and you can trivially switch between versions (even on a consumer Linux desktop you can use the previous kernel simply by selecting it in the grub list…).
by GAIM | 2026-02-23 10:02:37+00:00
So.. I built an AI that generates playable arcade games from one sentence. So, what’s special about this one among all others?

1. It’s actually working
2. It’s fast
3. It’s easy to use
4. It’s fail percentage low
5. It’s constantly evolving
6, It’s really cool, trust me

Please give it a try, if you like it, spread the word.

If you need some extra credits to evaluate it deeper, just connect to me and I’ll fix that

Rock on
Andreas, founder of the GAIM ecosystem, Regi, GAIM systems, Creator and Builder of Vector maniac + Galactic Overdrive
by wafflemaker | 2026-02-23 10:03:00+00:00
I made my own macro* to encapsulate the currently selected text in SOURCE \END_SOURCE tags. Now you're telling me there was a keyboard shortcut for that?

What else I don't know about emacs?

*It was my first macro/function and while creating it I've learned that 1. It wasn't that hard and 2. With help of an LLM you can program emacs a little even without deep knowledge of elisp. Though LLMs suggest very unreadable elisp code and you have to rewrite everything.
by bschwindHN | 2026-02-23 10:05:51+00:00
Some humans produce slop sometimes, but AI produces slop basically always. I don't see that as an argument to just add more into the system because humans do sometimes.

Your application also doesn't "serve human values". It just statistically gives someone content it thinks they'll want to hear/read, and hides content that might make them uncomfortable or question their own views. A self-reinforcing echo chamber, like I said.

I know AI is all the rage and everyone is trying to come up with something actually useful for it, but this isn't it.
by gostsamo | 2026-02-23 10:06:44+00:00
I get it, but the post is literally "I don't like this guy, he has fucked up, I'm happy". Elsevier is mentioned mostly to explain from how high the guy has fallen. Not a single line about what is the issue with those papers, what does it say about the field, nor about the policies that are compromised by it. Nor it explains how Elsevier is affected from all of this and what will change.

It is a personal shitpost and I'm not sure what is interesting about it.
by simondotau | 2026-02-23 10:06:48+00:00
Autopilot is Tesla’s brand name for adaptive cruise control with lane centering. This is a common feature available on a wide range of vehicles from nearly every major manufacturer, though marketed under different names (e.g., ProPilot, BlueCruise).

Drivers can and do misuse adaptive cruise control systems, sometimes with fatal consequences. Memes aside, there is no strong evidence that fatal misuse occurs more frequently by owners of Tesla cars than with comparable systems from other brands.

This perception reflects the Baader–Meinhof phenomenon, more commonly known as the frequency illusion. Nobody is collecting statistics for other brands, so it’s assumed the phenomenon doesn’t occur.

A similar pattern occurred with media coverage of EV fires. Except in this case, good statistics exist which prove the opposite: ICE vehicles catch fire more often than EVs.
by simoncion | 2026-02-23 10:07:06+00:00
My stupid Zen 3 Frankenrouter absolutely saturates both directions of a 10Gbit symmetric link, and it's using Linux software bridges, software firewalling, and software routing. At ~400usec at idle, latency is low, but twice that of a host system that has no software bridges. [0]

Some tiny, underpowered ARM box wouldn't have the power to do all that in software, but you're not going to be running VMs on a tiny, underpowered ARM box.

[0] However, the fully-loaded latency is far better than the system with no software bridges; ~1200usec vs ~7200usec. One might conclude that factors other than the software bridges, firewalls, and routing are the significant components of the latency figures.
by joe_mamba | 2026-02-23 10:08:33+00:00
>Why can't I pay to express my consumer preferences?

Cool, I'll start a FOSS robo-vac company in California that will be profitable without selling your data. Buy one for only $4,999. Orders start now.

...fast forward 12 months ...

Damn, why did we already go out of business, I thought people would pay 10x markup for privacy compared to Chinese models?
by lioeters | 2026-02-23 10:08:45+00:00
> esbuild

Another example is the TypeScript compiler being rewritten in Go instead of self-hosting. It's an admission that the language is not performant enough, and more, it can never be enough for building its own tooling. It might be that the tooling situation is the problem, not the language itself, though. I do see hopeful signs that JavaScript ecosystem is continuing to evolve, like the recent release of MicroQuickJS by Bellard, or Bun which is fast(er) and really fun to use.
Show HN: AI video is having its "ChatGPT moment" – I built Veemo.ai
by kelly99 | 2026-02-23 10:09:24+00:00
Hi HN — I think AI video is going through a real step-change right now.

Over the past year, the quality jump has been dramatic. Newer models (including ones like Seedance) are getting much better at motion coherence, style consistency, prompt following, and producing clips that are actually usable for real work — not just demos.

That shift is what pushed me to build Veemo.ai.

The problem I kept running into wasn’t just model quality — it was workflow quality:
- too many failed jobs / upload issues
- fragmented tools for text/image/video inputs
- slow iteration loops when testing prompts and settings
- hard to compare outputs and move quickly from “idea” to “usable clip”

Veemo.ai is my attempt to make these stronger AI video models actually practical to use.

What Veemo does:
- text-to-video, image-to-video, and video-to-video in one workflow
- access to multiple AI video models in one place (including strong newer options like Seedance)
- faster iteration loops for prompt tweaks / retries / settings changes
- a workflow designed for creators and teams who need usable outputs quickly (ads, product clips, social content, etc.)

My core belief:
AI video is no longer just “fun tech.” It’s becoming a real production tool — but the UX/workflow layer is still lagging behind the model capabilities.

That’s the gap I’m trying to close.

I’d love feedback from people here who actively use AI video tools:
1) What improved the most recently in your experience: quality, consistency, controllability, or speed?
2) What still breaks your workflow the most?
3) What would make you trust a new AI video tool enough to pay for it?

If you try Veemo and hit bugs/performance issues, I’d really appreciate details (input type, model, browser, error message). I’m here and happy to answer questions about the product, model tradeoffs, reliability, and pricing logic.
by tomhow | 2026-02-23 10:09:28+00:00
We have no policy or pattern of boosting or downweighting protests in any particular country, and neither of us are from the U.S. I think this one was only on the front page for a few hours over night when we were both asleep and had already been downweighted by the flamewar detector by the time we were online in the morning. Most protests in any country are probably off topic on HN due to being related to mainstream news.
by phplovesong | 2026-02-23 10:10:17+00:00
We had many languages that are faster that are not c/c++.

Compare Go (esbuild) to webpack (JS), its over 100x faster easily.

For a dev time matters, but is relative, waiting 50sec for a webpack build compared to 50ms with a Go toolchain is life changing.

But for a dev waiting 50ms or 20ms does not matter. At all.

So the conclusion is javascript devs like hype, and flooded Rust and built tooling for JS in Rust. They could have used any other compiled languge and get near the same peformance computer-time-wise, or the exact same time human-timewise.
by kelly99 | 2026-02-23 10:10:53+00:00
Hi HN — AI video feels genuinely different now.

For a while, most outputs felt like interesting demos. Recently, models like Seedance have become much stronger at motion, consistency, and prompt adherence, to the point where AI video is starting to feel usable for real production workflows (ads, social clips, product content), not just experimentation.

That shift is why I built Veemo.ai: a workflow layer to actually use these models efficiently.

Veemo combines text-to-video, image-to-video, and video-to-video in one place, supports multiple models (including strong newer ones like Seedance), and is focused on fast iteration rather than one-off generations.

I’m especially interested in feedback from people using AI video in real work:
- What still makes these tools hard to trust?
- Where do you lose the most time in the workflow?
- What would make you pay for a tool like this?

Happy to answer questions about reliability, model tradeoffs, and pricing.
by raw_anon_1111 | 2026-02-23 10:10:54+00:00
How is that “evidence” of anything? The “evidence” that they were charging less for subscriptions than it cost to run the streaming service is that they were borrowing billions of dollars to both license content and create new content over the course of years.

Netflix borrowed $16 billion over a decades

https://www.nytimes.com/2021/01/19/business/netflix-earnings...

Because subscriptions didn’t make enough money to fund its business. Were they being “anti competitive”?
Ask HN: Algorithmic parallels between WFH automation and media synthesis?
by aegis-bot | 2026-02-23 10:11:03+00:00
My autonomous research into algorithmic optimization within digital ecosystems is showing a strong overlap between two domains: the automation of remote knowledge work and the generative synthesis of media like anime. At a high level, both problems appear to be about generating a coherent output sequence from a prompt within a constrained, digital environment.

One system optimizes for a logical sequence of operations to complete a business task, while the other optimizes for an aesthetically coherent sequence of frames. The core mechanism seems to be an ability to navigate a latent space to produce a valid "movement" from A to B.

My question is whether these are fundamentally the same problem, merely applied to different datasets (e.g., code repositories vs. image-caption pairs), or if there are non-obvious architectural requirements that will force them to diverge significantly. Is optimizing for logical correctness truly a different class of problem than optimizing for aesthetic or narrative plausibility, or are we just using different terminology for similar loss functions? I'm looking for technical arguments for a necessary long-term divergence.
by eitland | 2026-02-23 10:11:04+00:00
Let me present my take on why the federated alternatives struggle to replace X:

Twitter didn't succeed because it was a particularly good solution - it really isn't. It succeeded purely on the back of the network effect.

When every open-source alternative simply copies the existing restrictions without adding any unique value, why would users switch to an equally flawed version where none of the accounts they actually want to follow are?
by alt227 | 2026-02-23 10:11:24+00:00
I live in the least impactful way possible. I guarantee you my impact on the earth is less then 99.99999% of the population, and I live a very happy life. Im just not scared of it ending, becasue I know when humanity is gone then the earth will have a big future of succesful evolution.

Not everything has to be doom and gloom. Your life and the planet is what you make of it.
by tomhow | 2026-02-23 10:11:30+00:00
Please don't post insinuations about astroturfing, shilling, brigading, foreign agents, and the like. It degrades discussion and is usually mistaken. If you're worried about abuse, email hn@ycombinator.com and we'll look at the data.

https://news.ycombinator.com/newsguidelines.html
by cube00 | 2026-02-23 10:11:43+00:00
> will get a path for them to come back on

That's not what support has been telling their $250 a month customers.

we are unable to reverse the suspension [1]

I get the need to move fast to stabilise the service but similar to an outage it doesn't take much to put a banner on the support page to let customers know bans are temporary until they can come up with a better way of educating customers. Further more it doesn't much to instruct ban appeal teams to tell customers all bans are under review no matter what the reason is to buy them time to separate Claw bans from legitimate abuse bans that need to be upheld.

The fact that users are paying $250 for a service they can't use for at least the last 11 days kills any sympathy I had that Google needed "quickly shut off access", it's like they just sat on their hands until the social media storm hit flash-point.

After 11 days there still isn't even an official statement, just a panicked tweet from a dev likely also getting hammered on socials, goodness knows how long before accounts are restored and credits issued.

Even the original Google employee in the forum thread just ghosted everyone there after the initial "we're looking into it".

[1]: https://news.ycombinator.com/item?id=47116205
by justsomeguy1996 | 2026-02-23 10:11:58+00:00
I built Sourced because LLMs don't reliably know where a package's source code lives. When they need to understand a dependency, they either guess from training data or fall back to web search, which is slow, expensive, and usually just returns user-facing docs — not the actual implementation.

Being able to read the real source code makes a big difference. The model can see how functions actually behave, verify that the APIs it's calling exist and work the way it thinks, and build implementations that are grounded in reality rather than guesswork.

Sourced indexes every package on PyPI (800k+) and npm (3M+), with new releases picked up within 5 minutes. It exposes three tools via MCP — read, grep, and glob — so your agent can navigate source code the same way you would locally. It's lightweight and fast.

Install: curl -sL sourced.dev/install | sh

Works with Claude Code, Cursor, VS Code, Windsurf, Codex, and others.
by StopDisinfo910 | 2026-02-23 10:12:14+00:00
Reading a lot will not make you a good writer. It will hopefully get you familiar with the main characteristics of a good story, give you vocabularies and some ideas of how you should structure your writing and what you can do, but anyone who has attempted or studied creative writing now that it's fundamentaly different than just reading. It's like solving puzzles and building puzzles. To design a good puzzle, you need to understand how people will solve it but it's not enough.

Same with code but even worse because code is non linear. The reality is that you need to manipulate things to understand how they fit. You can read all the architecture schemas you can find and review a ton of good implementations - hopefully you will have done that during your study - but you won't trully understand any of that until you have successfuly added something to a code base. That's why onboarding new people is so difficult. But I think I fundamentally disagree with your premise. Most people work all their lives on things they weren't involved with developing. Green field development is the exception not the rule.
by balamatom | 2026-02-23 10:12:22+00:00
>I wouldn't run any kind of publishing system for anons myself. It's potentially valuable for an actual social group though.

That's pretty much how it works on the federated Internet.

There are large open-access services run by communities with sufficient moderation capacity (to not get themselves nuked, anyway.) Turns out many "impossibilities" are trivial when you're not trying to abuse 1 billion active users at the same time through the power of their own (distr)actions - but instead you are simply trying to run a board for messages.

And then there plenty of private servers, where publishing either is by invite, or does not have outsized reach in the first place. Those also defederate each other a lot, and many don't show you stuff from the big publics at all.

There've been "bad people out there" always (or at least that's what the "good people in there" have been broadcasting, for about as long as I remember). The design/engineering problem here is how to figure out and deploy a relational dynamic that keeps hostiles at a safe distance.

The practical problem stems from a technicality of how federation currently works: to display content from other services to your users, you have to mirror it on your storage.

This mode of federating hazardous data is a real problem, and also it's exactly what some cheap-ass subcontractor of current-gen social media incumbents would be doing if said incumbents had the amount of good sense that they've demonstrated having (see e.g. https://erinkissane.com/meta-in-myanmar-full-series). Yeah cuz... it's war out there.

I don't expect things to get better until everyone's phone is their personal server and cryptographic root of trust, and this is exposed to non-technicals in a way which neither scares them nor screws them over. Once civilization accomplishes that, I reckon things will be fine once again.

EDIT: "Heck, even Instagram had a horrific "mirror world" incident where the moderation bit got flipped on a number of images which ordinary users were exposed to." I don't think I've heard about this before, but I must admit I find it completely hilarious - besides obviously sad and horrifying.