【初学者向け】プログラミングの勉強方法

IT人材が不足していると言われるご時世であります。経産省の試算では2020年で20万人不足しているらしいです。(参考:https://www.meti.go.jp/shingikai/economy/daiyoji_sangyo_skill/pdf/001_s03_00.pdf )

「そうだ、プログラミングを勉強しよう!」

そんな方々を少しでも支援できればと、プログラミング勉強用のスタートスキルセットをつくっていきたいと思っております。最初だけやる気が出るマンなので、最後まで続くかわかりませんがやってみます。※本ブログの行く末もわかりませんが

なぜプログラミングスキルセット制作を思い立ったのか

結論から言うと、「プログラミングスクールに通ってもスキルがちゃんと付いた人に出会ったことがない」からです。初学者向けに少しでも力になれるスキルセットをつくっていけるといいなぁと思っています。

世の中には、プログラミングを勉強して、手に職をつけてレベルアップしたいと考えている意識の高い方はたくさんいます。そんな方々向けに、様々なプログラミング学習支援サービスがあふれています。どんなプログラミング学習支援サービスがあるのか、少し現状を分析してみましょう。

  • プログラミングスクール
  • 動画サービス
  • プログラミング初学者向けのセミナー

などサービスが乱立しております。以下、知ってる範囲でざっと上げてみましょうか。

プログラミングスクール
動画サービス(プログラミング学習)
プログラミング初学者向けセミナー

これ以外にもたくさん、プログラミング初学者向けのサービスが乱立しています。それだけ需要があり、各社その需要を刈り取るべくサービスをつくっています。その中で特に問題視?疑問視?しているのは、プログラミングスクールです。非常に高額な費用を支払い(国公立大学の授業料1年分以上)、短期間でスキルをつけられると書いていますが、卒業生としてサービス作ったりプログラマーとして働いている人に出会ったことがありません。(N数が少ないこともありますが)コードのかけるエンジニアになれる確率が低いのは確かです。

スクール卒業生が世の中に溢れすぎてしまっており、履歴書の時点で門前払いされることも多々あると、実際の卒業生から話を聞いたりします。70万払って勉強して、プログラマーを目指して勉強したが、プログラミングスキルが身につかず、結局わけわからない会社に転職なんてやりきれないですよね。

スクールに通うだけじゃ、スキルをつけ切れない理由はいくつかあると思いますが、自分自身がスクールに通ったわけでもないのに、あれやこれやとは言えないので、これ以上突っ込んだコメントはしません。

とにもかくにも、そんなプログラミングを勉強しようと目指されている方に朗報です!nakoblogでは、より低コストでより高速でプログラミングスキルを身につけられるコンテンツが生まれようとしています。IT人材が確実に不足していると言われる状況下で、ITエンジニアを目指す人へ、nakoblogを通じて少しでも力になれればいいなと思っています。

どうやってプログラミング勉強すればいいの?

では、実際にどうすればいいのかなのですが、やることは非常にシンプルです。

①本を1,2冊買って、デモサービスをつくる
②自分の作りたいサービスをつくる

これだけでいいと思います。発生するコストはせいぜい1万以下。PCがない人は買う必要が出てきますが、10万くらいあれば十分買えます。エンジニアになりたいなら、マイPCはマストアイテムなので買いましょう。windows, macはどっちでもいいと思いますが、スマホアプリ開発したいならMacを買ったほうが無難でしょう。Web系アプリ開発したいなら、windowsでも全然OKです。

Thickpad(Windowsなら)

信頼と安心のThinkpadです。

MAC M1チップ(Macなら)

Appleから売り出されたM1チップ搭載のMacは非常に評判がいいです。これを機に買ってみてもいいかもしれません。筆者は買ってしまいました。。。とってもおススメです

PCを買ったら準備完了です。あとは、本を1, 2冊買って勉強を開始しましょう。(どんな本を買うべきか知りたい方は、Ruby on Railsによるアプリ開発ロードマップをご覧ください。)

【初心者向け】Ruby on Rails アプリ開発ロードマップ

新しいプログラミングスキルを習得する上で大切なこと

私も一流エンジニアではないので、偉そうなことは言えないですが、いくつかプログラミング言語を習得してきた経験から、個人的な意見を少しまとめてみます。新しい言語を覚えるときに、今でも大切にしていることです。

①とりあえず手を動かす
②なにか作りたいものを設定する
③ブレイクスルーは必ず来る
④Googleに答えは載っている

①とりあえず手を動かす

プログラミングは、受け身になって講義を受ければ身につくものではありません。手を動かし、コードを書き、バグを解決していくことで身につきます。学生時代を思い出すと、授業をやっても問題演習の時間は必ずあり、問題を解いて、答え合わせをするという学習方法を進めていたと思います。先生の話では理解できないので、問題演習をしましたよね?これと同じで、基本的に問題演習=コードを書く、答え合わせ=試しに動作させる、に相応し「手を動かさない限りプログラミングは習熟できません」。本を読んでから~、もっと基礎を理解してから~、ではなくとりあえず手を動かし、コードを書きましょう。

②なにか作りたいものを設定する

プログラミング言語は「何かサービス、プロダクトをつくるために作るツール」です。プログラミングできるようになることがゴールになっている人がいますが、間違いです。よくある手段が目的になっている典型です。自分の作りたいサービスをつくるために、コードを書くわけで、プログラミングを学ぶときには、目的=自分が作りたいサービス、製品を設定しておくべきです。私は、口コミサイトをつくることを目標に設定しましたが、ゲームを作りたい、チャットアプリをつくりたいなどそれぞれ目標・目的を設定しましょう。その目標実現の想いが強いほど、プログラミング習熟速度が上がると思います。

③ブレイクスルーは必ず来る

人間は何も分からないとき、その壁の大きさがどのくらいかわからず、非常に大きく見えてしまう癖があります。そして、理解が進まず一向に壁の高さがわからないと、「自分には能力がない」と思い、自分のせいにし始めます。そしてquitします。しかし、これまでの人生を思い出してください、九九言えますよね?自転車乗れますよね?開始時点ではわけわからずできなかったことが、時間をかけていくと気づいたら習熟できています。どこかで脳内のニューロンが結びつき、断片的点情報がつながり、ブレイクスルーを起こします。

参考:日本学術会議おもしろ情報館

必ずブレイクスルーはきます」。ブレイクスルーまでの速さには個人差がありますが、「必ず来ます」。大切なことなのでもう一度言いますが、「必ずブレイクスルーはきます」。それまで愚直に勉強を続けましょう。

④Googleに答えは載っている

困ったとき、バグが出たときにどうすればいいかわかりませんよね。しかし、世の中には非常に優れた検索ツールがあります。その名も「Google」。我々が悩むバグの多くは、「先人も悩み、さらに先人が答えを教えて解決されています」。その軌跡は、すべてGoogleに載っています。英語じゃないと答えが載っていないときも多いですが、とにもかくにも解決方法は「Googleに載っています」。エンジニアとして大切なスキルの一つに、自走力がありますが、結局は「Googleに載っている答えを見つける速さ」を示しているといっても過言ではありません。

まとめ

初学者の方でもプログラミングが学べるような、コンテンツがつくれればいいなと思っています。配信を頻繁にできるように頑張ります。乞うご期待。

About the author

NAKOBLOGの著者NAKOSHIです。皆さんに役立つ情報を発信していきたいと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


上の計算式の答えを入力してください