こんにちは、株式会社カスタマトリックスの寺尾です。
本日より 新卒社員と学ぶWEBプログラミング 企画を開始します。
可能な限り毎日更新していくのでご期待ください。
本日は第一回ということで「今回の勉強企画の勉強方法とルールについて」を説明していきます。
プログラミングの勉強ってむずくない?
プログラミングと聞くと一定数の人間は数学アレルギーが再発するのではないかと思います。
しかし現代におけるプログラミング、とりわけWEB系プログラミングにおいては数学的知識は凝った事を求めない限り「変数(x=?)」程度であり、中1レベルです。
むしろプログラミング言語を理解し読み解く力が必要なので プログラミングは文系科目 といっても過言ではない...とまでは言えないかもしれないですが、初歩知識の点で簡単といえるでしょう
勉強の方法(前提)
物事を記憶する事について、私は二つのアプローチがあると考えています。
- そのまま覚える派
- 間接的に理解を深めて導き出す派
1. 「sin(90∘−θ)=cosθ」と公式を丸覚えする
2. 「sinθ = a / c」「cosθ = b / c」という情報と直角三角形を照らし合わせて変換公式を導き出す
もちろんこれは非常に簡単な例ですが、多くの場合はこのように分けられます。
さて、これは理系にのみ当て嵌るのでしょうか?
日本史に置き換えてみましょう。
1. 1582年6月21日明智光秀が謀反を起こした
2. 「織田信長は1500年代に活躍した・1500年末期には秀吉が天下を統一した」という情報から1570~1589あたりに起きたのだろうと導き出す
こんな感じになると思います。
当然テストでは1のやり方の方が適切で良い点を取れるのですが、今からちょっとした雑談や仕事に役立てるとしたらどうでしょうか?
プログラミングに限らず物事は「特定の何かだけ覚えている」より「 自分の知識を組み合わせて新しい知見を生み出す 」方が幅も効いて良いですよね!
勉強の方法(本筋)
つまりどういう勉強をして欲しいのか、教えていくのかを書いていきます。
今回の企画は一発で完璧なエンジニアを目指すものではありません。まずは「会話の通じるプログラマ」を目指していただきます。
1. まずは分からなくても「単語」を知る事
2. 分からない単語であればメモをする事
3. 少しずつ分かる単語を増やす事
4. どこかのタイミングで過去の単元を復習し、自分で意味を導き出す事
先ほど説明した「導き出す」を成し遂げるには、まずは知ってる知識の幅を広げていくしかありません。
その種まきとしてこの企画で多くの「単語」を提示するので、それをまずはメモして、企画記事で学ぶなり自分で調べるなり、質問をするなりして知識の幅を広げていきましょう。
これを自分は洞察学習の一つと考えて運用、推奨しています。
今回の企画のルール
さて、今回の企画中のルールを記述します。
1. 無知の知を努力する
2. 「とりあえずやってみる」の禁止
3. 自分で説明できない事は実行しない
1については方法のところでも話した通り、「知らないことを自覚する」事が非常に重要なためそれについて努力を心がけましょう。
2について、「一旦作ってみよう」でプログラミングに手を出すと基本挫折を味わいます。(そんな簡単にゼロ知識でTODOリストを作れたら仕事として稼ぎにならないので...)
挫折を味わう回数は原則減らす方向に動きましょう、試行錯誤は最後の手段で細かいところに対して適用するべきです。完全に折れてPC触らなくなったら二度とエンジニアになる機会を失ってしまいます。
3はほぼ2と同じですが、「自分で説明できないコードは基本書かない」ということです。
どうやったら停止できるか自分でも分からない時限爆弾を作りたいでしょうか?そんな事はないでしょう。
まとめ
全編を通して今回の企画で気を付けてほしいのは「 知らない事象そのものを無理に知る必要はない、知らない単語から少しずつ知っていこう 」です。
日常のニュース、会話、読書、いろんな所で理解せずにそのまま忘れている知らない単語が見えてきた時、一気に人生の幅が広がる事でしょう。
さて、明日から実際に勉強を開始します。
まずはWEBサイトの仕組みやインターネット・通信などの基礎部分からになります。
深堀はしないものの早速知らない単語だらけだと思います。知らない事は何も悪くないので一つ一つ立ち向かっていきましょう。
おまけ
株式会社カスタマトリックスはエンジニアを募集しています!
完全未経験でも可!