見出し画像

元戦略コンサルがプログラミングを学び始めて1ヶ月の振り返り:中編

前編を書いてからだいぶ時間が経ってしまいました・・笑

課題が忙しいのを言い訳に、後回しにしていたらいつの間にか書くタイミングを失っていました…あるあるですね(苦笑)
ただ前編しかないのは気持ち悪いですし、ありがたいことに今でも読んでもらえているようなので、重い腰を上げてわずかな記憶を頼りに続きを書こうと思います!

4〜5週目: Firebaseの課題+JS選手権で2位

4週目にはFirebaseのRealtime Databaseを学び、ちょうど入学から1ヵ月後にあたる5週目では、Javascriptの総集編としてクラス内コンテストであるJS選手権が開催されました。

JS選手権では、吹き出しを音読するだけで漫画を他言語に翻訳できるWEBアプリを開発しました。

私は毎月単行本を50冊読むくらいの漫画好きなのですが、留学をしていた経験から、日本の漫画の素晴らしさをもっと海外の人にも知ってもらいたいとの思いがずっとありました。

しかし、漫画の翻訳は、一般的な書籍の翻訳とは違い、コマ割りや吹き出しの配置が複雑で、機械翻訳では正しい文脈を理解出来ないという難点があります。

そのため、文脈の理解は人間が担当し、それを音読した後の他言語への翻訳はAI (Translation API)が担当するといった、人間とAIの役割分担により、漫画翻訳の精度とスピードを両立させるというのが今回のサービスの狙いでした。

結果として、JS選手権では2位を取ることができました!

最初はHTMLすら理解していなかったところから、1ヵ月後には曲がりなりにも自分が作りたいものが作れるようになるところまで来れた事は、自分でも成長したなと実感しました。

プログラミングは「ものを作りながら学ぶ」のが最適

実はジーズに来る前も、ドットインストールなどのオンライン教材で自分で勉強していたのですが、そこで勉強した事は全く身に付いていませんでした(学んだことすら忘れていた)。

その差が何なのかを考えると、「ものを作りながら学ぶ」というのがやはり重要だと気づきました。

プログラミングが出来るようになるには「勉強」ではなく、「作りながら学ぶ」のが大事というのはよく言われることですが、深堀りすると、これには2つ理由があると思います。

まず1つ目は、プログラミングを車作りに例えるなら、「どのような部品をどう組み合わせればよいか分かる」ようになるには、知識だけでなく、経験や思考力が必要だからです。

「どのような部品をどう組み合わせればよいか分かる」というのは、前編でも書いた”要素分解”して考える力のことで、実践を通じて鍛える必要があります。

2つ目は、要素分解した内容(部品)をコードとして素早く表現出来るようになるには、スポーツと同様に実際に覚えたことを使う中で身に染み込ませることが必要だからです。

2つ目の点に関しては、iOSエンジニアとして有名な堤修一さんがYouTubeで”連想記憶”というキーワードを基に説明されている内容に近いと思います。

ここまでがプログラミングを始めて最初の1ヶ月となります。


やっと2年越しで書くことが出来ました!(笑)

せっかくなので、ジーズアカデミーのブートキャンプフェーズの残りの1.5ヶ月についても、来週末の日記で書こうと思います!(宣言)


この記事が参加している募集

振り返りnote

この記事が気に入ったらサポートをしてみませんか?