あぱれる男子のつぶやき

プログラミングを奮闘中

【実例あり】プログラミング初心者が初期で挫折しない方法

人形が階段から落ちる


プログラミング学習で役立つ情報をお届けしたい、マサです。


プログラミングのイメージと言えば、

  • 理系っぽい
  • 難しそう
  • めっちゃパソコンでカタカタしてそう
  • 英語が分からないと無理


ですよね。
私も最初そんなイメージでした。

この中でも特に初めのうちに挫折する要因とは何でしょう?

それは挑戦したけど難しくてやめた

ではないでしょうか?

ですがこれは半分正解で半分間違いであると言えます。

確かに、プログラミング言語はめちゃくちゃ難しいものもあれば、それなりに理解できるというものまで様々です。


そりゃ数百種類もありますもんね、、
人が使う言語と同じくいっぱいある訳ですから難易度も違います。


余談ですが、自分のイメージでは英語とビルマ語どっちが分かりやすい?と言われる様なものだと思ってます。

ビルマ語はミャンマー語のことです。
マジで何を書いてるか分かりません。

  • 英語でこんにちは→Hello
  • ビルマ語でこんにちは→အဲဒီမှာမင်္ဂလာပါ

これを見て後者の方が簡単だと言う人はまずいないでしょう。


それを踏まえて、
「まぁ、何となく難易度に違いがあるということは理解出来たけど、本当に挫折せずに継続できるの?」

これが次の疑問だと思います。


という訳で、いつも通り前置きが長くなりましたが、今日は実際に自分で試してきた、プログラミング学習中に挫折しない方法について書いていきます。

プログラミングで挫折しないで続けるには

言語の選択と目標は明確に

選択に立ち止まる女性

プログラミングにはフロントとバックで2種類あることはご存知かと思いますが、まずはフロントからやるのが
個人的なオススメです。

両者の違いについてサッと読むにはこちらのサイトがわかりやすいです。↓

style.potepan.com



フロントは主に、
ユーザーがそれを使う時に目に見える部分を指します。

主な言語は、

HTMLに関しては「HyperText Markup Language ハイパーテキストマークアップランゲージ」
というだけあって、マークアップ言語とも言いますね。

特にこのHTML/CSSは学習の入り口としてはちょうどよく、
コーディングした内容がすぐに反映されてわかりやすい

という点から、初期で挫折しにくいのでは、と感じています。


「いや俺はスマホでアプリを作りたいんや!」
という方はバックから始めるのもありですが、やるならフロントとバックのちょうど間くらいのJavaScriptや、
RailsPythonあたりから始めるのがオススメです。

Pythonを研究室でずっと使っている友人も楽しんでいるようでしたし(個人差はあるでしょうが)、
JavaScriptでも簡単なアプリは作れるので、達成感はあるでしょう。

しかし、難しすぎる言語から入ってしまうと、この達成感や何かを作ってる感が薄くなるので、
同時にやる気が削がれて挫折してしまう可能性が高くなるというわけです。


マナブさんのツイートとブログも拝見しましたが、
これで私も最初から難しいバックエンドの言語に挑戦することはやめようと思えました。


バックに関しては私も勉強中の身ですので、その内まとめようと思いますが、
挫折しないための一つの解決策として、まずは、楽しさが分かるような理解しやすい言語を選択すること

これが重要です。


挫折せずに続けるには孤独にならないこと

スマホと繋がる人たち


ひとりでコツコツと続けるのができる人はそれでいいです。
ブラウザバックして勉強を再開してください。

ただ、私と同様に精神的に無理!という方は、私が実施した以下の方法を参考にしてみてください。

私が試した方法
  1. 勉強を始めてやり遂げることを親や恋人、友人に伝える
  2. TwitterなどのSNSで宣言と報告をする / 勉強記録も付ける
  3. 途中経過や制作物を見せびらかす



1つ目ですが、
私はプログラミングを始めてから少しして、周りの人達に宣言しまくりました。
理由は口だけ野郎にならないように自分にプレッシャーをかけるためです。
これで挫折している場合じゃなくなりました。

そしてTwitterをし始めましたが、ちょっと後だったのです。
これには「もっと早くにやっておけばよかった、、」と後悔しています。

始める前と後じゃ、モチベーション維持が段違いになったのです。


そして2つ目。この「SNSで宣言をする」を続けることで、

  • 自分と同レベルの人が頑張っているから自分もやらないと、とやる気が湧く
  • 有益な情報を得ることができて、更にやる気がでる
  • 頑張っている人たち(フォロワーさん)に宣言することでまたもやプレッシャーをかけることができる
  • いいねをもらえたら嬉しくて更にモチベーションがあがる

こういった素晴らしいループが毎日あるわけです。


更に勉強時間も記録し、報告もしながらだと
「今週(今月)はこんなに勉強したのかぁ、自分頑張っているな」と自己肯定をすることができ、

反対に「うわ、今週(今月)は全然勉強できてない、、気を引き締めないと!」と
自分に発破をかけることもできます。

勉強時間を見える化するのは積み上げている感があっていいですよ。

私はパッと見でわかりやすい「Studyplus」というアプリを使っていますがこれは好みでいいと思います。
アプリでなくてもメモ帳でもいいですからね。

一応リンクも貼っておきます。

www.studyplus.jp



最後に3つ目。これも2つ目と同様ですが、制作物などをツイートすると一定のフォロワーさんたちが
「いいね」をつけてくれますし、場合によっては褒めてもくれます。

これ、めっっっちゃ嬉しいですよ。

「あぁ、自分の勉強は間違ってなかった。なんだか認めてもらえたような気がする」

私は常そう感じることができてます。
この思考を持つことができれば、挫折なんかとはおさらばです。


「挫折」の対岸にあるのは「認められること」だと思うのです。

認めてもらうのは、SNSじゃなくてもいいわけです。1つ目にあげた、周りの人達でもいいわけです。
私はなにか作ったり、模写を終えるたびに見せびらかしまくりました。笑
プログラミングのことを知らない人ばかりなので、みんながみんな口を揃えて「すげえ!」と言ってくれます。

これで更にやる気がでますね。

途中経過や制作物を見せびらかす方法については前回の記事で紹介していますので、
よかったら見てくださいね。

www.appatwi.com

Twitterで使うと継続できるハッシュタグやルーティー

おまけですが、私がTwitterで発信するときに気をつけていることもまとめておきます。


  • 朝と晩にできるだけ成果報告をする(毎日)

#おは戦(おはよう戦隊)や #おつかれ戦隊 が使えます。

使用方法についてはこちらのブログが参考になります。

pekeblog.com

1日の初めと終わりにやることを宣言することで、フォロワーさんにアピールします。


  • 積み上げをしているアピールをする

#今日の積み上げ というハッシュタグか使えます。

私の場合はこのハッシュタグの後に、目標やその日学んだことを付け足してます。


  • ○日間チャレンジをしてみる

#30DAYSトライアル や #100DaysOfCode が使えそうです。

tokyofreelance.jp


簡単に言えば「どちらも継続して、プログラミング学習をしよう!」ということです。

ちなみに私は後者を続けています。この記事を書いている日でちょうどDay25です。


  • プログラミングやエンジニアとついたツイートをする

#プログラミング初心者 や #プログラミング学習 また、
#駆け出しエンジニア や #駆け出しエンジニアと繋がりたい(つながりたい)

などが私がよく使っているハッシュタグです。

同じように勉強をしている方たちから反応がありますので、より親近感が湧きやすいと思います。


おわりに

continue


まとめると、

  • 理解しやすい言語を選択し、楽しさを知る
  • 仲間を見つけ、モチベーションをあげてもらう
  • 毎日コツコツとでいいので積み上げ、勉強時間を管理する

これが大事です。

一応、今回のことに関連する参考記事も貼っておきますので興味がある方はどうぞ。

manablog.org

note.com


勉強をしている上で、挫折しない人生なんてまずありえません。
何度心が折れてもいいんです。

ただ、こうして同じように勉強している人たちがいるということを忘れないでほしいです。

継続は力なり、です。今日から一緒に頑張りましょう!



それでは。