タイピングゲーム感覚でプログラミングを“写経”して学べる「SHAKYO.io」のベータ版公開
ソースコードを模写して入力する「写経」は、プログラミング初級者が基本的な文法や言語ごとの特徴を学ぶ際の勉強法として長年親しまれてきたものの1つだ。
従来は紙の技術書などを開き、そこに記載されているソースコードを見ながら自身のPC上で同じように打ち込んでいくやり方が定番だったが、本日ベータ版がローンチされた「SHAKYO.io」を使えばタイピングゲーム感覚でブラウザ上にて簡単に写経を体験できる。
SHAKYO.ioではC、Java、Python、Rubyなど複数のプログラミング言語ごとに合計で100種類以上の基本的なアルゴリズム(レッスン教材)が収録されているので、ユーザーは気になるレッスンを選択し、画面上に表示されるソースコードをなぞるように入力していく。基本的にはその繰り返しで、とてもシンプルなサービスだ。
実際に試してみるとタイピングゲームにかなり近く、間違ったキーを選ぶと画面上に赤色でアラートが表示される。入力開始と同時にストップウォッチが作動し、毎回ソースコードを入力し終えるまでにどのくらいの時間を要したのかがわかるようになっている。
利用料金は月額980円。一部レッスンは無料で体験可能だ。有料版では全てのレッスンが受講できるほか、自身でソースコードをアップロードすることもできる。
同サービスを手がけるのは昨年11月に紹介した“卒業まで学費無料で通えるプログラミングスクール”を日本で展開するLABOT。代表取締役の鶴田浩之氏はSHAKYO.ioを立ち上げた背景について、初学者がエンジニアとしてステップアップする上で、勉強ではなくトレーニングとしてプログラミングスキルを磨けるツールが必要だと考えたと話す。
「今はProgateやドットインストールを始め個人でも安価にプログラミングの学習が進められる優良なサービスが増え、教科書的な学習ができる環境が充実してきている。一方で勉強はできても繰り返し練習やトレーニングをする習慣が身につかず、その結果としてつまずいてしまう人が多いのではないかという仮説を持っている」
「自分自身も中学生時代に見よう見まねでソースコードを打ちながら、フィジカルでプログラミングを覚えた。SHAKYO.ioでは反復練習をキーワードとして気軽に写経に取り組める仕組みを作ったので、一日十数分ずつだけでもトレーニングを継続してもらうことによって、プログラミングに対するメンタルブロックや複雑なシンタックス(文法)へのアレルギーをなくすきっかけになれば嬉しい」(鶴田氏)
メインのターゲットはプログラミングの初学者になるが、そのほかにも言語の学び直しや、新しい言語を習得したいユーザーが言語ごとの文法の違いを把握しながらトレーニングする際にも使えるという。
基本的にはプログラミング学習サービスやスクールなどと組み合わせながら「プログラミング学習の副教材」として活用してもらうことを考えているそう。毎日の筋トレのような形で、短い時間でも反復して取り組んでもらえることを目指し、今後はクイズやランキング機能などゲーミフィケーションを取り入れた仕組みの導入も検討していく。
並行してコンテンツ周りの拡充も進める方針。現在は運営側で数百のコンテンツを準備しているが(ライセンスなどに気をつけながら教材として使っていいものを集めているとのこと)、各ユーザーが自身でアップロードしたソースコードを他ユーザーにも公開できる仕組みも取り入れる。
「プログラミングは1つの明確な答えがあるわけではないので、中長期的にコンテンツが増えてくれば『どの言語の、どういう実装を、どの教材を使って学ぶか』という楽しみ方もできるようになる。コンテンツ面では写経用のコンテンツを提供してもらえる協賛企業も増やしたい。現場で実際に使われているようなソースコードの一部を学習コンテンツとして使えれば、初学者にとっては今後仕事につなげていく上でも、達成感を得る上でも大きな効果があると考えている」(鶴田氏)
LABOTとしては今後個人ユーザーだけでなく、教育機関での副教材や企業内の研修ツールとしての利用も促進していきたい考えだ。
特に直近では新型コロナウイルスの影響でオンライン学習体制を余儀なくされている教育機関や、リモートワークへの移行によって新人の研修・トレーニングをリモートにせざるを得ない企業も多い。そういった教育機関や企業に対しては、SHAKYO.ioの有料機能にアクセスできるライセンスを無償で提供する取り組みも行っていくという。