プログラミング学習の真髄は仕様変更の繰り返しである
テックジムは自習型のプログラミングスクールで、「授業がない・教科書がない」というのが特徴で、
サンプルソースをひたすら仕様変更していただくという流れのかなり異色なスクールです。
一般的なプログラミングスクール出身者は「習ってないからできません」というスタンスになりがちで、採用企業からすごく評判が悪いのです。
そこで、そういう人を作っちゃいけないんだということでプログラミングスクールを創業しました。
そもそも、「プログラミング」とは、授業を聞いて覚えるようなものではないのです。
我々エンジニアからすると当たり前のことですが、スクールは何故か「授業」を組みたがります。
でも、受講している方は、授業の日本語がわからなったら、そこで離脱してしまいます。
「プログラミング」は、書いていくうちに覚えるところが多々あるので、正しい教え方をしないといけません。
■授業より大切な事とは?
「未経験者にはどう教えるんですか?」というのは、「赤ちゃんは日本語をどうやって喋るんですか」というのと同じです。
赤ちゃんは日本語を英語で学びませんよね。同様にプログラミング学習者も日本語で学んではいけないのです。
サンプルソースがあって、仕様変更後のソースがあって、これを見比べれば、どこを埋めればいいかって分かりますよね。
それを写経ではなくて、答えは何回見てもいいけど、答えを伏せて書くっていうのを何回かやってもらうと見ないで書けるようになります。九九と同じ要領です。
それで答えを見ないで書けるようになると、心の余裕ができるので、そのうち理解が追いついてくる。
だから、「理解しよう」とか「考える」のは辞めようねって言っています。
自学自習こそ大切というのは、公文式や武田塾などで成果が出ているので、プログラミング学習でも通用するはずです。
そこで重要なのが「コーチング」です。
スポーツの選手とか音楽家たちには、優れたコーチがいて練習風景を見てるはずです。
実はエンジニアの世界も必ず先輩エンジニアやテックリードたちが、自分の書いたコード見てくれる人がいます。
それなのに、プログラミングスクールにはテックリードみたいなコーチがいないのです。
私たちは授業をやらない分を、見守る時間や助言する時間に充てている。だから実践的なのです。
ボールドさんも専属コーチ制度を設けてから、すごく成果を出されていますよね。
「親と子」とか「監督と女優」の関係もそうだけど、見てくれている人がはいるから頑張れるのです。
それと、もう1つすごい大事なことがあります。
チャットGPTや、Google検索で、いろいろな記事が出てきますが、彼らはめちゃめちゃ答えようとするんです。
先生に質問するとめちゃめちゃ答えようとしますよね。
それが本人に合っていないのです。
でも、コーチの場合は見守ってからの助言なので、適切なタイミングで、適切な人間関係の中で過不足なく伝えることができます。
コーチは色々な人を見てるから、こういう性格の人はこういう言い方をしようというアレンジもできます。
どんどん経験を積めば、コーチングの精度もあがってくる。これがテックジムの源泉だと思います。
■プログラミングの上達の早い人の共通点とは?
まずスポーツに打ち込んできた方です。
彼はらトレーニングが得意です。
ゴールからの逆算で日々のトレーニングに落とし込める人は上達が早いです。
そもそも優れたコーチの指導を受けているからなのかもしれません。
その次が楽器に打ち込んできた人。
楽器を弾けるようになるには、全く弾けない時が長いのです。
それを、「辛抱してやり続ければ、いつかは弾けるようになる」と割り切れる方も確実に上達します。
最後に受験勉強向き合ってた人です。
受験勉強もまた効率学習法を自分で確立して正しい努力をしたかどうかで成果が変わってきます。
例えば赤本をやっていて、わからなかったらすぐ答えを見るとか、捨て問題は飛ばずとか、時間を厳格に測るとかが重要です。
プログラミング学習はモヤモヤするときがしばしばあります。
そこで詰まってしますと、1時間、2時間と浪費してしまいます。
エンジニアの世界って解決しないことが多い。
絶対解決するんだと変な気持ちでやってるといづれ挫折します。
この辺の要領の良さは受験勉強にヒントがあると思います。
着実に進捗を図れる人が結局上達が早いのです。
■エンジニアとして優秀な人ってどういう人か?
それは、すばり「コミュニケーション」です。
そもそも「プログラミングは何のために学ぶのか?』という問いに対する答えが「コミュニケーション」だと思います。
ボールドさんでいうところの「人間力」と同じだと思います。
例えば、Googleが提唱している「犯人探しをするな。原因探しをしろ」という言葉の裏には、グーグルが考える「コミュニケーションの在り方」があると思います。
コミュニケーション噛み合わない時に、どうやったら噛み合うのか?
両者のプロトコルを合わすのもコミュニケーション能力の賜物です。
クライアント(発注者)の意通りのものを作れるとか、ユーザー(利用者)側の意図も組みとって「こうじゃないですかとか?」っていてプロジェクト自体を良くするのも「コミュニケーション」です。
さらに自分がチームメンバーからうまく協力者を仰げる環境を作るのも「コミュニケーション」なのです。
誰かが見るはずのソースコードを変な書き方で書かないようにするのも「おもてなし」つまり「コミュニケーション」です。
だから僕は、これからエンジニアに進む方には「人間を磨いてくださいね」と言ってます。
■未来の慶応義塾を目指す
テックジムが目指すところは「慶応義塾」です。
福沢諭吉先生の時代は、「英語」さえ学べば全ての産業のことを学べました。
ところが、今は、それが「プログラミング」に置き換わっています。
プログラミングの現場は全ての産業の経営課題に立ち向かっています。
だから、大学にいかなくても、世の中のこと全てが学べてしまうのです。
プログラミングだけ習得しておけば、人生どうにでもなります。