owned this note
owned this note
Published
Linked with GitHub
# Proof of Expertise: Skill Forests
Date: Jan 28, 2021
status: draft
authors:
+ mZ
+ Tannr Allard
+ Joshua Meyers
+ ZX Zhang
+ Gianni
+ Shawn Anderson
+ add yourself!
PETH's Miro Workspace: https://miro.com/app/board/o9J_klYPUYw=/
## Motivation
As knowledge becomes valuable through its application, other individuals will need to access that knowledge.
As demand for certain skills grows, it becomes necessary to provide discovery of the skills, the clarity about how to attain the skills as well as the capacity to attest to one's skills.
This working group is focused on specifying the standards enabling the tokenization of Expertise. Expertise is intersubjective, and thus its legitimacy is created through an interconnected network of people and their work.
## Preliminaries
Core Concepts
- [W3C DID Standard](https://www.w3.org/TR/did-spec-registries/)
- [NFT Spec: ERC 721](http://erc721.org/)
- [NFTs in Filecoin Ecosystem](https://github.com/filecoin-project/slate/issues/523)
- [MetaPubz Forum Post](https://forum.metagame.wtf/t/metapubz-a-proto-specification/534)
- [MetaSkillz Forum Post](https://www.google.com/url?q=https://forum.metagame.wtf/t/metaskillz-a-proto-specification/528&sa=D&source=calendar&ust=1612286108454000&usg=AOvVaw3ZHr-ZofljUHw1sDakH_lt)
- [mZ's Math Notes](https://www.dropbox.com/s/jrfinxz3dju5tzp/Colored_Directed_Acyclic_Graphs_for_Multi_Class_Attribution_Networks%20%281%29.pdf?dl=0)
- [Glyph, Matt Stephenson](https://researchers.one/articles/21.03.00002)
Related work (please add links!)
- Content Addressing and IPFS
- Proof of Attendance Protocol
- 3box and Ceramic publication stuff
- Pictosis publication stuff
- Raid guild skill stuff
- LexDAO skill stuff
- Token Engineering Academy skill stuff
- [MetaGame skill stuff ](https://forum.metagame.wtf/t/rfc-skill-discovery-discord-mini-game/607)
- [DeepWork skill suff](https://www.loom.com/share/473416ed9eaf4228a071b163012b8c9f)
- [SourceCred](https://sourcecred.io/docs)
- [OpenBadges](https://openbadges.org/) standard [v2 Standard](https://www.imsglobal.org/sites/default/files/Badges/OBv2p0Final/index.html) : issuer, attestation, and holder (wallet). Would be interesting to give openbadges a home in web3. [Image Below](#OpenBadge-Idea)
- feel free to add more
## Use Cases Brainstorm
Here is a list of potential use cases that some extension of this standard should support. As this section is a brainstorm, don't hesitate to add to this list.
- publications (of course)
- reviewing system (like yelp or amazon)
- POAP
- skill trees (e.g. MetaGame)
## Target Use Cases
Use cases that we want to prioritize. This should be drawn from the previous section on the basis of the following priorities (feel free to edit):
1. Low-hanging fruit, "obvious" use-cases within scope
2. Generalizability to many use-cases
The list:
- publications
- memes
- 3D-printing models
- VR assets
## Publication NFT Standard
Publication Contract Data
```
token address: <contract address>
plain text name: <string>
version number: <integer> (optional)
additional details: <string>
oringal pub date: <datetime> (optional) %good for backfilling older content)
content address: <ipfs CID>
authors: <list of addresses> %external accounts of authors
reviewers: <list of addresses> %external accounts of reviewers
citations: <list of addresses> %other contracts adhering to this standard
```
Note that this "skill" or "certification" standard can
- be implemented as an extension of a publication
- include references to publications which contain detailed knowledge the skill holder is claiming to have; 'additional data' field for the skill contract
- a project deliverable may be linked as the 'aditional data' metadata as part of a specific skill token NFT
## Certification NFT Standard
Skill Contract Data
```
token address: <contract address>
plain text name: <short string>
additional details: <long string>
prequisite skills: <list of token addresses>
initial skill holders: <list of addresses>
current skill holders: <list of addresses>
requires_verifier: <bool>
artwork: <IPFS CID> (display as in profiles)
additional data: <IPFS CID>
```
Certificate (non-transferable) NFT data
```
issuer address <address> (required)
verifier address <address> (may or may not be required)
recipient address <address> (required)
additional data <IPFS CID> (not required)
```
Token Issuance Assertions
- issuer and verifier address must already have a token for this skill
- recipient address has tokens from each of the prerequisite skills (check against prequisite skill address list)
Cool special case:
- skills or certificates for which the issuer is a DAO contract address (implying that the DAO must pass a vote of some kind to issue the certification)
- should we try to configure the standard so this is not an edge case but it is supported more natively?
## Rough Implementation of Target Use-Cases
For each target use-case, extend the spec to meet it in this section.
## Implementations
The goal of this initiative is not force users into a specific platform but rather for multiple platforms to establish some minimumal shared functionality that allows for portability and/or interoperability across platforms. We should keep a list of implementations in this section and support any and all platforms interested in supporting our standards.
Another observation is that there are currently many issuance platforms but the value of the representation is with the content. Any unique digital representation with some access control policy can in theory be considered an NFT. The future of the internet, the metaverse, creative economies should be public. A content addressable web provides excellent substrate for creating, publishing, composing new content, curating and generaint value from data. Below is an illustration of different layers of the Dataverse.
---
## Media
### Dataverse
via Protocol Labs R&D
![](https://i.imgur.com/wMKGgRx.png)
### OpenBadge Idea
![](https://openbadges.org/sites/default/files/assets/Open%20Badges/Build%20Page/OB_Best_Practices.svg)
---
## Workshop: Skill tree hacking
in today's workshop we are going to hack on skill trees. In order to seed the Tree i am going to define a skill spec based on intro to cadCAD (from the cadCAD-edu org), but then we will collaboratively build out around it with other looseling interrelated skills.
Miro board for mapping skill trees:
https://miro.com/welcomeonboard/QETsuHhn9ocKgyVZVbNvWRX36fvVi9Ymsv9wBALD5945tT03GNlGtZnbaGUBOT7p
### Intro to cadCAD
```
token address: <contract address>[tbd]
plain text name: "introduction to cadCAD"
additional details: <cadCAD-edu produced an introductory course on the cadCAD modeling framework, this skill badge represents the completion of this course>
prequisite skills: None
initial skill holders: <list of addresses> (collect addresses for Jonathon, Ben, Danilo, Tyler, Barlin, Z, Markus, etc -- creators of cadCAD & cadCAD-edu whose expertise was used to create the program)
current skill holders: <list of addresses> (initially equal to the initial skill holders)
requires_verifier: False
artwork: <IPFS CID> (display as in profiles) [cadCAD edu logo?]
additional data: <IPFS CID> [appropriate links to course material -- ]
```
https://www.cadcad.education/
after the initial deployment of the skill token contract all future instances of this skill badge being minted have:
```
issuer address <address>: this is necessarily the address of a current badge holder
verifier address <address> (we are not requiring this)
recipient address <address> (required)
additional data <IPFS CID> (not required -- but we would prefer it if you included the IPFS CID of your course completion certificate)
```
https://twitter.com/ethicraul/status/1369940144325865473?s=20
https://github.com/TokenEngineeringCommunity/BalancerPools_Model
![](https://i.imgur.com/hcFpAaW.png)
## Build out more examples from the workshop here: