solid-contrib / information

Old location of information now available on site
https://solidproject.org
Other
134 stars 48 forks source link

Gathering community input for ”What is Solid?” #180

Closed Mitzi-Laszlo closed 4 years ago

Mitzi-Laszlo commented 5 years ago

You can read the current definitions of the Solid mission, vision, and values on https://github.com/solid/information/blob/master/solid-vision.md

Just to recap the meaning of each of the terms:

Vision - A vision statement focuses on tomorrow and what an organization wants to ultimately become. Mission - A mission statement focuses on today and what an organization does to achieve it. Values - The operating philosophies or principles that guide an organisation's internal conduct and relationships It would be good to make sure we have a common understanding and agreement around these terms.

Perhaps you could answer the following:

JordanShurmer commented 5 years ago

@JordanShurmer's understanding of things:

What it is

SoLiD = Social Linked Data.

Solid is primarily about 2 things: bringing personal web data under control of the person, and enabling decentralized apps to access that data when you want them to. It exists because current social/personal web apps do not view user's data as belonging to the user, and do not share that data among themselves.

Mission / Vission

The mission right now is probably about building the initial platform for the ultimate vision to start taking place. The long term vision being to provide a home on the web for people who want to manage their own data, with an ever growing ecosystem of apps built to interact with that data.

How?

This will be accomplished by leveraging the power of linked data to represent data about people and things, WebIDs to associate people with their data, and Web Access Control to provide mechanisms for people to manage access to their data.

The thing currently called "data browser" will be crucial to the whole thing by enabling the users to fully view and manage all of their data. If user's don't understand how to manage their data (including who/what they're sharing pieces of data with) then it fails

Values

Solid should NEVER assume it controls user's data. Solid should NEVER intentionally exclude people from using Solid. Solid should ALWAYS allow users to view and manage all their data. Solid should ALWAYS encourage web developers to use their user's solid data rather than collect their own data.

Why would I use it?

If I could use various web apps (calendar, recipes, tasks, photos, blog, etc.) which all talk to the same data source, which is under my control and shareable, I would use it. My primary use case that I'm thinking about right now is my family - coordinating our calendars, sharing stories/pictures, meal planning, etc.

Mitzi-Laszlo commented 5 years ago

Solid is primarily about 2 things: bringing personal web data under control of the person,

At the moment, the Solid specification does not define the user. So, the user could be: a person, a company, an institution, a group of people. So either we need to change the communication or the Solid specification.

The current Solid specification as I understand it explains how to allow a user (undefined) to switch application or data storage and take the data generated in the previous application or data storage solution along.

JordanShurmer commented 5 years ago

the Solid specification does not define the user.

True.. I was using the word User to mean the subject of the data, whether it's a company, person, etc..

Data subject is the language the GDPR related laws use, I believe. So, to be more explicit, I could have said Solid is primary about 2 things: bringing web data under control of the data subject.... Doesn't really have the same ring though :D

In my estimation, it's still fair to say that solid is primarily about the user owning the data, even though it doesn't limit itself to actual people users. 🤷‍♂ Maybe another statement I would add is Solid should NEVER prioritize institutional data ownership over personal, but that's probably too vague, disputable, and off-topic ;)

Mitzi-Laszlo commented 5 years ago

'data subject' in GDPR refers to natural persons - a single individual human being...

("‘personal data’ means any information relating to an identified or identifiable natural person (‘data subject’); an identifiable natural person is one who can be identified, directly or indirectly, in particular by reference to an identifier such as a name, an identification number, location data, an online identifier or to one or more factors specific to the physical, physiological, genetic, mental, economic, cultural or social identity of that natural person;" https://gdpr-info.eu/art-4-gdpr/)

The communication of Solid does mention 'privacy' which is a human right and therefore could be interpreted to be more applicable to personal data.

If we widen the net to 'user' - perhaps we need to define what data should be controlled by which user?

Is there a real problem about companies not controlling company data? As in, although it could be applied to a company - does it really add something?

Would there be any objections to defining the user in Solid as a data subject controlling personal data?

If there are objections, what would be elements that are missing or overlooked that should be included?

eduardoinnorway commented 5 years ago

I worked a lot with this type and my experience is to try to write in a sense that anyone can understand. For example:

VISION

A smarter and decentralised internet with true data ownership as well as improved privacy.

MISSION

To provide the industry and community with tools and technologies, so they can realise the vision. To enable people from all fields to participate with meetups, workshops, lectures and communicate online.

VALUES

WHY

Our data today is locked behind firewalls on popular communities and applications, we have no control of how our data is used and where. The data of the internet today is actually more or less dumb, it has no relation of other data that could be relevant.

HOW

Solid try to solve this issues by providing a smarter decentralized internet with Linked Data and true data ownership. We are creating tools and libraries so the developer community can be able to participate in creating this smarter internet. We are also on a mission to provide a good use experience solution to non technical people to manage their Linked Data.

WHO & WHEN

Prof. Tim Berners-Lee, inventor of the World Wide Web, is leading this Misson through the Solid organisation with support from inrupt, one of the first startups within this field. Solid and inrupt are today collaborating in developing a SDK, Design System, Libraries etc. and also a new Data Browser that will be able to use also by non technical people.

Mitzi-Laszlo commented 5 years ago

I went through solid.mit.edu and collected all the relevant vision/ mission/ value statements:

Also from solid/chat in response to the question ‘What problems does Solid solve?’:

Mitzi-Laszlo commented 5 years ago

Relevant phrases from https://medium.com/@timberners_lee/one-small-step-for-the-web-87f92217d085:

RubenVerborgh commented 5 years ago
  • In your understanding and own words what do you understand the Solid mission, vision, and values, to be? (no wrong or right answer)?

Solid aims to empower people and foster innovation by freeing data from silos.

  • What is Solid (in a very literal sense)?

An open ecosystem of people, data, and services.

  • How does it work?

Data is stored in pods, independently of the services that use this data, thereby offering independent choice of data storage and apps.

  • Why does it exist?

To level the playing field, such that innovation no longer depends on data harvesting, thereby positively impacting people and creators alike.

  • List all the values (ideally single words but can also be descriptions) you feel Solid should hold most dear, then select the 3 you feel are the most important/relevant.
  1. universality
  2. permissionless innovation
  3. interoperability
  • Describe what would motivate you to use Solid as a consumer/ user.

Choice.

  • Complete the sentence "Solid should NEVER..." and "Solid should ALWAYS..."

Solid should never lose sight of what people (end users, developers, inventors…) need.

Solid should always prioritize choice, while carefully balancing it with interoperability.

Mitzi-Laszlo commented 5 years ago

Thank you @acoburn for pointing me at https://www.apache.org/foundation/how-it-works.html#philosophy

Mitzi-Laszlo commented 5 years ago

Started to try and combine all the perspectives https://github.com/solid/information/pull/186

ewingson commented 5 years ago

In your understanding and own words what do you understand the Solid mission, vision, and values, to be? (no wrong or right answer)?

Solid is giving power back to the user, so they can control the data and choose the apps that may use it.

What is Solid (in a very literal sense)?

An ecosystem that decentralizes the web.

How does it work?

It shows data with the databrowser and helps building the semantic web via linked data principles.

Why does it exist?

Because we want true ownership.

List all the values (ideally single words but can also be descriptions) you feel Solid should hold most dear, then select the 3 you feel are the most important/relevant.

openness, linked data, semantic web, web as filesystem, data ownership, control, autonomy, freedom, connection, hope, vision, growth, privacy

"control, autonomy, growth"

Describe what would motivate you to use Solid as a consumer/ user.

Because I can CONTROL.

Complete the sentence "Solid should NEVER..." and "Solid should ALWAYS..."

Solid should NEVER exclude anyone without profound reason.

Solid should ALWAYS encourage any individual and share as much as possible.

Mitzi-Laszlo commented 5 years ago

Tried writing everything into a concrete single text on https://github.com/solid/information/blob/master/solid-vision.md any suggestions?

RubenVerborgh commented 5 years ago

Looks good overall. Quick comments:

Solid is a voluntary technical specification describing how to build interoperable software.

I don't get "voluntary", and would suggest "set of". However, I'm also hesitant to call solid just a spec. It's like calling the Web a spec.

Solid is originally derived from ‘social linked data’ and is led by Sir Tim Berners-Lee, inventor of the World Wide Web.

I would remove the etymology; it doesn't matter anymore at this point, and is only misleading.

The "is led" in this sentence also points to the fact that Solid is more than a spec.

Mitzi-Laszlo commented 4 years ago

Any more feedback on https://github.com/solid/information/blob/master/solid-vision.md ?

maxidorius commented 4 years ago

I'll first answer the questions asked in the OP:

In your understanding and own words what do you understand the Solid mission, vision, and values, to be? (no wrong or right answer)?

Mission: Empower the users and allow them ownership and sovereignity over their identity and data. Vision: Get rid of the current dictatorship of closed systems and closed services. Values: Openess, Privacy, Security, Ownership.

What is Solid (in a very literal sense)?

For me, Solid is an ecosystem (spec, framework, implementations, community) that tries to gives back data/identity ownership and control to users.

How does it work?

As a technical person: Not sure to be honest. As a lambda person: No idea.

Why does it exist?

Because of how the current state of Identity/data ownership, sovereignty and control - no longer in control of the users like it was before.

List all the values (ideally single words but can also be descriptions) you feel Solid should hold most dear, then select the 3 you feel are the most important/relevant.

(Couldn't choose a top3 sorry)

Describe what would motivate you to use Solid as a consumer/ user.

That specification compliance is an enforced thing, so it is safe to build solutions. That the spec and compliance is fast moving is OK, as long as the spec is not a second class citizen.

Complete the sentence "Solid should NEVER..." and "Solid should ALWAYS..."

Solid should NEVER give up on the end-users. Solid should ALWAYS ensure end-users are empowered.


I've also wanted to give some feedback on the doc itself, but Github doesn't allow comment on .md files, so here goes:

Solid is a voluntary technical specification describing how to build interoperable software.

This setence feels a bit non-sensical. A specification is to build interoperable software, not Solid. I would suggest the one-liner should be about what Solid is about, and not how it is achieving it.

I have in mind something more like this (totaly raw):

Solid is a framework based on specifications that allow to build interoperable solutions for data and identity ownership.


Data should slot seamlessly from one Solid app or Pod to another without permission from each other.

This sentence is ambigious. Pods have concept of access control via ACLs and OIDC, so permissions may be required and requested from another pod owner. But I believe the sentence point is that there shouldn't be a need for "manual intervention" or "manual transalation" of the data and that it should all rely on defined schemas so any implementation can use the same language to talk to another pod and describe the same thing.

Unnecessary technical hurdles or business opportunities should not be used as an excuse to not provide interoperability.

It feels like this should also be true for all the other values. It the point here to say that the end-user experience/control/rights should be upheld higher than technical hurdles or business opportunities?

Digital Sovereignty

The way this section is written feels like a company like Facebook or LinkedIn could say "We do give the granularity of the descisions and present them accordingly in great details" and be right, fitting the defition and checkboxes in this section. I feel like the key element missing is that all the metadata of what was allowed, to whom, when, where, access logs, etc. need to be present on a platform that the user controls, which I believe be the point of Solid. If an entity has access to both the data and the logs/metadata that would allow to user to know what happened, then the entity can just hide/change that info and the user never has a real way to check.


I hope this feedback will be useful!

Mitzi-Laszlo commented 4 years ago

Thank you @danwilkinsoncreative for putting together a succinct version of all these ideas in one text on https://github.com/solid/information/pull/202

@JordanShurmer @eduardoinnorway @RubenVerborgh @ewingson @maxidorius do you feel your original ideas are captured in this pull?

JordanShurmer commented 4 years ago

Yes

maxidorius commented 4 years ago

@Mitzi-Laszlo Yes!

Mitzi-Laszlo commented 4 years ago

Here's the link for the call on Wednesday at 1400 CEST to talk about the Solid vision, mission, and values proposal in detail. https://zoom.us/j/8678621195 Looking forward to that, meanwhile can keep chatting and inviting others to share their input.

pjworrall commented 4 years ago

I am late to contribute. I avoided reading everyone else's to catch up so i wasn't influenced.

Vision

A future where people and organisations have complete control over their information and are free to choose and change how it is serves them.

Mission

To enable products and services to be provided to people and organisations without needing their information to be taken out of their control. To enable users of software applications to control who can use their information and developers of them to refer to it in a place of the users choice.

Values

pjworrall commented 4 years ago

Now answers to the questions...

What is Solid (in a very literal sense)?

In a literal sense Solid is a means to enable software solutions that allow people and organisations to control their own information and freely chose and change the products and services that they permission to access their information.

How does it work?

Solid builds on the universally used standard protocols and data formats of the World Wide Web to enabled people and organisations to operate their own information, data, service that software applications refer to. It provides open specifications, design patterns and reference frameworks for software developers to build products that support their users preference for controlling their own information and ensures they can freely use any other software applications with their information (data).

Why does it exist?

Solid exists because it is widely recognised that people and organisations carry significant risk when their information is collected and co-located by centralised service providers. Large amounts of users and information become extremely valuable, susceptible to exploitation and is much easier to steal when held in one place.

Technical limitations in the past meant that it was easier for users to store their data with their online service providers. This co-location of information, often with many millions of users, meant that service providers were able to provide access to large populations of people, generating massive network effects and control their technology end-to-end making it easier to scale their service.

Solid will enable people and organisations to choose where they store their information and who has access to it. Instead of centralising information it enables it to be decentralised. The Solid design pattern separates software applications from the information they need and the high speed networks of the near future mean that it does not have to be co-located to provide high service levels.

List all the values (ideally single words but can also be descriptions) you feel Solid should hold most dear, then select the 3 you feel are the most important/relevant.

Transparency Integrity Generality [or Universality as someone else suggested]

Describe what would motivate you to use Solid as a consumer/ user.

I’d be motivated to use Solid if it provided the same experience as as other popular centralised services. So all that is necessary is to duplicate their key features in a decentralised application that integrates permissioned information published by others in their preferred information locations.

Complete the sentence "Solid should NEVER..." and "Solid should ALWAYS..."

Sold should NEVER fail in its Access Control List mechanism and Solid should ALWAYS be underpinned with a protocol that can be implemented by any technology (like http).

pjworrall commented 4 years ago

fyi

I did/am finding it a bit hard to catchup and make sense of where the document is using git as a document control system.

I am ok with using it for code. I haven't used GitHubs wiki but maybe that us easier. Used to using wiki/confluence for content collaboration.

:-)

pjworrall commented 4 years ago

As I am not sure of the best way to offer my feedback in preparation for the meeting today I will put it here. This is feedback on https://github.com/solid/information/pull/202 .

What is Solid?

Solid is a global technical standard for building interoperable software” - I think this is too broad and not defensible.

I would propose: Solid is a global technical standard to separate data from software applications so that people and organisations can keep control of their data.

I'd also propose to follow with: Solid aims to make it possible to freely choose and change what software and services have access to their data. To do this it provides a technology standard for users to control their own digital identity, to store their data in a store that they control and for software applications to access the data without needing it to be centralized.

Solid is led by Sir Tim Berners-Lee, inventor of the World Wide Web, and originated at the Massachusetts Institute of Technology (MIT). It is a non-commerical, open source collaboration between thousands of expert contributors from around the globe.

The Vision and Mission are the wrong way around :-)

Solid Vision

A future where everyone has complete freedom of movement for their user data and choice in how it is used. - I suggest this is the wrong emphasis because it can be satisfied by having importing and exporting ability which is not what Solid is about.

I suggest: The Solid Vision is a future where a person or organization can maintain control over their information and be free to choose and change what software and services can process it.

Solid Mission

“To set a global standard for interoperability against which all applications are built” - I don’t believe this is actually what it does, Solid is focused on data

I suggest: _The Solid vision is a future where a person or organization can maintain control over their information and freely chose what software and services can proces_s it.

Solid Values

In the explanations around the values I don’t think we should define them in terms of the technology - Solid App, Pod etc. These terms might change and people don’t know what they are at this point in engaging with Solid.

Freedom - Absolutely agree!

Self determination - Absolutely agree :-) !

Accessibility, Openness and Universality - Too many, pick one or find an umbrella value - I like Universality

I had values of:

Equality - not persuaded this is necessary at all.

pjworrall commented 4 years ago

I mentioned a message house technique to help frame the proposition we're working on. This is as good an explanation as any https://www.slideshare.net/RichardHatheway/developing-a-message-house .

Mitzi-Laszlo commented 4 years ago

You can find a pull requests for each of the elements discussed which each represent a proposal from the Explaining the Vision Panel.

If you are interested in this conversation submit a pull request to add your name to the Explaining the Vision Panel.

To see how the proposals will be handled read more on the process.

This material belongs in the roadmap repo for editorial review so I'll close this issue. If you would like to comment further on the specific proposals add your suggestions to the pull requests.

pjworrall commented 4 years ago

message house.pdf

I had a go at looking at the points being made and transcribing them into a "message house" to communicate them.