タオルケット体操

サツバツいんたーねっとでゲームとかガジェットのレビューとかをします

文系プログラマーの罪悪感

わかりやすく文系でくくりましたけど、正確には非情報系出身と言った方が適当かもしれませぬ。

私めは完全なる門外漢、未経験からこの業界に入った男です。思えば恥の多い生涯を送って来ました。

インターネットを徘徊してると色々なノイズが目につきます。そんな中でも、就職してからずっと僕の良心をチクチクと刺し続ける主張があります。「情報系以外の人間がプログラマーになるなよ死ね」ってやつです。以下みたいなエントリが生まれるたびに延々と繰り返されるアレです。

プログラマーは文系の仕事か、理系の仕事か - 愛と勇気と缶ビール

「プログラマーは文系の仕事か、理系の仕事か」 - カレーなる辛口Javaな転職日記

こう見えてかなり真面目な人間なんで、こういうことを言われると「そうか僕は職に目が眩んだまがい物のゴミ人間として、きっと何者にもなれず一生を終えるんだ……」と中央線を止めたい気持ちになったりするんですよね。

本当に僕がエセプログラマーのクズで夢の島行きがふさわしい粗大ゴミなのか探るために思索を重ね、後輩が入れば面倒をみる体で人間観察したり、色々言ってる本や記事を読んだりしてきた結果、最近はようやく結論っぽいものがみえてきました。

悟った結果として「文系プログラマーは腹を切って死ね」みたいな文章を読んでも、みんな自分が言いたいこと言ってるだけで相手の話を聴かないせいで会話のドッヂボールが発生していてウケるなぁ、もっと適当でいいじゃんコミュ障こわ。くらいの低意識なリアクションでやりすごせるようになりました。

しかし相手が何を求めているか、をちゃんとヒアリングして汲み取っていくのってエンジニアとしては結構大事な技能だとおもうんですけど、やっぱ同業者同士だと油断するんでしょうかね。

プログラマー言いたいだけちゃうんか

いきなりなんですが、今日び「プログラマー」っていう分類でなんでもかんでも語ろうとするのは「スポーツ選手」で全部語るくらい乱暴なんじゃねえの? って思うんですよ。

まず理系(情報系)至上主義みたいな人間の主張って、「足がそこまで早くないんですけどサッカー選手になれますか?」みたいな質問に「はぁ? お前の足で陸上のトップ穫れるわけないだろ死ね」みたいなトンチンカンなマジレス返すようなのばかりで頭痛が痛いんですよね。
同じ「プログラマーになりたいんです」でも、(実家の商売のホームページをPHP? とかいうので作りたいんです)(実現したいサービスのアイディアがあるんです)(ゲームが作りたいんです)(アートが)(事務作業を楽にしたい)(スーパーハッカーになりたい)みたいに色々な思惑があるわけで、それらを全部アカデミックで殴るのは雑すぎるでしょう。そんなんだからモテないんだよ!*1

数学やらソフトウェア工学やらは、基礎体力とか脚力の文脈で語るくらいがちょうどいいんじゃないんですか。一流を目指すなら出来て当たり前、極めて人の上に立てる。でもホビーの草野球やるのにハートマン軍曹は必要ないでしょう。

そもそも「道具としてのプログラミング」が出来るだけでも、使い方次第で充分価値を出せる時代じゃないですか。良くも悪くも。
無責任なアホの書いたクソコードを保守させられるのは辛いことですけど、その怒りを「プログラミングはじめよっかなー☆」って思ってる人にぶつけるのは歪んでるのではないかなと。恨むなら芸もさせずに芸人を雇う、無能な人事を恨みましょう。

で、文系でも誰でもプログラマーになれるの?

なれます(断言)
こういうことを言うと揚げ足取りみたいに取られかねないかもしれませんけど、プログラミングしてればプログラマーですよ。なのでPC買ってきてプログラミングを始めればプログラマーです。なんなら名刺を刷って自称してもいいです。

数学が出来る必要も、情報系の学部を出る必要もありません。

ご飯はくえるの?

お給料もらうのはちょびっとだけハードルが上がります。けどまぁ日本ですし、肩書きだけでもIT系にエンジニアなるなら簡単ですよ、未経験でもなれます。なぜなら未経験でも採用してくれる職場があるからです。
そんなんで幸せになれるかどうかは知りませんけど。

なので「プログラマーは文系の仕事か、理系の仕事か」に関して言えば「どっちの主張をする人間も飯は食えてるんだからどっちも正しいんじゃないの」くらいがまともな解答だとおもいます。そもそも文系の、理系の仕事ってなんだ。アホか。

でもちゃんとしたプログラマーになるには情報系でなくちゃダメなんでしょ?

プログラミングが出来るかどうかは素養によるところが大きいっぽい(60%の人間はプログラミングの素質がない とか Javaスクールの危険とか色々それ系の話はある)ので、前提として素養がないとどこの学校いってもあんまりが意味ないです。イマイチな情報系卒が腐るほどいるのもそれを裏付けているんじゃないんですかね。

そんでもってその次に、どうしてたかだか4年間の大学の授業を受けたかどうかだけで*2その後の人生全てが決定されなければならないんでしょうか?
月並みな言い方ですけど、勉強は学校以外でも出来ます(誰にでも出来るとは言っていない)。

あらゆる分野で言えることでしょうけれども、優秀かどうかというのは常に勉強して成長し続けているかどうかであってどこの学校のどの学部を出たかどうかではありません。(とはいえ、僕は学歴コンプレックスを持ちつつも学歴は案外アテになると思ってる系の人間なので「いい学校出てるってことは最低限優秀なんだな」みたいな逆算はアリだとおもっています)(精神的に向上心のないやつは馬鹿だ)

そもそもの話、もしかしたらこういう記事を読みあさっている就活中の学生がいるかもしれないですけど、理系文系はナンセンスだと嘯きながらもこういう話になると平然とその文脈に乗っかる連中の言うことなんて、あまりまともに聞いてもバカをみるだけですよ?
良いプログラマーであり続けたいのなら、それぞれが必要なことを必要なだけ勉強する必要があるっていう、それだけです。

プログラミングに数学が必要かどうか? じゃあ試しに勉強すればいいんじゃないの?
アルゴリズムを知っていた方がいいかどうか? 知ってて損はないんじゃないの?
文学的素養が役に立つか? じゃあなんか読んでみれば?

雑な質問で他人に保証を求めるのはやめよう。自分の経験を他人に押し付けるのをやめてちゃんとコミュニケーションしよう。

ちなみに技術力は基本的に才能 × 熱意 × 時間なので、才能も熱意もある情報系卒がかなりヤバイ級なのは言うまでもないですね。

まとめ

プログラミングに限らず、勉強しない奴はしないなりのことまでしか出来ないよねっていう。ただ、それなりのものだけ求められる環境で満足して、本人もまわりも幸せでいられるならそれでいいんじゃないんですか? 僕は、そういう人たちしかいない環境で他人のケツを辺り構わず叩いてまわれるほどエゴイストにはなれないようです。

そもそも僕がプログラマーになった理由って職を探していてなんとなく思い浮かんだみたいな*3不純な動機だったんであんま意識高いこと言えないんですよね。でもまぁ女にモテたくてギター始めたギタリストも沢山いるんで問題ないですね?

そんなわけで、雑な感じになったけどみんな変にプログラミングにハードルを感じないでやってみると楽しいよ! 始める分には文系でも関係ないから興味あるならやりなよ! っていう感じです。数学だなんだという基礎教養だとかは、ハマってから考えればいいじゃないですか。遅延評価しましょう。

少なくとも僕は日々成長しているので過去に自分の書いたコードを見るとクソすぎて吐き気がしますし序文だけチラ見して投げ出してたSICPも明日から真面目にやるので許してくださいお願いしますなんでもしますから

似ているエントリー

hachibeechan.hateblo.jp

*1:そんなんじゃなくてもモテないです

*2:大学の4年間は濃いけどね

*3:今ではそれなりに入れ込んで時間も投資してますけど