2020年振り返り

今年は一言で表すと42Tokyoとコロナな1年でした。

要約

1月に42Tokyoの入学試験Piscineを受験、新型コロナウィルスの影響で開校が延期。4月からオンラインの特別カリキュラム開始、6月から42Tokyoが開校し本来のカリキュラムを進めています。

出来事

42Tokyo

去年42Tokyoの存在を知り、1月に入学試験Piscineを受験、合格しました。

その後、新型コロナウィルスの影響で42Tokyoの開校が延期。代わりに4月から1ヶ月間特別カリキュラムがありました。特別カリキュラムについては以下の記事を参照ください。

nafuka.hatenablog.com

6月から開校し、本来のカリキュラムが始まりました。カリキュラムは基本オンラインで進めています。

カリキュラム

42Tokyoのカリキュラムでは以下の課題に取り組みました。

  • 標準Cライブラリの再実装
  • 指定ファイルディスクリプタから1行ずつ文字列を読み込む関数の実装
  • ネットワークに関するクイズ問題
  • printfの再実装
  • Wolfenstein 3Dのような、Ray castingを使ったゲームの製作
  • DockerでWebサーバ、DBなど全部入りのコンテナを立てる*1
  • 過去作成したC言語の関数をアセンブリで再実装

現在は、Kubernetesで各種サービスを立ち上げる課題、bashの再実装に着手しています。

イベント

42Tokyoでは時々イベントが行われます。運営側が主催することもあれば、生徒が主催することもあります。以下のようなことをしています。

コードゴルフのお題はBrainf*ckの実装や以前の課題などです。終わった後、皆で実装を見せ合うのが勉強になります。

ラジオ体操は、毎日2-3回、決まった時間に皆とやっています。体操をするだけでなく、定期的に雑談や進捗を報告する場になっていて、モチベーション維持に役立っています。

オンラインで変わったこと

  1. 文章を書く機会が増え、積極的にコミュニティへアウトプットをするようになりました。

    オンラインだと暗黙知が形成されにくいこともあり、なるべく課題で学んだこと、躓いたことは文章に残すよう心がけています。

  2. レビューで説明するため様々なツールを使うようになりました。

    Googleスライド、HackMD、Notion、A Web Whiteboardなど。オフラインの時は紙に書いて説明していました。

42Tokyoに入ってみて

  • 多様な生徒に出会うことができました。
    • 42Tokyoは学歴や職業などに関わらず、人を受け入れています。それまで交流関係が狭かったのですが、42Tokyoに入学してから様々な生徒と出会い、刺激を得ています。
  • 生徒の役に立つツールを作るのが楽しいです。
    • 多数の生徒が在籍しているので、ツールを作るとフィードバックが得られ嬉しいです。
  • データを分析する楽しさに気づきました。
    • 42ではAPIが提供されており、生徒たちが成績などのデータにアクセスできます。他国のキャンパスのデータも取得できます。
    • データから予測を立て提示すると人を動かしやすく、楽しいです。

その他

42のカリキュラム外で作ったもの

  1. AtCoderのスコアをSlackに投稿するツール

    nafuka.hatenablog.com

  2. Discord Bot

    42TokyoのDiscordサーバでBotを稼動させています。

    nafuka.hatenablog.com

    42Tokyo用のBot以外に、ロール・チャンネル管理Botも作成して、時々使っています。

    f:id:nafuka11:20201231185640p:plain:h400

  3. 生徒の進捗で表示するGoogleスプレッドシート

    日別で各課題に合格(validated)、提出(submitted)、登録(subscribed)した人数を表示してみたり

    f:id:nafuka11:20200727171817p:plain

    入学時期別で成績分布をグラフにしてみたりしています(画像はダミーデータです)。

    f:id:nafuka11:20201231194442p:plain

    データの取得にはGASやPythonを使っています。

スマートホームはじめました

Google Home Miniを家族に貰ってから、Nature Remo mini、Switch Botカーテンを買って部屋で使っています。

Nature Remo miniと連携した音声でのリモコン操作は、リモコンを探す必要がなく快適です。Switch Botカーテンは、朝カーテンを自動で開けてくれるので目覚めがよくなりました。

読んだ本

他、読みきってはないですが、『人を動かす 文庫版』が集団の中で上手くやっていく方法が書いてあり勉強になりました。立ち回りが上手い方はこの本に書かれていることを実践されてるように思います。

来年の抱負

  • 42Tokyoの除籍システム、通称ブラックホールに吸い込まれることなく、来年中に基礎的な学習を終え、インターンに参加できるレベルに到達したいです。
  • 42Tokyoに入って、便利なツールを作ったり、データを集め眺めて分析のようなことをするのが好きと気づきました。今の環境でできることをやっていきたいです。

来年もよろしくお願いします。

*1:Dockerの課題は、本来は各プロセスを別コンテナにするべきでしょうが、分離された環境で環境構築の練習をするのが目的なのかなと思います。