I just read up on the stellar consensus protocol (SCP).
Allow me to rephrase the basic idea with as little terminology as possible; tell me if this makes sense to you.
The basic idea is that if I want to answer an arbitrary question (which could be anything: is this a valid transaction? What’s the best coffee shop in Prague?) then I pose this question to my WoT, collect everyone’s answers, and select the winning answer based on the consensus of my WoT.
SCP is obviously a very specific application of the above basic idea. What if I want to apply this same idea to a completely different specific use case — like selecting the best coffee shop in Prague? How do I take the preceding paragraph and state it as precisely as possible but also in the most *general* terms as possible? This is the problem that I’ve been turning over in my head for over a decade.
We would need a well defined method to represent the space of “all possible questions” (or at least a very very large class of questions) as well as a well-defined method to answer any given question. What would be the primitives for this method? In my mind, decentralized lists and personalized, portable, contextual trust metrics are two of the most important primitives. Decentralized Lists is how we define a question (to ask: what’s the best coffee shop in Prague, you start by defining a decentralized list of coffee shops in Prague) and trust metrics is how we answer the question (as discussed in the NIP). If my WoT and your WoT and lots of people’s WoT converge on the same answer, we have a method that is not only widely generalizable, but more importantly one that is useful.