Polkadot is roughly 12 months from being delivered. Between now and the end of 2019, additional proofs-of-concepts will be released. Polkadot’s next major milestone is the “Alexander” testnet, which will feature the audit-ready GRANDPA finalization algorithm. After that, the next key milestone to reach is ICMP, or Inter-Chain Message Passing, with a testne incorporating it scheduled to launch in April.
Thus as the Polkadot protocol approaches a feature complete codebase and developer readiness, services, applications, and businesses can begin building on top of Polkadot. Speckle OS is one of the first companies to announce publicly their intention to provide services on top of Polkadot. This blog details their contribution to the Polkadot platform.
Introduction to Speckle OS
The current web has failed to empower the user to take control of their data, identity and privacy. As we continue to see increasing centralization of the internet to monolithic tech companies, many are seeking ways to shift the balance of power away from centralized authorities and back to the users it was intended to serve. While blockchains have been seen as the Holy Grail to solving this problem, the current landscape consists of fragmented, isolated and relatively slow networks. This is a significant stumbling block to replacing the current web. Polkadot fundamentally solves this problem by enabling cross-chain communication between standalone blockchains (such as Bitcoin and Ethereum) and parachains. This will form the backbone of what is being called “Web 3.0”.
However, we still must enable users to experience this network of blockchains (a.k.a. Web 3.0) in a simple and unified manner. Herein lies the primary objective of the Speckle OS project: to facilitate a seamless user experience when accessing the new web. While the user will be accessing a complex network of underlying protocols, dApps and chains connected to Polkadot, it will be abstracted for the user through Speckle OS.
“The fourth and final component to the Web 3.0 experience is the technology that brings this all together; the ‘browser’ and user interface.” — Gavin Woods (https://gavwood.com/dappsweb3.html)
In order to achieve this, we will need to create the following 4 features:
- Persistent identities across the Polkadot network;
- Seamless control of user-created data;
- Easy access to parachains, their data and native assets; and
- Intuitive interface to participate in on-chain governance.
Speckle OS intends to achieve these objectives through 3 key components:
- Speckle Browser, which will be the user client to access the Polkadot Network and all connected parachains;
- Speckle Box, which will be designed as a general purpose and highly-configurable UI client for substrate-based chains; and
- Speckle Parachain, which will enable the user to communicate to other connected chains through one portal.
Instead of managing multiple accounts for each chain connected to the Polkadot Network, the user will have the option to maintain one (or fewer) accounts on the Speckle Parachain that is natively capable of communicating with all other chains connected to Polkadot. The Speckle Browser will natively support accounts created on the underlying parachain in addition to accounts natively created on other parachains.
Further, the broader plan of the Speckle UI suite (both Speckle Browser and Speckle Box) is to contain a light client within the applications to enable reliable and decentralized access to data on the Polkadot Network or underlying substrate chain. This is particularly important for substrate-based chains, which have fewer resources to maintain costly node infrastructure (which more often than not results in the core developers maintaining their own centralized node services to provide data to their users).
Why would a Substrate or Polkadot chain use Speckle OS?
Speckle OS, essentially, intends to act as the universal user interface layer for the broader Polkadot network. Users will be able to discover a list of parachains that are connected to the Polkadot network, “subscribe” (so-to-speak) to parachains of interest and access their feature-set through one portal. This eliminates the need for a user to manage multiple user interfaces for each parachain. Further, this enables easier cross-compatibility from a UX standpoint.
“It is possible to create parachains which have their own parachains, and so on.” — Robert Habermeier (https://medium.com/polkadot-network/polkadot-the-parachain-3808040a769a)
Speckle OS will provide a framework to streamline the user experience for the complex “tree-like structure” of parachains that will develop in version 2 of Polkadot. Discoverability and accessibility of chains, dApps and other data across the Polkadot Network will be vital to the success of a connected Web 3.0. Additionally, discoverability of new entrants (such as new chains vying for a parachain spot in the network) will be just as important to the broader health of the Polkadot Network.
The Speckle Browser will be configured into a general UI framework for substrate-based chains in our ‘Speckle Box’ component. In the same way that substrate enables developers to quickly deploy usable blockchains, Speckle Box will enable developers to quickly deploy a fully featured and highly configurable UI that connects to their substrate-chain. Speckle Box removes the need to reinvent features that are common to blockchain wallets and browsers. This is particularly important for testing out governance mechanisms or any other feature that is typical to blockchain usability (such as asset and account management).
Down the road, we hope to include light-clients in both Speckle Browser and Speckle Box, and implement a mesh of nodes to enable decentralized access to data from the underlying networks. The benefits will be most apparent to substrate-based chains with fewer resources. As stated above, substrate-based chains will have a greater distribution of light-client nodes that provide quick access to data without expending significant resources or relying upon centralized nodes.
What utility does Speckle OS provide to the Polkadot network?
Speckle OS acts as an ecosystem component to the Polkadot network at the user experience level. The core components of the project will be specifically tailored to the needs of the network. In addition to the points raised above, Speckle OS will also benefit the network by:
- Facilitating widespread governance participation by the Polkadot community;
- Simplifying account and data management across the network; and
- Providing decentralized registries for chain discovery.
Polkadot’s on-chain governance mechanisms are a core part of the evolution and future development of the network. Therefore, widespread user participation is paramount. Traditionally, this has been a challenge for many networks (admittedly they have been off-chain) where users are often unaware that a proposal has taken place, or confused about how to participate in the process. As a result, users may become incensed that a fundamental decision has been made without their knowledge or vote. The Speckle Browser will automatically notify users of new governance proposals, enable them to review the content of such proposals and directly vote on them. We will explore increasing the feature-set around the Polkadot governance mechanisms to facilitate a constructive review process (such as users submitting and voting on suggestions to amend an existing proposal on-chain). All data in regards to governance proposals will be read on-chain by the Speckle Browser.
The Speckle Parachain will act as the back-end portal for accessibility of the broader network. Users can create account(s) on the Speckle Parachain and interact with other chains through these accounts. The accounts will be tied to a persistent identity (or several identities) that the user creates through the Speckle Browser, which is stored on the Speckle Parachain. In doing so, we can simplify the user experience by enabling access to Polkadot’s parachains through fewer accounts. Further, the Speckle Parachain will contain registries to enable democratic discovery and preference setting of other chains across the network. The purpose of the on-chain registry is to prevent a middleman determining what is discoverable on the network. This is currently seen with some wallets and browsers containing a “submission form” through which they review dApps before adding them to the application natively.
Get in touch
If you’re interested in developing UX/UI solutions for the new web or you wish to collaborate, then you can email us at email@example.com.
You can follow our announcements on twitter @speckleos.
You can watch our presentation at the inaugural Web 3 Summit in Berlin where we explain the scope and objectives of Speckle OS here.