MurphyA/hacker-news huggingface dataset:
by znnajdla | 2026-02-19 19:06:18+00:00
> 100% of the time spent in agent frameworks is spent ... waiting for the agent to respond, or waiting for a tool call to execute. Almost no time is spent in the logic of the framework itself.

But that’s exactly where multi threaded Elixir is better! You want a single thread like Node for CPU bound work, you want extreme multi threading for I/O bound work like AI agents. In Elixir you can do both: heavy CPU work without worrying about stopping the world, and heavy concurrency across millions of threads where work is I/O bound and you want to saturate your network connection. In Node you can’t do either of those things easily - it’s just a single thread.
by cglan | 2026-02-19 19:06:18+00:00
being TOO steerable is another issue though.

Codex is very steerable to a fault, and will gladly "monkey paw" your requests to a fault.

Claude Opus will ignore your instructions and do what it thinks is "right" and just barrel forward.

Both are bad and papering over the actual issue which is these models don't really have the ability to actually selectively choose their behavior per issue (ie ask for followup where needed, ignore users where needed, follow instructions where needed). Behavior is largely global
by rectang | 2026-02-19 19:07:04+00:00
I'm reminded of the Gene Weingarten's 2010 Pulitzer Prize winning article, Fatal Distraction, on parents whose children have died from hyperthermia after being left in cars[1].

Similar to this case, some people believe that such parents should be criminally liable, and that there cannot possibly be any extenuating circumstances — despite the correlation between the rise of back-seat children's car-seat laws and the prevalence of such deaths.

> Think it through.

I have. The article provides very little to go on, and it is not hard to imagine that an abuser who is clever enough to publish CSAM material online for years without getting caught is clever enough to keep the abuse hidden from the mother and manipulate a child into keeping their trauma secret.

> (Not necessarily every step and every breath of the kid, but you know the large stuff, like for example are they being sexually abused.)

There are vast numbers of parents who do not find out for years[2]:

73% of child victims do not tell anyone
about the abuse for at least a year.
45% of victims do not tell anyone for
at least 5 years. Some never disclose.

Given how often sexual abuse happens, we're talking about millions of parents. I do not believe that every last one of them is morally culpable because they did not "know the large stuff, like for example are [their children] being sexually abused" and that they should be criminally charged.

[1] https://mitchellhamline.edu/wp-content/uploads/sites/9/2012/...

[2] https://cachouston.org/prevention/child-sexual-abuse-facts/
Show HN: New ads alternative for early SaaS/site owners to sell sponsor slots
by lparsaud | 2026-02-19 19:07:25+00:00
Hey everyone,

I’ve been noticing a pattern on a lot of indie sites lately: side sponsor slots as an alternative to traditional Google Ads.

It feels like a cleaner way to monetize, especially for products that have meaningful traffic, but lower MRR. It also seems better for users since the ads can be relevant tools/products, instead of random Google spying on you ads.

How it works: it’s a marketplace where site owners can create and sell ad slots, and sponsors can browse and buy those slots. I also added a screenshot of a mockup for how it would look/work.

I’d genuinely love to hear why you would or wouldn’t use it - especially if you fit in the criteria below.

Roughly ideal early users:

SaaS/products with at least ~1,000 monthly users

Any site with a real audience (directory, tool site, content site, etc.)
by stackghost | 2026-02-19 19:07:28+00:00
Propellers (both marine and aero) are just spinning wings. If you picture a 2D airfoil like you might see in one of those "intro to lift" diagrams, all the flow is in what we call the chordwise direction, that is the flow is entirely along the axis of the wing's chord (leading edge to trailing edge).

A real 3D aircraft, however, has a fuselage. Similarly, a prop has a hub and the tips of each blade are spinning faster than the roots. The tl;dr of this is that real 3D lifting surfaces typically exhibit a mixture of chordwise and spanwise flow, which causes wingtip vortices to form[0], resulting in induced drag/induced power loss.

For a given amount of thrust the total amount of momentum that the prop transfers to the fluid is fixed. The tip of a conventional prop ends abruptly which causes a large pressure gradient and a strong vortex. A toroidal prop's shape causes the pressure gradient to be broader and less concentrated, therefore the wake vorticity is distributed over a larger region, reducing peak swirl velocities and lowering the kinetic energy lost to vortex formation (and to cavitation).

[0] https://www.youtube.com/watch?v=duSZ1hyK7sY
by zamalek | 2026-02-19 19:07:28+00:00
That's not exactly it. Light gets redshifted instead of slowing down, because light will be measured to be the same speed in all frames of reference. So even though we can't actually observe it yet, light traveling towards us still moves at c.

It's a different story entirely for matter. Causal and reachable are two different things.

Regardless, such extreme redshifting would make communication virtually impossible - but maybe the folks at Blargon 5 have that figured out.
by julianpye | 2026-02-19 19:07:51+00:00
The researchers identified three main dynamics at play. First, the ability to use AI to fill gaps in existing knowledge led workers to take on more and broader responsibilities, such as managers writing code to tackle problems they would previously have outsourced. Second, the ease of starting and finishing new tasks led workers to fit new bits of work into gaps between meetings or larger pieces of work that would once have been breaks or opportunities to chat to a colleague. And third, the ability to hand off tasks to AI agents led to a surge of multitasking, with workers setting a handful of pieces of work in motion and moving back and forth between them as they progressed.
by imiric | 2026-02-19 19:08:31+00:00
The obvious question is: was it vibe coded? :)

As much as I'd like to know whether a text was written by a human or not, I'm saddened by the fact that some of these writing patterns have been poisoned by these tools. I enjoy, use, and find many of them to be an elegant way to get a point across. And I refuse to give up the em dash! So if that flags any of my writing—so be it.
by mikkupikku | 2026-02-19 19:08:37+00:00
I do think the impact good teachers have is relatively minor, except for the part where a good teacher isn't a bad teacher, and the damage a bad teacher can do is enormous. A young inexperienced teacher is almost certainly getting into the career because they want to help kids. They may become a bad teacher, the bitter sort of teacher, after many years of seeing little but negative outcomes. At that point, they become part of the problem and realistically the only way to correct this is to wait until they quit. Incidentally, high wages are more likely to keep bad bitter teachers in jobs they hate longer, while young optimistic teachers require less fiscal motivation.
by hyperhello | 2026-02-19 19:08:42+00:00
Interesting mix of active and passive language in the headline. He covered up that he knew? He covered up that the kids were being hurt? Who was hurting the kids — they were just being in a state of hurt, and as a CEO, somehow looked outside the palace walls and saw that suffering existed, yet did not meditate for seven years under an oak tree in response.
by jcalvinowens | 2026-02-19 19:08:48+00:00
The best example I know of off the top of my head is wait_event() in Linux.

So long as the thread is guaranteed not to exit while blocked, you know its stack, and therefore the object allocated on it, must continue to exist. So, as long as there is no way to wake the thread except by kicking that object, the memory backing it is guaranteed to continue to exist until that object is kicked. You do have to somehow serialize the global data structure lookup (e.g. lock/dequeue/unlock/kick), if multiple threads can find and kick the object concurrently that's unsafe (the thread might exit between the first and subsequent kicks).

Generally that's true, even in pthread userspace: while there are some obvious artificial counterexamples one can construct, real world code very rarely does things like that.
Show HN: New ads alternative for early SaaS/site owners to sell sponsor slots
by lparsaud | 2026-02-19 19:08:49+00:00
Hey everyone,

I’ve been noticing a pattern on a lot of indie sites lately: side sponsor slots as an alternative to traditional Google Ads.

It feels like a cleaner way to monetize, especially for products that have meaningful traffic, but lower MRR. It also seems better for users since the ads can be relevant tools/products, instead of random Google spying on you ads.

How it works: it’s a marketplace where site owners can create and sell ad slots, and sponsors can browse and buy those slots. I also added a screenshot of a mockup for how it would look/work.

I’d genuinely love to hear why you would or wouldn’t use it - especially if you fit in the criteria below.

Roughly ideal early users:

SaaS/products with at least ~1,000 monthly users

Any site with a real audience (directory, tool site, content site, etc.)
by somenameforme | 2026-02-19 19:09:14+00:00
It also illustrates what a real insurrection attempt looks like. [1] He declared martial law, suspended and prevented their Congress equivalent from meeting (and directed the military to enforce such), ordered the immediate arrest of numerous high level politicians with a goal of arresting hundreds, issued a declaration that all media and publications had to be approved before publication, ordered the power+water for a news broadcaster be cut, and much more.

[1] - https://en.wikipedia.org/wiki/2024_South_Korean_martial_law_...
by jcalvinowens | 2026-02-19 19:09:32+00:00
> Yep, it's a straight up error in C to return the address of a local variable from a function

Sure, that's true, but nobody is suggesting returning the address of a local variable anywhere in this thread.

I'm describing putting a pointer to a local variable in a global data structure, which is safe so long as the function doing it is somehow guaranteed not to return until the pointer is removed from the global data structure.
by louiereederson | 2026-02-19 19:09:36+00:00
I know they acknowledge this but measuring autonomy by looking at task length of the 99.9th percentile of users is problematic. They should not be using the absolute extreme tail of usage as an indication of autonomy, it seems disingenuous. Does it measure capability, or just how extreme users use Claude? It just seems like data mining.

The fact that there is no clear trend in lower percentiles makes this more suspect to me.

If you want to control for user base evolution given the growth they've seen, look at the percentiles by cohort.

I actually come away from this questioning the METR work on autonomy.

You can see the trend for other percentiles at the bottom of this, which they link to in the blog post https://cdn.sanity.io/files/4zrzovbb/website/5b4158dc1afb211...
by matheusmoreira | 2026-02-19 19:09:44+00:00
That's amazing. Thanks for that reference. If it's good enough for the kernel, then it's good enough for me to start using in my own projects.

It's really cool that the kernel is using this. The compiler must be generating simple bounds checking code with traps instead of crazy stuff involving magical C standard library functions. Perfect for freestanding nostdlib projects.
by logicprog | 2026-02-19 19:09:45+00:00
> The boring parts where you learn.

It's okay not to memorize everything involved in a software project. Sometimes what you want to learn or experiment with is elsewhere, and so you use the AI to handle the parts you're less interested in learning at a deep and intimate level. That's okay. This mentality that you absolutely have to work through manually implementing everything, every time, even when it's not related to what you're actually interested in, wanted to do, or your end-goal, just because it "builds character" is understandable, and it can increase your generality, but it's not mandatory.

Additionally, if you're not doing vibe coding, but sort of pair-programming with the AI in something like Zed, where the code is collaboratively edited and it's very code-forward — so it doesn't incentivize you to stay away from the code and ignore it, the way agents like Claude Code do — you can still learn a ton about the deep technical processes of your codebase, and how to implement algorithms, because you can look at what the agent is doing and go:

"Oh, it's having to use a very confusing architecture here to get around this limitation of my architecture elsewhere; it isn't going to understand that later, let alone me. Guess that architectural decision was bad."

"Oh, shit, we used this over complicated architecture/violated local reasoning/referential transparency/modularity/deep-narrow modules/single-concern principles, and now we can't make changes effectively, and I'm confused. I shouldn't do that in the future."

"Hmm, this algorithm is too slow for this use-case, even though it's theoretically better, let's try another one."

"After profiling the program, it's too slow here, here, and here — it looks like we should've added caching here, avoided doing that work at all there, and used a better algorithm there."

"Having described this code and seeing it written out, I see it's overcomplicated/not DRY enough, and thus difficult to modify/read, let's simplify/factor out."

"Interesting, I thought the technologies I chose would be able to do XYZ, but actually it turns out they're not as good at that as I thought / have other drawbacks / didn't pan out long term, and it's causing the AI to write reams of code to compensate, which is coming back to bite me in the ass, I now understand the tradeoffs of these technologies better."

Or even just things like

"Oh! I didn't know this language/framework/library could do that! Although I may not remember the precise syntax, that's a useful thing I'll file away for later."

"Oh, so that's what that looks like / that's how you do it. Got it. I'll look that up and read more about it, and save the bookmark."

> Unless you already have the knowledge, then fine. "here's my code make it better" but if it's the 14th time you've written the ring buffer, why are you not using one of the previous thirteen versions? Are you saying that the vibed code is more superior then your own coding?

There are a lot of reasons one might not be able to, or want to, use existing dependencies.
by scotth | 2026-02-19 19:10:03+00:00
I've encountered this as well. My multi-lingual text is different than yours.

It's Armenian and Mandarin. When asked about it, Codex will translate the Armenian, the but Mandarin causes it to go into a frenzy, repeatedly attempting to maybe perform the same task again? It will not translate it. Even if mentioned in a sentence, the frenzy begins. I tried it four or five times in a row, with conversation in between. It feels like the Manchurian Candidate or something.

In a new session, Codex is unaffected when encountering the text.
by sushisource | 2026-02-19 19:10:09+00:00
Bikewear in particular is a bit hilarious. I'm 5'9", 150lb, so a bit smaller than you, but I have significantly more muscle in my upper body than the typical serious cyclist build. In my experience, the more high-end the bike clothes, the more they expect you to be shaped like a TDF rider, which is to say literally zero upper body mass.

So I have almost the opposite problem from you, where an M is usually reasonable for me on the bottom, but _comically_ tight on top. Even an L is usually way too tight through the chest and biceps for me, but now not long enough in the arms.

I just live with it, because whatever, I don't mind the top being a little tight, but it is frustrating.
by adrian_b | 2026-02-19 19:10:35+00:00
If you want an ARM CPU, there are now a few single-board computers with a quadruple Cortex-A78 CPU in the "Qualcomm Dragonwing QCM6490" SoC (similar to a Snapdragon from the flagships of 2021), which run circles around Raspberry Pi and the like.

There are also older NVIDIA Orin SBCs with Cortex-A78, but those are severely overpriced, so they are not worthwhile, unless you really want to use them in an automotive project.

For software development, the Arm-designed cores have the advantage of excellent documentation, unlike the proprietary cores designed by Apple and Qualcomm, which are almost undocumented. Good documentation simplifies software debugging and tuning.

Unfortunately there are no cheap solutions for developing on the latest ARM ISA variants (except for a Chinese Armv9.2-A CPU, which has some quirks and is available in mini-ITX and smaller formats). For the latest ISA, you should develop software on a smartphone, e.g. on one of the Motorola smartphones that have DisplayPort for connecting an external monitor and a desktop mode for Android.
by nickysielicki | 2026-02-19 19:10:49+00:00
That's not what I'm saying. My point is that expertise, as in, credentials, institutional knowledge, accepted wisdom, was actively harmful to solving flight. The Wrights succeeded because they built a tool that made iteration cheap (the wind tunnel), tested 200 wing shapes without deference to what the existing literature said should work (Lilienthal's tables were wrong and everyone with "expertise" accepted them uncritically), and they closed the loop with reality by actually flying.

That's the same approach as vibe coding. Not "asking Claude to make a CRUD app.", but using it to cheaply explore solution spaces that an expert's priors would tell you aren't worth trying. The wind tunnel didn't do the thinking for the Wrights, it just made thinking and iterating cheap. That's what LLMs do for code.

The blog post's argument is that deep immersion is what produces original ideas. But what history shows is that deeply immersed experts are often totally wrong and the outsiders who iterate cheaply and empirically take the prize. The irony here is that LLM haters feel it falls victim to the Einstellung effect [1]. But the exact opposite is true: LLMs make it so cheap to iterate on what we thought in the past were suboptimal/broken solutions, which makes it possible to cheaply discover the more efficient and simpler methods, which means humans uniquely fall victim to the Einstellung effect whereas LLMs don't.

[1]: https://en.wikipedia.org/wiki/Einstellung_effect
by Windchaser | 2026-02-19 19:10:56+00:00
There's some truth to what they're saying.

Simply on a factual basis, the data we have from previous extinction events does not have the temporal resolution needed for us to determine how quickly the temperature increased/decreased. E.g., "how quickly did the atmospheric temperature change after the Chicxulub event?" We don't know. Decent-quality global paleoclimate proxies only extend back ~15k years or so. It's possible that there was rapid global climate change in the past outside of major extinction events; we genuinely don't have the data to tell.

This also doesn't really tell us much about how the modern Earth and its ecosystems would handle those old climate shifts, because there is much much less wild lands (and so, less resilience within natural ecosystems). It's true from a climate science perspective, but not useful for assessing the damage that climate change can cause to modern society.

And: to the best of our knowledge, the current rate of warming is fast enough to cause major issues. Civilization only arose once we had relatively stable and moderate temperatures, and stable temperatures may be needed to maintain civilization under present technology. Ecological and glaciological studies back this up. And no, scientists are not looking to just scare us into action; the evidence itself should be alarming.
by thomasthelliez | 2026-02-19 19:11:03+00:00
Bannerbear is a well-known API for automated image generation, widely used by SaaS platforms, marketers, and developers to create social media visuals, banners, and dynamic marketing assets. Many Bannerbear alternatives provide easy access to advanced AI photo generators, allowing users to create ai images and ai generated images from text prompts. But as automation needs grow, many teams start searching for Bannerbear competitors...
by apswin | 2026-02-19 19:11:16+00:00
Thanks for the detailed feedback. Those are the next items on my list now. Will add headless browser research capabilities to go around java script issues. Will also add semantic clustering check.

Seems like you are quite well versed with the space. Would you be open to sharing some interesting resources or getting on call with me to share if you have struggled with this problem and what your workflow looks like?
by tripletao | 2026-02-19 19:11:49+00:00
If you can find a case where this matters, then you've found a practical way to distinguish a CSPRNG seeded with true randomness from a stream of all true randomness. The cryptographers would consider that a weakness in the CSPRNG algorithm, which for the usual choices would be headline news. I don't think it's possible to prove that no such structure exists, but the world's top (unclassified) cryptographers have tried and failed to find it.
by PaulHoule | 2026-02-19 19:12:04+00:00
You have to ask the question of "what exactly is Capitalism?"

By putting capital ahead of everything else of course capitalism gives you technological progress. If we didn't have capitalism we'd still be making crucible steel and the bit would cost more than the horse [1] -- but if you can license the open hearth furnace from Siemens and get a banker to front you to buy 1000 tons of firebricks it is all different, you can afford to make buildings and bridges out of steel.

Similarly, a society with different priorities wouldn't have an arms race between entrepreneurs to spend billions training AI models.

[1] an ancient "sword" often looks like a moderately sized knife to our eyes
by marysminefnuf | 2026-02-19 19:12:16+00:00
teacher here. there is a huge reason why we dont use reading levels to promote in michigan. its unfair to hold a third of the kids back because of biology. the kids develop early on in elementary school rapidly and kids born at the end of the year from september to december will always be a few months behind in development. unsurprisingly, the current statistic we have is that 1/3 of our 3rd graders are illiterate according to our state. not just having trouble reading, but cannot read at all. that tracks in my classroom, but we're getting better about it as the year progresses. Ive found that reduced screen time is the best way to get kids literate again in my homeroom.
by Certhas | 2026-02-19 19:12:33+00:00
I disagree. Julia has correctnes issues because it chose maximum composability over specifying interfaces explicitly. And those are not just in immature packages but also in complex packages. Compared to other languages, Julia has no facilities to help structure large complex code bases. And this also leads to bad error messages and bad documentation.

Recently we got the public keyword, but even the PR there says:

"NOTE: This PR is not a complete solution to the "public interfaces are typically not well specified in Julia" problem. We would need to implement much than this to get to that point. Work on that problem is ongoing in Base and packages and contributions are welcome."