プログラミング学習で「写経」は効果あり【具体的な学習方法も解説】

プログラミング学習を頑張っている人「プログラミングの上達には、写経が大切なのかな? 最近は写経しつつ学習しているけど、、、本当にこれで問題ないのか気になります。 効率の悪い学習だったら嫌なので、、、経験者に相談したいです。」
こういった疑問に答えます。
本記事の内容
- プログラミング学習で「写経」は効果ありです
- プログラミングで写経するよりも効果的な学習法
この記事を書いている僕は、プログラミング歴が5年ほど。
すべて独学でプログラミングを学び、年収1,800万くらい稼ぎました。
今回は、プログラミング学習で「写経の効果」について解説します。
結論からいうと「効果あり」なので、具体的な学習方法を記載しました。
プログラミング学習で「写経」は効果ありです
技術書の書き写しは、若干微妙かも
ここは個人差があると思いますが、僕が思うに技術書の写経は微妙ですね。
理由は下記のとおりです。
- 技術書にはミスがあったりする
- 写経したのに動かなかったりする
- どこで間違えたか不明、萎える
こんな感じの場合が多いです。
なので、技術書を完全には否定しませんが、あくまで「全体像を把握するツール」という感じで位置づけて、その後に動画とかで学習する方が理解しやすいと思いますよ。
基本的にはYouTubeで学習できます
最近は気づく人が増えてきましたが、YouTubeは「プログラミング学習の宝庫」です。
特に英語で動画を検索すると、素晴らしい動画が多いので、それらを見つつ写経しましょう。
- 検索方法は「言語名+tutorial」です
- 閲覧数の多い動画を見ておけば問題なし
- 英語がわからなくても、たぶん理解できます
大半の人は「自分は英語ができないからな…」と思うかもですが、、プログラミング系の動画は「英語があまり聞き取れなくても、コードを追えばなんとかなる」と思います。
余談:3ヶ月くらい英語をガチ勉強するのもあり
補足ですが、僕は半年のフィリピン留学経験があります。
これくらい留学すると、「基本的に英語を聞き取ることができる」という状態になるので、いったんプログラミング学習を置いておいて、フィリピン留学するのもありですね。
ここを強化したらよくて、期間は3ヶ月あれば十分です。留学中は、毎日7時間くらい学習しましょう。
そしたら、プログラミングを英語で学ぶ&ググれるという状態になるので、今後に活きるはずです。
とはいえ、まぁ必須ではないので参考までにどうぞ。
写経もいいけど、やりすぎてもNGですよ
写経に話を戻します。
写経での学習は否定しませんが、下記のような方法は良くないです。
- 同じ動画を何度もみて、何度も写経する(最大2回)
- 写経したソースコードを暗記しようとする(暗記不要)
- 写経しつつ、大切な部分を紙のノートにメモする
上記の感じです。
特に「暗記しようとする」のと「紙にメモする」というのは結構無駄なのでご注意を。プログラミングなんて幅が広いので、暗記しようとしても無理です。
あと、紙ノートにメモもNGでして、これだと「探すのに時間がかかる」かなと思います。
本気でエンジニアを目指すなら、PC内にメモしましょう。メモアプリは「Evernote」とかでOKですよ。
プログラミングで写経するよりも効果的な学習法
結論は次の2つでして、もっと言うと、ここをやらないと伸びません。
- その①:仕事を受注する
- その②:ゼロからサービス開発
順番にみていきます。
その①:仕事を受注する
仕事を請けるのは怖いです。
しかし、ここをやってみないと、次のステージに進めません。
参考までに、僕が初受注したときの状況を話します。
- プログラミング歴は1年くらい
- Web制作の案件を10万円で請けました
- ページ数は100ページくらいです
こんな感じで、控えめにいって「圧倒的に疲労」でした。
とはいえ、安請けでしたが、勉強になったし、めっちゃ苦労したし、次のステージに進めたので良かったです。
なお、大半の人は「どれくらいのスキルになったら仕事を請けて良いのか」という点で迷いますが、この点は下記記事で解説していますので、どうぞ。
» フリーランスエンジニアとして「初受注」する際に必要なスキルを解説
その②:ゼロからサービス開発
サービスを作りましょう。
次のような感じです。
- 自分が欲しいと思うサービス
- 身近な問題を解決するサービス
- 憧れているサービスを真似する
このあたりでOKだと思います。
そして、初めにお話しておくと、たぶん失敗します。
もしかしたら「このサービスは流行る」と思ってコードを書き始めるかもですが、、、ぶっちゃけ厳しいですね。そしてモチベ維持も大変です。
- なにかサービスを作ろうと思う
- →最初はテンションが高い
- →作り始めると大変なことに気づく
- →徐々にやる気が低下&適当になる
- →最終的に完成せず、途中で放置
こんな感じになると思います。まさに過去の僕です。
まぁ、これでも良くて、サービス開発の途中でも学びが多いです。
しかし、できれば最後まで完成させると良くて、そのコツは「めっちゃ小さなサービスを作ること」です。
たとえば「ミニ掲示板」とか「なにかに特化したタスク管理アプリ」とか「おもしろ系の簡易サービス」とかですね。まずは小さなサービス作りから始めるのが吉です。
とりあえずは1年の継続、これで人生が変化する
というわけで、以上となりますが、プログラミング学習には時間がかかりますね。
小さなバグにハマり、時間だけが過ぎていき、自分の無力さ、才能のなさに絶望すると思います。しかし僕が思うに、目指すべき「平均的なエンジニア」もここなら、到達できると思います。
僕の周りには何名かの「天才エンジニア」がいますが、、僕は無理だったので、平均点を目指しました。
そして、平均点を獲得したあとは、別のスキル(マーケティングやデザイン)も学習して、掛け合わせスキルで戦いました。
こんな感じにすれば、平均点でも勝てますので。まずは1年の継続をしましょう。
そうしたら、徐々に人生が変わってくると思います。
【保存版】プログラミング基礎の完全ロードマップ【挫折しない教材】
こちらは「プログラミング基礎の完全ロードマップ」のページです。プログラミング基礎の完全ロードマップでは「プログラミング基礎解説/フリーランスの基礎解説/僕が使った生データ公開/質問回答チャットを用意/情報は随時アップデート」という内容を、基本すべて無料で提供します。人生において「プログラミングという武器」を手にいれましょう。
※P.S:無料メルマガで発信中:過去の僕は「ブログ発信で5億円」を稼ぎました。次は「30億円」を目指します。挑戦しつつ、裏側の思考を「メルマガ」から発信します。不満足なら1秒で解約できます。無料登録は「こちら」です。