見出し画像

42 Tokyoでやっと「レベル4」になった

42 Tokyoでは、課題をクリアしていくとレベルが上がっていくのですが、先日「philosophers」という課題をクリアして、「レベル4」になりました。

課題をクリアするのは、実に6ヶ月ぶり。

途中で2ヶ月の長期休みを取りましたが、実に半年ぶりの課題のクリアだったので、うれしかったです。

いや〜、長かった!

42では退学までの日数が決まっており、課題をクリアしないと、その日数をのばすことができずに退学となってしまいます。

退学のことを、42では「ブラックホールに飲み込まれる」と表現しています。

「philosophers」という課題終わった時点で、退学まで残り4日だったので、かなり焦っていました。

課題をクリアするには、他の3人の学生からレビューを受け、クリア基準以上の点数をゲットしなければいけません。

もしも1発でクリアできなければ、コードを書き直して再提出し、さらに3人からレビューを受けなければいけないので、4日で終わるか微妙でした。

無事に1発で課題をクリアできたので、一安心。

課題をクリアしたことで、44日ほど退学までの日数をのばすことができました。

ちなみに、退学までの日数を、42内の通貨である₳(他の学生に教えてもらったのだが、『銀河ヒッチハイク・ガイド』に登場する「アルタイル・ドル」と読む)を使って買うことも可能。

退学までの日数を、3日のばすのに必要な額は50 ₳。

ぼくがもっているのは200 ₳なので、全部使えば12日、退学までの日数をのばすことができました。

使わずに済んだので、今後のためにも残しておきたいと思います。

自分へのフィードバック

「philosophers」という課題の、所要時間の目安は70hだったのですが、じっさいに費やした時間は84.5h。

レビューを受けた時間の3hを加えると、合計で87.5hついやしたことになります。

時間を使いすぎてしまったので、もっとタイムマネージメントをしなければいけないとおもいました。

今回一番おおく時間を使ったのは、「リーク」と「データ競合」への問題の対処です。

正直なところ、最後の最後まで、これらの問題が解決できず、その原因がわかりませんでした。

退学までの日数もせまっているなか、どうしてもわからなかったため、一度課題を提出し、レビューでこの問題の解決策がわかる人に、解決策を教えてもらおうと思っていました。

するとなんと、相手側の操作では「リーク」と「データ競合」は見つかりませんでした。

ぼく自身、書いたコードをテストしていた環境は「校舎のiMac」で、レビューも「校舎のiMac」で行なったので、環境は同じはず。

(「ワカモレ」という、校舎のiMacにリモート接続するためのツールを使って、家から「校舎のiMac」で作業をすることが可能)

一体何だったんでしょうか......不思議すぎます......

今回の教訓は、「解決策について悩みつづけるのではなく、レビューを使って他の人に原因や解決策を教えてもらえ」というものです。

(実際、原因はわかりませんでしたが......)

いままで、レビューを受けるのは、あくまでも「課題に合格するため」だったので、自分のコードに自信を持てるまで提出は控えていました。

しかし、自分では解決できない問題を、他の人に教えてもらうために、レビューを使うのもありだと思えました。

今回だと、3日間ぐらい、同じに問題で困っていたので、もったいなかったです。

さっさと提出してしまえばよかったと思いました。

あらためて42の良さ

あらためて思った42の良さは、「自分で学ぶ力」を鍛えることができる点だと思います。

ぼく自身、この力が高いとは思えないので、課題をこなすスピードが遅く、いつも「学び方」に改善点があり、苦しんでいます。

それでも退学をさけるために、課題をクリアしなければいけないので、いやでも「自分で学ぶ力」を鍛えつづけるしかありません。

「良薬は口に苦し」といいますが、まさに、「自分で学ぶ力」を高めるために、42の「締切つきで、やり方の示されていない課題」はうってつけだと思います。

それに42は、答えを与えてくれるわけではないので、自分で試行錯誤して実際にコードを書き、動くかどうかを確認することが必要。

これは、「知っていること」と「実際にできること(コードの実装を行えること)」のギャップを埋めてくれるのに役立ちます。

まぁ、そもそもプログラミングの学習ってそんなもんだよねと、という話ですが、実際に手を動かすことで、学習を加速させることができていると感じます。

コメントお待ちしています☕ また、mondにて匿名の質問・メッセージを募集しています。なんでも送ってね👍 https://mond.how/ja/hovinci_jp