Joel Spolsky on Structuring the Web with the Block Protocol
In the battle between the open web and proprietary walled gardens created by the likes of Facebook, Joel Spolsky and his HASH co-founder David Wilkinson come out decidedly on the side of the open web. Their team at HASH recently introduced the initial version of the Block Protocol, a proposed specification that intends to combine the data commonly displayed on the web with its structure and type — so it is not only easier to create and share data across platforms, but also to make that value more easily available to be abstracted and used in various ways.
“I’m a big believer in the web, by which I mean the actual web where people make websites, as opposed to sort of the fake proprietary walled gardens like Facebook, which are sort of destroying the web,” said Spolsky in an interview. “When you look at the web, the next thing it really needs is a little bit of structure.”
According to a blog post by Spolsky, the Block Protocol is “just a protocol that embedding applications can use to embed blocks,” wherein “any block can be used in any embedding application if they all follow the protocol.”
Already, tools like WordPress, Medium, Notion, or other content management systems and web editing tools, offer the ability for users to create blocks of content, by quickly pushing a button and choosing from a list of block types. The problem, says Spolsky, is that there is no unifying schema shared across these systems. A to-do list in one does not easily translate to a to-do list in another; and this is something Block Protocol is looking to solve.
“When the WordPress people add a block with the Project Gutenberg editor, it’s of no use to somebody in Atlassian Confluence, who pretty much [have] to re-implement that block themselves,” said Spolsky. “And when they reimplement it, maybe it’ll be incompatible. It won’t use the same data types. It’s just rewriting the same code again, and again, and again.”
How Is This Different from Previous Attempts at Structure?
The Block Protocol is not the first attempt, however, at bringing structure to data presented on the web. The problem, says Spolsky, is that previous attempts — such as Schema.org or Dublin Core — have included that structure as an afterthought, as homework that could be left undone without any consequence to the creator. At the same time, the primary benefit of doing that homework was often to game search engine optimization (SEO) algorithms, rather than to provide structured data to the web at large. Search engines quickly caught on to that and began ignoring the content entirely, which led to web content creators abandoning these attempts at structure.
Spolsky said this led them to ask one simple question: “What’s a way we can make it so that the web can be better structured, in a way that’s actually easier to write for a web developer than if they [had] left out the structure in the first place?”
“Nobody’s going to bother to make blocks if they’re not usable in a lot of places, but Gutenberg in the WordPress environment is an awful lot of places.”
-Joel Spolsky, HASH
The basic building blocks of the web — HTML and CSS — describe content and how it should be displayed in a human-readable format, “but it doesn’t describe anything about that type of data or what the data is or what it does,” said Spolsky. “The next thing that’s missing is adding that structure. The big negative of not having that structure there is that the web is not computer-readable in a sense. If I have a web page for an event and it mentions a time and a date and a location, the only way for a computer to understand that stuff is to try to guess where it is, and maybe use machine learning or something and probably get it wrong.”
For web authoring tools using Block Protocol, content created will follow a specified format that can be understood by machines as well as people. In this way, content made on one site — an event or a to-do list, for example — would be portable between any site that adopted the Block Protocol, and would also be readable by any application looking to understand it.
Who’s Adopting Block Protocol
For any protocol, one of the first problems is gaining adoption wide enough for it to be worthwhile. But already, Block Protocol has expressed interest in working with the Gutenberg Project, which provides the block editor used by WordPress, the content management system that powers a vast swath of the web. Once Block Protocol makes its way into Gutenberg, other web content editors and publishing tools would be quickly incentivized to also adopt it, said Spolsky.
“Nobody’s going to bother to make blocks if they’re not usable in a lot of places, but Gutenberg in the WordPress environment is an awful lot of places,” said Spolsky. “So once those blocks start showing up, if you are the creator of some kind of a tool that lets you write [on] the web, it would be a very, very easy way to make your tool that much more powerful if you support this protocol.”
Currently, the Block Protocol is in a very early version. HASH co-founder David Wilkinson, who also talked with The New Stack, said that the current goal is to not only increase the number of blocks available in the Block Protocol Hub, but also to work on issues such as styling and security.
“We feel the approaches that are currently outlined may be sufficient for a v1 implementation of the protocol, but we expect them to totally change over time,” said Wilkinson. “We have open RFCs on those, and we’re working with users to develop the blocks and potential embedding applications, as well to support the protocol.”