Top all-time · #1837
Chris Krycho
Personal blog · v5.chriskrycho.comprogrammingphilosophy
Chris Krycho's personal blog at v5.chriskrycho.com covers programming and philosophy. Since 2020, 42 different Hacker News readers have linked it 107 times, most often “jj init – getting serious about replacing Git with Jujutsu”. It is still writing: the last post was on 2026-10-25, and you can follow it by feed.
Learning in public: on theology, technology, ethics, software, politics, art, and more.
Most-linked posts?
- jj init – getting serious about replacing Git with Jujutsu10 people · 10 mentions · first linked 2024-02-02
- Jujutsu Megamerges and jj Absorb7 people · 9 mentions · first linked 2024-12-24
- Developing a reactivity system with Lamport clocks and incremental computation2 people · 4 mentions · first linked 2020-09-22
- Seeing Like a Programmer: Resiliency, Limits, and Moral Hazards2 people · 2 mentions · first linked 2024-11-01
- You Have to Type It Out2 people · 2 mentions · first linked 2024-03-12
- Feeds are not fit for gardening2 people · 2 mentions · first linked 2023-07-22
- Reflections on a Month with BBEdit and Nova2 people · 2 mentions · first linked 2023-07-31
- Ratchets over Levers2 people · 2 mentions · first linked 2024-03-06
- Writing Robust TypeScript Libraries – A Subtle Art2 people · 2 mentions · first linked 2020-10-24
- Using Drop for safety in Rust2 people · 2 mentions · first linked 2024-12-12
What Hacker News says?
I would argue that the word "proof" in the title might be misleading you. From the post and the example he links, the point is that if you don't at least look at the running code, you don't know that it works. In my opinion the point is actually well illustrated by Chris's talk here: https://v5.chriskrycho.com/elsewhere/seeing-like-a-programme... (summary of the relevant section if you're not going to click) >>> In…
Comment linking /elsewhere/seeing-like-a-programmer/
on “Your job is to deliver code you have proven to work”Submitted Writing down what I do in Obsidian as a story · 358 points
HN discussionRelated and possibly helpful: * How Glimmer.js implemented autotracking: https://www.pzuraq.com/blog/how-autotracking-works * Discussion specifically on Lamport Clocks and autotracking: https://v5.chriskrycho.com/journal/autotracking-elegant-dx-v...
Comment linking /journal/autotracking-elegant-dx-via-cutting-edge-cs
on “Xilem: An Architecture for UI in Rust”Submitted Things I Was Wrong About: Types as a story · 351 points
HN discussion> for me, everything git is a pain point Yeah, I was looking for something (or "things") specific. An "I hate everything about it" explanation doesn't really compel me to try out the alternative. > "megamerges" are one such example. ive shared many links, here and in other posts I read through one megamerge link you shared ( https://v5.chriskrycho.com/journal/jujutsu-megamerges-and-jj... ). So the argument seems to…
Comment linking /journal/jujutsu-megamerges-and-jj-absorb/
on “Jujutsu for everyone”Submitted Isolating complexity is the essence of successful abstractions as a story · 244 points
HN discussionYes. I have one repository, which is a fork of an OSS project, with a 7-way octopus merge of various patches I carry, and another 2-way merge on top of that one. Every week or two I pull the latest changes from upstream and I rebase all 9+ branches in a single command. If there are conflicts on any one of the parallel streams of work, I can trivially fix each conflict individually in any order I want. Jujutsu does n…
Comment linking /journal/jujutsu-megamerges-and-jj-absorb/
on “Jujutsu for everyone”Submitted Some Thoughts on Zig as a story · 170 points
HN discussionhere's a few links that you might find useful. But it would be worth exploring the other recent hn discussions on the topic - i and other unabashed evangelists have shared a lot. A great "Megamerge" workflow https://v5.chriskrycho.com/journal/jujutsu-megamerges-and-jj... https://ofcr.se/jujutsu-merge-workflow And an absolutely fantastic TUI that wraps jj cli. Might be the best TUI ive ever used, and consistently get…
Comment linking /journal/jujutsu-megamerges-and-jj-absorb/
on “Jujutsu for everyone”Submitted jj init – getting serious about replacing Git with Jujutsu as a story · 142 points
HN discussionIt's not quite clear to me what you're talking about, but I think the Megamerge workflow might be something you'd be interested in. https://v5.chriskrycho.com/journal/jujutsu-megamerges-and-jj... https://ofcr.se/jujutsu-merge-workflow
Comment linking /journal/jujutsu-megamerges-and-jj-absorb/
on “Jujutsu for busy devs”Submitted Using Drop for safety in Rust as a story · 116 points
HN discussionHere's a few great links that might be what you're looking for https://v5.chriskrycho.com/essays/jj-init/ https://v5.chriskrycho.com/journal/jujutsu-megamerges-and-jj... https://ofcr.se/jujutsu-merge-workflow
Comment linking /journal/jujutsu-megamerges-and-jj-absorb/
on “Jujutsu for busy devs”Submitted MusicXML and Percussion Notation as a story · 84 points
HN discussionOh, and if you think JJ "forces you to work on one thing at a time" then you have really missed a lot of what JJ offers. Look up "megamerge" - I've done this, and it works well. Here's a link: https://v5.chriskrycho.com/journal/jujutsu-megamerges-and-jj...
Comment linking /journal/jujutsu-megamerges-and-jj-absorb/
on “I struggled with Git, so I'm making a game to spare others the pain”Submitted Jujutsu Megamerges and jj Absorb as a story · 82 points
HN discussionhttps://v5.chriskrycho.com/essays/jj-init/ > The problems with Git are many, though. Most of all, its infamously terrible command line interface results in a terrible user experience. In my experience, very few working developers have a good mental model for Git. Instead, they have a handful of commands they have learned over the years: enough to get by, and little more. The common rejoinder is that developers ought…
Comment linking /essays/jj-init/
on “I struggled with Git, so I'm making a game to spare others the pain”Submitted Seeing Like a Programmer: Resiliency, Limits, and Moral Hazards as a story · 76 points
HN discussionThis one is probably the best intro I've read: https://v5.chriskrycho.com/essays/jj-init/ Really, really good examples and walkthroughs with easy to understand, animated console sessions that show real-world-ish use cases including conflict resolution and why JJ's model makes it easier. Really good read and easy to digest because of the animated session replays. My main takeaway is that the missing pieces right now…
Comment linking /essays/jj-init/
on “I struggled with Git, so I'm making a game to spare others the pain”Submitted This Is Not Your Last Job as a story · 60 points
HN discussion> recommend this Spolsky classic on how to convince one to try a new VCS: https://hginit.github.io/ Based in part on the parallels of their respective titles, this post may be similar enough in style to potentially be informative about Jujutsu: https://v5.chriskrycho.com/essays/jj-init/#outline I've linked directly to the Outline/TOC in order to provide a more immediate overview of the post's content but there's als…
Comment linking /essays/jj-init/
on “Jujutsu VCS: Introduction and patterns”Submitted Developing a reactivity system with Lamport clocks and incremental computation as a story · 45 points
HN discussionI think you could achieve this with a variation of the "Working on Two Things at the Same Time" pattern[0], also explored more widely here[1] (with e.g. using private commits). Basically, just have a local-only merge-change that combines whatever you're working on, with all your local modifications. You can then even just create new changes on top of the `<dev>` change, and then rebase each into your branch when you…
Comment linking /journal/jujutsu-megamerges-and-jj-absorb/
on “Jujutsu VCS: Introduction and patterns”Submitted Ratchets over Levers as a story · 39 points
HN discussionI’m curious, given salsa’s[1] so-far quite-effective use of the incremental computation (Adapton/Incremental/Bonsai), if you could elaborate on some of the pitfalls there for UI specifically. The primary salsa use case so far (in rust-analyzer[2]) is obviously fairly different from the pure UI use case, as it’s allowing other things to do the work on the UI and is using it purely for the incremental computation of c…
Comment linking /journal/autotracking-elegant-dx-via-cutting-edge-cs/
on “Towards Principled Reactive UI”Submitted Misusing TypeScript assertion functions for fun and profit as a story · 38 points
HN discussion> There are two interesting contenders worthy of mention: Pijul [and] Fossil Also might be worthy to mention Jujitsu [0], a vcs out of Google with a git-compatible backend and more ergonomic interface [1]. [0]: https://github.com/martinvonz/jj [1]: What if we could replace Git, Jujutsu might give us a shot https://v5.chriskrycho.com/essays/jj-init/
Comment linking /essays/jj-init/
on “Twenty years is nothing”Submitted Infrastructure, Common Goods, and the Future of Open Source Software as a story · 23 points
HN discussionA while ago I remember reading about this new VCS project Jujutsu (jj) that claimed to be both simpler and more powerful than git. A bold claim! Didn't really think much of it at the time beyond well this is interesting. But later, about 9 months ago, Chris Krycho published this lovely blog post[1] about jj and a thread about it was quite popular on HN. Again, really interesting, but not something I was going to dig…
Comment linking /essays/jj-init/
on “On Building Git for Lawyers”Submitted Feeds are not fit for gardening as a story · 17 points
HN discussion