Learning Solidity from Kitties and Zombies / CryptoZombies で Solidity を始めた感想
Crypto market is having a pause after the price drop in the beginning of the year and the Japanese coincheck incident. Luckily I haven't lost my motivation to build my own Ethereum based app. I started reading CryptoKitties' code and finished a tutorial called CryptoZombies which guides us how to program an Ethereum based app in Solidity language.
仮想通貨の相場は年初の下げに加えてCoincheckのNEM流出事件もあって元気がないですが、ブロックチェーン上で動くものをいずれ作ってみたいという思いは変わらず、遅ればせながら先月末から CryptoKitties のコードを読んだり CryptoZombies という CryptoKitties のパロディーチュートリアルを進めたりしていました。
Learning Ethereum Based App from Kitties / 子猫で学ぶ Ethereum ベースアプリケーション
After I finished CryptoZombies, I got an overview how was it like to program an Ethereum app in Solidity. My impression is:
週末に CryptoZombies を終えて、Solidity でイーサリアムブロックチェーンで動くプログラムを書くことがどういうことか少しつかめてきました。Solidity の印象をまとめると:
- The grammar of Solidity is not so different from those of other programming languages. / Solidity の文法自体はそこまで特殊ではない。
- I have to get used to the notions of the globaly shared virtuarl machine (Ethereum network) and the shared storage (Ethereum blockchain) / イーサリアムネットワークという共有コンピューター、ブロックチェーンという共有ストレージに気を使わなければいけないところは慣れが必要
- Payment part is quite simply programmable as long as Ethereum addresses are used as an account and Ethereum is used for payment. / イーサリアムアドレスをアカウントとして使ってイーサーで支払うのであれば支払処理の記述が簡単
When I saw the CryptoKitties' code for the first time, developing an Ethereum based app won't be that hard. It seems I need some time to get used to dapps idea and to write/read code fluently in solidity.
はじめて CryptoKitties のコードを見た時には一般的なプログラミング言語と文法的にはかけ離れていないし意外とすぐにできそうだと思いましたが、分散型アプリの概念に慣れて流暢に読み書きできるようになるまでには時間がかかりそうです。
However I got off to a good start with the CryptoZombies tutorial. It's well designed. It's easy to start just with a browser (no setup is needed), each lesson is short but informative enough to learn the essence and the basic knowledge of Solidity. What I laughed a lot was that they made up a scenario to feed a (crypto) kitty to a zombie in a lesson of using an existing smartcontract ;)
とはいえ CryptoZombies に出会ってよいスタートを切れたと思います。ブラウザさえあればすぐに始められて、楽しくさくさく進められる一方できちんと初歩知識を学べるとてもよくできたチュートリアルだと思います。私は英語で進めましたが日本語など多言語にも対応しています。一番笑わされたのは他のスマートコントラクトにアクセスする方法を学ぶ箇所で、CryptoKitties のスマートコントラクトにアクセスして「よしじゃあゾンビに猫を食べさせちゃうぞ」という展開になっていて「おいおいおい w」と。
Now I have an idea of Ethereum based app. My next TODO is to read about how to deploy a smartcontract on Ethereum blockchain as CryptoZombies tutorial focuses on how to write a smartcontract in solidity. I look forward to try this in between my work and housework.
CryptoZombies を終えて小さなアプリケーションのアイデアが浮かびました。CryptoZombies はスマートコントラクトのデプロイについてはカバーしていないのでこれから調べて、家事や仕事の合間に作って動してみたいと思っています。
Other than writing a small app, I want to get to know other dapps platforms such as EOS as I noticed there might be some difficulties of Ethereum blockchain such as GAS, transaction speed etc.
その他、イーサリアムベースのアプリケーションについてはブロックチェーンへの書き込みで都度手数料がかかるといった難しさも見えてきて、その辺の工夫のしかたを考えたり、EOS など別のプラットフォームについての理解も深めたいです。

エンジニアの方は本当に尊敬します!
もどきですけどね・・・でもよい一生の趣味だと思っています :)
楽しそう!ボクも仕事の合間にそーいうことしたい、、、
ぜひぜひ!またデプロイまで行けたら書きます。
Thanks for the write up on the cryptozombies. I really need to get back into it. I kind of forgot about it. haha.
Poor cryptokitties!! :/
I'm happy to hear that my post at least served as a reminder for you :D