Is Solid primarily a privacy platform or an app platform

I am loving the development of ideas and approaches we see across the forum, specifically on UIs and Dashboard, that help visualise the platform. See specifically Conceptual Design - Solid better User Experience.

But it raises the question in my mind of what is the core benefit of Solid and what would a consumer (non technical) expect to find in their UI.

I, maybe foolishly, think of Solid as a privacy tool, holding my data in a secure manner that allows me to control how and to whom it is shared. To that goal I think the primary function of a Solid Homepage is to show me what Pods I have created, to whom have I shared that content and what activity has taken place with my data.

What I would not expect is to see a list of applications that I would interact with, such as Calendars, Chats, Photos etc on the solid homepage. I assume there would exist dedicated apps, with large development teams, creating richer environments than a Solid server would ever offer and as such my data would be best viewed in those applications?

Are we creating a privacy tool or an app store?

Would love to hear thoughts on this and great challenges to why I am wrong and what I am missing!

I open the floor to @eduardoinnorway as you created such a great dashboard!

4 Likes

What dashboard did @eduardoinnorway create?

I think your correct!

Your homepage is yours to do with as you please, to go crazy and wild if you want, or to just leave it as it is.

I think your referring to the dashboard that you get when you pull up the pod URL, that is not your permanent homepage, you can create that yourself. Your homepage is represented by your username. If you want to create your own custom username homepage do the following: Get a pod, sign into it, in your storage folder click on the green plus sign, click on the folder icon, name it index.html and click the green check mark. Now go to your pod address /index.html page and click on the top source code icon, click the pencil to edit, delete the code in the box and enter your own custom code, then click the check mark. Thats all there is to it. Now you will have your own homepage on that URL instead of the dashboard. The users dashboard view will be available at your pod /index.html and your custom homepage will be at its URL.

2 Likes

We are creating an ecosystem!

I think that Solid could be seen as a environment where everyone can for free build apps that allow to share resources. With a personal liberty for each to connect to others data or to huge datasets or knowledge base being built by some institutions.
The core of Solid is developped by Inrupt, and interface between Solid and end users can take as many way that you can imagine.
The better way to know what is Solid is to create a Pod & test some apps & give feedback to devsā€¦ What do you think of this last https://scenaristeur.github.io/solidarity ?

1 Like

The point is, imho, that it is still such early days that basically any newcomer will be confused what Solid is, and depending on where they land - their first point of contact - will determine their first impression, and maybe opinion.

That could be standard / framework / ecosystem / platform / the-next-web, etcetera. Itā€™s scope could be perceived as revolutionary / yet-another-web-framework. Something-with-which-you-can-build-anything. Open effort / commercial undertaking.

If their impression is inaccurate one hopes they decide to dig a bit further, ideally doing a deep-dive and start some pod-coding, but at a minimum hopefully to return later once the initiative gains more traction.

2 Likes

All in all, personally I would prefer if Solid placed less emphasis on creating ā€˜appsā€™. Everything is an app nowadays, and it indeed looks like you are building some kind of Appstore, which implies that Solid will occupy just another niche on the web besides all the other appstores that exist.

Iā€™d rather see people say e.g. ā€œI created a ToDo app using a React + Solid + Rust + Postgress stackā€ than that they say ā€œI created a Solid app that manages ToDoā€™sā€.

In the core of Solid initiative Iā€™d rather see mostly a focus on standards specification, documentation, reference libraries and example code. The apps could all be listed in a curated awesome-solid repo on Github if you ask me.

Might as well give some more (hopefully) constructive feedback, now that I got going.

Note that Iā€™m in here as a technical product owner, not deep-diving, but adopting the perspective of potential techies (devs) joining the fray. Besides Solid I casually follow a bunch of other vNext web technologies and trends.

Right now if I were a dev looking for a project, or an IT decision maker, I would not choose Solid yet - hold my cards - unless I was already well invested in semantic web technology. Adoption, maturity levels, and community size would make me very cautious.

I would hope this is not the case and instead solidproject.org is the focal point of the Solid community from where the core evolves.

It is fine if commercial entities like Inrupt Inc. serve as stewards from the sideline and are big contributors to the core tech, while they are developing their services. But having the core developed in a startup, an enterprise, does not make Solid a real standardization effort imho. In the best case it would be an emerging de-facto standard if/when it gains real traction.

This setup, if maintained, would alienate a lot of developers in open-source realms. And it is in this segment where youā€™ll the most passionate people that are striving for a radical new and better web.

1 Like

Thxs for the fix

1 Like

Solid is also about linked data and interoperability.

3 Likes

The problem with asserting a dichotomy between privacy and apps is that, in Solid, there is no privacy without apps. The way that Solid implements decentralization is by moving intelligence from the server to the app. This is a key feature and critical to providing data privacy. In the old web, apps are just extra methods to get to centralized servers. In the Solid web, apps are the only way to share decentralized data. So providing a list of apps on my dashboard is not saying ā€œhereā€™s some software I likeā€, it is saying ā€œhereā€™s how I access the data that interests meā€ and/or ā€œhereā€™s how you can access data about meā€ - both of which are done through apps. An app should not be seen as just software, it is the embodiment of an ontology, a portal to a community, and a knowledge base. It was critical for the development of the original web that there were servers with interesting content to attract users. The same is true for the Solid web, but the content is accessed through apps, not servers.

7 Likes

Fantastic conversation points, really enjoying hearing your views.

@jeffz, so if I understand you correctly you are saying that apps are required to generate interest and adoption of Solid and without apps the concept of Solid would not stand up. Which I completely agree with, but we should be clear on the end goal. Is this community building Solid + Apps and therefore their own ecosystem or are we building Solid (and creating initial apps to drive discussions and adoption) with the expectation that major players will take on Solid as a standard into their apps (please step forward Twitter and others).

Personally, as you can probably tell, my leaning is more towards the approach covered by @aschrijver,

I think consumers should see ā€˜Built on Solidā€™ as an indication that an app developer has privacy and transparency as core principles of their development. And they in time will come to understand that it means they can control where that data is hosted, they can chose when and to whom it is shared.

Lets keep the conversation goingā€¦

2 Likes

And I should add that I think using a ā€˜Based on Solidā€™ app should feel no different to any existing app. The complexities, benefits etc will be hidden to the user.

However if they go to their POD provider they should be able to see their PODs, manage the sharing of that data and link to the apps to see what data (photos, chats etc) that app is creating.

Does this make sense as a conceptā€¦

You have a one stop view of all your PODs and who is requesting access

Clicking on a POD shows you who is sharing that data and the controls to add or remove access. It would also have links to the application etc

3 Likes

I think most people will have just one pod, so I wonder if you are clear on what pod is?

A pod is a storage space that you control. Within that you can organise the storage into folders (technically ā€˜containersā€™) and files. You can give specific individuals and apps certain permissions by setting access controls based on their credentials, and on individual resources (containers and files).

So I think if somebody wants more than one pod they will likely treat them as separate places (like websites) that they own. You could have an app to help manage multiple pods (as you can with websites) but I think thatā€™s a special case, not for many users.

As for how you present apps I donā€™t see this as crucial at this point because it is purely individual choice by the app developer and easily decided later, and easily reframed after that if you change your mind.

Whatever we think, the Dev crowd will reach some kind of concensus. If the Solid brand is strong it will be ā€˜Solid Todoā€™ of not it will be ā€˜Todo with privacy etcā€™.

As for the purpose of this community, again I think we are a diverse crowd with concensus around qualities and values, but many of the details of how Solid can deliver these through applications are still to be worked out. There are IMO significant challenges in that area, which some in this community are working on (how to make apps work in what we have, and figure out whatā€™s missing), and hopefully Inrupt are engaged with that too. But it isnā€™t clear what their goals and priorities are apart from: getting a Solid server delivered, a first version of the Solid spec in place alongside it, and better tooling for developers.

My questions would be what are the technical problems that Solid has still to deal with and what is the plan to address them, and what is not going to be addressed for the foreseeable future.

3 Likes

to this specific point, a potential historical precedence here may be regarding email or social media in general etc ā€¦

most people that I know have multiple accounts for anything and everything, for a myriad of reasons, over their lifetime .

multiple emails, multiple FB, multiple Twitters, multiple LinkedIN, etc ā€¦

im sure all of us on this thread also already have an unknowable amount of random SOLID pods as well as WebIDs we have all created so far as well .

i think one thing that will always be highly valued and maybe only possible in SOLID world moreso than a private walled garden world (given thats why FB, Twitter, MSFT, etc are all cooperating for ā€œopen portable dataā€ between them) is a way to reconcile and consolidate your presence .

because RDF starts with an open world assumption this can get interesting from the start .

it opens up the value for ā€œvoluntary/participatoryā€ ā€œproofed/signedā€ closed-world networks within open-world networks .

There is no clarity on the scope of Solid! As I see it:

Solid is a specification that allows control (i.e. privacy) of your own data in a decentralized fashion

To me that means: spec + reference impls (libs) + examples. The first is important, the rest is just supportive.
Remove the confusion that Solid is everything between spec and Internet vNext.

  • [v] pods are solid
  • apps are examples, not solid
  • linked data is not solid

And refering to @markjspivey:

  • smtp is not Gmail or Protonmail
  • activitypub is not Mastodon or PixelFed

They merely use it! A social network, a chat app, a cms, a what-have-you is not Solid, but use it as one of the many, many other things theyā€™ll use.

If the solid project keeps saying " Hey, did you see my SolidThis, and my SolidThat, and how we move to a SolidWorld?", then someone else will just say ā€œNice, I have this NodeJsThis and TypesciptThat, or WhateverIHave, and maybe take a look later, once my project is doneā€.

Please help me. Do I see all this wrong?

Edit:

It may be that Solid as I describe it is a ā€˜tough sellā€™, as it comes with some prerequisites, like Linked Data, which constitutes a world in itself and there needs to be broader linked data / semantic web adoption for Solid to surf to the top. Plus there are no good decentralized identity solutions yet (but this I see as broader than Solid).

But I see Solid as comparable to GraphQL, a de-facto standard that became popular driven (initially) by a commercial company (a tech giant in this case) and an attached community. GraphQL needed as prerequisites broad JSON and REST adoption and fixed important issues with the latter.

I worked with in Java from the early beginning. They had a full spec, very clean documentation, and a high-quality javascript reference implementation. Letā€™s look how GraphQL - after years of further development - describes itself:

GraphQL - A query language for your API
Describe your data, ask what you want, get predictible results

2 Likes

PS. I want the best for Solid, and I want to feel comfortable enough to use it. Right now I donā€™t feel that comfort.

Edit:

Just now I see the updates on solidproject.org and spec document, which make me a lot happier already. With ā€œSwitch between storage and apps while taking the data alongā€ it is reasonably clear, but the confusion for outsiders is still easily triggered, imho.

In the spec it says " A Solid app is an application that reads or writes data from one or more data pods." so that means - correctly - any application that incorporated the standard. But ā€˜Solid appā€™ and ā€˜appā€™ are just contextual to the specification document and care should be taken to not have that creep into the common language / terminology used to communicate to the outside world, as there everything in every standard is also an app, and then Solid apps appear to be in a different sub-category, a niche, to that.

On solidproject.org in Using Solid Iā€™d write:

" To get started with Solid you will first need a Pod and a WebID, after which you can start using any Solid-compatible app."

Or something similar. In the Developer section (which is way better now in general, btw) after ā€œGetting Startedā€:

  1. Integrate Solid (with your favorite pony)
  2. Build Solid Web Apps
  3. Host Solid Pods

Then it quickly devolves into ā€˜Writing your first Solid web appā€™, with ā€œThis tutorial assumes you are familiar with modern JavaScript and its ecosystemā€ and any Rust, Go, Java, Guile, etc. developer closes the tab.

But it is a work-in-progress, I understandā€¦ just giving feedback :blush:


:x:    Sorry, I found this is not the right place to write this, so I created an issue in the Vision panel instead.

2 Likes

Having just revisited solid project.org, after a long time away I have to admit that things are becoming clearer. There are some key ambiguities being addressed.

I still think governance is a key missing gap. For people to put their trust in Solid they have to have confidence that all users of Solid are implementing it in a safe and secure manner. There is nothing stopping me setting up a Solid compliant server, then storing the data in an unencrypted insecure manner and no one would know.

Great to see the progress everyone!!

2 Likes

I just added following comments panel improv in issue in Process repo and to my Vision panel issue. Copied for forum discussion:


I have been looking at the GH repository organization of Solid, and frankly I find them an intimidating mess.

I strongly advise bringing more structure to it to make it easier for people to be on the same page.

One suggestion is to create multiple solid-related GH organizations, e.g. a solid-labs where only the spec + panels + related docs can be found.

Then maybe a solid-ecosystem with solid-ui and panes and supporting projects.

So that in solid you only have core projects, website, process, core docs.

Well, you get the idea. You probably can do much better than my try above :smile:


When I look at Solid with an outsiders eye - and today I did that again going through the repo setup - I see:

  • Yes, a spec
  • But mostly a javascript-based techstack

In no way do I get the impression that this is important for the future of the web.

There are 1,000ā€™s of JS-flavoured ecosystems. Somewhere you need to convince that the spec is all-important and will disrupt the web (if that is still the goal). The solidproject.org website also does not do this. You are just one in a million such websites.

In the past I gave more feedback related to this positioning in my forum posts.

1 Like

I have continued my scope discussion here: Solid scope and ecosystem