プログラマになりたい人はこうやって勉強しよう!

みなさんこんにちは。

システムエンジニア35歳定年説なんかがある昨今、33歳の私はまだまだ勉強の最中です。

今回は、これからプログラマになりたい人が今から始めたらきっといいだろう!という勉強をいくつか書いていきたいと思います。
勉強法と題しましたが、プログラマがやるべきことは1つだけですのできっとみんな大丈夫です笑

アイアンマンから

アイアンマンから

プログラマになんでなるの?

これからプログラマになる人、なんでプログラマになりますか?

  • かっこいいから
  • パソコンが好きだから
  • 新しいシステムを世に送り出したいから
  • 俺が世界を変えてやる!

いろいろな理由があるかと思います。
しかし、プログラマの仕事は、そういうのではありません。

俗にいうプログラマの仕事。それはただ1つです!

課題を解決する!

この1つだけです。

それでは、アメリカっぽい感じでやってみましょう。

クライアント「やぁ、はじめまして。早速だが、GPSを使ってターゲットを24時間監視し、特定のエリアの半径100m以内に近づいたら私たちにアラートを送ってくれるシステムを作ってくれないか。」

プログラマ『オーケー。地形のデータはXXXのものを使えばいいかい?それと、アラートを送るっていうのは、携帯電話にメールでも送ればいいのかい?それともなにか機械にシグナルでも送るかい?ビビビッとね。』

クライアント「我々が使っているベヒモスというシステムがあるんだが、そこに暗号データを送ってくれ。仕様はここに書いてある。」

プログラマ『りょーかい、この依頼は極秘任務かい?』

クライアント「あぁそうだ。このシステムが存在していることは、米国民すべてを不安にさらすことになってしまうからな。」

プログラマ『そりゃぁ愉快だ。この仕事はいつまでにやればいい?』

クライアント「3ヶ月後のハロウィーンまでに仕上げてくれ。その日に特殊任務がある。9月頃には試作品を試したい。」

プログラマ『りょうかいだ。この仕事の報酬は100万ドルだ。いいか?』

クライアント「やけに足元を見るじゃないか。」

プログラマ『くさい仕事だからな。金は前払いだ。だが、俺の腕は完璧だ。必ず完成させる。私用の個室を来週までに用意してくれ。シャワーとベッドと、あとはでかい机とイスがあればいい。それと、毎週1回、抜群な女を1人、信用のおけるやつだ、そいつを通わせてくれ。そいつに雑用をさせる。』

クライアント「わかった。交渉成立だ。来週またここに来てほしい。女に個室まで案内させる。」

プログラマ『おーけー。また来週。』

プログラマになりたいみなさん。アメリカの映画の凄腕プログラマは、こんな感じのイメージじゃないでしょうか。
もしくは24のクロエみたいなサポート役かですね。

どちらでもいいのですが、まず考えてみてください。

プログラマというのは、何かの依頼を完璧にこなす人であるということ。これが大前提です。

プログラマになるための勉強法

さて、前述のアメリカ大衆映画的なやり取りで、おおまかに想像できたと思います。

プログラマになるための勉強法はすごくシンプルです。

1. プログラムを覚える

まず、言語はなんでもいいのですが、とにかくプログラムを覚えましょう。

覚えることはそんなに多くありません。

変数、関数、分岐、ループ、それとあとはクラスとかでしょうか。それ以上のことは、使うときに調べればいいです。

初心者の人がはじめに勉強したほうがいい言語はJavaだと私は思います。理由としては、Javaはとてつもなく大きな言語で、これさえあればたいていのことはクリアできるからです。

2. サンプルとしていろいろなものに手を出す

プログラムを覚えたら、とにかくサンプルプログラムを書きまくりましょう。

そして、いろいろなことにチャレンジしましょう。

書いているうちに悟るはずです。「あ、Javaじゃなくてもいいな」と。

3. とにかく解決しまくる!

クラウドワークスなんかに登録して、できそうな仕事でもできなそうな仕事でもなんでもいいのでとにかく挑戦してみてください!

ちょっとやってみてダメそうだったら、早めにリタイアするか、知り合いのシステムエンジニアに手伝ってもらいましょう!

この3はお給料ももらえるし経験も積めるし一石二鳥です。ただし、人と人とのやり取りです。時には失敗もあるでしょう。

1年で30件ほど依頼をこなしていけば、もう立派なプログラマと言えると思います。成功率も8割を超えているでしょう。これをもっと突き詰めていき、すげーでかい仕事が受注できるプログラマ、それが上に登場するアメリカ映画的なプログラマなのです!

さいごに

プログラマになりたい!と思うことがそもそも間違いなんだっていう話しは、ちょっと置いておきましょう。

プログラムっていうのは、解決するための手段でしかありません。

お客さんは、きちんと動けばどの言語で動こうが、なんでもいい人ばっかりです。

PHP、Java、Perl、Ruby、お客さんにとってはそれらが表示するHTMLやCSSのほうがよっぽど重要ですし、もしくはPostgresやOracleやMongoなんかに格納されているデータのほうがよっぽど重要です。

なので、プログラムを道具として、「どうやったらお客さんの望みをかなえられるか」ということに焦点を当てて勉強することができれば、きっと立派な(すごい)プログラマになれると私は思います!

これからプログラマになるみなさんの幸運を祈ります!

スポンサーリンク
hige1
hige1

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
hige1