プログラマー未経験がつらいのは当たり前【私は1度逃げています】

プログラマー未経験がつらいのは当たり前【私は1度逃げています】 プログラミング

プログミングの学習に行き詰っていませんか?
悩んで無限ループしていませんか?
頭がオーバーフローしていませんか?

「プログラミングは簡単だ」なんて、一切言うつもりはありません。
好きで始めた人間でない限り、プログラミングなんてしんどいです。

この記事は、プログラマー未経験者をとことんビビらせます。
ビビッてください。
最悪、逃げればいいんです。

実際、私は逃げましたから。
でも、今は大企業でプログラマーをしています。
副業でも、累計で2000万以上は稼ぎました。

このような経験をしたプログラマーのアドバイスとして読んでください。

本記事の内容

  • プログラマー未経験がつらいのは当たり前
  • 未経験プログラマーがつらい理由
  • 私もプログラマー未経験だった

それでは、まずはプログラマー未経験がつらいことを解説します。
冷静に考えたら、当たり前なんですけどね。

プログラマー未経験がつらいのは当たり前

そもそも、どんな仕事でも未経験はつらいです。
それがプログラマーなら、つらいのは当たり前でしょう。

突然ですが、家を作れますか?
大工の経験がないと、普通は無理ですよね。

家を作る例は、少し現実的ではないかもしれません。
では、クーラーを設置できますか?

壁にきれいに穴を開けるのは、難しいです。
壁にホースを這わせるのも、簡単ではありません。

このように、職人の仕事は素人に簡単にはできません。
もちろん、このことはプログラマーにも当てはまります。

ここは、多くの人が勘違いしているかもしれません。
プログラマーとは、職人なのです。
そして、職人になるためには多くの努力を要します。

一般的には、その努力が普通の人には辛いモノとなります。
だから、未経験のプログラマーが辛いのは当然なのです。

なんと言っても、職人になるわけですから。
では、具体的にどうつらいのか?
それについて説明していきます。

未経験プログラマーがつらい理由

  • プログラム言語
  • 論理的思考力
  • 周辺知識

上記すべてを身に付けないと、プログラミングはできません。
説明しています。

プログラム言語

CC++C#Clojure
COBOLCSSCoffeeScriptD言語
GitHub Flavored MarkdownGoHTMLJava
JavaScriptJSONJuliaLESS
MakeMustacheObjective-CPerl
PHPProperty listPythonRuby
Ruby on RailsSassScalaシェルスクリプト
SQLTOMLXMLYAML

まあ、たくさんありますね。
この中から最低でも一つは学ぶことになるでしょう。

このプログラム言語は、英語や中国語の外国語と同じようなものです。

  • 単語
  • 熟語
  • 文法
  • 構文

外国語と同じように、 プログラム言語は上記に近いモノを持ちます。

ここで質問です。
今から、タイ語を覚えろと言われたら、つらくないですか?

英語ならまだしも、未経験の言語なんてキツいですよね。
でも、未経験者がプログラム言語を習得するとは、こういうことなのです。

論理的思考力

これは、地頭力というヤツです。
筋道の通った考えができるかどうかです。

もちろん、そこに矛盾は存在できません。
あとは、抜け漏れがないかも重要ですね。

このような考え方ができていれば、特に難しいことはないでしょう。
しかし、そうでなければ、大変つらいです。

そうは言っても、結局は慣れだと思います。
ただ、慣れる前に諦めることがあり得るかもしれません。

周辺知識

3つのうちでも、最も小物だったのでしょう。
過去には。。。

令和の時代では、周辺知識もかなり厄介です。
分類すると以下の知識となります。

  • OS
  • データベース
  • ツール
  • フレームワーク
  • セキュリティ
  • 外部サービス(API)
  • 社内ルール
  • html・css
  • SEO

OS

Windows、Mac、Linuxが大半でしょう。
Android、iOSも加える必要がありました。
そう考えると、扱うOSが増えすぎです。

そして、最近はOSもすぐにバージョンアップします。
その度に、覚え直すことが出てきて大変です。
仕様変更で振り回されているプログラマーも多いでしょう。

データベース

SQL文の存在なくして、プログラムは書けません。
でも、NoSQLもありますね。
あと、アプリもデータベースがないケースもあります。

データベースの一部を記載。

  • MySQL
  • Oracle
  • PostgreSQL
  • MongoDB

データベースの分野でも、覚えることが多いです。

ツール

IDE(統合開発環境)の使い方を覚えないと仕事ができません。
IDEの一部だけ載せます。

  • Eclipse
  • Android Studio
  • Xcode
  • Visual Studio

結構クセのあるIDEもあり、これの使い方を覚えるのも一苦労です。

フレームワーク

フレームワークを利用しているプロジェクトも増えていますね。
Ruby、PHP、JavaScript、Javaの代表的なものです。

  • Ruby on Rails
  • Laravel
  • AngularJS
  • Spring Framework

ここで挙げきれないほど、各言語にはフレームワークが用意されています。
また、フレームワークも覚えることが多いのです。
それも、各フレームワークごとにクセがあります。

セキュリティ

これを抜きにして、プログラミングはできません。
Webサイト、アプリは世界中にオープンな状態です。

まずは、セキュリティの意識が必須です。

外部サービス(API)

SNS連携、クレカ連携、他サービス連携・・・
たくさん、ありますね。

外部サービスなしでは、システムが成り立たないと言えるほどです。
頑張ってマニュアルを読みましょう。
サンプルコードを追いかけましょう。

社内ルール

これは今も昔も同じですね。
社内、チーム内、それぞれでコーディングルールなどが存在します。

非効率だと感じても、従いましょう。
効果がないと感じても、従っておきましょう。

html・css

Webプログラミングだと、必要な場合が多いです。
コーダー、フロントエンジニアなどと分業できれば、不要かもしれません。

しかし、フロントエンドとバックエンドの区別のないプロジェクトは多いです。
その場合は、htmlもcssも書けないとダメです。

プログラマーには、htmlもcssが必須と言えるでしょう。

SEO

SEOの知識・スキルが、求められるケースもあります。
本来は、プログラマーには必要ないかもしれません。
実際、SEOという言葉自体を知らないプログラマーもいます。

しかし、SEOに強いと必ず役に立ちます。
必要とされる状況になった際は、頑張ってSEOをモノにしましょう。

未経験プログラマーがつらい理由のまとめ

未経験プログラマーが習得すべきモノは以下です。

  • プログラム言語
  • 論理的思考力
  • 周辺知識

論理的思考力は、それほど努力しなくても対応できる人はいるでしょう。
しかし、プログラム言語と周辺知識は、誰もが努力する必要があります。

プログラム言語だけでも外国語を学ぶぐらいにキツイです。
そこに、周辺知識も必要となります。

こうやって見ても、未経験プログラマーがつらいのは当然ですね。

私もプログラマー未経験だった

プログラマー未経験がつらいことを説明してきました。
もしかしたら、ビビッてしまった人もいるかもしれません。

ビビッてください。
本当につらいですから。

実際、私はプログラマー未経験で就職しました。
そのときは、本当にキツかったです。

研修もなく、OJTもまともなモノではありませんでした。
だから、そのときは逃げました。

プログラミングから逃げたというより、その会社から逃げました。
働いている人間を観察して、その会社に未来はないと判断したからです。
実際、その会社は消え去りました。

もしかしたら、プログラミングがもっと楽しければ、辞めなかったかもしれません。
その辛い気持ちが、退職に拍車をかけたことは否定できませんね。

その後、紆余曲折があり、プログラミングでメシを食えています。
私のような事例もあります。

もし、プログラミングから逃げ出しそうになったら、逃げてもいいのです。
逃げるというより、撤退ですかね。
撤退して、再度挑戦でもいいと思います。

みんながみんなプログラマーに向いているわけがありません。
また、潜在的に向いていても、向いていない時期があるかもしれません。
私のように。

だから、悩んで立ち止まっているぐらいなら、とにかく進んでください。
その方向が、プログラミングから遠ざかってもいいです。

しばらくしたら、プログラミングが恋しくなることもあるでしょう。
そのときが来るまで、気楽に待てばよいと思います。

タイトルとURLをコピーしました