プログラミング学習のコツはアウトプットにあり【具体例も公開します】

こんにちは、氷犬(@icedog_410)です。

こんな疑問に答えます。
プログラミングを独学していると、つい学習サイトや教材に頼ったインプット中心の勉強になりがちですが、インプットばかりだとどこかで行き詰ります。
そこで、この記事では、「プログラミング学習のコツはアウトプットにある」ということを、アウトプットの仕方と実例で解説します。
なお、この記事を書いている僕はWeb制作の仕事をしており、プログラミング歴は1年以上です。仕事では、HTML/CSS/WordPressを使うことが多いですが、最近ではPythonも触り始めました。
プログラミングスキルの伸び悩みは僕も感じていたことなので、実体験をもとに解説していきます。
クリックできるもくじ
プログラミング学習のコツは「アウトプットの回数」を増やすこと
プログラミングを独学していると、ついプログラミング学習サイトや本などの教材をやって満足しがちです。
Progate・ドットインストール・市販の本・Udemyなど、教材を使ったインプットは新しいことを覚えられるし、サクサク進むので割と楽しいですよね。僕も教材をやるのは割と好きでした。
学習サイトや本のとおりに進めればつまづくことも少ないし、プログラミング学習をしている実感があるし、いいことばかりに思えます。
しかし、インプット中心の学習だと、プログラミングはなかなか上達しません。
プログラミング学習にはアウトプットが必要不可欠
インプット中心の学習はサクサク進むので楽しいですが、圧倒的に「自分で考えてコードを書く機会」が少ないです。
たとえば、「市販の本のとおりに進めてみたらなぜかエラーが出たけど、とりあえずゼロから打ち直したら動いたからOK」という感じ。
それだと夏休みの宿題の答えを写すのと同じで、根本的な問題解決のスキルが身につかないんですよね。
知識の引き出しを増やすのはいいけど、知識は使わないとドンドン忘れていくので、また必要な時に勉強しなおすハメになります。
アウトプット前提でコードを書くとプログラミングスキルは上がる
プログラミングスキルを上げるためには、「自分で考えてコードを書くこと」が必要になります。
ただ、スキルを上げるためだけにゼロから考えてコードを書くのはツライので、アウトプットすることを前提としてコードを書くのがおすすめです。
たとえば、「Twitterのフォロワーに向けて公開する」「ブログの記事にする」など、世に出すことを考えると少しモチベーションが維持しやすくなります。
プログラミング学習中のアウトプットの仕方【具体例あり】
先ほど少し書きましたが、アウトプットをするには、「これからプログラミングで作ろうとしているものをTwitterのフォロワーに向けて宣伝する」のがおすすめです。
- 〇〇のWebサイトをゼロからコーディングします
- 〇〇のようなツールを作ります
- 自作のWordPressテーマを作ります など
不思議な話ですが、Twitterではやる気を表明すると好意的な反応がもらえるので、「言ったからにはやらなきゃな…」という気持ちになります。
そして、その成果を画像+URL付きで公開すると「すごい!」と言われます。目に見えるものを作るのは大変ですが、他の人から一言もらえると嬉しいものです。
そんな感じで、モチベーションの軸を自分から他人に少しだけズラすことで、モチベーションを維持しやすくなります。
プログラミング学習とアウトプットの具体例
実際に僕は「これからやること」を宣言したり、既に作ったものを積極的にブログやTwitterで公開してきました。
具体的には、以下のとおりです。
- 既存のWebサイトをゼロからコーディング
- 簡単なツールを自作
- WordPressの自作テーマを作る
①既存のWebサイトをゼロからコーディング
「既存のWebサイトの見た目をゼロからコーディングすること」を俗に模写コーディングと呼んだりしますが、僕はこの「模写コーディング」を積極的にしてきました。
このブログでも学習の記録として、3記事ほど残しています。
- 【画像あり】はじめてのランディングページ模写【プログラミング学習記録④】
- 自分のブログをコーディングしてみました【プログラミング学習記録⑥】
- 【Flexboxも】Webページの模写コーディングをしました【プログラミング学習記録⑧】
※ちなみに最初の記事は、かなり読まれています。
Web制作を仕事にするなら、模写コーディングは少し大変ですが、効率的なのでおすすめです。
②簡単なツールを自作
ブログを書いていると、あらかじめ記事の構成を考える必要があるのですが、メモ帳やワードで考えるのが大変だったので、簡単なツールを自作しました。
ブログ記事の構成を考える時に、メモ帳やWordで作業するのが手間だったので、Bootstrapで記事構成のテンプレートを作ってみました。
キーワード⇒ペルソナ設定⇒h2,h3見出しの順で考えるようなイメージです。
よかったらローカルに保存して使って見てください(^_^)https://t.co/I7TePWgYy5 pic.twitter.com/JM1lJeJKgK
— 氷犬????Web制作&マーケティング (@icedog_410) 2018年8月9日
HTML/CSS/jQuery/Bootstrapの練習を兼ねて作ったのですが、それなりに反響をもらえた記憶があります。
自分の悩みは、他の人と共通していることが多いので、「自分の悩みを解決するツール」を作るのはおすすめです。
ブログの記事の構成をわかりやすくするツールを作りました【便利】
③WordPressの自作テーマを作る
Web制作を仕事にするなら、WordPressのテーマを作れるようになることが当面の目標になります。
Webサイトの見た目を作れるのと、実際に動くWebサイトを作れるのとでは、プログラミングに対する理解度がかなり変わってきます。
WordPressは本を見てもわかりにくいので、実際に動くサイトを作ってみるといいです。
僕の場合は使わないコーポレートサイトを作るのにテンションが上がらなかったため、ブログとして使えるテーマを自作しました。これもなかなか反響がありましたね。
【ブログテーマを作りました】
Wordpressテーマ『Anemone』を作りました。グラデーションを基調とした落ち着いたテーマです。
HTML/CSSがわかる人向けですが、いい感じのテーマができましたm(_ _)mしばらく無料配布しますので、ぜひ使ってみてください(^_^)
デモページ⇒https://t.co/fAmlpyK0VU pic.twitter.com/bdPMKE889W
— 氷犬????Web制作&マーケティング (@icedog_410) 2018年9月6日
「素人が作ったテーマなんて誰も使わない」という意見もいただき、それはそれで良い思い出になりました笑
WordPressテーマ『Anemone』を作りました【無料配布】
このテーマは実際にブログとして使っています⇒Cloud9
プログラミング学習はインプットとアウトプットのバランスが重要です
プログラミング学習におけるアウトプットのポイントをまとめると、以下の3つです。
- プログラミングスキルを上げるためには、自分で考えてコードを書くこと
- ゼロから作る時には、Twitterで宣言すること
- 作ったものは画像+URL付きで公開すること
とにかく周りに宣言してしまうことが大事ですね。宣言すると、ある種のプレッシャーになって逃げられなくなるのでおすすめ。
アウトプットは将来的な仕事にも繋がる
プログラミングの成果物をアウトプットすることは、仕事に通じるものがあります。
プログラミングを学ぶ目的は人それぞれだと思いますが、基本的には「プログラミングを学んで稼ぎたい」というケースがほとんどですよね。
公開するからにはコードをキレイに整えたり、見せ方を工夫する必要があり、「ただ書いて終わり」というわけにはいきません。
学習段階から成果を公開する意識を持つと、その経験は将来的な仕事に間違いなく活きてきます。
また、成果を公開していると、個人としての実績や信頼に繋がるので、インターネット経由で仕事が受注できることも。
成果は怖がらずにアウトプットするべき
アウトプットすることを考えた時に、「公開できるだけのスキルもないし怖いなぁ」と思うかもしれませんが、意外と他の人は好意的に見てくれます。
また、気になるところがあれば指摘してくれることもありますし、アウトプットにはメリットしかありません。
いつかは作ったものを公開することになるわけですし、積極的にアウトプットしていきましょう。
だからこそ差別化に繋がるし、個人として信頼されるようになります。僕も積極的にアウトプットしている人は、とりあえずフォローしてみたりします。
周りを見てもアウトプットしている人はかなり早く伸びているなという印象です。
プログラミングに行き詰まってやめてしまう前に、積極的にアウトプットしていきましょう。
アウトプットするならブログがおすすめ
アウトプットするための手段はいろいろありますが、一番おすすめなのがTwitterとブログです。
特にブログで学習記録を残すと、見返した時に勉強になりますし、何より多くの人に見てもらえるチャンスが生まれます。
※例:「プログラミングでこんなことを学習したので、記事にまとめました」←見てもらえる
プログラミングを学ぶだけではなく、少しですがお金を稼ぐこともできるのです。つまり、マーケティングの勉強にもなります。
なので、プログラミングを学ぶ際はブログも作って、複数のことを効率的に学ぶことがおすすめです。
ブログの作り方は以下の記事に書いてありますので、ぜひ参考にしてみてください。
関連記事
プログラミング学習のコツを知りたい。
とりあえず独学でプログラミングを始めたんだけど、なかなか上達している気がしない…
行き詰まり感を感じているので、どうにかして前に進みたいです。プログラミングのコツを教えてください