Decentralize Minds publishing
# Problem
- Being locked into to single application that controls the network and reach
- Juggling lots of platforms to keep growing audiences
- Don't own their relationship with their audience
- Concerned with losing their business, due to platform policy violations, being labeled misinformation, violating copyright, publishing infrequently for the algorithm, losing brand safety for ads, etc.
# Solution
Self Sovereign Identity, Interoperability and Portability.
| | Single Service | Federated | P2P |
| --------- | ----------------- | ---------------------------------- | ------------------------------ |
| Example | Minds.com(now). | Minds.com(future). Mastodon | Peepeth. |
| Protocols | TCP/REST/RSS/ATOM | TCP/REST/RSS/ATOM + **Activity Pub** | IPFS*, Blockchain (Ethereum) |
| Dependent Applications | None (following CloudNative approach) | | WalletConnect / Metamask, Ceramic, Ethers.js |
| Self Sovereign Identity | DID | DID | DID but focused on application levels vs standard approach (eg. 3box does not work with other DID providers) |
| Interoperability | RSS/ATOM, Webhooks, Documented API | ActivityPub | |
| Portability | Download your data tool. Import your data (application logic depending on services. Eg. import your tweets) | | EtherWeb application first approach create vendor lock-in |
| Agility | We can easily and quickly change things. Ie. moving comments to post (replies) | Standards and shared formats need to exists | Clients need to be on the same versions. Change is slow. |
| Scalability | Very efficient caching. Multi cloud / high availability | Bad nodes can slow down. Duplication of data | Requires clients to do their own processing creating significant network bandwidth and overhead. Potential exponential latency issues |
| Communication | Email. Push notifications | Email. Push notifications | |
| Security | Firewalls, Ratelimits, Captchas | Firewalls,Ratelimits, Captchas | DIY security |
| Moderation | Able to manage spam and malicious/illegal content. Can provide a good experience for users | Able to manage spam and malicious/illegal content. Can provide a good experience for users | Wild west. |
| Recommendations and Search | Everything in one places makes discovering data easily. Analytical insights can provide relevant recommendations. | The best node wins. Provides competition between nodes. | Not clear how this can work without central or delegated points. |
| Privacy | Per service provider policy. Pseudonymous analytics. Not public. Service provided trusted. | Per service provider policy | Everything is public. Assume even encrypted can be cracked with enough effort |
## Self Sovereign Identity
### What is it?
- Ownership of your digital identity
- Proof of authorship of content
### Tools
- [DID](https://www.w3.org/TR/did-core/)
- [Self Issued OpenId Provider](https://openid.net/specs/openid-connect-self-issued-v2-1_0.html#name-sharing-claims-eg-vc-from-s)
### Dev notes
- All minds.com users will have a **web** DID immediately
- Other DID methods can be linked to a minds.com DID by using the ‘alsoKnownAs’ parameter.
- If both did’s have matching `alsoKnownAs` values then verification can be assumed
- We can support login from Self Issued OpendId Providers. Users can own their own identity.
#### Questions:
- Do `did:web:*` require keypairs?
- Should our web did be username or guid?
#### Verified / Linked DIDs
If multiple DID's reference each other, verification can be assumed.
**did:web:minds.com:mark**:
```json
{
"alsoKnownAs": [
"did:ethr:0x1...",
...
]
}
```
**did:ethr:0x1...**:
```json
{
"alsoKnownAs": [
"did:minds.com:mark",
...
]
}
```
#### Example flow

## Interoperability
### What is it?
The ability to interface with users who are using different applications/implementations. For example being able to email someonewhat@hotmail.com from my gmail account.
ActivityPub with DID
### ActivityPub limitations, issues, concerns:
- Not all sites work the same or have the same experience. Some sites have multiple images per post, we only have one.
- Some sites have different use cases. Medium is only blogs, we have videos images etc.
- Removing or adding new features needs more consideration. Moving comments to replies?
- There is a large learning curve for users familiar with Facebook and Twitter where everyone is in one place.
## Portability
### What is it?
- Ability to move your social graph and content between platform
- Not being locked into a single application (ie. cloudnative vs AWS)
epic