As a result, academia and industrial science are largely institutions that formalize and describe ideas, not institutions where ideas originate, even though those ideas are often (wrongly) attributed to them.
It's even worse in the humanities, of course. I can pretty much guarantee that no philosophical idea was first conceived by the person it is usually attributed to. Most of those ideas are ultimately so trivial that countless people probably had them in the Stone Age already.
Given the problem that you want to accept updates to a database at multiple servers but cannot guarantee that all of those servers have the same notion of time and thus creating an accurate mutation vector that leaves the state of the database consistent, NIS+ used a tuple of (update, secondary-server-time) which the primary could query the secondary and compute a time delta (positive or negative) that would allow it to sort updates to the same database entry from multiple secondaries into a primary relative time order. It could then apply the updates and produce deltas for all secondaries which would apply any necessary changes to their database.
As a systems problem I really enjoyed the challenge.
A few years ago when I ended up down the rabbit hole on CRDTs and alternatives I learned of Liskov’s work on time vectors, which is still my top “things you didn’t know about Barbara Liskov” fact.
Lamport cites
> The origin of this paper was the note The Maintenance of Duplicate Databases by Paul Johnson and Bob Thomas. I believe their note introduced the idea of using message timestamps in a distributed algorithm. I happen to have a solid, visceral understanding of special relativity (see [5]). This enabled me to grasp immediately the essence of what they were trying to do.
The Maintenance of Duplicate Databases, Paul Johnson and Bob Thomas (1975). https://www.rfc-archive.org/getrfc.php?rfc=677
Leslie Lamport's website link to Time Clocks. https://lamport.azurewebsites.net/pubs/pubs.html#time-clocks
I have the impression that it is controversial about who invented the hybrid logical clock first as well. Although most people cite the Kulkani paper from 2015 I think?
Do people know who else claims to invent HLC first?
No. 0% fault of the author and 100% the fault of the Wikipedia editor. Generally speaking, people who are unwilling to ensure the accuracy of their work don't deserve the privilege to do that work.
This is all volunteer labor. Anyone can be a volunteer if they'd like. Wikipedia encourages mistakes (or "boldness") and assumes that due to a network of volunteers and the density of interest, an article will eventually become better.
Programming docs in open source often have errors. Do the volunteers not deserve the "privilege" of offering their time for free?
The accuracy of an article depends on the effort (or ability) for contributors to check facts more than its "density of interest". In other words, experts find this easier than amateurs, and for most topics I think many would rather see no article than a crap one. Also worth a conjecture that the interest in writing cannot possibly always be equal to the interest in reading for all topics. If true this is perhaps the ugliest aspect of Wikipedia.
> Programming docs in open source often have errors. Do the volunteers not deserve the "privilege" of offering their time for free?
This is a non sequitur and I don't think I can answer it. What I will say is that the code review process for a pull request usually includes making sure docs are updated accordingly. Much of that documentation might even be automatically generated from structured comments and validated by passing tests such as in API docs. Humans still of course review after that which mistakes even less likely especially since everyone involved is writing about their own work.