初心者がプログラミングの勉強をする場合、本に書いてあるソースコードをそのまま打ち込んで実行してみる、いわゆる「写経」をするのが一般的です。
そのプログラミング学習方法を主軸にプログラミングスキルを向上させることを目的としたWebプラットフォームサービス「SHAKYO.io」が公開されたので、プログラミング歴6年の中の人が実際にやってみて感じたことや、実際のやり方を紹介していきます!
目次
プログラミング学習の新提案「SHAKYO.io」とは?
SHAKYO.ioはタイピングゲームの感覚でプログラミング学習ができる、全く新しいタイプのWebサービスです。
2020年4月14日にリリースされました。この記事を書いているのが15日なので、つい昨日のことですね。
東京都渋谷区にある株式会社LABOTが開発・提供しているサービスで、教科書的な勉強ではなくトレーニングするような感覚でプログラミングを覚えられます。なので、paizaラーニングやProgateといった有名な学習サイトとは正反対にある、といっても良さそうです。
なお言語は日本語と英語から選べます。私英語がちょっと苦手なんですが、試しに英語にしてみると、それでも学習する上で全く問題ありませんでした。なぜならサービス上に文章がほとんどなく、最低限な説明しかなかったからです。
「言葉ではない。とにかく書け」といった骨太さを感じましたね。かっこいいです。
そんなSHAKYO.ioなんですが、他にもいくつか特徴があります。
7つのプログラミング言語からレッスンを選べる
SHAKYO.ioはC, C++, Go, Java, JavaScript, Python, Rubyの7つのプログラミング言語で学習できます。
主要な言語は抑えていると思いますが、PHPがないのはちょっと以外でした。まだサービス開始から間もないから用意されていないだけかもしれないので、PHPを勉強したい方は少し待つ必要がありそうです。
あとは今後伸びそうなKotlinやTypeScriptもあると、なお良さそうだなーと感じました。
月額980円で全ての機能が使える
SHAKYO.ioは月額980円のサブスクリプションを用意しているようで、このプランに入ると次の機能が解放されます。
- 全てのソースコードが解放される(現時点で158のソースコード)
- 自分で書いたコードをアップロードできる
レッスンの解放は直感的に分かりますね。ちなみに無料プランの場合は25のソースコードからプレイできます。
問題は下の自分で書いたコードをアップロードできるという機能ですね。これは自分で書いたコードを使って写経ができる、といったサービスなのかな…?
と思ったらよく見ると公式サイトの機能紹介の欄で紹介されていました。どうやら写経したいコードをアップロードするに留まらず、自分でアップロードしたコードを世界中の人がプレイできるらしいです。
予想の1歩先を行ってました…すごい…。
実際に有料プランに加入してアップロード機能を確認しようと思ったのですが、どうやらVISAカードどMasterカードにしか対応していないようで、なぜかJCBカードのみ3枚持っている筆者は、有料プランの機能を確認できないというポンコツぶりを発揮してしまいましたよ。
もしJCB以外のカードが手に入るようであれば、チェックしてみたいと思います!
実際にSHAKYO.ioでプログラミング学習してみた!
ここからはプログラミング歴6年の筆者が実際にSHAKYO.ioを使って、SHAKYO.ioの中身を探っていきたいと思います!
SHAKYO.ioの中身:まずはアカウント登録
まずはhttps://shakyo.io/にアクセス。すると最初からすごいかっこいい映像が流れてくる(音も流すとかっこ良さ倍だった)。
動画を見終わってから、いざアカウント登録。画面右上のサインアップから簡単にできました。
名前、メールアドレス、パスワード等を入力して登録することもできますが、ちょっと面倒だと思ったので、私はGoogleアカウントで登録しました。他にもGitHubやFaceBook、Twitterなどのアカウントでも登録できるみたいですね。
Googleアカウントの場合は認証画面でアカウント登録に使うユーザーを指定するだけで終わりました。ここまで5分かかりませんでした。
写経で学習してみる
アカウント登録が終わると、ホーム画面に遷移しました。ここから自分が写経したいプログラミング言語を選択すると良さそうです。
悩みましたが、今回はPythonを選択しました。
選択すると、次にレッスンを選択する画面になりました。
今回はレッスン1を選択します。
次の画面が出てきました。どうやら一つのレッスンの中にいくつかソースコードが入っているみたいですね。
鍵が付いているのは課金ユーザーのみプレイできるソースコードです。ほとんど鍵が付いているので、がっつり写経したい方はサブスク必須かもしれません。
次の画面を開くと、ソースコードが出てきました。
コードの開始位置にカーソルが当たって、さらに左上にはストップウォッチのようなものがあります。
どうやらコードを打ち込み始めたら時間計測がスタートする仕様みたいですね。まさにタイピングゲームみたいです。
こちらが実際にやってみた動画です。
最後まで入力し終わると結果が表示されます。Scoreが表示されるのは面白いと思いました。
SHAKYO.ioをやってみた感想
上でやったJavaのソースコード以外にもいくつかやってみた感想です。
スコア機能が面白い!
ゲーム好きな私としては「スコア」がお気に入りです。
同じゲーム好きな方にはわかってもらえるのではないかと思うのですがどうでしょうか?
どういった計算方法でスコアを算出しているかは分かりませんが、画面を見るに速さと正確さ両方が大事みたいですね。
今回は12回もタイポ(入力ミス)してしまったので、次は0回でクリアしたいところです。
反復練習で手に刻み込める
SHAKYO.ioでプログラミングを覚える上で一番大事だと思ったのがこれで、1つのソースコードを1回だけやるのではなくて、何回も繰り返しプレイすることで手がコードを覚えることができる点にあるのかなと思いました。
その上でハイスコアを目指しているだけで反復練習が可能というギミックが施されていて、SHAKYO.ioを通すことでプログラミング力を鍛えられる工夫が感じられました。
ソースコードの意味を理解することで、さらに学習効果が現れる
SHAKYO.ioのソースコードはそこまで難しくない印象を受けましたが、一方で初心者の方にとっては少々難しいのかなとも思います。
あまり初心者向けの内容ではないな、というのが正直な感想です。
しかし、SHAKYO.ioではそれぞれのソースコードにeasy, normal, hardの3種類の難易度が設定されているようで、easyの難易度であれば今回挑戦したものよりかは簡単なコードになっているかもしれません(現時点でeasyのソースコードが無料プランでは無いため、確認できませんでした)。
プログラミングに慣れていない方は、SHAKYO.ioと並行してpaizaラーニングやProgateといった学習サイトを活用することをおすすめします。
SHAKYO.ioは習うより慣れろ!でプログラミングを覚えたい人向け
いかがでしたか?
今までのプログラミング学習サイトは動画やスライドを見ながら自分で考えてプログラミングするというのが主流でしたが、SHAKYO.ioはとにかく写せ!というある意味体育会系なWebサービスであることがお分かりいただけたかと思います。
実際スコアとかアスリートっぽいですよね。
色々と長々話しましたが、アカウント登録から写経まで3分程度で行けてしまうので、とにかく1回やってみてください。ソースコードの写経、面白いですよ!