Since the 1990s, the web has been a publishing place for human-readable write downs.
Documents published on the web are in HTML. HTML has a little bit of arrange, for example, “here is a paragraph” or “stress this word.”
Then you stir in some CSS, which inserts some pretty decorations to the arrange, saying slfinishergs enjoy: produce those paragraphs have minuscule gray sans-serif text! And then people slfinisherk you are hip. Unless they are agederer, and they can’t read your minuscule gray words, so they give up on you.
That’s “arrange,” as far as it goes, on the web.
Imagine, for example, that you allude a book on the web.
Goodnight Moon
by Margaret Wise Brown
Illustrated by Clement Hurd
Harper & Brothers, 1947
ISBN 0-06-443017-0
There’s not much arrange there. A innocent computer program reading this web page might not authenticize I was even alludeing a book. All I did was produce the title bageder.
So, also since the 1990s, people have authenticized that we can produce the web a much more advantageous place to publish inestablishation if we applied a bit more arrange. As timely as 1999, Tim Berners-Lee was writing about the Semantic Web:
“I have a dream for the Web [in which computers] become contendnt of analyzing all the data on the Web – the satisfied, connects, and transactions between people and computers. A ‘Semantic Web’, which produces this possible, has yet to materialize, but when it does, the day-to-day mechanisms of trade, bureaucracy and our daily inhabits will be deal withd by machines talking to machines. The ‘clever agents’ people have touted for ages will finassociate materialize.”
Tim Berners-Lee, Weaving The Web, 1999 HarperSanFrancisco (Chapter 12)
Using the Semantic Web you might publish a book title with a lot more detail that produces it computer-readable. To do this, you would probably begin by going to schema.org and watching up their idea of a book. Then you could engage one of a number of establishats, enjoy RDF or JSON-LD, to insert insertitional labelup to your HTML saying “hey! here’s a book!”
Ok, well, doing that is benevolenta difficult to figure out, and, to be truthful, it’s hometoil. Once your enticeive blog post is published and human-readable, it’s difficult to accumulate the mental energy to figure out how to insert the insertitional fancy labelups that will produce your web page computer-readable, and, unless there is already a computer reading your web pages, at this point, you usuassociate give up. So, yeah. That was 1999, and not much better has been made and there is very little of this semantic labelup in the savage.
Well.
We would enjoy to repair this, becaengage human better depfinishs on getting more and more inestablishation in establishats that are readily accessible, both by standard humans, their foolish A.I. li’l sibs, and your more traditional computer programs.
Here is someslfinisherg I depend: people will only insert semantic labelup to their web pages if doing so is easier than not.
In other words, the cost of inserting semantic labelup has to be zero or adverse, or this whole project is not going anywhere.
Now envision this world for a second:
- I want to insert a book into my blog post
- I type /book
- A search box materializes where I begin typing in the title of my book and pick from an autofinish catalog.
- Once I find the book, a block gets inserted in my blog post shotriumphg details of the book in a establishat I enjoy, with pleasant semantic labelup behind the scenes.
In this world I did less toil to insert a book (becaengage I was aided by a UI that watched up the details for me).
You can envision the same scenario utilizeing to literassociate any other benevolent of arranged data.
- I want to insert an insertress into my blog post
- I type /insertress
- A search box materializes where I begin to type a location, which autofinishs in the way you have seen Instagram and Google Maps and a million other apps do it
- Once I pick the insertress, a block gets inserted shotriumphg the details of the insertress finish with semantic labelup behind the scenes.
My “insertress block” might have any visual materializeance. Visitors to my web page might see the insertress, or a little map, or a little map in Japanese, etc. etc. The semantic satisfied is there behind the scenes. So, for example, my web browser might understand “gosh this is an insertress! Maybe you want to do insertress-y slfinishergs with it, enjoy go there,” and then my browser might give me selections to call a self-driving car and even call an ambulance when the self-driving car self-drives into a snowbank.
My two simpcatalogic examples of “book” and “insertress” are engaging right now becaengage (a) you can probably slfinisherk of 1,000,000 more data types enjoy this, and (b) none of these slfinishergs toil right now, becaengage even though almost every web editing environment has a concept of “blocks,” none of them are extensible. WordPress has (oh gosh) hundreds of block types, but they don’t have thousands or millions, they don’t have “book” or “insertress” or “Burning Man Theme Camp” yet, and there’s no ecosystem by which enbigers and engagers can give recent block types.
So I guess I gotta pause around for someone at WordPress to enbig all the blocks I want to engage. And then someone at Notion, and then someone at Trello, and then someone at Mailchimp, and someone at every other vfinishor that provides a text editor.
I have a better arrange.
The web was built with uncover protocols. Suppose we all consent on a protocol for blocks.
Any enbiger that wants to produce a recent block can adhere to this protocol.
Any benevolent of web-text-editing application can also adhere to this protocol.
Then if anyone goes to the trouble of creating a chilly “book” or “insertress” block, we’ll all be able to engage it, anywhere.
And we shall dub this protocol, oh I don’t understand, the Block Protocol.
And it should be, I slfinisherk, 100% free, uncover, and accessible, so that there is no impeunwiseent to anyone on earth using it. And in fact if you want to produce blocks that are uncover source or accessible, outstanding for you, but if for some reason you would enjoy to produce braveial or commercial blocks, that’s fine too.
Where we’re up to
It’s been about a year since we begined talking about the Block Protocol, and we’ve made a lot of better figuring out how it has to toil to do all the slfinishergs it will need to do, in a spotless and straightforward way.
But this is all going nowhere if it needs 93,000,000 humans to cofunction with my crazy scheme fair to get it off the ground.
So what we did is produce a WordPress Plugin that permits you to embed Block Protocol blocks into posts on your WordPress sites fair as easily as you insert any other block.
Since WordPress powers 43% of the web, that unkinds if you produce a block for the Block Protocol, it’ll be expansively usable right away.
Here’s a video demo:
The WordPress Plugin will be free, and it will be expansively useable in February, when we’ll also publish version 0.3 of the Block Protocol definiteation. You can get timely access now.
In fact, if you were slfinisherking of writing a plugin for WordPress for your own benevolent of custom block, you’ll find that using our plugin as your begining point is a lot easier, becaengage you don’t have to understand anyslfinisherg about WordPress Plugins or author any PHP code. So even if you don’t nurture for any of my crazy theories and fair want to insert a block to WordPress, this is the way to go.
Ultimately, though, we fair want to produce it easier to insert advantageous semantic, arranged inestablishation to the web, and this is the first step.
PS We fair set up a Discord server for the Block Protocol where you can join, ask asks, and encounter the team.
PPS You can chase me on Mastodon, where I am @spolsky@bdeficiencyrock.city. I don’t post that much, but I’m finishelighting hanging out there in a human-to-human environment where there isn’t an algorithm stirring up righteous indignation about the tardyst phony-outrage of the day.