Introduction to SOLID: Tim Berners-Lee New Redirected Internet

Original author: Arnav Bansal
  • Transfer
Creation of a new decentralized Internet has been worrying the minds of specialists for many years. Professor Tim Berners-Lee went even further and found a way to centralize the Internet. What does this mean, how is the Solid project connected with this and what are “scams”? Read in our translation of the article Arnav Bansal , published on the site freeCodeCamp .

Recently, Professor Tim Berners-Lee presented a project called Solid. I decided to read it. In this article I will explain why Solid is needed and how you can start working with it.

What is Solid?


Solid is an attempt to redistribute the Internet.

Re decentralized?

Previously, the Internet was represented as a decentralized common space for reading and writing data. The first browser, called WorldWideWeb, was also an editor .

However, with the development of the Internet, the structure of web applications for a variety of reasons has become centralized. User data has become a source of strength and income for Internet companies.

Solid is the solution to this problem.

Solid is a new paradigm for web applications that is backward compatible with the existing Internet.

Solid is a set of technologies, a group of related protocols and implementations, and a growing community. Just like the internet.

Separation of applications and data


Before the advent of the Internet, your data was stored on a personal computer.

As soon as people started using multiple computers, and smartphones entered the daily life, the model “your data remains with you” changed to “your data is in one or several large data processing and storage centers around the world that are managed by application developers” .

Thus, applications were closely associated with user data. Creation of any application for the network involves global management of personal data.

Applications and their ability to make money are measured by how their database is built. Your data is difficult to transfer, since the storage of information varies greatly in different applications.

What is the result? Almost every application is isolated. This reduces the motivation of developers to innovate at the application level. Existing platforms are protected from failures, since locking data restricts users to move.

Data Protection Rules


Some countries have enacted data protection laws. Companies must make your personal information manageable so that you can download or delete it.

Thus, users are trying to regain control of their data. This is a legal requirement, but not a technical reality. All information about users is still with the developers, and the ability to download your data is of little use if you cannot transfer it to another application.

Pody: keep your data with you


The Solid project solves the technical aspect of this problem. It allows you to create applications in such a way that they can read and write data that is stored in your file (eng. “Pod” - personal online data).

You and your friends have pods that contain information. You give apps permission to access your hearth.

You can have several of them: one you use at home, the other at work. Your sub can exist on a computer, or be shared between your devices, or stored for you on some resource.

Pody contain related data . Your sub can be linked to information on my network or somewhere on the Internet.

We want applications to work on different devices, but at the same time our data was independent. And we need to allow different applications to use the same data and have access to it.

Solid Ideas


Studying the Solid project reminded me how I took my first steps in web development. I remember how I simultaneously mastered the HTML, CSS, JavaScript and frameworks that were used at the time.

The only difference is that Solid is a new project and it is more difficult to find help in its development.

If you are thinking of starting development for Solid, then you have a collection of basic concepts.

(PS If you want to go straight to the point, read the section "First steps").

Related data


The strength of Solid and the Internet as a whole lies in how all data is hyperlinked.
In Solid, you store the data you create anywhere. Your personal information is most likely stored in your file. Like the Internet, to access this data, you need to go to the URL.

It's time to introduce you to deciphering the name Solid: SO cial LI nked D ata (public related data).

Read details about related data in the context of the Solid project .

Resource Description Environment (RDF)


RDF is a way of representing related data through a view statement subject-predicate-object. They are also called triplets.

RDF is an abstract model. It can even be presented on the example of English sentences. Before you task from the list of tasks:

T1 is a task
T1 is labelled "Write an article about Solid"
T1 is due October 5rd 2018
T1 is assigned to @itsarnavb
T1 is incomplete


Turtle


Turtle is a compact way to present RDF data using URLs to submit subject, predicateand object.

<http://example.org/person/Nassim_Taleb><http://example.org/relation/author><http://example.org/books/The_Black_Swan>.
<http://example.org/person/Nassim_Taleb><http://example.org/relation/author><http://example.org/books/Antifragile>.
<http://example.org/person/Nassim_Taleb><http://example.org/relation/author><http://example.org/books/Skin_in_the_Game>.

The three links in each row are Subject, Predicate, and Object, respectively.

They are repeated, they are hard to read, so turtle has a system of prefixes and conventions. This is especially important when working with large documents.

@prefix p: <http://example.org/person/> .@prefix rel: <http://example.org/relation/> .@prefix book: <http://example.org/book/> .
p:Nassim_Taleb rel:author book:The_Black_Swan,
                          book:Antifragile,
                          book:Skin_in_the_Game.

Read more about turtle . You can also read the full turtle document here . This is a detailed public profile of Professor Ruben Verbor, who is part of the Solid team.

Semantic web


Tim Berners-Lee best explains the meaning of all this:
“I dream of the Internet [using computers] to analyze all network data — content, links, and transactions between people and computers. The “semantic web”, which will make this possible, has yet to be developed, but when this happens, the machines that communicate with each other will deal with the daily trade mechanisms, bureaucratic procedures and our daily lives. "Intellectual agents," which people have so long praised, will finally become a reality. "

The first steps


Perform these tasks in any sequence convenient for you.


Go to Solid


You will help the Solid ecosystem if:

  • invest in the development of the Solid project itself and the infrastructure associated with it;
  • will develop applications using Solid.


But keep in mind that at the moment the development for Solid is a thorny path with a lot of trial and error, where you have to ask stupid questions and look for answers to them. There is no Stack Overflow where you could go. In order to debug some errors, you will probably need to dive into the source code.

Here are the communities in which you can help:


And finally, here is my Twitter for private messages: @itsarnavb. I will try to answer all the incoming questions or find someone who can do it.

I will keep this article up to date by relying on the best resources to learn Solid.

Additional materials



Also popular now: