スマートコントラクト猛実装中の伴ルカさんへインタビュー

MissBitcoin
10 min readFeb 19, 2018

--

こんにちは!2018年2月24日(土)に注目のブロックチェーン・仮想通貨企業の開発現場を知って触れる会を千代田区にて開催します!それに先立ち、ブロックチェーン業界に飛び込んだエンジニアの伴ルカ氏に話を聞きました。貿易会社で働いた後、現在はスマートコントラクトにのめり込んでいるというルカさん。気になります。

―プログラミング始めたのはいつですか?

―伴ルカ氏

今は27歳でプログラミングを始めたのは15歳の頃です。当時、勉強で使っていた暗記をするためのフラッシュカードのアプリケーションがありました。単語帳のようなものです。そのアプリは自分で色々なカードを作って、カードの出方や見た目をHTMLやCSSで変えることができました。アプリ内ですが、そこでHTMLとCSSを大体理解できるようになりました。その後、貿易の会社で働いていた2015年5月頃、新しくITを担当する人が入社してきました。彼がPHPやJavaScriptができる人だったので、自分の席を無理やり彼の席の隣に置いて、毎日色々なことを聞きながら、改めて勉強し始めました。自分で作りたいアプリケーションやホームページが頭の中にあったので、これでようやく作るためのスキルを身につけられるんじゃないかと思って頑張りました。

―どういうものを作りたいと思っていたのですか?

―伴ルカ氏

振り返るとちょっとダサいんですが、多くのプログラマーが最初に取り組むタスク管理のアプリケーションです。私もリストやタスク管理のアプリケーションが元々すごく好きでした。例えば、学校で勉強することよりも、勉強する計画を立てることに時間を使っていました。そういうことが大好きで色々なリストを作ったり、あるべき姿を考えたり、タスク管理をしたり。既存のそういうアプリを全部使って、毎回何か足りないなと思って、最終的に自分で作るしかないと思って作りました。

―JavaScriptにはどこで慣れたんですか?

―伴ルカ氏

最初はPHPの方が強かったんです。その理由は、会社に入ってきたIT担当の人がJavaScriptよりもPHPの方が強かったからです。両方教えてくれたのですが、私はPHPの方が先にできるようになりました。JavaScriptは後から覚えたのですが、最初は正直書きにくいなと思っていました。PHPはHTMLの中でも書けますが、JavaScriptは別枠と考えなければいけません。それが最初は少し大変でした。

Angular、React、Vue.jsという3つの大きなフレームワークがあります。その中でたまたま出会ったVue.jsがすばらし過ぎて恋に落ちました(笑)。それでどんどんJavaScriptが好きになって、逆にサーバー側の言語はあまり好きではなくて、今は全部JavaScriptだけでUIを作りたいです。なぜかと言うと、PHPは仕事という感じがするからです。作らないといけない構造、みんなが通る道。でも本当にユーザーが触れるUIが自分の作りたいものなので、それに100%集中できるのが1番楽しいです。それがJavaScriptで全部できるので、得意になってきました。

―そうやってスキルを身につけていく中で、Solidityについてはどう感じていますか?

―伴ルカ氏

Solidityはブロックチェーンのための言語ですが、JavaScriptに非常に近いです。Solidityはまだ数カ月しかいじっていないので、得意なわけではないですがJavaScriptのベースがあるのでそれほど難しくはないです。コンセプトやSolidityの中で使えるvariableの種類などがある程度似ています。

―難しい部分もありますか?

Solidity、つまりブロックチェーンの難しいところは1回公開してしまうと戻せないことです。WEBアプリの場合は、作って出して、バグが出たら修正すればいいので簡単です。しかし、ブロックチェーンは1回出してしまうと、そこでバグがあったら大変なことになってしまうのが難しいところですね。

―ブロックチェーンは今後、社会にどういうインパクトを与えていくと思いますか?

―伴ルカ氏

難しい質問ですね(笑)。この質問だけでも3時間は話せるような気がします。ブロックチェーンのインパクトは、例えば金融機関を通さずに資金調達できること、誰かを信用することなしに安全に送金できること。もっとすごいこともできると思いますが、そういう根本的なところが1番影響を与えると思います。日本人はあまり使わないですが、元々貧しい国で、海外で働くようになって本国の自分の家族に毎月送金する時にウエスタンユニオンしかないんですね。そういう人たちがすごく多いです。そこでブロックチェーンの技術を使って遠い国の家族に簡単に送金できるようになることはすばらしいと思います。

―Solidityを学ぶことを他のエンジニアにも勧めたいですか?

―伴ルカ氏

すごく思います。まずはやってみないと分からないので。JavaScriptができる人たちが多いので、せっかくなのでSolidityを書いてみたらとすごく言いたいです。難しいというイメージがありますが、実際にやってみると楽器をひくのと全く同じで、練習をすればできるようになります。JavaScriptがある程度分かる方は、Solidityにぜひ触れてほしいです。みんなにお勧めしたいです。

―Solidityは最初、どうやって勉強したんですか?

―伴ルカ氏

動画形式で学ぶことが多いです。動画形式のガイド、チュートリアルを探したりします。学んでいるうちに先生がやっていることをマネして学ぶことが効果的だと分かりました。ただ、Solidityの動画のチュートリアルはまだあまりないですね。私が使ったのはUdemyです。日本語の動画もいくつかありましたが、英語のガイドを使って、ゼロから一緒にSolidity、スマートコントラクトを使ったアプリケーションを作りましょうというのをやって、非常に勉強になりました。

―今からでも遅くはないですか?

―伴ルカ氏

Solidityを始めるにはちょうどいい時期だと思っています。理由は、便利なツールがどんどん出てきているからです。勉強のためのものや実際にコントラクトを作るためのツールがあります。
例を挙げると、スマートコントラクトを書いて、試したいとしたら、試せるためのブロックチェーンが必要です。
JavaScriptだったら、ブラウザーで開いて、そのまんま試せますが、ブロックチェーンは違います。スマートコントラクトを試すため、ローカルな環境でブロックチェーンのシミュレーションを作らないといけないです。
そこからもう1つある高いハードルは、コントラクトを作れたとしても、ブロックチェーンにアップロードする方法はすごく大変です。単純に言うと、コントラクトをコンパイルして色々なコマンドでそれをブロックチェーンにトランザクションとしてアップロードするというイメージです。それだけでもコマンドラインからすると、10行ぐらいコマンドを書かないといけなくて、1つでも間違えたら大変なことになります。それをローカルな環境でシミュレーションしたブロックチェーンだったり、コントラクトをコンパイルしてブロックチェーンにアップロードしてくれることだったり、最近そういうことのために便利なツールが出てきています。アメリカの会社が作った「Truffle」というツールがあって、ローカルのブロックチェーンのシミュレーションとコンパイルを簡単にしてくれるコマンドなどを全部提供してくれています。1行で実行できます。

―便利なものが出てきているんですね。

―伴ルカ氏

ブラウザ上で、自分が作ったブロックチェーンのアプリケーションにUIをつけたいとします。スマートコントラクトをコマンドだけでも使えるのですが、かわいいUIを付けるアプリケーションも最近一杯出てきています。1つの例はCryptoKittiesです。そのUIがないと、多分アプリケーションとして成り立たないと思います。但し、ブラウザーの場合、何が必要かと言うと、ブラウザがブロックチェーンとのコミュニケーションを取る必要があります。そのためのMetaMaskという便利なツールがあります。ブラウザのエクステンションがブロックチェーン上のコミュニケーションを全部やってくれるというイメージです。

―ブロックチェーンに関する便利なツールがどんどん出てきているので、これから勉強する人にはチャンスですね。

―伴ルカ氏

始めるのに今はいい時期だと思います。

―日本初のブロックチェーン業界のエンジニアに特化した合同説明会が2月24日にあります。

―伴ルカ氏

いいですね。今まで色々なブロックチェーンのイベントに行きましたが、色々なグループや会社が話に来ていて、結局よく分からないことも多かったです。実際にプログラミングに触れればそこから色々な道が開けると思います。実際にプログラミングに触れるようなイベント、プログラミングを重視するようなイベントが大事だと思います。

エンジニアとしては、いくつかの簡単な入門的な説明があるとうれしいですね。例えば私が説明したようなツールを実際にモニター見せたり、コントラクトをコンパイルしてみたりして、そんなに難しくないということが分かるといいですね。

―ブロックチェーン業界に飛び込んだのはなぜでしょうか?

―伴ルカ氏

自動運転などブロックチェーンで近未来の変わるイメージが湧いたからです。ブロックチェーンや暗号のテクノロジーが色々なところで使われるようになるはずなので、どの業界でも絶対にその中身を理解しないと置いていかれると感じています。

―未知の領域に飛び込むのは怖くなかったですか?

―伴ルカ氏

全然怖くなかったですね。私は新しいことを学ぶことをすごく楽しいですし、プラスしかないです。プログラマーとして、安全な環境でパソコンをいじるだけなので、怖いことは全然ないですね(笑)。ダメなエンジニアは1度理解したことをただ繰り返すだけ。一緒に進化していかないと、問題が起こった時に対応できなくなります。開発者として新しいことを学んでいくことが1番大事だと思います。

伴ルカ氏が語ってくれたように、ブロックチェーン、仮想通貨領域の経験がなくてもまずは飛び込んでみて触れてみてもらえたらと思います!2月24日の仮想通貨・ブロックチェーン企業限定の合同企業説明会には約20社が出展予定です。業界経験や転職を考えているかどうかは問われず、無料で出入り自由なので、気軽な気持ちで「中の人」に会いに行ってみて下さいね!

https://withb.co.jp/lp/jobfair01/

--

--

MissBitcoin

Miss Bitcoin&Bitcoin Donationのウェブサイト「Kizuna」創設者。ミスビットコインの藤本真衣です。ミスビットコイン寄付サイト「Kizuna」を運営しています。「ミスビットコインとブロックチェインに興味あるけど、取っつきにくいしい。」と思っている人はどうぞご一読ください。