それで。。有名なアプリケーションは何?

暗号通貨に関わっている人たちは当初、多くの開発者がBitcoinのスクリプト言語を用いて、色んな分散型アプリケーションを作るだろうと考えていました。

しかしBitcoinがリリースされて8年以上経ちましたが、Bitcoinは単なる価値をもった通貨以上のものにはなっていません。

確かに、暗号通貨に関する多くのウォレットや取引所は誕生しました。(Coinbase、Kraken、Poloniex、GDAXなど)。

そしてたった2年半で10億ドル以上の売上を処理し、2013年後半に法的機関により閉鎖に追い込まれた、匿名で薬をオンライン購入することを可能にした「Silk Road」というマーケットプレイスも確かにありました。

またBitcoinはブロックチェーン上で動作し、完全にオープンソースであり、そして管理者なしで実行される、世界で最初の分散型アプリケーションと言えます。

しかしながら現段階で、「誰もが日々使っている」と言えるブロックチェーンベースのアプリケーションが何かあるでしょうか?

少なくとも私の知人の中で、ブロックチェーンベースのアプリケーションを日々使っている人はほとんどいません。

これにはいくつかの理由があります(これらは私の個人的な意見です)。

1.言語の複雑さ・ツールの不足

Bitcoinのスクリプト言語を用いてアプリケーションを開発するのは、容易ではありません。 なぜでしょう?

まず1つに、言語の制限があまりにも多過ぎます。 スクリプト言語とは、アクション実行のコードを記述できるプログラミング言語です。 現在広く使用されているスクリプト言語の例は、JavaScriptです。

これとBitcoinのスクリプト言語を比べてみてください。

一番上のJavaScriptは英語に似ています。 一方でBitcoinのスクリプト言語は機械語のように見えます。 ほとんどの開発者は、JavaScript、Ruby、Pythonなどの表現力豊かな言語で記述するのに慣れています。 Bitcoinスクリプトはほとんどの開発者にとって、あまりにも使いにくいのです。

次に、ある言語が開発者から採用されるためには、使いやすい開発ツールとドキュメントが重要ですが、これらが出来上がるまでに時間がかかります。現在とても人気のあるフロントエンド・ライブラリとして、例えばReactが挙げられますが、 Reactが人気を集めたのは、開発コミュニティが素晴らしい開発ツール(IDE、Babel、Webpack、ボイラープレート、Create React Appなど)、ドキュメント、チュートリアル等を長い時間をかけて作り上げてきたからです。現在のBitcoinの開発現場では、これらがまだ足りていません。

最後にBitcoinのスクリプト言語は、「チューリング完全」ではありません。チューリング完全である言語は、十分な時間をメモリが与えられれば、どのようなコンピュータ処理でも対応できます。つまりチューリング完全でないということは、できることが制限されるということです。

全体的にBitcoinのスクリプト言語は歴史が浅いため、使いにくく、開発ツールやドキュメントが不足していました。そしてその結果、活発な開発者コミュニティを形成することはできませんでした。これらの問題は、アプリケーションが発展する上で死活問題と言えるでしょう。

2. ネットワーク効果構築の難しさ

日常生活で使用するアプリケーション(マーケットプレイス、取引所、ソーシャルネットワークなど)の多くは、強力なネットワーク効果でその価値を引き出しています。ネットワーク効果とは、製品やサービスの利用者が増えるにつれて価値が高まることです。

例えばFacebookです。新規ユーザーが登録すればするほど、Facebook上の「繋がりの総数」はどんどん増えていきます。同じようにあなたがVenmo(訳注: 米国で流行している、P2P金融サービス)のただ一人のユーザーであれば、このサービスの価値はありません。Venmoに参加する人が増えれば増えるほど、お金の支払いや受取りをする人が増えるので、サービス自体の価値が上がります。

ネットワーク効果は、より良い製品やサービスを作るのに役立ちます。しかしこのネットワーク効果を構築するのは非常に難しく、いわゆる「鶏か卵問題」を解決しなくてはなりません。

したがって、たとえ開発者がBitcoinブロックチェーンの上にクラウドファンディングのプラットフォームを作ろうとしても、プラットフォームの両サイドのユーザー(つまり、投資する人と商品を作る人)を獲得することは非常に難しいです。

ブロックチェーンは、分散型アプリケーションのための技術的基盤ですが、ネットワークの効果を生み出すための、有効なフレームワークやツールを提供出来ていません。

3.「分散」だけでは10倍改善されない

ブロックチェーン上に構築されたアプリケーションについて語るとき、私たちは、クラウドファンディング、送金、支払い、クーポンなどのトランザクションベースのプラットフォームを思い浮かべるかもしれません。これらの「分散型サービス」を作ったとしても、実際にはこれらのニーズ毎に最適化された、質の高いアプリがすでに存在しています。

例えばクラウドファンディングに参加したければ、すでにKickstarterがあります。国際送金をするには、TransferWiseが使用できます。そして決済には、クレジットカード、ペイパル、Venmo、Squareといった数多くのサービスがあります。

Peter Thielの「10倍ルール」(訳注: 新規サービスを成功させるには、既存サービスの10倍優れている必要があるという考え方)は、ユーザーが分散型サービスに乗り換える理由を考える際に重要です。そして現時点では、単にサービスを分散型にしただけで10倍良くなる、とは言えないでしょう。

例えば、分散型クラウドファンディングであるWeiFundを利用してみてください。ユーザーからすると、WeiFundのUIやUXは、KickstarterやGoFundMeといった

従来のクラウドファンディングと似ています。主な違いとしてコストが低く、またスマートコントラクトを使用してより複雑な契約を可能にしたと言われていますが、これだけではユーザーにとって、(コストが大幅に下がるのでない限り)乗り換えるのに十分なメリットがあるとは言えないでしょう。

私は、分散型アプリケーションにメリットが全くないと言っているのではありません。将来的には、分散型アプリケーションが既存のものより10倍安全で、10倍安く、10倍効率良くなると信じています。

しかしながら、これらはまだ実現していません。したがって現時点で一般ユーザーにとって、分散型アプリケーションを選ぶべき理由がほとんどありません。

おすすめの記事