MurphyA/hacker-news huggingface dataset:
by rswail | 2026-02-04 12:31:58+00:00
Heinlein's sci fi didn't age well, because it was written for juveniles and then later his social ideas overtook his sci fi ones.

He had the same blind spots that Ayn Rand did, but perhaps better informed of the fascist-adjacent US culture.

One of the good sci fi/social ideas he had was about what it meant to "grok" something. groklaw.net of happy memory was exactly what that verb was supposed to mean, dive into something until you understand it at a molecular level.

The fact that Musk et al have stolen terms like "grok" and even "cyberspace" as if they own them is something I loathe.
Show HN: Webhook Skills – Agent skills for webhook providers and best practices
by leggetter | 2026-02-04 12:32:02+00:00
I built a collection of webhook skills because AI coding agents are surprisingly bad at webhook integrations. The generated code looks reasonable until you run it, then signature verification fails, raw body handling is wrong, or the middleware order breaks everything.

PostHog's research on LLM code generation (https://posthog.com/blog/correct-llm-code-generation) found that agents produce more reliable code when referencing known-working examples rather than reconstructing from training data. That's the approach here.

`webhook-skills` is a collection of provider-specific webhook implementations and best practices guides built on the Agent Skills spec (agentskills.io):

- Runnable examples (currently Express, Next.js, FastAPI, with more frameworks coming)
- Signature verification with provider-specific gotchas documented
- Best-practice patterns: idempotency, error handling, retry logic
- 11 providers at launch (Stripe, Shopify, GitHub, OpenAI, Clerk, Paddle, others), expanding based on my needs or requests.

Example:

# list skills
npx skills add hookdeck/webhook-skills --list

# install skills
npx skills add hookdeck/webhook-skills --skill stripe-webhooks --skill webhook-handler-patterns

Works with Claude Code, Cursor, Copilot. The examples are useful even without an agent: minimal, tested handlers you can copy directly.

PRs welcome for new providers and frameworks. I also built an AI-powered generator that automatically creates new provider skills. Point it at webhook docs, and it researches the signature scheme, generates verification code for each framework, writes tests, and opens a PR.
by 9dev | 2026-02-04 12:33:24+00:00
I work a lot with frameworks or languages that bring their own script runner or CLI companion to execute various tasks during development; quality checks or formatters, auxiliary tools like the Stripe webhook proxy, or interactive ones like a psql session into the database or a docker compose log stream; some of them longer-running, others single-shot executables.

Depending on what I'm doing, I need these processes either run alongside the project while I'm working on it (like watching source files), execute them automatically when something happens (like setting up a Stripe webhook proxy when I start the debug build), start them with environment configuration from the IDE (for example a database console), or really just have them close to the code (like a linter).

IntelliJ has a task runner built-in that can do all of this very easily, in a way that I can share it with the rest of my team, and don't have to bother with remembering specific commands.
by Eisenstein | 2026-02-04 12:33:45+00:00
> You could make a multitude of arguments against that perspective, but at least there is a conclusive reason for legal restrictions.

But that reason is highly problematic. Laws should be able to stand on their own for their reasons. Saying 'this makes enforcement of other laws harder' does not do that. You could use the same reasoning against encryption.

> You could make the same argument that a hidden camera in a locker room never causes any harm as long as it stays undetected; that is not very convincing to me.

I thought you were saying that the kids who were in the dataset that the model was trained on would be harmed. I agree with what I assume you meant based on your reply, which is people who had their likeness altered are harmed.
by heikkilevanto | 2026-02-04 12:33:53+00:00
A bit too mathematical for my taste. I learned my tuning theory by owning a harpsichord, and learning to tune it. A harpsichord is more sensitive to the "rounding errors" in equal tuning, owing to the richer overtones, so equal temperament does not sound quite as good a compromise as it does on a piano. And those historical temperaments are so much easier to tune by ear. Besides that is what the they used at the time of Bach, so historically correct for playing Baroque music.
by fsloth | 2026-02-04 12:34:28+00:00
> maybe France or the EU should ban its citizen from investing in the upcoming SpaceX/xAI IPO, and also Microsoft, NVIDIA, OpenAI, Google, Meta, Adobe, etc. ?

I'm sorry, but I don't understand any of the arguments above.

If we presume a dark control motivation then having shares in the entities you want to control is the best form of control there is.
by Yippee-Ki-Yay | 2026-02-04 12:35:49+00:00
Actually, I think your point of view isn't that far off from what the article suggests. The goal shouldn't be to stop a state actor or a reverse engineering expert, but simply to meet basic business requirements at the same cost.

It's more about risk management, like raising the bar high enough so that the revenue model isn't affected by a bored casual user with a free Android app.

That said, your point is correct, it's difficult to make a robust DRM (it has taken industry giants quite some time to come up with models that remain “secure” for a certain amount of time)... but we are talking about a cheap toy, in which I don't think anyone would invest much more than a few hours trying to breach it.
by Altern4tiveAcc | 2026-02-04 12:35:56+00:00
So, if someone hosts an image editor as web app, are they liable if someone uses that editor to create CP?

I honestly don't follow it. People creating nudes of others and using the Internet to distribute it can be sued for defamation, sure. I don't think the people hosting the service should be liable themselves, just like people hosting Tor nodes shouldn't be liable by what users of the Tor Network do.
by sebastianmestre | 2026-02-04 12:36:09+00:00
When you're a beginner you're a beginner, no way around it.

But understanding your weaknesses and working on them is huge, and I think most people just don't try to do it.

Being stuck for days is something to be overcome.

The next step would be being slow because you are trying out many different ideas and have no intuition for what the right one is.
by chrisjj | 2026-02-04 12:36:24+00:00
Thanks, but CSAM includes abuse, and the offence of your quote (via Google Translate) does not.

Your quote's offence looks like child porn. Max. 2 years jail. CSAM goes up to life, at least here in UK. Quite a difference.

> But it's safe to say that many images produces by Grok are CSAM by Swedish standards.

So the Govt/police would have acted against Grok, right? Have they?
by slg | 2026-02-04 12:36:31+00:00
>Other people have already pointed out the differences between implementing a check for a specific banned print and a vague categorical ban.

If you have seen that other people have pointed it out, you have already seen my response, but I guess people keep repeating the question, so I need to repeat the answer. This regulation establishes a working group to investigate this technology. If the technical aspects are as difficult as you claim, the proposed regulation will basically be voided. Your concerns are already factored into the proposal and therefore aren't a valid argument against the proposal.

That said, the regulation also makes it sound like "implementing a check for a specific banned print" would be an acceptable outcome of this law. From page 11 of the actual proposal:

>(b) be authorized to create and maintain a library of firearms blue-
print files and illegal firearm parts blueprint files, and maintain and
update the library, including by adding new files that enable the three-
dimensional printing of firearms or illegal firearm parts. In further-
ance of this authorization, the division may designate another govern-
ment agency or an academic or research institution in this state to
assist with the creation and maintenance of the file library. The
library shall be made available to three-dimensional printer manufactur-
ers, vendors with demonstrated expertise in software development, or
experts in computational design or public safety, for the development or
improvement of blocking technology and firearm blueprint detection algo-
rithms. The division shall establish safeguards to prevent unauthorized
access to and misuse of the library and shall prohibit all persons who
are granted access to the library from misusing, selling, disseminating,
or otherwise publishing its contents.

Think of it like the early stages of internet copyright protections, the first step is just cross-referencing the design with a list of known banned designs. Just like an early Youtuber could have mirrored banned videos to bypass copyright detection, people will likely still be able to manipulate designs in certain ways to get past this sort of ban. That's ok. Regulation like this doesn't have to be 100% effective to still be worth doing. The goal here is to make it more difficult for some random person with no expertise to buy a 3d printer, download some files, and print a weapon.

I'm willing to admit that it's entirely possible that a full on-demand analysis of whether a shape could potentially be part of a gun might not currently be possible and it might be years before that becomes feasible, but until then, simply banning a handful of the most popular STL files would still have value.
by fc417fc802 | 2026-02-04 12:36:51+00:00
Touche! I had no idea that term was in use. That said, I remain unconvinced that there is any danger of confusion here. Benchmarking compression algorithms is awfully specific; it's normal for fields to have their own jargon and conventions.

> Just because you don't see a use for mB doesn't mean it's open for use as a synonym of MB.

At the end of the day it's all down to convention. We've never needed approval from a standards body to do something. Standards are useful to follow when they provide a tangible benefit; following them for their own sake to the detriment of something immediately practical is generally a waste of time and effort.

I don't believe I hallucinated unit notations such as mB and gB. Unfortunately I don't immediately recall where I encountered their use.

> In case you're wondering, mHz is not a theoretical concept either.

Just to be clear, I was not meaning to suggest that non-SI prefixes be used for quantifying anything other than bits. SI standardized prefixes are great for most things.
by pxc | 2026-02-04 12:36:52+00:00
> My main critique is that it mixes tool installation with linting

If you use a tool like this via Devenv instead of using its built-in mechanisms for installing tools:

- you can add a linter without putting it on your path
- you can put a linter on your path without enabling any git hooks for it
- if you are already using a linter in a git hook, adding it to your environment will get you the exact same version as you're already using for your git hook at no additional storage cost
- if you are already using a linter at the CLI, and you add a git hook for it, your hook will run with the exact same version that you are already using at the CLI at no additional storage cost
- your configuration interface is isomorphic to the upstream one, so
- any custom hooks you're already using can be added without modification beyond converting from one format to another;
- any online documentation you find about adding a custom hook not distributed with the upstream framework still applies;
- and you can configure new, custom, or modified hooks with a familiar interface.
- any hook you write as a script or with substantial logic can also be plugged into a built-in task runner for use outside git hook contexts, where
- you can express dependency relationships between tasks, so
- every task runs concurrently unless dependency relations mandate otherwise.

Which imo solves that problem pretty well. My team uses that kind of setup in all of our projects.

> The interface isn't built with parallelism in mind, it's sort of bolted on but not really something I think could work well in practice.

I'm curious about what this means. Could you expand on it?

You might be interested in something like `treefmt`, which is designed around a standard interface for configuring formatters to run in parallel, but doesn't do any package management or installation at all:

https://github.com/numtide/treefmt

(That might address both of the issues I've replied to you about so far, to some extent.)

> It also uses a bunch of rando open source repos which is a supply chain nightmare even with pinning.

If the linters you're running are open source, isn't this what you're ultimately doing anyway? Nix gives a bit more control here, but I'm not sure whether it directly addresses your concern.

> I am working on a competing tool

Oh, dammit. Only after writing all of this out did I realize you're the author of mise. I'm sure you're well aware of Nix and Devenv. :)

Because I think your critiques make sense and might be shared by others, I'll post this comment anyway. I'm still interested in your replies, and your opinion of having some environment management tool plug into prek and supplant its software installation mechanisms.

And because I think mise likely gets many of these things right in the same way Devenv does, and reasonable people could prefer either, I'll include links to both Devenv and mise below:

https://devenv.sh/

https://mise.jdx.dev/
by AtlasGains | 2026-02-04 12:36:53+00:00
This is way cooler than I expected. I had no idea you could do near-space stuff for the price of a dinner, or that ham radio networks like WSPR could track something globally without satellites. Feels like one of those “old tech + clever hacks” projects that shouldn’t work but somehow does. Also kind of wild that a party balloon can end up halfway around the world.
by tizzzzz | 2026-02-04 12:37:39+00:00
Sometimes, maybe? AI was originally created to assist humans as a tool, but it’s evolved into something that blends both technology and emotion—a bit like a mentor, a helper, or even a companion. Instead of arguing about whether AI is “just a tool” or could be conscious, I think it’s more important to focus on how human emotions naturally attach to anything that feels helpful or responsive, whether it’s a living being or not. That’s just human nature.
by dorianzheng | 2026-02-04 12:37:40+00:00
I've been thinking about AI agents wrong. We keep treating them as this special thing that needs special infrastructure. But what if agent skills are just... functions you compose?

# Specify what skills the agent has - like importing modules
async with boxlite.SkillBox(skills=["anthropics/skills"]) as agent:

# Skills loaded: pdf, docx, pptx, xlsx handling
await agent.call("Read quarterly_report.pdf and summarize key metrics")
await agent.call("Export that to a PowerPoint with charts") # remembers context

That's SkillBox. You declare what skills your agent has upfront. Then call it like any other async function. State persists between calls.

The same skill works across Claude Code, OpenAI Codex CLI, and Gemini CLI. It's becoming the package manager for agent capabilities.

# Install skills dynamically - like pip install at runtime
await agent.install_skill("anthropics/skills")
# PDF, Word, Excel, PowerPoint
await agent.install_skill("example/web-scraper")
# Custom scraping skill
await agent.install_skill("your-company/internal")
# Your private skills

Orchestrating multiple agents:

async with boxlite.SkillBox(skills=["anthropics/skills"]) as doc_agent:

async with boxlite.SkillBox(skills=["example/web-research"]) as research_agent:

research = await research_agent.call("Find Q3 earnings for top 5 tech companies")

analysis = await doc_agent.call(f"Analyze this data: {research}")

Just async Python. No YAML. No special DSL.

The fun demo - Starbucks: One function call, Claude navigates the website, handles popups, adds coffee to cart. You watch via noVNC at localhost:3000.

Yeah, it runs in a micro-VM (hardware isolation). But that's a feature, not the point. The point is the programming model.
Why giving away the software might be the best solution
by MKBSP | 2026-02-04 12:38:06+00:00
We’re considering differentiating our product in the one way that really makes sense for us: giving it away.

The desktop version would be completely free:
- fully customizable,
- local-first,
- and with the ability to plug in your own AI API keys.
... No forced cloud, no lock-in.

Our thinking is that most competitors can’t or won’t do this. Instead of monetizing access to the core product, we’d grow through optional plug-and-play integrations (20% markup), plus collaboration and cloud features for teams.

The goal is simple: we want people to actually use the software.

Genuinely curious what HN thinks... Is this something you’d use? Is this a sane model, or a terrible idea?
by donatj | 2026-02-04 12:38:22+00:00
My general experience with Cherry style mechanical key switches is disappointment. In my almost 40 years of computing they are the only type of key switch that have consistently given me issue. I've owned at least five boards at this point with them, and they all eventually have issues.

They're like owning a sports car, you have to get used to opening them up and cleaning the contacts, desoldering switches, oiling stems. They're just too high maintenance.

I gave that life up when the P key stopped working on my WhiteFox mid outage and I had to frantically switch keyboards.

My daily driver for the last five years has been a rubber dome Sun Type 7. It has given me zero problems, no one complains about the noise, it's got that so ugly it's cool "retro chic" thing going even though I bought it new direct from Oracle.

I still have multiple IBM buckling spring boards from when I was a kid and none of them have ever given me an issue.
by Insanity | 2026-02-04 12:39:05+00:00
Advent of Code (which given my schedule runs into January). That’s the last time thinking hard about a coding problem, I don’t remember exactly if it was day 10 or 11 that had me scratching my head for a while.

I intentionally do not use AI though.

But I sympathize with the author. I enjoy thinking deeply about problems which is why I studied compsci and later philosophy, and ended up in the engineering field. I’m an EM now so AI is less of an “immediate threat” to my thinking habits than the role change was.

That said, I did recently pick up more philosophy reading again just for the purpose of challenges my brain.
by adriand | 2026-02-04 12:39:48+00:00
> But Pulp Fiction would not have been a masterpiece if Tarantino just typed “Write a gangster movie.” into a prompt field.

Doesn’t that prove the point? You could do that right now, and it would be absolute trash. Just like how right now we are nowhere close to being able to make great software with a single prompt.

I’ve been vibecoding a side project and it has been three months of ideating, iterating, refining and testing. It would have taken me immeasurably longer without these tools, but the end result is still 100% my vision, and it has been a tremendous amount of work.
by ontouchstart | 2026-02-04 12:40:43+00:00
After leaving my previous day job, I have some downtime to get back to thinking and realizing how much I love reading and thinking.

Contemplating the old RTFM, I started a new personal project called WTFM and spends time writing instead of coding. There is no agenda and product goals.

https://wtfm-rs.github.io/

There are so many interesting things in human generated computer code and documentation. Well crafted thoughts are precious.
by electsaudit0q | 2026-02-04 12:41:09+00:00
This reminds me of the value of reimplementing stuff yourself even if "better" solutions exist. Yeah he could've just used wireguard but then he wouldnt understand how tor actually works under the hood.

I did something similar years ago - wrote my own HTTP server from scratch in C instead of just using nginx. Was it practical? No. Did I learn more about sockets, parsing, concurrency than I ever would have from just reading docs? Absolutely.

Theres something about actually writing the code that makes the knowledge stick in a way that just using a library never does. Plus you end up with this deep intuition for when things go wrong because youve seen all the edge cases firsthand.

The "broke college student" framing is funny but I think its actually a feature not a bug. Constraints force creativity and deeper understanding.
by shsksj | 2026-02-04 12:41:16+00:00
Yep, this is the sweet spot. Though I still let it type code a lot - boilerplate stuff I’d be bored out of my mind typing. And I’ve found it has an extremely high success rate typing that code on top of its very easy for me to review that code. No friction at all. Granted this is often no larger than 100 lines or so (across various files).

If it takes you more than a few seconds or so to understand code an agent generated you’re going to make mistakes. You should know exactly what it’s going to produce before it produces it.
by lugao | 2026-02-04 12:41:31+00:00
I did some more reading and want to walk back my skepticism a bit. There is actually serious effort going into this, such as Google’s research on space-based AI infrastructure: https://research.google/blog/exploring-a-space-based-scalabl...

They highlight the exact reliability constraint I was thinking of: that replacing failed TPUs is trivial on Earth but impossible in space. Their solution is redundant provisioning, which moves the problem from "operationally impossible" to "extremely expensive."

You would effectively need custom, super-redundant motherboards designed to bypass dead chips rather than replace them. The paper also tackles the interconnect problem using specialized optics to sustain high bitrates, which is fascinating but seems incredibly difficult to pull off given that the constellation topology changes constantly. It might be possible, but the resulting hardware would look nothing like a regular datacenter.

Also this would require lots of satelites to rival a regular DC which is also very hard to justify. Let's see what the promised 2027 tests will reveal.
by bayindirh | 2026-02-04 12:42:20+00:00
That's pretty interesting. My first mechanical keyboard (Logitech G710+ with genuine Cherry Brown switches) withstood daily bashing of 7+ years, and it still types like the first day. Considering I wrote a Ph.D. on that incl. code and manuscript, it has been used relatively heavily, mixed with some gaming.

I have two other 75% mechanical keyboards, but they are not used as much, and I can't give any feedback on their longevity, but high quality switches do endure from my experience.

On the other hand, I had quite a few top of the line Microsoft keyboards, which were built very well, but their stems wear down after some time, even though their membranes survive. They become a workout instead of being a work enabler, then they are given away.
by rswail | 2026-02-04 12:42:43+00:00
And Fortescue and others are working on BEV vehicles for those giant Tonka trucks that move the raw ore to the processing areas at the top of the opencut.

They were also working on a "zero energy" train that would run "downhill" from the mines to the ports to charge its batteries that would then take the empty train back to the mine.

Battery tech wasn't sufficient (yet), but that doesn't mean it can't come back when solid state and sodium ion batteries come online.
by Aaargh20318 | 2026-02-04 12:43:11+00:00
> (Context: I was an iOS dev for 10 years on well known, large iOS apps - I can't explain how much I dislike Xcode).

Since you’re pretty new to mobile dev, count yourself lucky with the amazing dev tools you have today. Nothing like doing a bit of J2ME, Symbian S60 or BlackBerry development to learn to appreciate how far we’ve come.