Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

Welcome to the Task Force


NameEmailInterest in Task Force
Bobbi MuscaraBobbi@LedgerAcademy.comCoordinator 
Elena Treshchevaelena.treshcheva@exactpro.com; treshcheva@gmail.comReview and Feedback on Framework
Anasuya Threse Innocentbinibft@biniworld.comUpdating Documentation Content, Reviewing Documentation Framework

List of deliverables or work products

  •  Common styling guide
  •  Recommended common publishing platform
  •  Document best practices for creating documentation, including information on tooling and the audiences
  •  Create a template repo that new projects can use for creating their documentation

Common styling guide

Recommended common publishing platform

Document best practices for creating documentation, including information on tooling and the audiences

Create a template repo that new projects can use for creating their documentation






GUIDING PRINCIPLES:

  1. Standardization - Hyperledger Brand recognition
  2. Similar hosting platform for Documentation 
  3. Leverage

Introduction, Principles & Recommendations 

INTRODUCTION:

Our taskforce goal is to find gaps and opportunities in existing Hyperledger Documentation. Herein, we present conclusions and determine some recommendations. This Review focuses on a comparison of a variety of documentation for the Hyperledger projects, as a case study indicative of how all documentation pages might be standardized.

This document is representative of a fact finding mission with generalized conclusions. These conclusions should be discussed, edited and converted into direct action items. The purpose for this tone is to recognize that each Hyperledger project has a different team, with different maintainers who create and update documentation pages.

Our taskforce is mean to foster open discussion and create a place for new ideas on the betterment of Hyperledger project documentation. Thus we would like to begin with seven guiding principles and seven specific recommendations that intertwine with those guidelines. 

GUIDING PRINCIPLES:

  1. Standardization improves the speed and ease of adoption of multiple projects within the Hyperledger Ecosystem
  2. Each project should utilize a similar hosting platform for Documentation for ease of use and learnability 
  3. Any documentation hosting platform used should leverage a common Markdown Language, theme and interface. Templates exist and therefore could be helpful in standardizing documentation pages
  4. Recognize and Resolve any tension between standardization (common template) with the implicit uniqueness of each Hyperledger project.
  5. Hyperledger project, most companies have a standard theme for product pages 
  6. A Standards should be reflected in a consistent manner such as a badging system or checkmark awarded for adherence to these principles
  7. Allow for community involvement to avoid a strictly top-down approach; instead, reflect the values of the open-source community 
  8. for applying Standards

8 SPECIFIC RECOMMENDATIONS: 

  1. All Hyperledger projects should utilize ReadTheDocs for documentation hosting 
  2. Standardize documentation content to promote increased usage and project adoption 
  3. Re-factor any existing inconsistencies in style, graphics, tables, bullet points, readability, links, and content usefulness for all projects 
  4. Current / Future Hyperledger Projects should both utilize the a standardized and agreed upon documentation pattern
  5. The Fabric documentation pattern could serve as a template: ReadtheDocs for documentation, GitHub for all code truth, and a Hyperledger Wiki page for Community items and badging. 
  6. Standardize graphics and the glossary section for better concept lookups and user experienceAll Projects can leverage Discord: include or “pin” documentation relevant posts. (currently all are not pinned) 
  7. Utilize a survey to reflect the voice of the various unique projects that have documentation pages in disparate themes with varying styles and layouts. 

Tasks to be completed

...

  • Determine The Current Status of all Projects/Tools/Libraries

...

  • Examine the current process used for documentation

...

  • Create Standards / Best Practices for the Community

...

  • Create Documentation Best Practice badging system.

...


List of deliverables or work products

Survey For Maintainers and Community
  • Analysis of Project Documentation Platforms
Grid analysis, showing platform currently in use



  • Report on Current Documentation processes used.
Report exists within this page. 
  • Create Recommendations for community
Recommendations exist in 2 parts: our guidelines and survey results. 
  • Create Badging process, templates
Reflective of industry standards and existing Hyperledger Badging system. 

...

  • The purpose of this section is to review the existing documentation hosting setup for multiple Hyperledger Projects.
  • Key Takeaways: 
    • Most Projects use ReadtheDocs (detailed grid analysis found here)
    • Most of those ReadtheDocs projects use either Sphinx, Restructured Text for markdown or a theme enhancer like MKdocs
    • A few projects use a non-traditional documentation hosting service, or do not use any documentation hosting service. 
    • Might be prudent to standardize / harmonize the documentation since most projects utilize ReadtheDocs
    • Fabric exists as a standard, the next section will review the fabric documentation pattern

Fabric Documentation : A Documentation Pattern Template

Key Takeaways: 

  • Fabric uses Read the Docs as the main source of truth for descriptions, GitHub as the source of truth for Code, and the HyperLedger Wiki page as the source of Truth for community related items. 
  • Projects should be customized as required. But some information in Fabric is spread out over multiple pages.  Thus, it would be more efficient to be grouped by audience for easier readability.
  • For example, some details are on the wiki page that aren’t on Read the Docs- and vice versa.
  • Use of graphics on the Read the Docs is sometimes inconsistent.

...

  1. HyperLedger Fabric Read the Docs: https://hyperledger-fabric.readthedocs.io/
    • Designed for Multiple Audiences: Developers and Business Professionals
    • Generally follows topical organization with bullet points 
    • Has code, helpful imagery, written explanations 
    • Sorts concepts into tutorials, very comprehensive spread of information 
    • Doesn’t include source code files, at times will link to GitHub files for more detail
    • Some areas are informative, rich knowledge base
    • Use Cases area could be more informative (Recommend re-fresh / re-formatting of both pages, especially wiki page. currently just links to hyperledger wiki) 
  2. HyperLedger Fabric Main GitHub page: https://github.com/hyperledger/fabric
    • Designed for developers: whether smart contract, application or enterprise blockchain developers 
    • Has a Readme file for general information, versioning, installation 
    • Links back to the HyperLedger Fabric Wiki 
  3. HyperLedger Fabric Wiki: https://wiki.hyperledger.org/display/fabric
  4. HyperLedger Fabric Discord Documentation Channel: https://discord.com/channels/905194001349627914/945038395825070141
    • The Discord channel is designed for asking and answering questions, fostering discussion regarding HyperLedger Fabric Documentation 
    • Not a single source of truth for any audience, however helpful for business, developer or community members 
    • Lots of useful links, but nothing is pinned for quick access
    • As Discord becomes bigger, “pinning” will be eminently helpful 
  5. HyperLedger Fabric LandScape Page: https://landscape.hyperledger.org/projects?selected=hyperledger-fabric 
    • The LandScape Page holds notable metrics, badging, links and an aggregate of the Fabric Twitter Page
    • Metrics include the programming languages used, and the number of recent commits.
    • The links include a comprehensive list of the various Fabric GitHub repositories 
    • The Twitter aggregate section includes the latest 3 tweets from the Hyperledger Foundation

...


Fabric Vs. Besu

...

: Highlighting Layout Differences


This comparison is an initial analysis of the level of standardization between the Hyperledger Fabric Vs. Besu ReadTheDocs. ReadtheDocs was chosen because the ReadTheDocs is main source of documentation truth, and most deep in knowledge / helpfulness. 

...

    • Besu introduces itself as a product first, whereas Fabric introduces blockchain before a product introduction. 
    • Should we standardize this? Should we introduce the product or concept? 
    • Recommendation: Plenty of space in the ReadtheDocs for conceptual resources, let’s introduce the product first. (technical documentation typically assumes the developer knows the fundamentals)
    • FAQ style Vs. Concept style. Besu uses FAQ, Fabric conceptual. 
    • Practical Vs. Theory: Besu very quickly is practical. Fabric documentation puts you through lots of theory before set-up steps. 
    • Main structure: Fabric is structured much differently from Besu. 
    • Audience: Even though the Besu documentation is deep and thorough, it is noticeably simpler in structure for a first-time user. 
    • Social Media: Besu main page is lacking social media links, and Fabric displays them- particularly the Discord is important for community engagement. 

...

Fabric Vs. SawTooth

...

: Stark Differences in Content & Context

This comparison is an initial analysis of the level of standardization between the Hyperledger Fabric Vs. SawTooth ReadTheDocs.  

...

  • No standard navigation style or layout exists between Fabric and Sawtooth. Each project has a different look and feel to their ReadtheDocs
  • Layout and conceptual navigation is different between the projects: this could lead to slower development and adoption
  • Both Fabric and Sawtooth emphasize concepts first, instead of a QuickStart or rapid development deployment project example
  • Fabric has a much deeper conceptual dive into blockchain concepts, while Sawtooth has an initial conceptual dive. 
  • Code formatting looks cleaner and more legible on Fabric Documentation. 
  • Sawtooth begins with a Glossary, Fabric ends with a Glossary. (Should be consistent between the two.) 
  • The Sawtooth documentation may be outdated and require an update to conform to the latest release (per Hardik) 

...

Fabric Vs. Cosmos

...

: Design Decisions for Web3

This comparison is an initial analysis between the Hyperledger Fabric documentation and the Cosmos Blockchain documentation.  

...

  • Cosmos has an updated / web3 look and feel to the UI. 
  • Landing page comparison: Cosmos provides a direct and immediate choice between conceptual and Quickstart / Developer Tutorials.
  • Introduction comparison: similar themes addressed: history, backgrounder, orientation to product
  • Key Concepts: both start with Key Concepts: blockchain, smart contracts, etc. Fabric is more comprehensive from a conceptual standpoint. 
  • Cosmos documentation assumes the audience knows blockchain basics, whereas Fabric is more newcomer friendly. 
  • Tutorials comparison: Fabric are built-in, while the Cosmos tutorials takes me to an entirely new page, new UI, new layout. (not user-friendly) 
  • Cosmos Tutorials means data is duplicated, developer has to start from scratch. 


...


Current Toolkit: ReadtheDocs Syntax, Sphinx, and reStructured Syntax

image2022-7-30_19-5-11.png

This section highlights some of the syntax, capabilities and limitations of the ReadtheDocs structure. This is salient because the documentation of various Hyperledger projects relies on the ReadtheDocs platform. 

...

Sphinx allows for customization of themes, they can be found here. Should they be standard for all projects? 


Proof of Concept for

...

ReadtheDocs

A POC was performed for ReadtheDocs using the tutorial found here. Was to ensure that certain features that are in the web3 community may be applicable to Hyperledger projects. It was found that features are available but ReadtheDocs relies on third-party plug ins and that deeper / more web3-style layouts would require customization work. 

...

Image: pull requests sync easily to the Sphinx platform. 

ReadtheDocs: Next Steps /

...

Insider Features: Custom CSS and JS 

MKDocs Material Insider features: Ry Jones has updated the Hyperledger community regarding MK Insider features. This allows for further customization of your Hyperledger Projects documentation page. 

...

  • The survey should give us a good idea of what Hyperledger community members value in documentation
  • We hope to gain a general sense of the divergence between uniqueness and standardization 
  • The results of the survey should guide our final recommendations and badging system
  • The survey should be reflective of the collaborative nature of the open-source community as opposed to purely a top-down approach


Conclusions / Next Steps: 

Learning Materials Working Group call will analyze and discuss the survey results. Please join us! Our next call will be Monday Aug 8th at 12 noon EDT. 

Questionnaire URL

Results URL: 

...