MurphyA/hacker-news huggingface dataset:
by mikepurvis | 2026-02-17 15:47:49+00:00
At least for now, there remain lots of signals that are clear to those with sufficient exposure; from the piece linked in the Oxide LLM doc that was recently discussed here:

"... to anyone who has seen even a modicum of LLM-generated content (a rapidly expanding demographic!), the LLM tells are impossible to ignore. Bluntly, your intellectual fly is open: lots of people notice — but no one is pointing it out."

https://bcantrill.dtrace.org/2025/12/05/your-intellectual-fl...
by gymbeaux | 2026-02-17 15:48:31+00:00
I suspect this has happened to me at least once. I was a shoe-in, checked all of the boxes, recruiter was saying they really wanted me, and then for the final interview they brought in a mid level guy who asked me questions unrelated to the role (purely a Data Engineer role but he was asking me about the intricacies of ML models). All interviewers were Indian. I would wager they ended up hiring another Indian guy for the role. I would imagine this happens to people of color all the time so I don't "mind" in that sense. The bigger issue to me is U.S. citizens unemployed because roles are filled by H-1B people (which is difficult to prove, but the evidence seems to indicate).
by etiennebausson | 2026-02-17 15:48:34+00:00
> A simpler answer would simply be that, if you lay someone off on the basis that an AI can replace their entire job functionality, you have to keep paying their salary dollar for dollar until they find something else to do.

This just incentivize them to find different official reason for firing. Like missed deadlines (that sudently became shorter) or in computing job code quality (due to reduced deadlines).

> This incentivizes companies to try and figure out creative ways to continue using their existing workforce to maximize the value they get out of AI systems.

This doesnothing for the current issue of job market entry positions, where there is the most pressure from AI. Only help people only in position.
by jbstack | 2026-02-17 15:48:39+00:00
Why are they mutually exclusive? Can't you hang out with and chat with other programmers ... about food, hiking, travelling, culture, or relationships? In the same way that lawyers don't have to talk about law, and doctors don't have to talk about medicine when they hang out. When I think about my friendships, it's rare that we ever spend any significant amount of time talking about our work.
Show HN: Voicetest – open-source test harness for voice AI agents
by pldpld | 2026-02-17 15:49:09+00:00
We've been building voice agents across Retell, VAPI, LiveKit, and Bland, and the testing story is... rough. Every platform has its own config format, there's no shared way to define what "correct" looks like, and most teams end up doing manual QA by literally calling their agent and listening. So we built voicetest.

voicetest is an open source (Apache 2.0) test harness that works across voice AI platforms. You import your agent graph from any supported platform (or define one from scratch), write test scenarios with expected behaviors, and voicetest simulates conversations and evaluates them with LLM judges that score each turn 0.0-1.0 with written reasoning. It also ships global compliance evaluators for things like HIPAA, PCI-DSS, and brand voice consistency. The core abstraction is an AgentGraph IR that normalizes across platform formats, so you can convert between Retell, VAPI, LiveKit, and Bland configs and test them all the same way.

Quick start:

```
uv tool install voicetest
voicetest demo --serve
```

That gives you a web UI at localhost with a sample agent, test cases, and evaluation results you can poke at. There's also a CLI, a TUI, and a REST API. It integrates into CI/CD with GitHub Actions, uses DuckDB for persistence, and includes a Docker Compose dev environment with LiveKit, Whisper STT, and Kokoro TTS. If you have a Claude Code subscription, voicetest can pass through to it instead of requiring separate API keys for evaluation.

GitHub: https://github.com/voicetestdev/voicetest
Docs: https://voicetest.dev
API reference: https://voicetest.dev/api/
by SamoyedFurFluff | 2026-02-17 15:49:53+00:00
I don’t think this is part of humans because so many of us genuinely chafe against the system. I think it’s because of power and hierarchy and signaling. It’s like when you play board games with a friend and then they turn it into a competition and then it’s not fun anymore. At least with a board game you can walk away. But if it’s your child’s future on the line you will be just as competitive even if you don’t want to be.

So long as there are humans who want to amass power in some way and treat it as a zero sum game, there will be other humans forced to play similarly. Prisoners dilemma.
by dzonga | 2026-02-17 15:49:59+00:00
it's an own goal end of day - led by myopic thinking about foreigners stealing the jobs

a foreigner worker pays taxes, rent & other bills thereby contributing and circulating money in the economy

now if that foreign worker stays in their home country - yes - they might get paid less - but who losses overall ? the country that would've imported labor or the worker ? - it's always the country - hence why brain drain is devastating.

remember the foreign worker only gets a better life - but losses social connections, culture etc

the countries & companies wouldn't be sponsoring these things if ultimately it didn't benefit them & them only
by estebank | 2026-02-17 15:50:44+00:00
I'm pretty sure it's referencing Half-Life 2, where an agent of an oppressive regime tells you to pick up a can that they just dropped on the floor as a sadistic display of authority (and to provide world-building and teach the grab mechanics to the player).

The GP is equating policies for strong passwords that aren't trivially cracked with authoritarianism.

If no one had a good password, we actually would affect each other negatively. If your personal banker can be easily compromised, that means that you could be easily parted with your money.

I do agree that they are not the same thing.
by 01HNNWZ0MV43FF | 2026-02-17 15:50:56+00:00
Getting older is strange.

I never wanted to "grow out" of programming, but it feels like that's what I'm doing. I'm leaning into activism and real-life stuff, and programming is only a tool, which is sometimes useful and sometimes not.

I was always a "Love of the game" programmer. I went to a business incubator recently and saw two guys vibe-coding with Claude. One was using speech dictation. That's crazy to me. Programming should happen at a keyboard.

I have my excuses - Claude will eventually cost more. AI that runs on Someone Else's Computer is not free software, and it will never respect you. The keyboard is an elegant weapon from a more civilized age. These excuses are sort-of true and sort-of pointless.

Programming is a means to an end. I guess when the chips are down, most people program to make money, which means working for disgusting people who have so much money that they can change the course of history for the worse.

I programmed for fun, and that meant lots of programming. Now I want to program for justice, and that will mean less programming and more grass-touching.
by SecretDreams | 2026-02-17 15:51:25+00:00
There are some people that gravitate towards making friends at work and spending their non work lives with them and there are those that prefer the opposite.

I am friendly with my coworkers and might occasionally spend time with them outside of work, but, for the most part, all my closest friendships are not from work and not in the same profession (outside of the few I picked up in school).
by microtonal | 2026-02-17 15:51:25+00:00
With microG, your apps still connect to the Google servers, so you're not "breaking free".

Moreover, some OSes (e.g. /e/OS) give certain Google apps higher privileges than other apps even with microG, install Android Auto and it's still game over. GrapheneOS does not have this issue because as you say, Google apps/services get sandboxed.

Obligatory link: https://eylenburg.github.io/android_comparison.htm
Show HN: A real-time chord identifier web app using the Web MIDI API
by nate-gehringer | 2026-02-17 15:52:00+00:00
This was a quick, fun project that solves a practical problem I had — wanting to learn the names of piano chords, but not seeming to want to spend time staring at chord charts. I figured perhaps I could learn some music theory more deeply by encoding the logic into software, as well.

I came across this table <https://en.wikipedia.org/wiki/Chord_(music)#Examples> that breaks down the composition of chords logically. I was reminded of a bitmask, so I translated each chord into a 12–bit bitmask with a bit for each distinct note letter name (e.g. “C” or “B♭”). Decoding binary was involved in interfacing with MIDI … that might have been the inspiration — regardless, a bitmask seems ideal for this purpose.

The most challenging part by far was the logic that determines whether say, “A♯/B♭” (which are considered to be the same note in the 12–tone chromatic scale) should be rendered as “A♯” or “B♭”. As best as I understand, this depends on key signature context, and the logic regarding this isn’t well-described. I settled on finding the diatonic scale (7–note) that contains the maximum number of notes that the chord also contains. That diatonic scale provides the context for the note letter names. This logic isn’t perfect yet — the scales that include double flats and double sharps (which I wasn’t previously aware of) still provide ambiguous results.
Show HN: PokeDex++ – I rebuilt my Pokémon app as a web app
by meimeixoxi | 2026-02-17 15:52:58+00:00
Hi HN,

I originally built PokeDex++ as a mobile app using React Native and Expo. It was designed to be more than just a Pokédex — it included features like a card collection system, buddy progression, virtual coins, and detailed stat pages.

But I couldn’t afford the Play Store developer fee at the time, so the app never got published.

Instead of abandoning the project, I decided to rebuild the entire thing as a web app using React and deploy it independently.

The current web version includes:

• Individual pages for each Pokémon
• Card collection system with unlockable skins
• Virtual currency (DexCoins)
• Buddy progression mechanics
• Fast search and navigation

This is a solo passion project, and I’m continuing to improve it.

I’d really appreciate any feedback, suggestions, or criticism.

Thanks for checking it out.
by vasilyt | 2026-02-17 15:53:05+00:00
That's exactly how I started. It works for one or two tasks. Then you want session continuity so runs build on each other. Then you want different system prompts for different tasks. Then you want to see run history, retry failures, pause schedules. Then you want one task's knowledge available to another. Daymon is what that bash script evolves into after you get tired of duct-taping it together.
by cootsnuck | 2026-02-17 15:53:32+00:00
Totally agree. Adult life is just mentally taxing. I'm more curious and more eager to learn now in my 30s than I was in any of my schooling. The learning isn't hard but the energy regulation is.

I think it's so easy for people to discount "mental energy" since culturally we don't often acknowledge it as a finite resource the same way we do physical energy. Well maybe the problem is we view them as separate things in the first place.

When I was younger I just didn't have to worry about so much stuff.
by munchbunny | 2026-02-17 15:53:46+00:00
I've definitely found that I could inhale information faster and memorize much faster as a teenager. I think I was even faster in college.

In my mid-30s, I'm definitely slower to pick up new things than in my college days, but I have much more mental discipline and patience, a broader base of knowledge to draw from, and maybe the biggest differentiator: a much more developed sense of priority and focus in order to get more benefit out of less time.
by aleph_minus_one | 2026-02-17 15:54:07+00:00
>
Doesn't matter what traits they have, the only way up, to get that raise, additional benefits, or not being thrown into some improvement program is to accept becoming a manager in one of its various forms

You did not get my point: it is not about non-acceptance of becoming a manager, but rather about having traits that commonly imply that "those in power" won't select you for becoming a manager.
by rurp | 2026-02-17 15:54:27+00:00
Even if we completely avoid the worst case scenarios where AI obliterates the job market or evolves into a paperclip maximizer, it has a good shot of being the most destructive technology in generations. The tech industry has already done a lot of harm to our social fabric with social media, gambling, and other addictive innovations replacing real life experiences and personal connections. This has led to well documented increases in depression, loneliness, and political extremism.

Now it seems AI is poised to eliminate most of the good innovations that tech brought about, and will probably crank social strife up to 11. It already feels like the foundations of the developed world have gotten shaky; I shudder to think what a massive blow will bring about.

I've read enough history to know that I really, really don't want to live through a violent revolution, or a world war, or a great depression.
by fredoralive | 2026-02-17 15:54:48+00:00
The Gamecube was competitive on graphics with PS2 and Xbox. It was the Wii where there console side moved away from keeping up in the cutting edge graphics race.

I’m not sure how successful it was, it was outsold by Xbox and PS2. Although the Xbox was a massive money pit for Microsoft. At least in Europe the Gamecube began to disappear from retail a fair bit before the Wii was out as well. Still, got things like a Wavebird for cheap on clearance though…
by NitpickLawyer | 2026-02-17 15:55:06+00:00
> I changed approach and had it spin up the application in question and told it that we only care about vulnerabilities that can be exploited directly via a simple HTTP call - not convoluted attack patterns. The agent therefore had a feedback mechanism to find exploits, and attempt them against the containerised app.

> Within 2-3 minutes it had found a 'promising' exploit, that initially failed because of some naïve filtering in the app. Another 2 minutes later it figured an encoding mechanism that bypassed the filtering the app did and it had found a complete RCE, and written a full proof of concept.

Yeah, the feedback loop brings it from "omg did you hear that curl closed their bounty program because of slop" to "cve or gtfo". I have no doubt there are many teams that are doing this at scale, even with less capable models (local oss). If the model has a feedback loop and an easily testable success criteria, this becomes a pass@n problem, and it scales with "just money".
Ask HN: How have your security policies kept up with AI?
by frenchtoast8 | 2026-02-17 15:55:20+00:00
I am a software engineer at a small startup that is in the middle of a transition to a medium sized profitable company.

To assist with this, I have been reassigned to work on security related tasks. Things like tightening up our firewalls and drafting up security related company policies which up to this point we have never had.

In the last 3 months there has been a noticeable increase in demands for these restrictions to be lifted for AI purposes. I don't know why it's so sudden. Maybe because of OpenClaw and similar projects getting steam lately, or maybe because directors feel compelled to spend some of the AI budget they've gotten this year. All I know is, I am now getting requests every week about things like adding exceptions to our production database firewall so AI companies can query it. Things we have never done in the 5+ years I've worked here.

I'm starting to feel overwhelmed, like one person trying to stop a train. The entire C suite talks about AI almost every day, and I feel no one shares the same security concerns as me. I wish I didn't have to worry about this, so I could focus on issues that I think are more urgent, like that we have no clear access policies which result in tons of people having admin access to tools they don't need.
by jlarocco | 2026-02-17 15:55:25+00:00
I was researching bluetooth low energy for a project, and discovered "Beacons": https://en.wikipedia.org/wiki/Bluetooth_Low_Energy_beacon

What's more insidious than just tracking people through the store is that the beacons can collect the bluetooth IDs of the devices they've seen and send it off to advertisers, who can use the UUID to connect a person's offline shopping with the online advertising profile they've built up for the person.
by notpushkin | 2026-02-17 15:55:33+00:00
> Revolut app stopped working so I emptied my account and opened a Wise account

Same, though I’ve never returned to Revolut.

Wise does have some quirks (e.g. they’ve blocked me from unfreezing or reissuing my cards recently for no apparent reason), but still they’re way way closer to zero-bullshit than any other neobanks I’ve tried.
by ogurechny | 2026-02-17 15:55:37+00:00
This is actually both.

It's not a big secret to journalists that such stories are just another kind of entertainment that never fails to attract the public. Certain people constantly work in that genre.

Readers want to be assured that something is excluded. I visit the good sunny side of the internet, and horrors are on some “darknet”. I live in the better part of the town, and horrors happen in bad districts. Me and my friends are “normal people”, never “victims”. Wars are far away. I am not responsible for anything.

Certain people's careers are made in such pandering.

So they tell a thrilling detective story, and at the same time publicly shame Facebook to make people think that more control over “important services” and more backdoors are needed. Only for serious cases, of course. You wouldn't want to support those people, would you? Good. Now show us you licence number for internet usage.

Lies upon lies upon lies.
Show HN: Broomy – Open-source app for working with many AI agents at once
by robotelvis | 2026-02-17 15:55:38+00:00
Hi HN, I'm Rob. I built Broomy because I got frustrated with the one-thing-at-a-time workflow of existing coding tools.

When I work with AI coding agents, I typically have 5-10 tasks going at once across different branches. The agent works on one thing while I review another, merge a third, and kick off a fourth. Existing IDEs aren't built for this — they assume you're doing one thing at a time.

Broomy is a desktop app (Electron + React) that lets you:

- Run lots of agent sessions simultaneously and see at a glance which are working, idle, or need your attention
- Work with any terminal-based agent (Claude Code, Aider, Codex, etc.)
- Review code, manage branches, and handle merges with AI assistance
- Use built-in IDE features (Monaco editor, file explorer, git integration, inline terminals) — all designed around multi-agent workflows

I've been using it daily for a few weeks and my productivity has dramatically improved compared to working in Cursor. The key insight is that most of the time you spend "coding with AI" is actually waiting — and Broomy lets you fill that wait time with other tasks.

This is a first public release (v0.6.0). Pre-built binaries are available for macOS. It should work on Linux and Windows too — build from source is straightforward (clone, pnpm install, pnpm start:dist).

MIT licensed. Built as a personal project, not affiliated with my employer.

Repo: https://github.com/Broomy-AI/broomy
Website: https://broomy.org

Happy to answer questions.
by kuboble | 2026-02-17 15:55:51+00:00
What resonates the most with me in the article is this quote

> I was so naïve that I thought progress could only go one direction, because that’s all I’d ever known.

As kids growing up in Eastern Europe in the 80s and 90s the world felt like its getting better every year. More peace, fewer borders, more opportunities, better technology.

Everything was getting better every year and we took it for granted that this is a law of nature.
by chose166 | 2026-02-17 15:56:04+00:00
Hi HN,

I built CasperAI - an MCP server that creates a unified semantic context layer across dev tools (Slack, GitHub, Jira, Notion) and links them to your source code. All data stays local in SQLite.

THE PROBLEM:
When someone mentions authenticateUser() in Slack, there's no way to programmatically find where it's defined (src/auth/handler.ts:127), the GitHub PR that introduced it, or the Jira ticket that requested it. Engineering knowledge is fragmented.

HOW IT WORKS:
Uses regex-based pattern matching to extract code references from natural language, then resolves them via filesystem traversal. When you search "authenticateUser", you get the Slack thread + file location + PR discussion in one result.

Quick start: npx casperai init

TECHNICAL DEEP DIVE - Code Mapping:
I chose regex over AST parsing as a pragmatic trade-off:
+ Works across 15+ languages without language-specific parsers
+ Fast - no need to parse entire files
+ Handles informal mentions ("check the auth function")
- False positives possible
- Can't distinguish definition vs call site

Future plan: tree-sitter for precise AST-based resolution.

CONFESSION - Built with Claude Code:
Full transparency: ~80% of the TypeScript was generated using Claude Code (Anthropic's CLI). I handled architecture, debugging, and docs. Claude Code wrote the MCP server, PII redaction, regex patterns, and SQLite schema.

This will be polarizing for HN, but I think AI coding tools are force multipliers. I couldn't have shipped this speed alone, but I still had to understand the architecture, make trade-offs, and test edge cases.

QUESTIONS FOR HN:
- Is regex-based code mapping good enough, or should I prioritize tree-sitter?
- What other platforms should I integrate?
- Thoughts on AI-generated code in production?

Stack: TypeScript, Node.js, SQLite, MCP SDK
License: MIT

Happy to answer questions about the implementation or the AI-assisted workflow.
by vasilyt | 2026-02-17 15:57:09+00:00
Nothing. They probably will, eventually. But their consumer business model relies on session limits pushing users from Pro ($20) to Max ($200). Native scheduling would directly undermine that — if Claude can queue work across your idle time, there's less reason to upgrade. I think that conflict of interest delays it longer than people expect. And if they do ship it? Great, the problem gets solved either way. Until then, Daymon exists.
by kewonit | 2026-02-17 15:57:54+00:00
I currently use opensky network api on the client side itself using their anon user thing, which limits me to burn credits, it could in practice load the entire world but you would get rate limited pretty much instantly by opensky.

For the same reason, I made it open source, you can throw in your keys in there and can render all the flights, but keeping it open and free was the priority here, so had to compromise on the distance, but within a given city it has all the flights accurately.
by futune | 2026-02-17 15:57:55+00:00
My first thought was red team. Anyone that is capable of complying to the request is in breach. Ctrl-F "red team" found nothing.

But then I read the answers and apparently a couple of them had the same idea.

Not sure why it's not the most upvoted option, it seems like the only one that is is not self refuting, as the sincere version of those hypothetical businesses would starve from terminal stupidity... Perhaps my reasoning is wrong?
by nh2 | 2026-02-17 15:59:08+00:00
There really is no benefit of splitting a functionality from it's test. Then you just have a commit in the history which is not covered by tests.

Splitting "handling the happy vs error path" sounds even worse. Now I first have to review something that's obviously wrong (lack of error handling). That would commit code that is just wrong.

What is next, separating the idea from making it typecheck?

One should split commits into the minimum size that makes sense, not smaller.

"Makes sense" should be "passes tests, is useful for git bisect" etc, not "has less lines than arbitrary number I personally like to review" - use a proper review tool to help with long reviews.