Skip to content

Latest commit

 

History

History
156 lines (134 loc) · 7.91 KB

SolidBeginnerWorkshopNotes.md

File metadata and controls

156 lines (134 loc) · 7.91 KB

This file contains notes for a beginner Introduction to Solid Workshop. This should be accompanied with a Slide Deck for the presentation.

About Solid

About the Solid Project

  • Decentralized web
  • Project started by Sir Tim Berners-Lee; inventor of the World Wide Web
  • Solid is an open standard for structuring data, digital identities, and applications on the Web.
  • Goal: for people to have more agency over their data
    • True data ownership - Users should have the freedom to choose where their data resides and who is allowed to access it.
    • Fully interoperable standards - Solid uses a common, shared way of describing things and their relationships to one another that different applications can understand.
      • This gives Solid the unique ability to allow different applications to work with the same data.
      • Prevents application vendor lock-in
    • Granular access -- Solid's authentication and authorization mechanisms allow one to determine which people and applications can access their data

Solid in a nutshell

  • Solid is a specification consisting of several Technical Reports, including the Solid Protocol: https://solidproject.org/TR/protocol

    • The specifications in the ecosystem describe how Solid servers and clients can be interoperable by using Web communication protocols, global identifiers, authentication and authorization mechanisms, data formats and shapes, and query interfaces.
  • Solid Pod: Pods are where you store your data.

    • Any kind of data can be stored in a Solid Pod
      • Structured data, files
    • Linked Data which allows different applications to work with the same data
      • Linked Data is a set of design principles for sharing machine-readable interlinked data on the Web.
    • Once data is in your Pod, you control access to it.
  • Pod Provider:

    • You can get a Pod from a Pod Provider, or you can self-host your Pod. (You can also implement a new Pod Provider if you like implementing from specifications!)
    • https://solidproject.org/users/get-a-pod
      • Many Pod Providers to choose from! Some community-based, some by companies.
      • A Pod Provider will usually advertise the underlying cloud infrastructure it is using, and the hosting location. For example, Inrupt Pod Spaces uses Amazon for hosting and the hosting location is Germany.
  • Solid applications:

    • Any type of application can be built using the Solid Protocol.
    • Applications can make requests to retrieve data from your Pod (via your Pod Provider), and also to store data on your Pod. This is the essential part of how Solid works.
      • Keep in mind that you ALWAYS control access of your files on your Pod, so you can revoke access to an application at any time.
    • Catalog of applications, people, organizations, and other things in Solid:

Solid in context

Why do we need Solid?

  • Solid empowers end-users (you and I) to reclaim ownership of our own data on the Web. Currently all our personal data is stored on companies' servers, where they have custody of the data. Solid provides a technical solution to end-users having their own agency to their data, how it is used and who it is used by.

  • Privacy and Data Ownership

    • Individuals and organizations can have their own Pods to store their data.
    • They have control over access; which individuals or applications access their data, and they can revoke this access at any poin
  • Application Interoperability

    • You can use multiple applications at the same time, with the same data, without duplication of data.
  • Untangle Network Effects

    • Applications no longer need to take care of managing servers to host user data. They can focus on their application itself.
  • List of domain areas that can benefit from Solid (written by Sir Tim Berners-Lee in DesignIssues/Vision)

    • calendars, to-dos, app stores, contacts, blogs, podcast, chat, conference management, education, tuition, employment, taxes, finances, banking; fitness, gaming, benefits, government services, healthcare, legal, media creation and mixing, professional profiles, recipes, nutrition, refugee handling, retail, and, travel.

Hands-on Activity

The workshop activity ideally should involve creating a basic Solid application (eg. React to-do list app) using an existing Pod Provider.

Ideas on workshop activity (todo: add more / a new workshop activity guide):

References