The git backend already has a ton of "delta DB optimizations" (in git packs and other tools) and it's really just the git frontend that needs a little massaging (`--first-parent`, primarily) and the vast world of "subway-diagram-first/only" Git UIs that should have more "drill down" `--first-parent` counterparts simply because so many people find the subway diagrams ugly/confusing/distasteful.
I can’t help but feel like it is all enabling a level of developer surveillance with which I am deeply uncomfortable, though.
If Gemini seems stupid nowadays, it's only because they're being stingy with compute allocation.
0 - https://en.wikipedia.org/wiki/Piper_(source_control_system)
AI's code writing velocity makes this even worse, there's no way I can be simultaneously working on a code base while an AI agent is running around it doing something else.
It feels like maybe there's a ghost of an idea here about how to get the best of both worlds, but I'm not sure I follow the throughline on it.
One thing I would really love to see, however, is a way to better attach code review comments to the specific version of code they were left on. I find it quite difficult to do with git and github, considering that commit hashes change every time one is forced to rebase (say, for example, to handle a merge conflict).
Do you expect DeltaDB to help address this problem?
What I am saying is that we have git (and before that Subversion and CVS) have a full history so it can resolve the latest state and we made that somewhat of a hallmark in putting more supposed meaning into recording ever more in that history, but we rarely stopped to check if that is all that useful. Recording even more, all the time, reminds me of these work group meetings that have minute records of every bike shedding meeting, that, honestly, no one ever looks at after the next meeting ever again. I don't think there is value in minute record keeping, it becomes too much noise that just makes it harder to parse. Now also adding all AI conversation and agent thinking to that tree? What's the value of that in like 3 months down the line? I don't see it.
> I have never been a big fan of pull requests.
I guess this partly explains why Zed (still) lacks a PR review flow, let alone a coherent one, despite some interest [1]. Pretty much the only reason I’m still with JetBrains.
[1]: https://github.com/zed-industries/zed/discussions/34759
This benefits those who make the machines you have conversations with and those that invest in them.
If previously you needed to take action 1, 2, 3 to go from state A to B, all you saw was the change from A, B. Now you see intermediates 1, 2, 3 and can train the models to skip straight to B with the added context of the intermediate states.
Not without cons of course: commit byte size, public WIP work and leaked secrets/unwanted edits.
I’m highly skeptical of this claim. For any complicated feature, there’s always a design doc (or an RFC, or a wireframe) and that’s what people used for discussion. Discussion in a PR are mostly about whether to accept the code, reject the feature, or provide feedback about alternate implementations. It’s not for pair programming or directing design.
Collaborating together in a research lab (brainstorm session) is not the same as asking feedback for a journal article (PR). What is described in the article is pair programming with extra steps.
I also like the AI tools, the inline assistant is good and the agent is also pretty nice and well integrated into the editor without it being the focus point. I'm not against using AI but I certainly don't use it as much as a lot of people do.
That being said, I really dislike this recent push towards becoming more like a cursor wannabe. They have a new (for now) opt-in default layout that almost hides the editor panel in favour of the agent threads and agent panels. And now this. I don't want to switch editors, but if they keep pushing a different workflow from what I use it might send me back to Jetbrains...
Our human ability is not defined by our _absolute_ output, but, by the quality of the _delta_ applied to an engineering artefact
Great engineers obsess over every keystroke
With LLMs, a much smaller number of keystrokes can create a much larger and more positively impactful delta
Every delta to the codebase can tell us some informational property about the behaviour of the system and storing that information WILL prove to be useful in the future
I don't want my thoughts to be serialized, version controlled and publicly accessible.
i've settled on all of this context attached to issues in a project management system and referenced from commits
it works just fine - its not like your agent cannot read your issue tracker
Many of the product decisions that Zed's made caused me to switch to Zed for my daily driver IDE (previously JetBrains). The recent AI agent threads and improvements around diffs really solidified the move.
1. It is fast and snappy. Nothing comes even close besides vim (and I don't mind going full time to it if I have to)
2. The ability to completely shut off and block any slop machine features from interfering with my workflow or leak code back to sloppenai, sloppus or any other self-installed-worst-security-practice-backdoor garbage.
Having said that, I hope they don't remove that ability in the future and enforce the "slop is so good man, you should try it" philosophy.
Why stop at zed? The trillion dollar investment AI companies have amassed was nominally for datacenters, but as those costs rise and completion timelines extend past the typical business planning horizon, it becomes more efficient to put the money to work elsewhere. You can buy whatever you want with a trillion dollars.
Honestly all of this drives me back towards nvim or notepad sometimes.
I have had a jetbrains subscription since pycharm came out, and the killer feature was always the visual debugger. Seems nearly quaint now.
What specific things do you like about zed?
The problem is, is that it works, if you assume "working" means the software sellers get wealthy.
There's a reason that most waitstaff wear black. They should blend into the background, and not be what the folks at the table are talking about. In rare instances, restaurants exist, where the waitstaff is the service.
In software, though, you're being served by a waiter wearing a clown suit, screaming slogans at you, and serving you lukewarm, pre-chewed goo.
I am happy about even though I've never tried gram, because if zed goes to shit there will be an alternative, which hopefully pressures zed to stay sane
The worst actor would write a new module and check nothing in until it kinda worked. I think it went along with the fragile ego that had people sneaking around fixing bugs in his code without talking to him about it first. He wrote convoluted code that exhibited Kernighan's law and he was about 10 years too senior to still be doing that shit. He bragged about how 'powerful' his code was as if that was a compliment instead of a harbinger. Many times I found bugs in code from the initial commit. Just... give me something man. Anything. Fuck.
Just because you tried random shit until you found the problem doesn't mean you have to fess up to it. You can tell any story you want that gets us from point A to point B now that you know point B is attainable. You can rearrange the commits the way you would have written it if you knew exactly what needed to be done. Drop 90% of the code you wrote and immediately deleted again, anything that doesn't support that narrative.
In law enforcement you have something called Parallel Construction. You can know a suspect is guilty by knowing facts that are not admissible in court. So you need to rediscover those same facts by the book. Grab his trash on trash day. Interview neighbors. Get enough circumstantial evidence to get a search warrant, then go find that evidence again.
> DeltaDB breaks your work into a stream of fine-grained deltas. Where Git captures a snapshot at each commit, DeltaDB captures every operation in between and gives each one a stable identity.
I was curious about giving Zed a try, now that it has an emacs keymap. Not anymore. This is such a horribly invasive feature, I absolutely do not want my colleagues reviewing every single intermediate edit, down to the keystroke, that went into the commits I publish for review.
Before I put a PR up for review, I'll sometimes edit my commit history a little bit in magit to make it more linear and digestible--maybe update descriptions, squash some adjacent commits together, etc. This just throws that whole aspect of the job out the window and says "hey, colleague, hoover up this firehose of deltas and enjoy it".
And what the hell does this even mean?
> What we're really after is simple: the conversation with the agent becomes the only conversation you need to have.
Lmao. No. Wrong.
I personally want better read-only code tools, or maybe the return of UML?
The “calm technology” book has an handful of advices, but one of the best example is the xbiff program. It switches picture when you have new mail on your local spool.
> I also object to making myself and my work depend on paying a subscription fee to anyone. I don't want an outage at Anthropic to affect my ability to do my work. I think it is a grave mistake to build anything on such shaky foundations as the sustainability and profit margins of the AI industry.
Someone actually sensible, excellent.
https://github.com/gitsense/gsc-cli/blob/main/internal/cli/r...
you can see that every file has a code block header with a UUID and the AI that was attributed to it. With the UUID, I can tell exactly how the code came about.
What they are working on will be more useful for AI code provenance. It is only a matter of time before you are expected to show your chats with AI as part of the code review and for performance reviews.
So I don't see human collaboration being the main use case. I see tracking, studying and improving the Human-AI relationship...and seeing if somebody should be promoted or not.
An interesting take I've heard is, we will have a token/impact stat where if you spent a shitload of tokens to produce the same impact as somebody else who spent a lot less, you will be the prime candidate for layoffs and/or less pay. This is why I think AI code provenance will become a serious thing in the future.
Edit: After further inspection, I think I'm jumping ship before it's too late. And I'll look, see if there's a way to lend a hand or two when I have time!
Seems like you copied the ellipsified version, so what we get is https://github.com/gitsense/gsc-cli/blob/main/internal/cli/r
I have never been a big fan of pull requests.
Before agents, it was easier to believe that the ceremony of trading comments on snapshots was an effective way to collaborate on software, but it never really worked for the Zed team. We frequently work together in the same worktree, building trust and shared understanding by discussing the code as we write it. GitHub doesn't let you talk about code until after you commit and push, but by then our most important conversations are usually already over.
So in 2021, we founded Zed to move beyond the constraints of commits. Our plan was to build an editor worthy of the world's best developers, then offer a better way to work together inside it. We didn't foresee then how the problems we'd spent years thinking about in the context of human-to-human collaboration would become even more important when collaborating with agents.
Increasingly, the conversation that generates the code is becoming the true source of our software. That conversation unfolds continuously and must be cross-referenced to the code as it changes. Git, organized around discrete commits, was never designed to support this.
So we're building something that is. We call it DeltaDB, a new kind of version control built on a single coherent abstraction that transforms your conversations with agents and the worktrees they edit into shared artifacts. We've made a ton of progress since I first spoke about it last fall, and with a beta version ready in a few weeks, I'm excited to share more about what we're launching.
DeltaDB breaks your work into a stream of fine-grained deltas. Where Git captures a snapshot at each commit, DeltaDB captures every operation in between and gives each one a stable identity. Because every delta can be addressed on its own, you can point to the code at any moment in its evolution, even as it keeps changing. That lets us version a worktree as it evolves, together with the conversation driving it.
A message and the edit it produced are recorded side by side, so neither drifts away from the other. Because DeltaDB embeds conflict-free replicated worktrees, many people and agents can edit the same files at once across different machines. The files are real: agents work in them through a terminal, and you can mount the whole worktree to disk whenever you want your own tools on it.
Because every reference is anchored to a delta instead of a line number, it survives as the code moves underneath it. From any line in a past conversation, you can jump to that code as it stands now or as it stood the moment the agent wrote it. From any line of code, you can find the conversation that produced it and every conversation that has touched it since.
Agents can draw on it too. They pick up the context behind the code they're touching or convene the prior agents that worked on it and ask why it's written the way it is.
What we're really after is simple: the conversation with the agent becomes the only conversation you need to have. A teammate can join while the work is still happening, talk to the agent that did the work, and annotate as they go, without waiting for you to commit and push first.
Pull requests, review threads, and inline comments exist to reattach a discussion to code after the fact because the discussion and the code lived in separate places. Put them in the same place, and the ceremony disappears. Git and CI stay for what they're good at: running checks and connecting you to the rest of the world, rather than being the place collaboration is forced to happen.
Software now takes shape in the conversation, not the commit. DeltaDB is the version control built for that, and in a few weeks we'll start putting it in the hands of early users.
If you'd like to be among the first to try it, join the waitlist.
Check out similar blogs from the Zed team.
You can try Zed today on macOS, Windows, or Linux. Download now!
If you're passionate about the topics we cover on our blog, please consider joining our team to help us ship the future of software development.