Live data from Hacker News

Automerge: a new foundation for collaboration software [video]

youtube.com

11–20 of 33 posts

Re: Automerge: a new foundation for collaboration software [video]

#11

Relevant github link: https://github.com/automerge/automerge

Thanks for that. I wish they were a little more honest at the top when they claim there are no merge conflicts. Yes, they can automatically merge, but some cases will inevitably produce conflict objects and you are going to have to handle them in some way, or indicate to users that some of their edits have been lost.

The downside of anything like this is that for it to work well everything change must go through this framework because the fine grained change information is needed to effectively replay changes. That can make it hard to use existing domain libraries which might require a round trip data conversion as it may not be possible to differentiate between an insertion plus a deletion versus a complex modification.

Re: Automerge: a new foundation for collaboration software [video]

#13
I've recently started to get involved in software and application development. I thought it might be a good way to make money. Now I'm on the initial path, so sometimes it's hard for me to figure out some of the details, so I use the services https://fortegrp.com/quality-assurance-and-testing/ to check my software or the part that I managed to develop.

Re: Automerge: a new foundation for collaboration software [video]

#14
One sort of issue is that this only directly supports documents/DAGs, so representing many-to-many relationships is a bit iffy. This is similar to how Rust can't directly represent cyclic data structures.

It's not a huge deal, because working with indices works well enough, but it is a bit annoying.

Re: Automerge: a new foundation for collaboration software [video]

#15
post #12

MeteorJS solved this 12 years ago...but good to see more thoughts being put into this.

The key feature of automerge is that it's decentralized like git. Two people could work asynchronously and only occasionally merge their results.

Re: Automerge: a new foundation for collaboration software [video]

#16
I've recently started to get involved in software and application development. I thought it might be a good way to make money. Now I'm on the initial path, so sometimes it's hard for me to figure out some of the details, so I use the services https://fortegrp.com/quality-assurance-and-testing/ to check my software or the part that I managed to develop

Re: Automerge: a new foundation for collaboration software [video]

#17
post #8

Main takeaways from toying with both Yjs and Automerge: 1. Extremely difficult to build backend in other programming languages than Nodejs Rust implementations https://github.com/automerge/automerge-rs https://github.com/yjs/y-crdt You will cry looking at source code https://github.com/yjs/y-crdt/blob/main/yffi/src/lib.rs C-binding, FFI, etc 2. Both communities are great. Before committing recommend to go through iss…

I’m a bit biased, but I think 2022 will be the year of Y.js. What we’ve done or set up for the next year: * The Y-Collective to fund more and more related projects, like slate-yjs: https://opencollective.com/y-collective * The Hocuspocus backend you've discovered, which will become public in April or so * A cloud offering we’re bootstrapping to hopefully get even more money into the ecosystem * Y.js core support for…

CRDTs (and Y.js especially) will deliver what Google Wave promised. Not as a single unifying UI for communication, rather all existing apps can get collaborative power where it makes sense. And that is a game changer for me – as a user and developer. Exciting times indeed!

Re: Automerge: a new foundation for collaboration software [video]

#18
post #8

Main takeaways from toying with both Yjs and Automerge: 1. Extremely difficult to build backend in other programming languages than Nodejs Rust implementations https://github.com/automerge/automerge-rs https://github.com/yjs/y-crdt You will cry looking at source code https://github.com/yjs/y-crdt/blob/main/yffi/src/lib.rs C-binding, FFI, etc 2. Both communities are great. Before committing recommend to go through iss…

> 4. Rich editing similar to Google Doc is very very complicated subject with lot of landmines

They (Ink & Switch) are actually working on that too, see https://www.inkandswitch.com/peritext/

Re: Automerge: a new foundation for collaboration software [video]

#19
post #12

MeteorJS solved this 12 years ago...but good to see more thoughts being put into this.

It did not at all. It solved the problem of how to reflect a source of truth (the server) in somewhat real-time on the client through subscriptions. Also made some attempt to have edits that were persisted to client-side mini-mongo pushed to the server but this was best effort at most.

CRDTs are on a completely different level. They provide deterministic conflict resolution strategies through either/or causal and physical timestamps to ensure it's always safe to persist a write locally and later sync it with the server or not even have a server and sync directly which other peers.

Re: Automerge: a new foundation for collaboration software [video]

#20
post #8

Main takeaways from toying with both Yjs and Automerge: 1. Extremely difficult to build backend in other programming languages than Nodejs Rust implementations https://github.com/automerge/automerge-rs https://github.com/yjs/y-crdt You will cry looking at source code https://github.com/yjs/y-crdt/blob/main/yffi/src/lib.rs C-binding, FFI, etc 2. Both communities are great. Before committing recommend to go through iss…

I’m a bit biased, but I think 2022 will be the year of Y.js. What we’ve done or set up for the next year: * The Y-Collective to fund more and more related projects, like slate-yjs: https://opencollective.com/y-collective * The Hocuspocus backend you've discovered, which will become public in April or so * A cloud offering we’re bootstrapping to hopefully get even more money into the ecosystem * Y.js core support for…

How do the performance and features of Yjs compare to Automerge?
Post reply on HN