On Tech, Business, Society.

Tag: standards

What’s Wrong In The Blockchain Industry

No, I’m not going to write about what the naysayers are already saying about the blockchain. We have heard these objections ad nauseam: tokens are made out of thin air, it doesn’t do anything we can’t do already, no use cases, every token is a scam or Ponzi scheme, cryptocurrencies are not real currencies, crypto can’t become too big to fail, etc. 

Rather, I’m writing about a constructive critique in terms of weaknesses that need to be addressed if we want to see the blockchain/crypto industry prosper to greater heights. That’s why the title specifically says “IN” the blockchain industry, not “WITH” the blockchain industry.

Here are the issues that need to be fixed, in my opinion.

1/ Become Regulation Friendly 

I’m not saying the industry needs to blindly surrender to established de-facto regulation. The regulatory field is complex and nuanced. Whatever the end-game is, crypto needs to be compliant with it, and then prosper within those rules. Regulation shouldn’t be suffocating innovation. So, that doesn’t mean that the industry needs to stop lobbying for, and educating legislators about the right way to evolve some parts of the current rules or create new ones. Ideally, we need to see updated regulation that is more friendly to crypto. 

2/ User Experience Matters 

No technology has gained mainstream experience without espousing absolute simplicity and ease of use. Today, many products and services (including wallets) in the blockchain space have horrible user interfaces and user experiences. As if they were not designed with the mainstream consumer in mind. This needs to change. I am longing to see crypto products that generate a “Wow” effect from a user experience point of view. 

3/ Standards, Standards, Standards

There are two types of standards: de facto or industry ones. De facto standards just happen because of adoption success. Industry standards are developed by competing industry players that agree on common ground principles that are neutral to their competitiveness. Sadly, I do not see enough de facto standards emerging in the blockchain space (especially across chains), and I see no cross-industry initiatives at the technical level. That brings us to the next topic. 

4/ Inter-Industry Cooperation

Related to the point above on standards, the industry needs to collaborate more on important infrastructure or middleware related technologies because these are the enabling blocks for creating the ultimate applications that users will be attracted to. As it stands, there is too much competition, and not enough co-operation. In the non-technical realm, yes, there are some “blockchain associations” counting several industry members, but I firmly believe we can do better and more in this area in terms of effectiveness and results.

5/ No-Code Solutions

The reason we now have 5 billion Internet users is because it’s so easy to get in and start using it via the many on-ramps such the ones provided by social media, email applications or e-commerce. Behind the scenes, what also made this possible is the wide availability of “no-code solutions” that allow anyone via a few clicks and some common sense to create something worth attracting users to. For e.g., in the area of publishing, WordPress or Tumblr (previously) lowered the bar for creating a personal website by enabling anyone to do that without the help of a developer. Shopify allows anyone to start selling their products online, just like that, with a few clicks. We will need similar types of no-code solutions that allow anyone to create new experiences that depend on the blockchain.

6/ Better Industry Voices

Last year, the mainstream media was too heavily focused on painting Sam Bankman-Fried as the perfect poster boy of crypto. Today, we know where that story led, and we are still overhung by that unfortunate head fake from the previously (arguably) most popular crypto cheerleader. Industries need cheerleaders to advance, just as for example Elon Musk was that special charismatic voice for the Electric Vehicles industry. There are lots of good and smart people in crypto, but we need more of their voices to be heard, and we need the mainstream media platforms to find them, respect them and amplify their voices while they give less airtime to the promoters, speculators and wannabes.

These are all strategic issues that will take time to get fixed. But we need to work on them.

The Blockchain is Still Waiting for its Web, Here is a Blueprint for Getting us There

the-road-aheadThe blockchain landscape is still very technical. Aside from the early enthusiasts and pioneers, it is hardly comprehensible to the masses, and it will continue to be that way, unless it breaks out of its technical shell.

This isn’t unlike the predicament the Internet was stuck in, prior to the Web.

So, what if blockchain technology is more like the Internet, which means that we are still waiting for its Web layers to emerge, in order to fully exploit its capabilities?

Today, blockchain protocols, solutions, or platforms are not straightforward to work with. At least, they require a good degree of technical know-how that far exceeds what an average web developer or savvy semi-technical business person can do with the Web today. But does it have to be that way forever?

Blockchains Have Many Common Features

If you examine the variety of available blockchains, many of them handle the same few basic functions, centered around recording (digital) value without requiring a third party to move it.

Outside of this core capability, a number of additional functions and features are typically found:

Blockchains Interaction Layers

  1. Central nucleus: Records of Value
  2. Basic Features Layer: Ownerships, Balances, Transfers, Assets creation, Time-stamping, Security, Programmability.
  3. Interaction Layer: Verification of transactions, Proofs (of existence, or other), Movement history, Technical or Business Logic, Storage, Settlements, Identity, Naming.
If this set of functionality is generic in multiple blockchain platforms, why do we need many ways to call them up? Why not institute a common way to check identity, asset ownerships, time-stamping, etc. across any blockchain?

Note that I didn’t include cryptocurrencies, shared distributed ledgers, or even decentralized protocols in these layers because they are applications and outcomes of blockchains.

If you stand back from the nitty gritty of these layers, you will realize a key abstraction that is common to most blockchains: how they shatter the intermediary trust paradigm by enabling transactions to occur at the peer-to-peer level, without the necessity of central choke or delay points.

Since there is so much homogeneity in functionality intent, then why are there so many different and incompatible blockchain technologies and software? That’s because each blockchain implements these basic features and interaction layers in its own way.

Learning from the Web’s History

This scenario is not unlike the position the Internet was in, prior to the Web. Tim Berners-Lee described that period well, circa 1989: “In those days, there was different information on different computers, but you had to log on to different computers to get at it. Also, sometimes you had to learn a different program on each computer. Often it was just easier to go and ask people when they were having coffee…”.

Since millions of computers were already being connected to a fast growing Internet, Tim figured the way to solve this problem was to have them share information via an emerging technology he proposed, called hypertext (structured text that uses logical links between nodes containing text) that he described in a seminal 1989 document called “Information Management: A Proposal”.

“By October of 1990, Tim had written the three fundamental technologies that remain the foundation of today’s web (and which you may have seen appear on parts of your web browser):

HTML: HyperText Markup Language. The markup (formatting) language for the web. URI: Uniform Resource Identifier. A kind of “address” that is unique and used to identify to each resource on the web. It is also commonly called a URL. HTTP: Hypertext Transfer Protocol. Allows for the retrieval of linked resources from across the web.” [Source: http://webfoundation.org/about/vision/history-of-the-web/]

As a footnote to this backdrop, Tim’s boss originally gave a lukewarm response to the paper, handwriting on it “Vague, but exciting”. In truth, some vagueness in a protocol is a good feature, because it implies that its scope is widely encompassing, without being too restrictive. One could argue that Satoshi Nakamoto’s paper was also vague, pertaining to the fullness of its targeted applications beyond the peer-to-peer exchange of electronic money. Ethereum, for example was built specifically as a general-purpose blockchain platform environment, and didn’t want to be specific, as an original design objective.

Since their early days, the Internet and the Web have matured nicely, and today they both rely on close to 200 standards, categorized along the following segments:

  • Web Layer: HTML, URI, Java, CSS and more.
  • Application Layer: HTTP, DNS, FTP, SMTP, POP and more.
  • Transport Layer: TCP, UDP, DCCP, RSVP and more.
  • Internet Layer: IPv4, IPv6, IPsec, ICMP, IGMP and more.
  • Link Layer: ARP, PPP, Ethernet, DSL, ISDN, FDDI and more.

[Derived from: Internet protocol suite, https://en.wikipedia.org/wiki/Internet_protocol_suite.]

These standards are what make the Web work so well. When you are developing Web applications, setting up an infrastructure, or building new products, you interact (directly or indirectly) with these standards, knowing exactly what to expect.

Unfortunately, blockchains don’t have that luxury yet, as each platform is made-up of its own set of technologies and methods to work with it, resulting in a balkanized learning curve and adoption behavior for software developers and architects.

Blockchain Technology is Too Fragmented

Each blockchain has its own set of technology tools, middleware and API’s that applications developers need to contend with. An engineer that knows how to program Bitcoin needs to relearn what they know, in order to develop on other blockchains. For example, exchanges that support multiple cryptocurrencies have to deal with different integration technologies for each implementation.

It is true that each blockchain platform has developed its own technology stacks and interaction methods, but these are vertically integrated to themselves, and for their own ecosystem. In fact, most blockchain platforms don’t share that much in common, resulting in choice lock-ins, lack of interoperability, and potentially dead-ends that are hard to untangle.

The state of collaboration between blockchains is even worse, and plagued by timid efforts for building bridges and lateral co-operative capabilities. One day, it shouldn’t be inconceivable to have technology that crawls entire blockchains, in the same way that search crawlers spider websites to index or categorize vast content.

Of course, many technologies start by being proprietary. What follows is that some of them get adopted widely, and they become de-facto standards. In other cases, groups get together and agree to support a given standard, to serve everybody. Today, not enough of the latter is taking place, although many leading blockchain technologies are hoping to gain enough market klout that would let them become that de-facto choice.

In hindsight, I wished we didn’t give up on Bitcoin APIs so quickly. Two years ago, Bitcoin APIs were all the rage with more than a dozen companies vying for that space, as the entry point to develop Bitcoin applications. Then, the majority of them slowly opted out of that business, or stopped highlighting it as a key offering. Today, we still have several (Bitcoin) API-based offerings from companies like Factom, Tierion, Gem, Colu, BlockCypher, Neuroware, and Coinbase (to name a few). There are benefits to seeing a multitude of APIs take hold and get adopted. Even if some of them overlap in functionality, at least they will point to the need for an eventual standardization.

Bitcoin is making progress at its own pace, via technology releases aimed primarily at solidifying its own ecosystem. Although they have the largest cryptocurrency footprint, that doesn’t negate the need for their technology to also work with other parts of the overall crypto-tech ecosystem.

The Decentralization of the Web Rewires Standards

In order to grow-up, blockchains will eventually need a lot of standards that are vendor and solutions agnostic.

So many areas are ripe for standards developments: smart contracts, tokens, security, storage, messaging, identities, naming, record-keeping, and more.

The Internet and the Web have their standards. Where are the blockchain equivalent? 

A standard set of middleware interfaces would insulate participants from the hardest parts of the technology, and expose more succinctly its utilitarian features. Lowering the barriers of entries would empower more developers to enter the blockchain, similar to the roles that HTML, HTTP, URLs and Java played for the Web.

Distributed applications that run on a blockchain infrastructure are architected differently than Web applications that were built for the Web’s architecture.

In a traditional web application, you have client side Javascript code that is run by users inside their browsers and server-side code that is run by a host or company. By contrast, in a distributed application, you have smart logic running on a virtual network of computers (the peer-to-peer network), and client-side code running in a special browser (or client), with the blockchain ledger acting as a shared resource.

With this new type of rewiring, comes the need to also rewire a variety of blockchain standards and technology layers.

Conceivably, blockchains could rely on a number of standards above the Internet’s existing standards, to allow a smooth bridging from one layer to another. That would be a breakthrough.

A blockchain universal stack could resemble something like this. Basically, we would add 3 layers on top of the Internet:

Blockchain Standards Topology
  1. B-Browsers – Users interact with them, Apps gets plugged here.
  2. B-Standards – Where Trust-related standards would play, as depicted in my “Interaction Layers” diagram.
  3. Blockchains – Various blockchain technology and platforms serve functions.
  4. Internet
  5. Networks
  6. Computers

Blockchain browsers (B-Browsers) are going to be important, as we will start to see them in 2017. They will be used to launch blockchain applications, and might look like normal applications we are familiar with, except that they will carry with them some new features that are enabled by blockchain back-ends (instead of databases).

Some of the exciting new blockchain browsers to watch include MetaMask, Blockstack and Mist. These currently have a technical slant, and they are not yet geared at the casual end-user, but they will eventually evolve to become more end-user friendly. A new breed of blockchain applications will come in the form of peer-to-peer browser experiences (e.g. OpenBazaar), while another type will be bolted straight on the current Web, but with a blockchain back-end (e.g. Steemit).

A trust services layer could be that API veneer that homogenizes how we create, move, check states, inspect proofs, follow historical paths, etc.- i.e. perform the functions that blockchains handle well.

Blockchains interoperability is inevitable, but we don’t know exactly yet at what levels, unless we get closer by iterating near the real friction points.

Discrete Efforts Are Not Enough

Nothing great has ever been adopted widely all over the world, unless it was somehow homogenized to make it easily assimilated by the masses.

We need universal tools that no one owns, but that benefit everybody, similar to the Web technologies that liberated the Internet.

Tim Berners-Lee explained why this was so important for the Web: “Had the technology been proprietary, and in my total control, it would probably not have taken off. You can’t propose that something be a universal space and at the same time keep control of it.”

There are promising examples of blockchain related standards, and we need to see more of them.

In the de-facto category, two notable mentions are IPFS (Inter Planetary File System), and an Ethereum-led token issuance standard, labelled ERC20 (which is becoming a de-facto standard in Initial Cryptocurrency Offerings). IPFS is not just focused on the blockchain, although they are a good match, as IPFS has proven to be popular with blockchain applications (e.g. OpenBazaar), where permanent IPFS links get placed into a blockchain transaction.

A few consortiums have also placed blockchain standards on their working agenda, and I enumerated them in my State of Global Blockchain Consortia article.

In the industry-led camp, we will need to follow the ISO/TC 307 Blockchain and electronic distributed ledger technologies technical committee who has stated their serious intentions by partaking in the blockchain standards roll call.

On the enterprise-side, the jury is still out, as vendors place their software in open source repositories, or declare an open standard with a handful of their customers, in the hopes of letting this work become a real standard via sheer adoption, e.g. Hyperledger, Digital Assets, Chain, and R3. Placing software in the open source realm is a good practice, but there is a difference when it starts that way from Day 1 (e.g. Bitcoin, Ethereum) versus doing it a posteriori to gain more market acceptance.

Furthermore, I am a firm believer that private and public blockchains need to also share common standards. It would be inconceivable that the Internet and private Intranets wouldn’t interoperate or interconnect at the very least; yet, we are building private and public blockchain technologies and applications without due regard to the inevitability of that intersection.

Let’s Not Compete on Standards

Yes, I am seriously talking about standards. It is not too early, even if I thought last year that we shouldn’t rush blockchain standards before their time. In 2017, we will need to start seeing serious discussions about universal standards, along with real intentions from industry participants to work together for that aim to materialize.

We need to realize that, in addition to competing in the marketplace, we have to also co-operate on common technical objectives.

In an ideal world, the blockchain field would produce an orderly architecture stack that carries popular standards, commonly used by all of its participants. It would be the resulting mix of de-facto and industry-led standards.

As a side benefit, the existence of standards could also lubricate network effects, a much needed success characteristic. In turn, that would entice new marketplace entrants to focus on their differentiation, instead of building the same overlapping technology pieces.

You don’t typically win by competing on standards, yet you don’t know what is a standard initially, so you might start by competing on everything. A sign of industry maturity will be seen when we hear of companies dropping certain proprietary technologies in favor of cooperative efforts.

That said, we shouldn’t suspend everything in order to just work on standards, in a vacuum. Vendors and blockchain core developers must continue to work on their own technologies while closely monitoring adoption, and always being sensitive about opportunities for industry collaboration. We can’t force standards on the market, but the market will need to embrace standards over time.

If blockchain technologies ignore the eventuality of standards, we are going to see less adoption.

Maybe we should think of the blockchain as a public good utility, and encourage an evolution that is not unlike the Internet’s, in terms of openness and neutrality of access.

Will the collection of blockchain technologies turn into another giant Internet, or will their journey unfold into a messy and fragmented evolution, like the database market, prior to its consolidation?

We have had the blockchain for a while, and it is gaining adoption. New and exciting applications are being built on blockchain technologies. Now is the time to realize that the blockchain’s best future days ahead will depend on how well we expose its capabilities more universally, and more openly. If not now, when?


Powered by WordPress & Theme by Anders Norén