Draft List of Developer Documentation for comment

Following up on the Jan. Developer Update and a thoughtful post from @james a year ago, here’s a suggested outline of the ‘Getting Started’ documentation we’d like to create. (And @e-ntitle.patrick, point taken about the framing around why-and-therefore-where decentralization. Thank you).

We welcome any thoughts.

Getting Started

  • Overview (product manager as well as developer audience)
    • Why DSNP and how DSNP works with the blockchain we select
      • Include simple explanation based on a hypothetical use case that explains what’s decentralized and why
    • General use case-focused diagram of how DSNP + the blockchain work
    • Additional use cases: ideas for using DSNP, how we see the ecosystem likely growing
    • General FAQ
  • Developer Guides + Materials
    • Developer Guide: useful DSNP-level how-to documentation to help you actually build with DSNP, including production tips
    • Dev set-up scripts + step-by-step guides:
      • Docker
      • Bash
    • Essential Resources
    • Explainers
      • Diagrams of typical workflows and interactions
      • Deeper dives into specific topics (some are likely to be just explainers, some will be explainers along with best practices):
        • Privacy: overview of how this is handled in the spec, what we are encouraging in the ecosystem (and how; difference between privacy properties of the network v. clients), and recommendations
        • Identity
          • What aspects of digital identity are handled in DSNP and what would be handled elsewhere
        • Scalability
        • Storage
        • Sharing Content
          • Demonstration of encrypted content
          • Demonstration of storing/sharing a large file in the context of the DSNP
          • Demonstration of filtering
    • Sample apps (future work…)
    • Developer FAQ
    • Glossary
      • (Spec glossary already exists)
    • Videos
      • Likely to begin posting weekly DSNP spec meetings
      • Intro Workshops (possible future work if we hear there’s interest)
    • Tutorials + Sample Code
      • Demonstration of connecting to DSNP and using it from golang,
        javascript, python, kotlin, etc.
      • Demonstration of permissioned access to an asset
1 Like

Hi sstruble,
Trust you are well and maybe this is helpful to refining ideas on what’s in/out of scope?

Identity - What aspects of digital identity are handled in DSNP and what would be handled elsewhere

Blockchains like a great many conventional systems suffer from unreliable, high-friction identity verification which frustrates users and has done little to address spiralling identity fraud. There is also a general reluctance to store PII (Personal Identity Information) on a blockchain. DSNP probably does not need to store PII – avoid data protection liabilities – by taking an SSI (Self-Sovereign Identity) kind of approach. This means that the identity attributes of a natural person are collected and verified by a separate 3rd party service – a data controller under GDPR (handled elsewhere). A public/private key pair (digital signature) can be bound to the already verified identity attributes which could be a precondition to signing-up to DSNP? DSNP only needs a person’s public key associated with the pre-verified PII? Bring your own public key approach?

The benefits for DSNP is that it avoids identity verification friction and more importantly, not becoming accountable as a data controller . In general, identity data lifecycle management (context-sensitive, dynamic and not immutable…) differs from the information lifecycle management of a social platform, so better that they are separate lifecycles. The reality is that the processing and storage of PII has become a new liability for a great many organisations. Africa, India, Australia and even China are among those countries taking a GDPR-like approach to regulating the processing of PII. Hope this is useful/helpful.

Kind Regards,
Patrick