プログラミングなんて言葉なんだこんなものやれば誰だってできるようになる

結論: 「英語」を「プログラミング」に脳内で置き換えて、以下の動画を視聴してください。僕の言いたいことはそれに集約されます。

https://www.youtube.com/watch?v=-tGUxoPajr8

未経験からエンジニアに転職する人の心を折るために、**「プログラミングなんてそんなに簡単なもんじゃない。エンジニアを舐めるな」**的なことを言う人がいますが、それって性格悪くね?クソじゃね?と思ってしまいます。

せっかくモチベーションを出して、色々なものを犠牲にしようと頑張っているのに、その尊いものを、ただただ傲慢に奪おうとしている、いやあどうなんでしょうかね。

誰だって最初は未経験からエンジニアになったのさ

そもそも僕はずっと思ってたことなんですが、「未経験からエンジニアに転職」って、さぞ、今までエンジニアになってた人は、未経験からエンジニアなったわけではない、みたいな物言いですよね。だけど、それって意味不明じゃないですかね。誰だって最初は未経験なんじゃないんですか?、最初から非童貞の人がいるんですか?えぇ?

子供が、将来の夢はスポーツ選手、と言ったときに、「いや冷静に考えて、お前がスポーツ選手になれるわけないから諦めろ」、と言うんですかね。

え?大人と子供は違うって?

話は逸れているようで逸れないのですが、そもそも「子供」という概念は、近代以前には存在していませんでした。「大人」と「子供」という区分が生まれたのは、wikipediaによると、17世紀頃、と言われています。学校制度の誕生とともに、子供という概念が生まれたわけですね。「子供の誕生」という本があるので、詳しく知りたい方はそちらを読んでください。ちなみに僕は読んだことないのでよくわかんないっす。

何が言いたいかというと、子供も大人も関係なくね?という話。

「スポーツ選手になること」に比べたら、「未経験からエンジニアに転職」なんて楽勝でしょ。99%達成可能、と言っても過言ではないです。

未経験からエンジニアに転職するためにはどれぐらい学習すればいいのか

ここからはちょっと現実的な話をします。最近のプログラミングスクール事情とか、転職率90%超えの真実とか、未経験からエンジニアになるためにはどれぐらい勉強すればいいのか、とか。

結論から言っておくと、市場に出ている、ほとんどのプログラミングスクールでは、実務で求められるレベルの技術力は付きません。

僕もプログラミングスクールに通った(オンラインだったので、正確には「受講した」ですかね)クチなので、このあたりの事情はよくわかるのですが、そもそもエンジニアとして業務をこなすために必要な、最低限の知識量が、膨大なんですね。

で、その範囲をカバーしようとすると、カリキュラム的には量が多すぎになってしまいます。カリキュラムの分量が多いと、必然的に脱落する受講者が増えますし、評判も悪くなります。

ということで、このプログラミングスクールで学んだことは実務レベルには及ばない、というのは、「エンジニアになりたいけど、勉強はなるべくしたくない」という消費者と、「もっと教えたいことがあるけど、それをするには時間が足りなすぎる」というスクール側の思惑のジレンマなわけですね。

本当のことを言う、真実をつまびらかにする、というのが必ずしも正義ではないし、正しい解でもないということです。恋愛だって、男性が女性にアプローチするのは、顔がタイプだから、エッチしたいからじゃないですか。ただ、それをはっきり口にすることが正しいわけではないですよね。ビンタされますからね。

エンジニアになるために最低限学んでほしいことはこれです、参考書ドーン!、みたいにしてしまうと、どれだけカリキュラムがわかりやすくても、どうしようもならないんですよね。根本的に、勉強が嫌いな人とか、やる気がない人というのは一定数いるわけですし。

非常に難しいところなんですが、「これだけ勉強すればエンジニアになれます!」と、少し煽りを入られてエンジニアになったとしても、その後学習を継続していけば、優秀なエンジニアにはなれるわけですが、**果たしてそういう人が、最初から膨大なカリキュラムをドンと出されたとしても、心が折れずに同じ道を辿れるか、**と言われるとわからないですよね。

僕はごりごりの理系で、数学とか好きだったんですが、普通にエンジニアになるための学習は挫折しそうになりましたし、エンジニアになろうとした最初のきっかけは、「プログラマーは稼げる」という煽り文句でした(実際にエンジニアは稼げるわけですけども)。

僕はテックアカデミーを受講し、そのままインターンの面接を何個か受けたら1つに合格して、そこからは数社で実務経験を積んでいる、という感じなのですが、最初のインターン先では非常に苦労しました。めっちゃキツかったっす。

これが、プログラミングスクールと実務の差か、というのを痛感しまくりましたよね。インターンのはじめの数ヶ月は業務へのキャッチアップのために必死でした。

そのおかげか、気づいたら膨大なインプットが自分の中に蓄積されており、自分も「プログラマーの言語」をしゃべるようになったわけですが、これはいわゆる、戦場に素人を何人か放っておいたら、そのうちの数人が歴戦の戦士になっていた、みたいなパターンなのでおすすめしません。

戦場に放り込まれたその他大部分は戦死してしまいますし、僕にこれができたのも、インターン生ということで、大幅な割引が効いたからです。転職だったら、そもそも雇ってもらえませんでしたからね。

プログラミングなんて言葉なんだ。誰だって未経験からエンジニアになれる

話が長くなりましたが、もしこの記事を読んでいる方で、「俺って才能ないのかな」、「未経験からエンジニアになるのは無理なのかな」と考えている方がいたら、いつだってこの言葉を思い出してほしいです。

「プログラミングなんて言葉なんだ。こんなもの誰だってできるようになる」

プログラミングなんて、「こんなもの」なんですよ。プログラミングが難しい、理解できないと感じたら、その原因は3つしかありません。

  1. そもそも、教材が根本的にわかりにくい
  2. 理解するために必要となる概念を理解していない
  3. 脳が猛烈な勢いで情報をストック・整理しているので、もう少しで理解できる

教材が根本的にわかりにくい、というのは非常によくある話で、そもそもそういう技術記事とか、カリキュラム、技術書を書いている人が、根っからのプログラマーだったり、頭が超絶よかったり、コミュ障だったりする場合に起こりがちです。彼らは、何もない知識がないところからスタートする人たちの状況を想像できないんですよね。あとは、え、こんなの簡單じゃん?、みたいに超絶難しい概念をさらっと過ぎてしまうとか。はいはい、お前が頭がいいのはわかったからさ、もっとわかりやすく説明しろよバーカ、と言いたくなります。

プログラミングを難しいと感じることは、おかしくありません。**僕も、プログラミングが簡単って言ったやつ誰だよ、くっそ難しいやんけ、と思いました。**ただ、学習を続けていれば、脳が勝手に情報を整理してくれるので、あるタイミングで「ふっ」と理解できるようになるんですね。

だから諦めずに頑張ってほしい。僕はいつだって、あなたたちの味方です。

なんてかっこつけましたが、そんな感じ。

カテゴリー