【コラム】法政大卒新入社員の末路から想う…プログラミングを学ぶって?
先日、「日本初?リモート研修中にクビになった、法政大卒新入社員の末路」という記事がPresident Onlineからリリースされ、波紋を広げている。
その記事の中で、新卒で入社した会社をクビになった彼は、プログラミングを学びたいとの希望があった。
今回は、プログラミングを学ぶって、果たしてどういうことなのだろうか?という視点でお伝えする。
波紋を呼んだ記事
今回問題になったのが、この記事だ。
https://president.jp/articles/-/35434
記事を要約すると、こんな内容になる。
- 主人公である彼は、法政大学文系学部を卒業後、東証一部上場企業であるIT企業のS社に就職した。
- 彼は「IT業界のほうが、長期的な可能性がありそう」ということでS社を選んだ
- 彼は、新型コロナウイルスが猛威を振るう直前である今年3月にもタイ旅行へ出かけた。内定先のS社から課題も出されていたが、タイ旅行のために遅れると申し出たところ了承された。
- 4月1日、この名の影響もあって研修はすべてオンラインで実施された。
- 5月に入り、彼は人事担当に呼び出され、自己都合か、会社都合がどちらか選んで会社を辞めてもらうよう通告された。
- 上司曰く、
「入社前に課せられていた課題提出が遅れていたこと」
「研修中のマナーが悪い」
ことが理由だという。 - 彼は、会社都合での退職を選び、プログラミングスクールに通うことにした。
- しかし、手持ちのお金がなく、すでに両親や消費者金融から借金しているため、クラウドファンディングでプログラミングスクールに通うためのお金を集めることにした。
この記事にでてくる主人公だが、本人にも問題があるし、解雇した会社にも解雇理由として大いに問題がある。
それはさておき、彼はなぜエンジニアを目指すのだろうか?
そして、彼はプログラミングスクールで何を学ぼうとしているのだろうか?
プログラミングスクールの誇大広告が多い昨今、同じような状況に置かれている人は決して少なくないはずだ。
プログラミングは、何を学んだらできるようになるのか?
まず、プログラミングスクールの前に、プログラミングについて調べた方はどれだけいるだろうか?
プログラミングとは、情報処理の手段の1つで、コンピューターに処理の命令を行うものだ。
そして、プログラミングは、実はすでに身近な存在になりつつある。
例えば、
- Excelのマクロ、VBA
- Windowsのコマンドプロンプト、バッチ処理
- MacやLinuxのシェルコマンド
といった形で、今まで人力で行ってきた処理を自動化し、楽するために、プログラミングという方法が存在する。
プログラミングができるようになるためには、まず、
「どのように処理したら、作業楽になるか?」
「どのような処理をしたら、人の作業を減らすことができるか?」
を考えられる力、つまり情報の処理設計を身に着ける必要がある。
いくらプログラミング言語を学んでも、プログラミングで達成すべき目的を見失っては、プログラミングができるようになったとは言えないし、エンジニアとして失格だ。
プログラミングスクールを学んだら、プログラミングができるようになるのか?
では、プログラミングスクールに通ったら、情報の処理設計を学ぶことができるのか?
残念ながら答えはNoである。
プログラミングスクールで学べるのは、主に以下の内容になる。
- プログラミング言語(PHP / Ruby / Python / Javascript …)の書き方
- マークアップ言語の書き方(HTML / CSS)
- 開発環境の構築方法
このような感じで、情報の処理設計は殆ど教えてくれない。
それもそのはず。現場のエンジニアは、そうそう情報の処理設計を細かく教えられるだけの時間がないからだ。
つまり、プログラミングスクールに行くのであれば、
「何を学ぶのか?」
「学んでどうしたいのか?」
をしっかり考える必要がある。
自分への投資を人からお金を借りるって…
さらに、彼の大変残念なところが、自分への投資のために「人からお金を借りる」ことだ。
中学までは義務教育とはいえ、高校、大学まで通わせてもらって、さらにプログラミングスクールに通うために人からお金を借りるのは、果たしてどうなのだろうか?
自分の人生を変えたければ、まず自力で何とかする気概を見せてほしいものだ。
結論。独学せよ。
先ほどお伝えした通り、プログラミングができるようになるためには、
プログラミングスクールに通う:×
情報の処理設計を覚える:○
となる。
情報の処理設計を覚えたら、それを実現するためにはどのようなプログラミング言語を使えばいいか?になるし、そのほうが常にゴールを意識している分習得が速い。
情報の処理設計とは、すごく簡単に言えば、どのような情報をどこに保存し、どうやって表示または取り出すか?だ。
分かり易い例でいえば、
- 毎月の売上を店舗ごとに集計して、Excelに保存する
- Excelに各店舗ごとに保存している顧客一覧を、一元管理する
- 倉庫の在庫数の推移をグラフ化する
- 過去の営業実績をもとに、来年の営業実績を予測する
といった形で、ビジネス上「解決したい事」というのは山の様にある。
それを、どのように保存し取り出すのか?を考えることができれば、自然とプログラミングを学ぶ下地ができるはずだ。
巷のプログラミングスクールの誇大広告や、インフルエンサーに惑わされることなく、このコロナ時代、貴重な時間とお金を大切に投資してもらいたい。