Is it to have more sympathy for LLMs? More 1:1 with a local dev environment?
77 karma · joined September 25, 2019
Is it to have more sympathy for LLMs? More 1:1 with a local dev environment?
Ideally, we would have a mechanism to verify that a given build _matches_ the source for a release. Then it wouldn't matter where it was built, we would be able to independently verify nothing funky happened.
This is actually happening, albeit slowly, with recent efforts around WASM etc. If you want a fun hypothetical of where this all goes, check out the talk "The Birth & Death of JavaScript". Link here: https://www.destroyallsoftware.com/talks/the-birth-and-death...
Using a server to tie break and locking has worked pretty well for us
1. With wall-clock decided by clients, A + B changes will win since C's wall-time is earlier (yes, C could lie, but still would converge).
2. With wall-clock decided by server C will win and everyone will agree.
3. With causal ordering, everyone will agree that A + B won.
2 is not a CRDT since it requires a central server, but I think 1 would still count? Or stated another way: I'm not sure the _convergence_ is what determines if these strategies are CRDTs or not, but rather whether or not this decision making is _distributed_ or not.
Why do you think that was such a strong signal?
Our team ended up having a similar take away, we wrote a blog post detailing our approach and experience here: https://hex.tech/blog/a-pragmatic-approach-to-live-collabora...
For the most part is been surprisingly solid! I was very much expecting to need to completely rewrite it by now, but its met most of our present needs.
The only real shortcoming is not being able to support line specific commenting. While we _could_ support it, any minor update to the text would result in the comment being marked 'stale' with a high false positive rate. I've considered adopting CRDT/OT just for the text editing portion to solve this.
(Disclaimer, I work at Hex but wish more tools would embrace ejecting to code in the same way)
Your comment feels like a bit of unfair judgement, particularly since a lot of those you are implying that are 'only 1x programmers' are effectively donating their time.
How much of a concern this is depends heavily on what the original source was.
I think as time goes on, live collaboration is becoming “table stakes” for a lot of tools.
This is opposed to releasing it all at once, meaning you could sit down and learn the new things in one go, and apply that knowledge for some time before needing to learn anything else.
I kinda see a trend that projects started after x date tend to use React over Angular, but I am unsure of what x is or how universal this is.