プログラミング学習を3倍加速!エンジニアの『メモ』の作り方

井上 慎也
書いた人 井上 慎也
侍エンジニア塾ブログは、未経験からWebアプリ開発と仕事獲得をサポートする
侍エンジニア塾のオウンドメディアです。
プログラミング学習を覗き見

どうも、インストラクターの井上です。

最近月間50人ペースでプログラミング学習者の方とお話をしています。

そんな中よくされる質問の一つに、

効率的にプログラミングを勉強する方法はないか?

というものがあります。もしかしたら、あなたもこういった悩みを抱えているかもしれませんね。

こういった方々には私は決まって、「『メモ』を作りましょう!」と言います。

今回は、プログラミング学習における「メモの作り方」や、「作るメリット」についてお話していきます。

>> プログラミング学習をもっと効率よく早くする方法を「無料体験レッスン」で聞く 【オンライン可能です!】

プログラミング学習用のメモを作る前に

メモを作る前に、プログラマにとって必要不可欠なスキルを理解しておきましょう。

大きく分けると2つに分けられます。それは、

  • インプットする能力
  • アウトプットする能力

です。

これら2つの能力が揃ってはじめて様々なものが作れるようになります。

インプットする能力とは

ここでいう「インプットする能力」とは、ひとことで言うと、『欲しい情報に素早くアクセス出来ること』です。

具体的にいうと、

  • コードの状態を分析する手法を知っていること
  • 適切な情報(言葉)を選んで検索できること
  • 英語のドキュメントがある程度読めること
  • エンジニアの仲間がいること

こうなります。

インプットする能力がないと、エラーで躓いたり、一般的な実装方法が分からなかったりしてすぐに手が止まり長時間作業が進まないことが頻繁に起こります。

プログラマは常に情報を追いかけ続ける仕事である為、自分自身で答えを探し出せる能力は必須となります。

アウトプットする能力とは

逆に「アウトプットする能力」とは、一言でいうと、『実際に正しく動くアプリケーションを作れること』です。

つまり、欲しい機能を実際にコードを書いて実現することです。

具体的に言うと、

  • 実装のパターンを知っていること
  • スタンダードな実装方法を知っていること
  • 読みやすくエラーの出にくいコードが書けること
  • 顧客が想定している仕様通りに実装できるようコミュニケーションが取れること

などです。

実際にインプットとアウトプットを自立して出来るようになることが大切になります。

プログラミング学習でメモを作るメリットとは

たくさんのメリットがあります。大きく分けて3つのメリットです。

メリット 1

まず1つ目は、「インプットを高速化させ、アウトプットの引き出しになる」から、です。

メモを作っておくことで、欲しい情報により早くアクセスでき、アウトプットする際も役に立ちます。

メリット 2

2つ目は、「アウトプット前提のインプットは知識の濃さが段違い」です。受験勉強やテスト勉強してた時、友達に教えた内容って自分の理解もすごい深まってて、テストでもしっかり内容覚えてたり、それに近いような経験ありませんか?

まさにあれと同じことが、この「メモ」でも言えます。

インプットする時点でアウトプットすることを意識するので、実際に使える状態の知識を蓄積していくことが出来ます。これは大きなメリットですね。

メリット3

この前、勉強した文法、忘れちゃった!

と言って、復習を繰り返しされる方がいますが、これは効率的な学習方法とは言えません。もともと実用レベルになっていない言語知識は、何重にインプットして補完しても実用レベルに持っていくのには時間がかかります。プロのプログラマ(エンジニア)も半年前に書いたコードや、使用した設定ファイル、コマンドの内容なんて覚えていません。

メモをつくることで、知識を整理しながら体系化させることができます。復習といった2度手間を省くことができるので、学習時間の省略に繋がります。

メモの作り方

前置きが長くなりましたが、ここからはメモの作り方を紹介していきます。

ツール

スクリーンショット 2016-02-08 12.33.34

参照元:Kobito

まずメモ作成のツールには「Kobito」(※2017年12月27日をもってユーザーサポートが終了しています)の使用をオススメします。プログラミングのメモやスニペットの記録に最適なMacアプリとしてエンジニア界隈では有名です。ちなみに、Windowsでも使えるようになっています。素敵。

メモを取っていくアプリはEvernote等でも良いのですが、Markdownで書ける点が魅力的です。

メモの種類と実例

メモの種類は大別して4つに分けるのがオススメです。私が実際に書いた「メモ」を公開しますので、参考にしてみてください。

1. エラー&解決法

すぐに解決できないエラーは取り敢えずエラーメッセージ全てを貼り付けて保管します。

また、解決できた場合参考に見たサイトURLと、具体的に実施したポイントを箇条書きで良いので書き留めておきます。

例:〇〇のトラブルシューティング、〇〇インストール時のエラー対応

12525409_985394128194586_3671422087192907738_o

2. 自分用チートシート

新しい技術を学んだ際に(特に特殊な)文法などを簡単に参照(検索・コピペ)できるよう一覧としてまとめておきます。

自分で作ったチートシートを参照しながらコードが書ければ、わざわざ手打ちしなくて良いため以前の行動(記述)を再利用出来ます。

言語の記述方法は勿論、コマンドの組み合わせや備忘録としても有効です。

例:Ruby便利メソッド一覧、Linuxコマンド一覧、CSS記述方法一覧

12698282_985394141527918_8778374762900543350_o

3. 設定ファイルの中身

プログラミングを進める上で、様々な設定ファイルを記述することが有ります。

ツールを使って管理するほどでは無いけれど、覚えられないなと思ったものはメモしておきます。

例:.bashrcの設定例、RailsのCapistranoで設定できるオプション解説

12694572_985394138194585_8793852902484030464_o

4. 特定の機能や表現方法

手順書のように特定の機能を実装した際に

使用したコマンドや編集したソース内容をメモします。

例:会員機能実装時のセキュリティ設定例、よく使うCSS3アニメ表現パターン

12657387_985394124861253_3448566333136141473_o

5. 特定のシチュエーションで使えるノウハウ

緊急対応やイベントで使用するためのノウハウ集

例:ハッカソンで使う設定一式&コマンド集、GitHubFlowプルリクエスト手順

12657439_985394134861252_1896644263881715698_o

まとめ

いかがでしたでしょうか?メモを作成することにより、あなたのプログラミングの学習スピードは高速化されること間違いないでしょう。

また、Kobitoは、エンジニアの知識共有サイト「Qiita」と連動させることもできます。是非、自分なりの知識が蓄積できてきたら、他の人の助けにもなれるよう公開してみましょう!


33歳、未経験だった僕がフリーエンジニアになれた理由
現在フリーランスをされている市川友哉さん。33歳で、プログラミングを学び始め、4ヶ月という短い期間でフリーランスエンジニアとして独立までされた学習ログを余すことなくインタビューさせていただきました。

プログラミングを学習中の方はもちろん、独立をお考えの方まで幅広く活用できる記事になっています。この機会に是非活用していただければと思います。


現役フリーランスエンジニアによる無料体験レッスン実施中!

もし、あなたが、

  • 経験、年齢、学歴に不安がある
  • 挫折しない学習方法が知りたい
  • アプリ開発で困っている
  • エンジニアの”生”の声が聞きたい!
  • 仕事獲得の仕方がわからない
  • エンジニアに転職したいが何をすればいいかわからない

など、プログラミング学習やキャリアのことでお困りであれば、まずは『無料体験レッスン』にお申し込み下さい。

あなたにとって、最適の解決策をご提案させていただきます。

詳しくは下の画像から詳しいサービス内容をご確認ください。

cta_mtm3

非常識な結果を出した卒業生

活躍する現役エンジニア

人気記事セレクション

LINEで送る
Pocket

この記事が気に入ったら
いいね!をしてフォローしよう

最新情報をお届けします

書いた人

井上 慎也

井上 慎也

侍エンジニア塾のインストラクター。フリーでWEB制作の受託や自身の事業の傍ら、侍ではWEBプログラミング方法の指導やプログラミング学習コミュニティの運用を行っている。
好きなショートカットキーは、command + w 。愛機はMac Book Pro。ブラウザのタブを大量に開きがち。