You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When teams collaborate, there are two general frameworks: (1) an agreed-upon version that is constantly shared, or (2) many versions that need to be intentionally shared and merged together at different points in time. Decentralized technologies often introduce framework (2) as a collaboration model but doesn't support version control out of the box. Git is a protocol that helps people collaborate; it is very much intended for developers and is biased towards text (lines of code). Beyond Git, version control can be a mess.
The Design Solution
A Layer is a number of changes grouped together and -- ideally -- named. This forces collaborators to intentionally log and share changes they make to a common document. The metaphor is a "stack of layers" where the top layer is the latest version of the document.
Examples
Almanac uses Layers for their text editor
Why Choose Layers?
Layers can be a simplified presentation of a pull request.
Best Practice: How to Implement Layers
Show authorship colors (cf. Etherpad)
Potential Problems with Layers
Do not use layers in visual contexts; layers are an existing concept in visual editors such as Photoshop, Figma etc.
Offer a toggle for tracking changes.
We are unsure about the word 'layer', and are hoping to test it. Almanac used it in 2022 as the Upwelling essay was being developed, but it is being sunset early 2025.
The Take Away
Git's collaboration model can be too complex for non-developers, it is worth experimenting with alternative terms that are more intuitive.
The Design Problem
When teams collaborate, there are two general frameworks: (1) an agreed-upon version that is constantly shared, or (2) many versions that need to be intentionally shared and merged together at different points in time. Decentralized technologies often introduce framework (2) as a collaboration model but doesn't support version control out of the box. Git is a protocol that helps people collaborate; it is very much intended for developers and is biased towards text (lines of code). Beyond Git, version control can be a mess.
The Design Solution
A Layer is a number of changes grouped together and -- ideally -- named. This forces collaborators to intentionally log and share changes they make to a common document. The metaphor is a "stack of layers" where the top layer is the latest version of the document.
Examples
Why Choose Layers?
Layers can be a simplified presentation of a pull request.
Best Practice: How to Implement Layers
Potential Problems with Layers
The Take Away
Git's collaboration model can be too complex for non-developers, it is worth experimenting with alternative terms that are more intuitive.
References & Where to Learn More
https://www.inkandswitch.com/upwelling/
The text was updated successfully, but these errors were encountered: