かとのぼのマイコード・マイライフ

プログラミング初心者とアプリの個人開発者向けのブログ。たまに銭湯

プログラミング入門者は最適なプログラミング言語は何かについて悩まないで欲しい

この記事をシェアする

プログラミングを始めるまでは、何かサービスを作るときに、どのプログラミング言語を覚えれば良いのか本当に謎でした。

ネットで検索すると、みんなが全然違うことを言っています。

一番最初は「PHP」が良い!とか、「Ruby on Rails」一択だ!とかです。

まず知識がありません。そんな中に専門用語ばかり出てきて、最初は調べますが、調べた言葉の中にもまた知らない言葉があって、本当にうんざりします。

「とりあえず自信満々に言い切っているこの記事のプログラミング言語で勉強してみるか」と決めて、書籍などを購入して勉強を始めます。

しかし、途中で自分では解決できないエラーが現れ行き詰まります。

「この言語を選択したのは失敗だったのかな?」と思い、また振り出しに戻り、色々調べます。

PHPで挫折してもこの言語なら大丈夫!とか、最新技術なら簡単!とかいう記事を読み、じゃあ次はこの言語にしようとまた学習を始めます。しかし、結果は行き詰まる可能性が高いでしょう…。

本当にうんざりです。自分はただ簡単なウェブサービスを作りたいだけなのに…。

これは昔自分が体験し、本当に腹立たしかった経験です。

一体どうしてこんな悲劇が起こるのか。プログラミングができるようになったときに謎がとけました。

初心者はどの言語がベストなのか?は、スーパーに買い物に行くときにどんな種類の自転車で行くか?程度の議論レベルでしかない

実は、どのプログラミング言語で作るか?は、初心者にとってはとても大事な議論だと思ってしまいますが、家から少し遠いスーパーに、どの自転車で買い物に行くかくらいの差しかないことだとわかりました。

スーパーに早く着くにはロードバイクだ!とか、行く途中に砂利道があるからマウンテンバイクが良い!とか、誰でも乗れるからママチャリだ!とか、その程度です。

こんなことを書いたらエンジニアの方は怒るかもしれないですが、初心者の方はこのぐらいに認識の方が良いと思います。

もちろん、大規模な開発をしなくてはいけないとなればもっと様々な複雑な条件がありますから、例えるなら高性能な車が必要になります。けれど、初心者が最初に作るサービスは、そんなに難しいことを考える必要はないのです。

では、この程度の話なのに、なぜ色々な主張があるのでしょうか?私も最初は不思議に思っていましたが、それはプログラミングの世界は、目的と手段がひっくり返ることが多いからだと思います。

エンジニアは基本的に職人気質な人が多いので、道具に非常にこだわることが多いのです。なので、彼らにとってはどの自転車でスーパーに行くかどうかの選定はとても興味がある議論なのです。そのため、その議論がネットに増えてしまい、初心者を惑わせています。

けど、本当にはどんな手段でも目的地(作りたいウェブサービス)に着けば良いのです!ウェブサービスが作れる手段ならなんでも構いません。

つまり、PHPだろうが、Rubyだろうが、なんでも良いのです。行き詰まってしまったら、それはそのプログラミング言語が悪いのではなく、使っている教材が悪いと思ってください。そこで決して挫けず、同じ言語で、違う本などでチャレンジしてみてください。少しずつ理解が深まって次に進めます。

プログラミング学習は最初が本当にわかりにくいですよね。プログラミングの世界はまるで不思議の国のアリスだと思ったことがありました。不思議の国に入る時の入り口は意地悪に隠され、暗くてとても狭いのです。

迷ってしまうことも多いと思いますが、頑張りましょう!

 

追伸

ちなみに、自分が試した中で一番わかりやすかった本はPHPの本でしたので、そこから少しずつ勉強が進みました。その時に学習した本を載せておきますので学習に迷う人は参考にしてみてください。

 

 

 

もし本での学習が苦手な人には動画がオススメです。PHPの学習の動画なら下記の動画がわかりやすいです。内容は上記のオススメの本と結構似通ってます。また、この動画を売っているUdemyはすぐにセールをやるので(1000~2000円台とかになります)、安くなったときに買いましょう。

 

f:id:katonobo:20190109113339p:plain

PHP+MySQL(MariaDB) Webサーバーサイドプログラミング入門