News for hackers. Stuff that matters.

riwsky

Being charming and persuasive is legitimately one of the core skills of a CEO or any leader, though!
Re:Zed: Delta on Thursday August 13, 2026 @02:03AM (#49282254)
At the current pace of innovation, the 2020s might even see us catch up to where Google Wave was in 2009. Exciting times.
Re:Solid and Clean Code never felt solid or clean to me on Thursday July 02, 2026 @09:31AM (#48761334)
HLA
Re:How many of the 170k English words do you know? on Friday June 19, 2026 @05:54PM (#48603717)
A much better test, which dynamically adjusts difficulty level: https://www.myvocab.info/en
Re:Defeating Git Rigour Fatigue with Jujutsu on Monday May 25, 2026 @11:40AM (#48268129)
git let me make changes to local files without fear, since version control let me undo those changes easily.

jj let me make changes to my git commits without fear, since version control of the git state itself let me undo those changes easily, too.

Re:Defeating Git Rigour Fatigue with Jujutsu on Monday May 25, 2026 @11:34AM (#48268071)
That’s, uh, exactly how jj works!
Re:Jujutsu megamerges for fun and profit on Monday April 20, 2026 @08:46PM (#47843183)
With jj worktrees, you can even have agents working on each of those sub-megamerge branches in parallel.
Re:One Interface, Every Protocol on Sunday April 19, 2026 @12:04AM (#47821709)
My gRPC point is that it already gives you a language for describing interfaces and support for generating client types from it, and already abstracts the connection management[1]. If OBI just generated a gRPC ClientConn implementation to map the Invoke calls to eg REST paths, it’d inherit the large existing gRPC client ecosystem. That ClientConn interface can already technically capture what OBI calls binding executors. People don’t do this though because it’s not worth it.

[1]: https://github.com/grpc/grpc-go/blob/06fc26a196350499dd0cf2d...

Re:One Interface, Every Protocol on Friday April 17, 2026 @10:48PM (#47812735)
You’re still not getting it. Duck typing comes from the phrase “if it looks like a duck, and quacks like a duck, then it must be a duck”. The Wikipedia page contrasts it with nominative typing that requires a declaration, and calls out that duck typing does not need the adapter pattern. What you are calling duck typing is just “interfaces”.

Also “tasks.create” is morally a route. Eg grpc has web transports and autogenerated CLIs too; even without those, there’s no particular reason why the OBI “client layer” couldn’t just be, say, gRPC under the hood, with the OBI specs just being used to codegen adapters from the source protocol to gRPC. It would then immediately have a much more widely understood and supported client layer, with better performance, while remaining as simple to implement as the adapters to this new custom OBI runtime protocol.

Re:Slop Cop on Friday April 17, 2026 @09:51PM (#47812510)
Artificial intelligence predates computers.
Re:One Interface, Every Protocol on Friday April 17, 2026 @06:30PM (#47811287)
Ad-hoc duck typing—“if it looks like a duck[…]”—is the only kind that exists! The point of the term “duck typing” is that it doesn’t require explicit declaration of the contract by implementers, it’s not synonymous with polymorphism or with interfaces in general. Haskell type classes are not duck typed, nor are Swift protocols; Go interfaces are.

OBI is a boilerplate generator for the adapter pattern for service communication; its contracts are just another set of their own paths, payload shapes, and protocols. The distinction between “protocol” and “contract” in this context is nonsense.

Re:One Interface, Every Protocol on Thursday April 16, 2026 @12:39AM (#47788713)
The web IS the duck typing equivalent at the network boundary! That’s why plenty of alternative service providers can and do implement eg object storage APIs that work with aws s3 client libraries, or LLM APIs that work with Claude Code. The reasons these use cases are standardized (while others remain fragmented) are economic, not technical (lock-in isn’t as profitable for these alt services as raw adoption)—and so a purely technical solution like this is unlikely to address the crux of the problem.

Even purely on the technical level, this seemingly hasn't internalized the lessons of https://xkcd.com/927/

Re:System Card: Claude Mythos Preview [pdf] on Tuesday April 07, 2026 @09:10PM (#47683479)
Might makes right; brains hold reigns.
Re:A Case Against Currying on Monday March 23, 2026 @10:54AM (#47490389)
Sure—but that’s a property of the inferred types moreso than the mere application syntax. It can be hard to revisit or understand the type of JS or unannotated Python expressions, too—but unlike those cases, the unknown-to-the-reader type of the Haskell code will always be known on the compiler/LSP side.
Re:A Case Against Currying on Sunday March 22, 2026 @01:18PM (#47479760)
The functional programming take is that “the result of foobinade-ing an and b” IS “foobinade applied to two of its arguments”. The application is not some syntactic pun or homonym that can refer to two different meanings—those are the same meaning.
Re:Anthropic, Please Make a New Slack on Friday March 06, 2026 @04:17PM (#47281191)
cries in google wave

Show HN: Iosef, an iOS simulator CLI designed for agents

https://github.com/riwsky/iosef

Iosef is an iOS simulator CLI designed for agents, inspired by simonw/rodney, facebook/idb, and joshuayoes/ios-simulator-mcp.For those familiar with idb, some of iosef’s agent-oriented features include:Directory-level sessions, so agents in different worktrees don’t interfere with each other’s simulators.Automatic scaling of screenshots into the same coordinate space as the accessibility trees...

( Read More... | no comments | on HN )
In fairness to the skill author, this is indeed what Elon did to the US government with DOGE
Re:America Has a Tungsten Problem on Monday February 09, 2026 @06:15PM (#46952955)
Am I the only one who finds this material rather dense?
Re:Ask HN: What Are You Working On? (February 2026) on Monday February 09, 2026 @02:03AM (#46942401)
1. The collaboration and notation app for rock bands that I’d wished existed already: https://bandwith.rocks/about

2. A “runtime scheduler for humans” that I wished existed, too (think morning routines, travel checklists, and pomodoros in the same abstraction—but also a lot of support for ad-hoc rearrangement and addition of the task queue).

Re:A Broken Heart on Thursday February 05, 2026 @09:52AM (#46900273)
I agree that the font and emoji hops aren’t great for complexity or performance, but the problem in the post was in the rendering of a tiny SVG; serving it directly would not have avoided the problem.
Re:The threat eating away at museum treasures on Tuesday January 27, 2026 @10:36PM (#46790750)
Damn, wait: you mean the random HN commenter didn’t magically solve a difficult problem that has long-confounded experts, simply by bringing their unique insights and thirty seconds to bear?
Re:The lost art of XML on Saturday January 24, 2026 @02:10AM (#46741686)
> What's missing is a widespread replacement for XSLT

jq says hello!

"I give it a hot minute before this type of task tracking lands in Claude Code."

aaaaand right on cue: https://github.com/anthropics/claude-code/commit/e431f5b4964... https://www.threads.com/@boris_cherny/post/DT15_k2juQH/at-th...

Re:Stevey's Birthday Blog on Wednesday January 21, 2026 @08:00PM (#46713860)
“I’m going to go lay down and, uh, think about the problem with my eyes closed”

Oh good, mainstream coders finally catching up with the productivity of 2010s Clojurists and their “Hammock Driven Development”! (https://m.youtube.com/watch?v=f84n5oFoZBc)

Re:Claude's New Constitution on Wednesday January 21, 2026 @07:42PM (#46713762)
The underlying guiding philosophy isn’t relativistic, though! It clearly considers some behaviors better than others. What the quoted passage rejects is not “the existence of objectively correct ethics”, but instead “the possibility of unambiguous, comprehensive specification of such an ethics”—or at least, the specification of such within the constraints of such a document.

You’re getting pissed at a product requirements doc for not being enforced by the type system.

Re:Claude's New Constitution on Wednesday January 21, 2026 @05:45PM (#46712727)
This is an extremely uncharitable interpretation of the text. Objective anchors and examples are provided throughout, and the passage you excerpt is obviously and explicitly meant to reflect that any such list of them will incidentally and essentially be incomplete.
Re:Rob Pike got spammed with an AI slop "act of kindness" on Friday December 26, 2025 @03:04PM (#46395655)
Simon Willison: How this Devastating Perfect Reply Changed my Publishing Workflow, featuring Claude Code
Re:Rob Pike got spammed with an AI slop "act of kindness" on Friday December 26, 2025 @02:59PM (#46395592)
Dude, what? The fuckers set up an automated system that found people’s private email addresses and blasted them with unwanted emails. The outrage is exactly that they built a line-crossing machine. Your moralizing is incoherent.

Older »