improve introduction to Value Flows
i'd like to write up a better introduction to explain the high-level concepts of Value Flows for newbies.
at the moment i'm attempting to explain the Value Flows concepts to @pietgeursen and @sarah-arrrgh for cooper, @donlewi for resourceful, @ashlynbaum for happy-flat, and probably more soon. it's been great as it's providing me valuable feedback on where we can improve, but i'm also aware the learning curve is quite steep, as i remember it took me a few months of weekly meetings with @bhaugen and @fosterlynn before the concepts started to make sense. i'm hoping we can improve our on-boarding so more people can build systems based on the Value Flows vocabulary, thanks y'all for playing along. :)
at the edge of my thinking, i divide the description of Value Flows into a few major sections:
- introduce what is Value Flows: a work in progress set of minimum concepts (domain models) to describe socioeconomic systems. we aim to describe an abstract vocabulary, in that it only describes the simplest and most general set of verbs and nouns that are necessary in order for disparate projects and communities to define concrete vocabularies based on their specific use cases and local culture. our target audience is developers building apps that involve socioeconomic systems.
- introduce subjects of our systems: agent & resource, also as a way to introduce type objects.
- introduce interactions, or what to do with agents and resources: transfer, transform, and transport.
- introduce conversations, or events that must happen to reach an interaction: intent -> commitment -> flow.
i find it helpful to describe the concepts through examples and analogies. here's a recap of a quick conversation today with @pietgeursen:
- "an example of an agent is me, Mikey! i have a name, an email, etc. each agent, like everything in Value Flows, has an associated type object. for agents, these can correspond to the different type of agents in Open OS, namely Person, Pod, Community, and Network. on the type we can specify properties of that level of organizing structure."
- "a resource is a physical thing, a resource type is the abstract ideal of that thing. when you go on Amazon you browse through resource types you can buy, the physical thing that you receive in the mail is a resource. when you go to the library catalog you browse through types of books, which correspond to physical books you can check out. these resource types can relate to each other as a taxonomy, as we see with categories on Amazon and genres in the library."
- "a transfer is when a resource changes hands. for example, i give you three dollars in exchange for a coffee. the coffee and money resources are still the same, but they've changed owners."
- "a transform is when a resource changes composition. for example, i input the resources of coffee grounds and hot water into a coffee machine resource in order to output hot coffee. the hot water is consumed during use, the coffee grounds are turned into waste, and the coffee machine is used but still available for more coffee."
- "in order to reach a transfer or a transform, we must have a conversation. it starts with an intent: a want like 'i'd love some coffee' or an offer like 'i have heaps of coffee'. once an offer and a want match, then two parties make a commitment to each other, almost like a contract: 'i'll give you a coffee in exchange for receiving 3 dollars' and 'i'll receive a coffee in exchange for giving 3 dollars'. now that we've committed to what we want to do, we only need to do the flow! one side gives the coffee and receives 3 dollars; the other side receives the coffee and gives 3 dollars."
hmm, thoughts?