はじめに
みなさんどうもこんにちは、@shuniiです!
僕がQiitaで記事を投稿し始めて、約1ヵ月が経ったので、自分のプログラミング学習を振り返って記事を書いていこうと思います。今回は、自分が1ヵ月本気で自分の技術力を向上させようと試みた体験から、プログラミング初学者の方に役立つような考え方や学習法をお伝え出来たらなと思います。
初投稿の記事
できるようになったこと
まずは、この1ヵ月で自分が出来るようになったことを紹介します。
- typescriptの基本的な使い方
- Reactを用いて簡単なアプリケーションを作る
- Reactアプリのテストを書く
- firebase hostingにデプロイする
- Github actionsでパイプラインを構築する
まったく言葉の意味がわからない!という方もいるかもしれませんが全然大丈夫です!(そもそも学習したい分野が違う可能性もありますしね~笑)
プログラミングに才能は必要なのか
結論、個人的な回答は「否」です。
プログラミングが出来るようになりたい!エンジニアになりたいという思いがあれば才能がなくても努力や慣れで何とかなります。才能がまったく関係ないかといったことに関してはそれも「否」という答えになってしまうのですが、さほど考えなくてもいいと思います。
大切なのは、才能について考える前に、「まずは誰に言われようが自分は頑張った!」と胸を張れるくらいに努力することです。
僕は高専(高等専門学校)という普通高校とは少し変わったところに通っています。情報系の学科に通っているのでみんながみんなというわけではありませんが、優秀な友達もいます。それもあって、自分とその友達とを比べてしまってモチベーションが下がってしまうということがよくありました。
現代では、SNSというものが存在するので、高専のような場所に通っていなくとも他人と自分を比べてしまうことは日常茶飯事でしょう。しかし、それは本質的にプログラミングを楽しめているでしょうか?1点集中して努力をできているでしょうか?
言われてすぐには難しいかもしれませんが、本気で何か努力したいときには他人と比べるよりも今の自分を見つめることを大切にしてみてはいかがでしょう。
あなたはなぜプログラミングをするのか
僕がプログラミングを学習する理由は、ざっくりというと「モノづくりが好き・新しい物好き」というところに所以しているかなと思います。そして、エンジニアってなんかかっこぇ~っていうなんとも不純な理由も。
でもこの記事を読んでくださってる多くの人がそういう不純な理由をもってプログラミングを学習しているのではないでしょうか?僕は否定しているわけではなく、個人的にむしろ肯定しています。
お金稼げそ~とか、楽して家でフルリモート!とかね笑。
ですが、そういう不純な理由で始めた学習には大きな落とし穴があります。それは、
モチベーションが下がりやすいということです。今回の1ヵ月の取り組み以前にもプログラミングに趣味みたいな感じで触っていたのですが、「何のためにプログラミングやってるんだろう、、、」とか余計な雑念が入って挫折するみたいなことが結構ありました。
それこそさきほど話した他人と自分を比べてしまうことで、簡単にポキッと挫折しやすくなってしまいます。
そんな人はどうすればいいのか。
結論、継続することです。
そんなのわかってるよ!という方もたくさんいるとは思いますが(自分もそのうちの1人です笑)、継続の力って本当にすごいんです。1ヵ月の取り組みをやり切った僕だからこそ言えます。継続は結果を生みます。それが目に見えなくても何かしら実を結んでいます。
継続するためには自分なりの最高の環境構築を
継続が結果を生む、という話をしましたが、ではいったいどうすれば継続できるのか。
継続するしかない環境を作り上げることです
よしやるぞ!といった気合を入れるだけでは継続は正直難しいです。それでできるレアケースな人もいますが、たいていの人は無理な気がするのであきらめて自分をコントロールする方法を模索するのがいいと思います。個人的に「無理」という言葉は使いたくないのですが、自分が何度も挑戦してだめだったので僕は無理というより非効率と決断してやめました。実際に身に染みるように実践してみるのもおすすめです。
環境を作り上げるためのおすすめの方法
これまでも何度か記事の中で取り上げてきたのですが、コミュニティに所属することです。プログラミングスクールでも、メンターをつけるでも、何でも構いません。一人だけで学習を続ける状況をなるべく避けるべきだと思います。友達と勉強する、という方法もありますが僕はなーなー(適当)になってしまうところがあるのであまりおすすめはしません。
コミュニティに参加することのメリットとしては、ある意味監視の目がつくという監視性や誰かと関わることで自分の成長を感じやすくなるところかなと思います。自分はJISOUというコミュニティに参加しているのですが、自分がわかるところをほかのメンバーの方に教えられたときは「理解できているんだ!」「自分にも教えられる!」という感動でモチベがさらに上がりました。これはコミュニティの性質にもよりますが、一人で学習を続けるよりもはるかに大きな成長が見込めると思います。
プログラミング学習に崇高な目標は必要なのか
この章でお話ししましたが不純な理由でプログラミング学習を続けていると他人と比べて挫折をしてしまう場合があります。僕が挫折を経験した一つとしては、「高く崇高な目標をもった人と出会った」ことです。そういう人と出会うと自分の目標が正直馬鹿らしくなります。むなしくなります。けどそんな人に僕は伝えたい。
僕でもできたんだから、あなたにもできる
これまで話してきたことは、僕の経験です。なので、僕がそんな人間だということです。けど僕は1ヵ月もの間学習を続けることができ、以前の自分よりも自分に自信を持っています。
決して僕も崇高な目標を掲げていたわけではありません。だけど、1ヵ月の取り組みを終えてみて最近心境の変化がありました。
僕のはじめのイメージでは、プログラミングとは最初に崇高な目的があって、それを実現するための手段として学習するものでした。だからこそこんな理由でいいんだろうかとときより考えることがありました。ただとりあえず継続してみて、最近は「自分には何でもできそう!」と思い始めています。プログラミングというものに少し慣れたからこそITって魔法じゃん!プログラミングって最強の武器じゃん!と思えてきました。だからこそこの力を使えばこんなことができる!!というワクワクが生まれてきました。こんなものを作りたい!世の中に届けたいという貪欲さが生まれてきました。
何が言いたいかというと、目標 ==> プログラミング学習という流れだけでなく、
プログラミング学習を続ける ==> 目標が見えてくる! という流れがあるということです。
学習を続けていればおのずと自分のやりたいことが見えてくると思います。だからこそ、継続することを諦めないでください!今はまだやりたいことがよくわからなくても必ず見えてくるはずです。もしそれでも見えなくても、あなたが努力したことはあなたの生きる糧になるはずです、無駄なことはありません。
無駄でもったいないのは、継続をせずに途中で投げ出してしまうことです。もちろん挫折はして当たり前なので、何度もやり直してみてください。時間がある人は焦らずに何度も挑戦してみてください。
宣伝
僕の1ヵ月間の取り組みを支えてくれたのは、JISOUというサービスです。今回の記事で語れることもJISOUがあってこそなのでぜひ興味を持っていただいた方はご連絡お待ちしています!
プログラミングコーチングJISOUではメンバーを募集しています。
気になる方はぜひHPからライン登録お願いします!
https://projisou.jp
終わりに
今回は1ヵ月僕が本気でプログラミング学習を続けて、どのような心境の変化があったかや初学者の方に伝えたいマインドの持ち方みたいなところを書いてみました。もしこの記事が誰かの励みになってくれたらそれほど嬉しいことはないです!
それとは反対に、もしこの記事を読んで自信をなくしてしまった、、という人がいたら悲しいです。僕は今回1ヵ月という短期間で進めましたが、それはたまたま長い時間を確保できたというのもあります。なので、ゆっくりとみなさんのペースで継続してみてください。
おすすめ記事
About Me
ちなみにですがよかったらネッ友にもなってください~
- X(Twitter)