As someone whom has been working on a distributed and decentralized HTTP multiplexed “L8” protocol for the past several years, I’ve seen many P2P protocols come and go, but none of them actually gain traction for long. In my opinion, the problem these protocols run into is that, the web needs protocol diversity, not “one true protocol”.

Once we have a culture of protocol diversity, where protocols are built and compiled in a day rather than years, then and only then will we see things like a truly semantic web that isn’t owned by Google.

It feels like these new P2P protocols aren’t designed with distributed applications in mind. This is because we need an entirely new type of symbolic/logic/linguistic programming language and runtime that augments natural language rather than boil the ocean with ML to understand it and represent its semantics topologically, not stochastically. Ideally, this language ought to model each user’s I-Language as a universal grammar that is isomorphic to all other dialects, meaning one user’s grammar can render to any other grammar. This is easier said than done, but not impossible. Here, a dialect defines a protocol within a network.

I always find it funny when I login into Mastodon and watch the federated public timeline, it’s all toots written in foreign languages I don’t understand. Only once we as an industry start augmenting and modeling natural language in a way that isn’t ancane, can a distributed/decentralized protocol suite even have value for the world. What’s the point if half the world doesn’t understand the other half? Unicode is garbage and we can do better, much better. As a developer, I would say about 30% of my time debugging was related to character encoding problems and about %75 of my overall time was debugging, not developing.

Being distributed and decentralized isn’t enough, we need a toolkit that simplifies development to the point that a developer can release a new application in a week, not months or years, all 100% bug free. The way forward is inverting how we network applications, such that we only write pure business logic on the network datum level on a per entity basis and write protocols with those entities (entities whose schemas need not be public) with zero code, meaning only the network topology of an application (events and protocols but not states) instance is needed explicitly to be public, which can be compiled into a repo and distributed, and would generally be adaptive in ways I won’t elaborate here.

However, I would be hypocritical if I did not say that Graph is at least in the right direction and at least uses other protocols like IPFS and doesn’t completely reinvent everything. What I’m saying is that our woes as both users and developers runs much deeper to the point that it’s almost a conspiracy. The problem is that introducing a new protocol in today’s climate is almost seditious because, unlike what I’m workin on, most if not all P2P protocols make claims that they are revolutions (not reformations), so the day when we can have a distributed and decentralized semantic web that can serve requests over HTTP/1.1 easily, everything else is just not pragmatic nor rational.