【今日のQ&A】エンジニアがよくやる勉強法【勉強法】

こんにちは、@codeship_techです。

今回はCodeShipに所属する現役エンジニアが、実際に行なっている勉強方法の一部を教えてくれました!

あくまで普段実践していることの一部として参考にしてください!

エンジニアの方がやっているアウトプットの仕方を教えてください。

一つのプラットフォームで、自分の言葉を加えてメモするようにしています。

勉強するときの「アウトプットの大事さ」はいつ何処でも言われているので、その重要性は周知のこととは思いますが、「(効果的な)アウトプットの方法」は以外とシェアされていないようです。

今回は私が実践しているアウトプット方法もとい、学習内容の管理方法をご紹介します。

1つのプラットフォームで管理する(一元管理する)

アウトプットの方法の一つとしてメモをするためのプラットフォームには

  • 紙とペン
  • PC純正のメモファイル
  • Markdownファイル
  • Evernote

など様々ありますし、この中でどれが優れているかは個人の使い勝手によります。

なのでプラットフォーム間の優劣はつけません。

しかし明確に間違っている学習方法があります、それは様々なプラットフォームに分けて情報を記録してしまうことです。

具体的には「今日は手元のノートにメモして、次の日はEvernoteに…」といった感じです。

プラットフォームを分けると、「Evernoteに書き溜めていた内容は、実は手元のメモに過去に既に書いていた」といった二度手間が往々にして発生します。

また、ある情報が欲しいと思ったときに、もしその情報をどのプラットフォームにメモしたか忘れてしまったら、今までにメモをしたプラットフォームを全て検索する必要があります。

これも大変な手間ですし、最悪面倒になりメモそのものを破棄してしまう可能性すらあります。

どの媒体に何を書くかは自分で覚えていられるから平気」との声もありますが、

メモは「一時的に忘れても大丈夫なように情報を吐き出すためにする」ものであって、そういったメモをしたことに関する概要などを自分の脳で管理するのは本末転倒です。

よってメモをするプラットフォームは一つに限定することが得策です。

私はかつてはメモにEvernoteを使っていましたが、固定のフォーマットに不便を感じ、現在は汎用的なフォーマットであるMarkdownファイルでメモを一元管理しています。

メモに「自分の言葉」を残す

どういった事柄を勉強するときも、「書かれていることや言われたこと」だけをメモするよりも、

はるかに「それについて自分で気づいたことや感じたことや考えたこと、疑問点のうちどれか」を付加することで、脳への定着が早くなります。

以下に例をあげます。

HTMLのEmmet機能で簡単にタグを生成することを覚えたとき、Emmetで nav>ul>li*5 とすると

<nav>
  <ul>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
  </ul>
</nav>

というメモを取ったとしたら、> 記号で下のタグといったように、自身で気づいた付加的な情報を残しておきます。

こういった付加情報はあまり文体にこだわらず、初学のうちは厳密に言葉を考えることも必要ないかと思います。
(現に例にあげた付加情報の「下の」という言葉は曖昧ですが恐らく子要素の事を指しているのだと、本人に意味がなんとなく分かれば良いと思います)

大事なのはメモした事柄に対し、「自身で何か気づいた、考えた」という「エピソード」としての付随情報を残しておくことです。
これにより脳が刺激され、情報を取り出しやすくなることが心理学的に正しいとされています。

エピソード記憶 – 脳科学辞典

例えばオブジェクト指向の勉強をするときに

クラス:『モノの定義』

と出てきたとしても 意味が広すぎる。「モノ」って何のこと?など簡潔に疑問点を残しておくこともまた効果的です。

あとの学習でその疑問点を解決できると、またエピソード記憶として脳に結びつきやすくなります。
大切なのは疑問を投げっぱなしにしないことです。

一つの媒体に自分の言葉を加えたメモをして、効率的に学習を進めると良いでしょう。

授業日記についてのご意見

CodeShipの授業について「こんな事が知りたい・紹介して」というご意見・ご提案がありましたら、CodeShip公式Twitterアカウント(【CodeShip】プログラミングスクール)までDMまたはリプライにてお寄せください。