エンジニア

初心者がプログラミングを独学で学ぶことは可能なのか。可能な理由

プログラミング独学

プログラミングのこと全く知らないけどエンジニアになりたい。でもお金はあまりつかいたくないな〜。初心者で独学で学習することって可能なのかな?

今回はこのような疑問に答える内容の記事となっています。

  1. 初心者が学びやすいプログラム言語
  2. 初心者が最初に始める学習方法
  3. 初心者が挫折しない方法

このような内容について詳しく解説していきます。

初心者がプログラミングを始める前にすること

プログラミングの準備

初心者の人がはじめてダウンロードしたゲームをいきなりやってもよくわからないですよね。どんなゲームか、どのように進めていくのか、どうやったら強くなるのか普通は調べてから始めます。

プログラミングも一緒で、いきなり書いてもわからないので順を追って進んでいくべきです。この後、順番に何をしていくか説明します。

プログラミングで何ができるかを知る

プログラミングといっても何ができるか、どんなものがプログラムで動いているのか知らないと何から始めたらよいのか決まりません。プログラミングでできること調べてみてください。

できること調べたら一覧にしておくといいかもしれません。

プログラミングでどんなことをしたいのか考える

できることを調べたら、その中で自分がやってみたい分野や作ってみたいもの、興味があることをピックアップしてみるとよいかもしれません。

例をあげてみます。これおもしろそう。将来伸びそうとかでも興味があれば全然いいと思います。

POINT

  • ゲームを作りたい
  • IoTに興味がある
  • AIに興味がある
  • iPhoneのアプリを作りたい
  • Webシステムを作りたい
  • カーナビを作りたい

自分で作りたいものはどんなプログラム言語で作ることが可能なのか調べる

興味があるものをピックアップしたら、それがどのようなプログラム言語で作られているのか、他にどんな知識や技術を必要とするのか。習得するためにどのように学ぶと良いのかを調べてみましょう。

調べた結果、どれをやってみたいといったことが決めてみます。いきなり一つに絞らなくても二つ、三つくらいにしておいても大丈夫です。

初心者が学びやすいプログラム言語は

プログラミング言語初心者向き

プログラミングでいろんなものが作れることがわかりました。でも作る物によって難易度が上がるものもあります。もしどうしてもこれが作りたいとかあるのであれば、それを作るためのプログラム言語を学ぶしかないと思いますが。できれば、初心者の人は難易度低めのものから始めることがいいかと思います。

初心者におすすめのプログラム言語は?

僕はWeb系のエンジニアなのでサーバーサイドの言語であればJava、Ruby、PHPあたりを使ってきましたが、断然PHPが簡単に感じました。

人によって好き嫌いがあり、わかりやすいという部分も違うかもしれませんが。ただ簡単だから2週間くらいで使えるようになるよということではなく言語の特徴みたいなのがわかりやすいと感じます。

Web系ではPHPがおすすめ

プログラム言語は動的型付けと静的型付けとあり、PHPやRubyは動的型付け言語になります。よく言うと変数に入る物をそれほど意識しなくてもプログラムがいい感じにしてくれるという言語仕様です。

逆にJavaとかは静的型付け言語なので、変数を初期化する時に、これはStringですよ宣言します。Javaとかの方がかっちりしていて難易度が高めと言われています

PHPをすすめる理由としては、いくつかあります。

POINT

  • 難易度が低め
  • Javaに次いで案件数が多い
  • 人気がある
  • WebサイトはPHPが多い

Web系はおすすめではありますが、学ぶことが多いという難点があります。HTML,CSS,JavaScript,PHP,データベース,SQL,AWSなどなど。

いろんなことを学ぶのが大変なので、少し難易度は上がるかもしれませんが、iOSアプリやAndroidアプリからはじめることをすすめる人も多いです。

初心者が最初に始める学習方法

最初に準備すること

今は学習方法も多く好みによって変わってきていますが、一番多い方法は動画から入るということでしょう。動画は感覚的に理解しやすいのでおすすめです。

Progete、ドットインストール、Udemyなどいろんな動画サービスがあるため使ってみましょう。無料の動画もありますが、しっかりと学習するには有料のコンテンツを契約する必要があると思います。

プログラムを作る前に全体を理解する

いきなりプログラム言語の学習から入るより、自分がつくるものはどういう順番でどのような手順をふむとつくれるのか全体の流れを理解してから取り掛かるとわかりやすいかと思います。

いきなりIf文とは何かを学んでも、どこで使うのかボヤッとしてわかりにくいので、全体のどの部分を作っているのかを知ることは重要です。

無料のサービスを使いプログラムを書いてみる

本でもいいし、動画でもいいので順番にプログラムをマネて書いてみる。ただマネているだけも少しのミスで動かないということがでてくると思います。

マネル時も一行ずつどんなことをしているのかを理解しながらすすむといいです。プログラムに解説をつけていってもよいと思います。

「もしAがあったら赤い文字にする」とか。あとで見返した時に自分がわかりやすい。

本格的に学ぶには有料プランなどを利用する(少々のお金が必要)

少し前に書いた通り、無料のProgate、ドットインストールもさわりの部分は無料だったいしますが、いろんなコンテンツを学ぶには有料(1,000円/月程度)なので少しくらいの出費は惜しまないようにしましょう。

このようなサイトを使って独学でやっていけそうなら、そのままどんどんレベルをあげていくことをおすすめします。

少し理解が難しくなってきたらMENTAというサービス(メンターがプログラミングを教えてくれる)があったりするので、利用してもよいかもしれません。

 

一緒に頑張る仲間がいるとモチベーションが上がるので、SNSで仲間をつくることをおすすめします。

それでも独学は難しいと感じたらプログラミングスクールに通うという手段もあるので、挫折する前に考えてみましょう。

初心者がプログラムで挫折しない方法

挫折

少し上の方で書いた簡単なプログラム言語から始めるのも挫折しないためだったりします。いきなり難しい言語から始めると楽しくなる前に辞めてしまうという人が多いからです。

その他にもプログラミングを楽しく学べる方法があります。以下の3つの点は挫折率を低くします。参考にしてみてください。

一緒に学ぶ仲間や知り合いを作る

SNSでも駆け出しエンジニアというタグでお互いモチベーションアップに役立てている方が多いですね。気の合う人や同じ言語の学習している人をフォローしてモチベアップに役立てることで挫折率を下げることができると思います。

駆け出しエンジニアにはDMで「プログラミングスクールの勧誘」や有料の教材を売りつけるという病み臭い人がいるので気をつける必要があります。

メンターを作る

挫折の原因として、プログラミングがわからなく先に進めなくなるという点があります。MENTA(教える人を購入できるサービス)でメンターに聞いたり、SNSでツイートして聞いたりすることで先に進めなくなるのを防ぐことができるかもしれません。

プログラミングスクールに通う

プログラミングスクールも挫折を防ぐことができると思います。最近はコロナの影響でオンラインが中心ですが、通学の場合は一緒に学ぶ人がいたり、グループ開発したりでお互い鼓舞し合いモチベアップにつながります。

オンライン中心でもわからない時に講師に聞くことができるので、それだけでも十分効果は高いですね。

授業料が高いので、転職で無料になるスクールなどを探してみると高い授業料が安くなるのでおすすめです。

まとめ

まとめ

今回は初心者が独学でプログラミングを学ぶのは可能で、学習の手順などについても紹介してみました。

どうしても一人でプログラミングしていてもわからないところがでてくると、難しくモチベーションが下がってしまい、自分はプログラミングが向いていないと思うようになってしまいます

やり方を変えたり、教えてもらえる環境さえあればできるようになるものです。ぜひ、プログラミングの学習に役立ててください。

-エンジニア