「プログラマー」と名乗っている人をあんまり信用しないほうがいいというのはよく言われる話だが、最近そのことを痛感している。今やってる仕事の一環として、「ほかのプログラマーにプログラムを書いてもらって、それをレビューする」という作業があるのだが、この「ほかのプログラマーが書いたプログラム」というのがひどい。クズみたいなプログラムばっかりだ。
ってな、黒夢の『C.Y.HEAD』という曲の歌い出しですけど、最近この部分がぐるぐるぐるぐると頭を回るものだよ。
ええ、わかってますよ。仕事相手の悪口を公的な場で言うなんて、問題があるって言うんでしょう。まあ、それもそうなんだけど、たいしたプログラムも書けないくせにプログラマー名乗ってる奴らに本当に腹が立つからせいぜい堂々と書きますよ。
「忙しくってコードの質が下がってる」っていうような事情もあるでしょうが、まともに納品が出来ないなら仕事なら受けるべきでないわけだし、ビジネスの世界は「結果責任」を負うものですから、「事情」なんてのは知ったこっちゃないね!
……っていうふうにね、「仕事」というのは基本的に「事情」を無視するものなんですね。だから基本的にはあんまり僕は「仕事」が好きじゃない。とはいえ、今いっしょに働いている人たちはかなり「事情」というものを意識していて、おかげでそれほど辛くはないんだけれども。ただ「ほかのプログラマー」みたいな、外部の人たちは、事情を共有することができないので、「あー! クズみたいなコード送ってきやがって!」ということにしかならない。「事情」を共有できるような、近しい距離の人たちとのみ、仕事をしていたいものですよ。
で、そのコードがどういうふうにダメなのかというと、主に2つの側面がある。
【1】文法が正しくない、プログラムが読みづらい
【1】はもう、そのまんま。文法がおかしいとか、同じ様な処理をコピペで5回かいてるとか、1メソッドが長すぎる上に変数が"hoge"とかでわかりにくく、意味を取るのに困難があるとか。「こんなプログラムに金を払わなければならないのか……」と思うとめまいがする。何せ、それを「まともなプログラム」にレビューするのは僕なのだ。で、その作業に対してお金は一銭も入ってこないのだ。
不具合・先祖返りなんかは誰にでもあるミスだし、それを点検するために僕がチェックしているわけなので、そのあたりはいい。しかし文法の狂っているプログラムを修正するというのは、時には全体を書き換えなくてはならなくて、非常に労力である。それに、受け取ったコードは「ほかのプログラマー」さんの「成果物」であるので、あまり手を加えすぎるわけにもいかない。それが「仕様書」をもとにしたコードの場合、あまり修正するとクライアントに「自分はこんなこと言っていない」と思われてしまう可能性もある。だいいち、こんな作業にあんまり時間をかけたら、ほかのもっと大切な作業をする時間がなくなってしまうのだ。こういった様々な事情を考え合わせ、うまいことバランス取りながら、修正の妥協点を探していくわけだが、これはとてつもない頭脳労働である。疲れる。
【2】は例えば、「バリデートチェック」のためのコードなのに、「intは2バイト」ということばっかり書いて来るとか。「intは2バイトはわかったけど、いつからバリデートチェックになるのだろう」と思って読み進めても、最後までintは2バイトしかチェックしていない。依頼主であるからSIerは、そんなプログラムに金を払いたがるだろうか?
もっと具体的な例。ゲーム会社が、「我が社のキャラクタ版権を利用して、凄く売れるSNSゲームを作ってくれ」と依頼してきたとする。プログラマーが打ち合わせに行くと、企画者は「動的フラッシュも使って、100万ユーザーが遊べる。。。」という話を延々とする。プログラマーは「了解しました」と言って安請負する。そのプログラムはメイン処理だけで1000行というもので、memcachedの「mem」の字もないし、「オブジェクト指向」といった概念も勿論ない。これでは仮にSNSゲームがリリースされたとしても、100人さえも遊べない。
このくらいならマシなほうで、ひどいのになるとフリーランス会社から紹介されたプログラマーで、「SQLはselect文くらいしかやった事がない」とか平気で送りこんでくる。たった一人で。
また、意味のないコメントも多い。ループ処理に、「イントのiに3を代入する」と書いて、何の意味があるのだ? せめて「処理速度改善の為にIntegerは使わずにプリミティブのintを使う!」というふうに書くのが本来だと思う、まぁ嘘なんだけど。だって、そんなコメントみて、「なるほど」って誰が思いますかね?
コメントには必ず「目的」というものがあって、次にソースを読む人は処理の概要を知りたいのだから、「プログラム」をそのまんまコメントにしてもダメなんですよ。そういう単純で、最も重要なことが意識できないで、どうして堂々と「プログラマー」なんて名乗れるのか知らん、と思うぜ。
一番、腹が立つのは「偽SE」ですね。「プログラムはだれでもできるでしょ、重要なのは業務知識でしょ!」みたいなのが偽SE。こういうのを本当に思っているのがいる。業務の画面遷移さえ理解してないSEがだよ。
上の例はさすがに大げさでも、「僕は、プログラムが好きでソフト開発者になりました」とか言ってまともにプログラムが書けない奴は、頻繁にいる。自分でサーバ建てろよ。自分で簡単なサービスつくる事もできないなら、向いてないから辞めてしまえ。
「オレはサーバエンジニアじゃないからコマンド打てない」みたいなね。
世も末だ!
ここに挙げたのは「最低限」のことで、「より読みやすく」「より自然に」「より美しく」というところを、自分の能力の限界まで突き詰めてこそ、プロってもんじゃないんかね。もちろん時間や諸々の事情と相談してのこととはいえ、「26歳の若造が吐き気を催すような拙いプログラム」を送ってくる、30代40代のプロプログラマーってのはいかがなもんでしょう?
身の程を知れというか。
なんでプログラム書けない人がプログラマーなんかやってんだろ?
んで、なんでそういう人に「仕事」があるんだろうか?
身の程を知れよ。
自分の欲望ばっかり考えやがってね。
年金か家賃か考えるくらい困窮してるなら所得が基準を下回ってそうだから免除の申請をしてくれば?
そのまま放置だと2年したら追納したくでもできなくなるけど、免除申請してたら追納できる期間が10年に伸びる。(後から払う為の猶予期間が伸びる)
あと同じ期間払ってない場合、放置して未納よりも免除にする方が貰える年金額が多くなる。(免除期間はただの未納期間と同じではない)
とりあえず年金を貰う気がある&免除の要件を満たしているのであれば、免除にしといた方がお得。
「歴史が証明している」って言葉は、内容が「一般的に正しい」ことを主張してしまう。
過去にそういうことがあったということを根拠にするなら、この通り言えばよいだけの話なのに。
「具体的な過去に言及し、その問題を挙げ、対策を主張する」のが過去に学んだ主張というものだと思う。
仮に一般化できる事象であるなら、一般化できるという根拠を挙げねばならない。
そうでなければ、主張は「他者の勝手な思想」という枠を抜けることはできない。
親密な集団なら、それでも信頼を得られるかもしれない。
でも、思想を広める対象が広くなればなるほど、他者との距離は開き、思想を信じようとする心理的根拠は少なくなる。
たくさんの事実と論理を敷きつめて、それらの納得を機会として初めて、思想というのは導入されうるんじゃないのかしら。
そこがきっと、伝える側に回るときに、大事なのだね。
「ちゃんと仕事ができてるなら仕事をどういうやり方で覚えようが関係ない」と考える人は増田が思っているよりも世の中にたくさんいると思うよ。
「これだけ真剣にメモ取らなきゃ人並みにできないのならそれはして当然の事であり、その人のメモを取るという行為は努力しているとはみなさない」と考える人もね。
この人は何者なの? なんか、常連さんなの?
どんなに頑張っても仕事の内容を記憶することが出来ないから、一人だけメモ取りまくってる。
普通の人はそこまでメモは取らないと思う。でも僕はADHDで、記憶することが出来ないから、その分人よりも努力してメモを取り続けないといけない。
でもみんな困惑してるんだろうなぁ。
彼らにとって『記憶することが出来ない』というのは『甘え』で、一生懸命メモを取るというのは『努力』で、
その要素が一緒くたになった僕を『甘えているのか努力しているのか分からない、よく分からないもの』として見ているんだろうなぁ。
具体的な数字で言うと、現在の技術なら小麦でもコメでも1ヘクタールから10トンくらいとれる。
ジャガイモやサツマイモとコメ小麦は水分量が違うので重量での比較より乾物量やエネルギー量で比較するべき。
たしかに芋はコメや小麦に比べてエネルギー量でも多いのだけど、貯蔵性が悪いため主食にはしにくいのと、連作障害が激しいので難しい。
「支那」が仮に差別語であるとしても、「中国」と呼ぶことが適切であるとも思えない。
日本のような周辺国の立場からすれば、かの国を「中国」と呼ぶことは、
かの国を中華とし、自国を夷狄とする華夷秩序を容認しているような語感がある。
いや、機械化して
1ヘクタールから10kgの作物が獲れるとして、それを2人でやっているのを0.1人で出来るようにしましょう。
という話だと思うが?これは、なんというのだろう。
クラウドは言葉通り桁が違うよ。比較検討の場所に立たれたら勝ち目ないね。無理すれば対抗出来るレベルじゃない。早さも安さも。
個人的には人を育ててお客様へ高品質のサービスを提供しますってだけの会社はこれからは駄目だと思う。
黎明期の今はまだ、他所にデータを置くのが嫌、カスタマイズ性が低い、囲われたくない・・・etcという理由で敬遠される傾向もあるだろうけど、仮想化やネットワークの技術が向上してクラウド環境が今のインターネット環境のように当然のインフラとして定着すれば、逆にクラウド化しない理由がなくなるからな。
世界中で通貨の切り下げ競争をやっていて、日本ですら、民主党政権が去年の9月に円売り介入をやらかした。
おかげで、通貨や、それを通した株式や債券といった、比較的資金吸収量の大きい道具が、それぞれ、国内資金だけで支えるようになっていっている。行き場を失ったお金は、コモディティに流れ込み、純金や原油や小麦といった商品相場において、結果的に高値を作り出している。
それらの相場は、高値になれば、それまでコストがあわなくて放置されていた鉱脈や油田が操業を始めるし、荒れ野が開拓されて小麦やコーンや大豆の作付けが行われるので、供給量については、心配する必要はない。
先物を売ったのに、不作で納品できないという生産者や、先物を買ったのに不作で納品してもらえないかもしれないという実需家の契約不履行リスク、仕方がないので差金決済をしようにも、相手が破産していてとりっぱぐれるという信用リスクは、旱魃や水害の直撃を受けている畑の所有者や、それと取り引きしてしまった実需家にとっては重大なリスクであるが、価格の上昇による需要の減少と、その他の地域における生産余力が、結果的には、市場の需要を満たすのである。
つまり、コモディティにおける価格の上昇は、需給バランスによるものではなく、通貨の切り下げによるモノであって、小麦の売り渡し価格の上昇率18%というのは、民主党政権になってからの、日本円の本来の価格からの切り下げ(円安誘導分)であり、日本円の信用毀損分に等しいと考えられる。
ちなみに、この冬の暖房用灯油価格は前年比18.7%の値上げであった。円売り介入や経済に疎い政治のせいで通貨価値が切り下げられた分だけ、相対的に物価が上昇し、庶民の生活を直撃するのである。
通貨価値の切り下げは、物価の上昇に繋がる。日本ですら18%上昇しているとなれば、外貨準備が貧弱で、スポット契約主体で物資を手配し、輸出の為に通貨を意図的に切り下げている後進国・中進国において、食料や燃料といった生活必需品が高騰するのは当然であるし、政治を批判する暴動が発生するのも、必然と言える。
日本が去年の9月に円売り介入をした事によって、日本円は、ラストリゾートとしての信用を失い、その他の通貨と同列の信用度に見られ、本来の価値よりも、18%割安になっているとも言える。今の経済に疎い民主党が政権を握っている限り、日本円の通貨政策に対する信任はかえってこないであろう。
日本円が基軸通貨になることを避けるというアメリカの意向から、国債格下げのアナウンスによって、当分は、米ドルとペッグしたかのような動きを見せると思われる。
産業構造を改革し、新製品・新技術を生み出せるようにしないと、アメリカの消費物価の上昇に日本も付き合う事になる。軍事的・政治的には日米同盟は磐石であるが、経済においてまで付き合う必要はない。
不公平感に限らず、いろいろな気持ちよくない感覚はある。あまりにも強すぎると、バネにもできず落ち込んでしまう。そういうことで何度も落ち込むことがあった。
そんなとき、よく幸せなことを考えると良くなるとか、世界にはあなたより不幸な人がたくさんいる、という助言は良く聞いてきたけれど、そういう話をされてもあまりすっきりしなかった。自分の気持ちと結びつかないような気がしていた。幸せなことも考えられなくなるくらい落ち込んでいるから大変なのだし、環境が違いすぎて現実感がないし現状に悩んでいるのに、その比較に何の意味があるのだろうと思っていた。たしかに幸せだが、それを維持したい、満足していないから悩んでいるのだ。傲慢なんだろうけれど、それで良い。それらの助言にはそのような傲慢さを吹き飛ばすような力はなかった。
だけど、宇宙のことを考えると、自分はいかに小さな存在であると実感できる。私を構成する原子にも満たないのではないかと思える。私は宇宙の中ではミジンコなんだ。大きくなったけど。
その歴史を考えると私がいくら悩んだところで、一生掛けて落ち込んだところで、宇宙の歴史から考えれば、たいして違いはないんだと思う。