operating-system or co-operating systems? Re: Coherent (modern) definition of RWW

> On 19. May 2021, at 07:36, Melvin Carvalho <melvincarvalho@gmail.com> wrote:
> [snip]
> 
>> 
>> Hi Timothy,
>> 
>> FWIW -- A Read-Write Web is simply an Entity Relationship Graph (Graph for short), constructed from hyperlinks, that supports Create, Update, and Delete operations -- in one form or another.
>> 
>> Fundamentally, you can add, alter, and remove parts from said graph.
>> 
>> Web 1.0, 2.0, and 3.0 themed technologies have offered the above in various forms with associated consequences re:
>> 
>> 1. Interaction Flexibility & Inflexibility  via Application or Service Experience
>> 
>> 2. User Privacy
>> 
>> 3. Society at large .
>> 
>> Personally, I don't fixate on perfect definitions or "one size fits all" world views. I prefer to simply get stuff done by implementing relevant open standards are various Super Set oriented entry points (* which may not always be obvious initially *).
>> 
>> In conclusion:
>> 
>> Let's crack on with getting stuff done since we have all the open standards and specs in place. Basically, write stuff, share it with others to test interop.

+1000 to learning by practice.
These sometimes though do lead people to stumble on philosophical or mathematical problems

> 
> The more the do that the better for item #3 which I know you care a lot about :)
> 
> 
> So I think you could view the web as a giant state machine.  And writing to the web is changing that state machine

So here you have to be very careful. It may be a lot more correct to state that the web is an open ended set
of state machines in communication with one another. This moves you to the actor model of computation.
Carl Hewitt who developed that model wrote up a very readable history which I link to from here
https://twitter.com/bblfish/status/1358103100104572930

> So the potential of a read write web is to create a web scale operating system, which is something we've not yet seen

Operating Systems tend to be thought of as systems to control 1 machine - a computer, phone, watch, etc…
When dealing with many machines I think it is therefore better to think not of an operating system but
instead of co-operating systems.

> I may be wrong here, but I think that all operating systems rely on a clock
> 
> Now imagine if the clock was internal to any one process (think server), that would not make sense for an operating system


You can indeed also have synchronized clocks.
The If-Modified-Since and If-Unmodified-Since http headers rely on that.

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Modified-Since

> 
> An external clock that you can hook into brings us one step closer to an read write, standards based, operating system for the web.  This could be done both with server side apps, which now become just agents, and also with client side apps, you could imagine a user interface changing dynamically over time, perhaps evn democratically.  Lots of nice side-effects drop out of this
> 
> It goes without saying that all of these changes should be 100% backwards compatible with what exists, so that it augments, rather than replaces

Synchronised clocks are an indeed important part in all read-write web protocols for HTTP from WebDav, Atom to LDP.
So that is already how the RWW works.

The danger of thinking in terms of Operating Systems is that it leads you to the dreams of global consensus.
But as we see with bitcoin, the selection of the next state of the bitcoin state machine, is extremely
costly in energy. As a result over 50% of bitcoin mining is now going on in China, and is very far from
the decentralised dream people had 10 years ago.

Furthermore not every application lends itself well to such a state machine, It can work for purely
mathematically based systems like currencies where the whole state can be verified by everyone, but
it gets a lot more complicated for empirical statements, where semantics becomes important. I wrote
some thoughts on that up here:

https://medium.com/cybersoton/identity-as-a-graph-or-a-chain-f15940beec81

The blockchain is distributed but not decentralised: it requires one view of the truth.

In democracies we need to take into account the multi-perspectival nature of reality.
There may be one truth - as an ideal - but that can only be attained by discussions among
incompatible, often contradictory views of reality. That is why a multi-agent system
is the right place to start thinking about these things. Local consensus first, global consensus
later, perhaps and only if needed.



Henry Story

https://co-operating.systems
WhatsApp, Signal, Tel: +33 6 38 32 69 84‬
Twitter: @bblfish

Received on Wednesday, 19 May 2021 07:55:58 UTC