はてなキーワード: Fizzbuzzとは
テキストの説明が理解できないとき、学習者がすべきなのは自身の理解を正すことであって、自己流の解釈を思い付くことではない。つまり、
といったことをすべきなのであって、自分の腑に落ちるQiitaの記事とかを探すことは、全く理解に近づいていない。むしろ遠ざかっている。
というか、「明らかに分からない用語などがあるのに、そこを回避して全体を理解しようとする」のは、プログラミングに限らず勉強法として根本的に間違っている。
かつて、どうしても「コメント」の意味が理解できない新人がいた。
要するに彼は、プログラムの処理に関係の無い機構が存在する意味が理解できなかったらしい。
「コメントは、コードでは表現できない実装の意図をソースコード中に記述するときに用います」
などと説明してみても、
... // 15の倍数を先に判定しないと、たとえば15がFizzになってしまう if (n % 15 == 0) { return "FizzBuzz"; } else if (n % 3 == 0) { return "Fizz"; ...
「コメントは、処理をコメントアウトしてデバッグするための機構である」
と言う結論に達したようだった。勿論、普通のプログラマなら誰でも知ってるように、そういう使い方は良くない。
「プログラミング言語のあらゆる機能が、プログラムの何らかの処理と対応している」
という誤ったメンタルモデルを正すことである。それを放棄して、自分にとって都合の良い出典不明の情報を鵜呑みにしたのが、そもそもの間違いである。
こういうことは、何も新人に限った話ではない。自分では一丁前のつもりのプログラマにも、ライブラリ等の全く見当違いな使い方をしてくる奴がよくいるのである。
そういうのは、自分の経験のある別の言語の○○という機能に対応している、と勝手に思い込んでいたり、あるいは、実装とセマンティクスの区別ができず、インタフェースのような処理と直接関係ない機能が理解できなかったりする。
要するに、不明点を正しく理解することを放棄して、自分に都合の良い解釈を得て早合点しているのである。
そういう人はプログラマには向いていない。
人工知能で詐欺まがいなことしてる香具師に引っかかった、という話をこれからしていく。この記事は「人工知能ば詐欺だ」ということでなく、「詐欺師は人工知能を使いたい」ということを語る。
もう10年ぐらい前になるのだけど、人工知能には色々あるのに「深層学習だけが人工知能」だという無勉強な馬鹿に引っかかったんだよ。本当は人工知能なんて LISP から始まって、色々あって今の AI につながるているのに、その歴史は全く無視してね。Python のライブラリでどうにかできないものは不要とのことなので、「ふーん、そうなんですか」ぐらいで対応してた。なぜなら、自分は人工知能にAPIを叩いてブラウザに表示する部位を担当したからだ。
その会社にはエンジニアがいないので、人工知能とデザインを除いた全てをほぼ自分だけでフロントエンド(当時はFlash)からバックエンド(Django)とデータベース、クラウド部分を設計・開発・運営をやることになった。それは慣れてたから良いのだけど、ひとりでぼちぼちやるのは変な感じだった。ホームページには10名近い社員がいます、とのことなのに。
この理由はなぜなのか理解できたのは、インターンがやってきてからだ。そいつは結果を出せないから有能な人がやってこないのた。それで社員数を水増しするためにインターンを社員としてカウントしていたのである。なんとインターンの無給の学生ばっかり声かけて、ただ働きさせて「成果は自分のもの、ミスは能力のない学生のせい」みたいな畜生の極み、のようなことをして糊口をしのいでいる自称『天才』に俺は捕まってしまったのにここではじめて気がついたのだった。信じられないことに。
それで、ついに API をつないで一つのシステムにしましょうという日が来た。なんとか力量で解決したのだけど、はじめて彼のソースを見せてもらったときの衝撃度ときたらね。驚いたよ、スカスカのコード過ぎてね。おかげで深層学習がライブラリを使えば簡単にできるのも学んだけのだど。
閑話休題。
まぁ、コードを書くのが本業でない人だから良いか、と思ったらなんと、Python 教室を開くというじゃないですか。それで、成果をサイトに掲載するのですよ。自分のコードは絶対に載せないのに、他人のコードを添削して「弊社は実力があります」みたいな事例にしていたのですよ。驚いたことにね。
なぜ、そのような香具師が存在できたのかというと、「人工知能は効果判定をしにくいけど、将来的にはメリットになる可能性が高い」という計算機科学の領域では珍しい特性を持っているのよね。ほら、業界人にとってブラウザやデータベースといったものは、ちょっと触ったら特性が感覚的にわかるじゃないですか。そこが人工知能はちょっと違う。
もちろん人工知能は世の中に必要不可欠なものになるのは間違いないのだけど、というよりも現状でもスパムメール判定やゲームでは活躍していますけど、おそらく個人がどうにかできるものではないのよね。理由はこれ以上はアルゴリズムの向上が困難で、高コストな専用ハードウエアを扱える資本家に対抗する術を個人が持てないという限界と、教師あり学習のような判断基準の元になる資料をどう収集するのかという問題点を解決した人や組織が皆無という状態にあるからなんですよ。特に最後の部分は未だに twitter レベルの組織ですらやらかしているので、まだまだ難しいと思われます。
学習の根拠になったもの自体をどうやってキレイなものにするかということすら、データサイエンスという学問が出てきて苦労しているのですから、ユーザーエンドからしたらこの領域は未だにキャズムを超えていないと判定されるのは仕方がないことなのでしょう。それは、そういうもんだから良いのですよ。将来的には解決される可能性が高いでしょうし。
それでですね、やっと本題に入れるのですけど、問題点は「人工知能は効果判定をしにくいけど、将来的にはメリットになる可能性が高い」という非対称性をこの領域は抱えているのですよ。これはですね、バイオ(健康食品・代替療法)や金融商品(暗号通貨・バイナリーオプション)なんかに出てくる胡散臭い「何しているのかわからない」香具師が介入しやすい環境なのですね。それっぽいことを言って、専門家なら絶対に言えないコミットメント(金融だと「100%絶対に儲かる」とか)を宣言し、私はアメリカの有名大の(別領域の) Ph.D. を持っています(嘘)、日本はゴミです、さあ皆さん『人工知能で夢』を叶えましょう、なんていうクサい台詞を(非技術者向けの)講演会で語るやつがいるのです。残念なことに。
でも、皆さん、ちょっと考えてみてください。なんで(トーシロ限定で)講演会なんてする必要があるのかと。人工知能の世界で講演会をして資金集めをする、っておかしくありませんか?OSS で有名なコミッタだったり、インパクトファクターのつく雑誌に名前がのるような人材がですよ、この御時世にわざわざ資金集めする必要がありますか?世界中から「金を出させてくれ」といって金がわんさか集まってくるに決まっているじゃないですか。逆に、プロを避けるような人物に金を出したいと思いますか? よって、(トーシロ限定で)資金集めのための講演会なんかをひらくような残念な人工知能開発者が金を稼ぐことはありません。同様なケースに遭遇したら、出資したら泣き寝入りすることになりますよ。
※ この記事はアキネーターの下りがクソです。もう少ししたら自分の言葉で書き直します。ただ、この記事を消すことはしないです。これ技術的な話をしているようにみせてますが、わかる人にはしっくりくる符牒のつもりで書いています。
うん、でも、わたし講演会でその人のつくった人工知能が動いているのみたよ、まるでアキネーターみたいな、というのでありましたら「良いものを見ましたね」とこたえますよ。あれは良いものです。実はアキネーターのクローンは今だと学生レベルのスキルで作れます。具体的にのべますと、なにかテーマを固定して、そのテーマに関係する情報を片っ端から集めて、Python のライブラリを使ってデータ処理を行い、機械学習のライブラリを介して5段階の入力に対して適宜返せるような状態に持っていき、Rails/Laravel/Django で HTML を吐き出すようにして、ウェブ・ブラウザで Vue/ReactjQuery に呼応するようにすると計算機科学ができる人だと作れちゃいますし、見た目を重視したければ美大生にでも声かければ、似たようなキャラを描いてくれることでしょう。
この程度だと、二人の学生を無休(給)のインターンにやらせて、詐欺の商売道具をただで作れます。これは、アキネーターは駄目だとは言ってません。説明すると長くなるので省きますが、あなたを騙す道具を作るのにプロは要らないと言っているのです。
それで話を続けさせてもらいますが、哀れな学生は酷使されたうえに、会社のサイトに「インターンの思ひ出(検閲済み)」を実名で掲載されるという、デジタルタトゥーを刻まれるのです。かわいそうに。
※ ここを疑え、というポイントを追加。
これだけでは済みません。詐欺の道具はこれだけでは不足しますからね。本は良い権威の道具になりますよね?そうなんですよ、出版社の知識のない馬鹿共が「学生だけが書いた技術書」(前書きと終わりにだけを本人が書き、しかも自著として講演会で提示するという狂気の書)を出しやがった。これ、マジで有名出版社がやらかしたので驚いたよ。
で、こいつもう一冊も本(これまた共著なのに、自著として講演会で使うイカれた書)を出してるのよね。まぁ、読んでみたらあまりの頭の弱さに感動したのだけど、驚いたことにこの本を出典として Wikipedia に何度も記載しようとチャレンジするキチガイ(本人かは不明)がいたのよ。もちろんリジェクトくらっていたのだけど、ビビるよねー。繰り返すが、人工知能が悪いのじゃないのですよ。人工知能を使って、投資家を騙そうとするのが許せないのであって。
ちなみに、わたくしはそいつにコードの添削されたのですけど、おそらくそいつは FizzBuzz テスト、クリアできませんよ。なぜなら、If/Else がかけないのではなく、四則計算のミスが酷いので。チューリングテストは通るとおもうけど。どうして、大切な投資家向けの資料なのに単純な数値が一致しないのかわからないのですけど、何故か数値の足し算がおかしいことが多すぎるのよ。数値が一致しない、ってヤバすぎるだろ。それ、多分病気だから、哀れに思った(元)奴隷ちゃんたちは、病院へ行くように諭してあげてください。きっと、逆上するでしょうけど(笑)。
えっ、なんでお前はやんないのか?って、そりゃ「めちゃくちゃそいつのこと恨んでいるから」に決まっているじゃない。オレは、そいつを救えるほど、冪等な人間じゃないんだよ。だって、オレは天然知能だからな。
p.s. 多分、この記事で言及している人物の被害にあった方はは多いので、「アイツだろうな」とわかるように書いてあります。「アイツってどんな人?」と聞かれたら、説明するのが辛いでしょうからこのページをさっとみせられるようにこの記事を書きました。私も辛いのです。10年フラッシュバックに悩まされてきました。ただ、これ以上の犠牲者が出ることが耐えられなくなり、今回この記事を書かせていただきました。この記事で言及している人物は専門ではないのに人工知能・情報工学という餌を使って、相変わらずボニーアンドクライド気取りで若者を搾取しています。ソーシャルエンジニアリングを使われると、若者はかんたんに騙されてしまうものです。かつての自分がそうだったように。世の中にしなくて良い苦労はあるのです。
コピペチンパンジーはFizzBuzzを知らないしたぶん解けない。
この知らないというのが本当にヤバくて、普通プログラマとして飯を食ってたらFizzBuzzくらい知ってるじゃん?
解いたことはなくてもなにかしらの技術記事で触れたりするじゃん?
知らない。
コピペチンパンジーなんだから人間よりググってるはずなのになぜ…?
0から100までの数字を表示する。3で割り切れるならFizzと表示する。5で割り切れるならBuzzと表示する。3と5で割り切れるならFizzBuzzと表示する。
と言われたらたぶん実装してくるし、それで動くからOKを出してもらえる。コピペできるから。
でもこうだと実装できない。
1から999までの数字を表示する。5で割り切れるならDogと表示する。7で割り切れるならCatと表示する。5と7で割り切れるならBirdと表示する。
「自分で考えて作ってみる」ことが、コピペチンパンジーは、マジで、できない。
コピペしてからキーボードを叩くので、猿が書くシェイクスピアより人間が書いたっぽいものに仕上がっているだけなのだ。
プログラミングで何かを作る際には、当然だけど厄介で難しい部分があって、所謂「自分しかメンテできない」状態のコードがどうしても出来上がってくる。
それじゃ困るので、コメントもひときわ丁寧に書いているし引き継ぎ資料も作っている。
たまにマンツーマンで教える必要があったりもするが、ちょっとイケてるプログラマが相手ならばバトンを手渡すことができる。
彼は「誰でもその箇所を引き継げる」ことを、努力目標じゃなくて達成すべき項目と考えている。
いや、無理でしょ…。
厄介で難しい箇所は、どう噛み砕いたところで、厄介で難しいから、厄介で難しいのである。
突破するために必要なのは「知っているか、知らないか」ではなくて「考えられるか、考えられないか」なので、
いくら知識を残したところで、人間にはできるがコピペチンパンジーにはできない。
ましてや普通レベルのプログラマでは手に負えない箇所を、どうしてFizzBuzzを知らないコピペチンパンジーが…。
「いや、無理でしょ…」が今のPLには不誠実な態度に見えているようだ。自分しか知らない情報を独占している、と受け取られている。
他の人に教えているのはノーカンらしい。
コピペチンパンジーを差別していると言われてしまえばそうかもしれないが、でも、コピペチンパンジーはマジでコピペチンパンジーなのでマジでどうやって教えてもいや、無理でしょ…コピペチンパンジーだから…。
こんなことを言っている連中のうち、大学以降で学ぶ数学を理解してる奴は1%にも満たないだろう。残り99%強は以下の2種類に分類されると思う。
前者は、たとえばフェルマー・ガロア・ラマヌジャン等の「逸話」が好きなだけとか、「数学の○○という分野が✕✕に応用される」みたいな話が好きなだけな奴である。
こういう連中は数学に限らず、どこにでもいる。プログラミング等の具体的なスキルは無いが、技術のトレンドを知ることでIT通ぶってるような奴。率直に言って、私はこういう奴が嫌いだ。
あとは、数学的な内容が全く無いわけではないが、「0.999... = 1になるのは不思議」とか「Fibonacci数列の比が黄金比に収束するのは神秘的」みたいな、どうでもいいようなことにいつまでも夢中になってる奴。
プログラミングで言えば、Hello worldとかFizzBuzzなどに、「感動」を覚えているよく分からない奴である。まあ、知能が低いのだろう。
後者については、まあ好きな人はそれでいいと思うが、単純に、私は全く面白いと思わない。
中学・高校入試などに出てくる図形問題は、出題者はまず間違いなく余弦定理などを使って答えを求めている。そのような問題のうち、上手いやり方を思い付くと小学校の範囲で解ける問題が出題されるわけだが、いい大人がそんなもんやって何が楽しいのか甚だ疑問だ。
時間 | 記事数 | 文字数 | 文字数平均 | 文字数中央値 |
---|---|---|---|---|
00 | 50 | 8172 | 163.4 | 47 |
01 | 34 | 6713 | 197.4 | 50.5 |
02 | 24 | 2463 | 102.6 | 47.5 |
03 | 14 | 4355 | 311.1 | 98.5 |
04 | 11 | 649 | 59.0 | 44 |
05 | 18 | 2582 | 143.4 | 51.5 |
06 | 18 | 1298 | 72.1 | 44.5 |
07 | 30 | 2498 | 83.3 | 46 |
08 | 45 | 6782 | 150.7 | 47 |
09 | 127 | 16087 | 126.7 | 74 |
10 | 190 | 24241 | 127.6 | 45 |
11 | 200 | 14174 | 70.9 | 39 |
12 | 162 | 14679 | 90.6 | 39 |
13 | 131 | 18071 | 137.9 | 48 |
14 | 189 | 11786 | 62.4 | 38 |
15 | 286 | 19275 | 67.4 | 33.5 |
16 | 160 | 16766 | 104.8 | 45.5 |
17 | 134 | 14349 | 107.1 | 46.5 |
18 | 124 | 10629 | 85.7 | 47 |
19 | 137 | 10528 | 76.8 | 34 |
20 | 115 | 14901 | 129.6 | 27 |
21 | 108 | 16669 | 154.3 | 40 |
22 | 102 | 17501 | 171.6 | 79 |
23 | 77 | 12122 | 157.4 | 52 |
1日 | 2486 | 267290 | 107.5 | 43 |
ミスターサタン(4), 発射台(4), 超サイヤ人(5), WinPC(4), 15歳(3), fortnite(6), 駆け寄る(4), FizzBuzz(3), 血統主義(8), シャーマンキング(4), PS5(26), トランス(14), 最高裁(13), クラウド(12), 性犯罪者(14), 実況(10), 不倫(35), 搭載(8), サーバー(12), 性交(10), はてな匿名ダイアリー(10), デカ(28), 主義(19), ヴィーガン(16), 黒人(27), プログラマ(11), 裁判官(16), プログラミング(20), 中学生(25), 白人(16), トイレ(38), アメリカ(52), ブサイク(15), LGBT(12)
■主義とはなんですか /20200612150632(33), ■なんJにお前らの悪口書いてあった /20200612005610(19), ■ぴょまいらのパソコンで一番好きなソフトなあに /20200611201328(16), ■件のクソデカはめちゃくちゃ面白いんだけど /20200612044010(12), ■俺はドラゴンボールが大嫌いだ。 /20200612010720(12), ■ツイステッドワンダーランドの爆発的人気が笑っちゃうくらい分からない /20200612105548(11), ■ロリコンやショタコンは恋したいんじゃなくて支配したいんだろ? /20200610132449(11), ■かわいいが正義なら悪でいい /20200612104221(10), ■anond:20200612005610 /20200612005756(10), ■この時代のアニメや漫画は肌が肌色で羨ましい /20200611222435(9), ■動物の種類に「ちゃん」を付ける時のOK/NG感は何が原因? /20200612132725(9), ■クソデカ羅生門のどこが面白いか教えてほしい /20200612085837(8), ■日本人のアメリカ好きはなんだろう /20200612100037(8), ■右翼バスに揺られ。 /20200612105506(7), ■こういう微妙な苦しみって /20200611111647(7), ■ /20200611210937(7), ■この世には /20200612064610(7), ■これ1回さっと読んで意味わかる? /20200612085617(6), ■富裕層相手にする仕事しててよく家上がるんだけどトイプードル飼ってる率異様に高い /20200612123605(5), ■平沢進のヴィーガンまとめみて思った事 このネット社会は主語がでかいのがスタンダード /20200612104647(5), ■なぜ子供同士の成功は良くて子供と大人の性交はダメって方向になるのか? /20200612144122(5), ■社給PC文化、なんとかならないだろうか /20200612155731(5), ■PS5はWindowsPC内蔵すればいいのに /20200612163756(5), ■anond:20200612005610 /20200612175034(5), ■定額給付金のお礼って誰に言ったらいいの /20200612183227(5), ■ディズニーランドに行ったこと無いので市民権が無い /20200612192837(5), ■恋愛コンプ拗れました。 /20200612202307(5), ■くら寿司鬼滅の刃キャンペーンで日本人に失望した /20200612205039(5), ■彼氏から可愛い可愛いと褒められる /20200612210827(5), ■多目的トイレというネーミングが悪い /20200612115326(5), ■体験しない人の謎 /20200612224643(5)
https://twitter.com/MAEZIMAS/status/1113114798672113665
一流の老害は「君たちこそが真のニュータイプだ」とか言って、若者を自分の既得権益確保のための鉄砲玉にする。
…いやマジ本当に、若い人気をつけてね。若者説教おじさんは、せいぜいまだ極限の不愉快ですむけど、若者応援おじさんに乗せられると最悪人生詰むので…
というツイートが流行っているので、私が遭遇した若者応援おじさんについて書こうと思う。
当時の私は親との折り合いがつかず、学力もそこそこあったし、勉強もしていたのにも関わらず大学に進学せずにフリーターをしていた。実家を出たかったし、大学にも進学したかったから金の工面が当面の目標だった。そんなときに出会ったのが若者応援おじさんのAさんである。Aさんはバブルの頃に就活をしていて、まだインターネットやパーソナル・コンピュータというのが流行る前から電子工作やプログラミングをやっていた人だった。実際、経歴を聞いてみると10回以上転職を繰り返しているものの、有名企業(今にして思えば、カビ臭いSIerだが)で部長をしていたことがあって、年収が1700万ぐらい稼いでいたこともある人だった。
最初に出会ったときは自分が如何にすごいかということを熱心に語っていた。80年台後半ぐらいのコンピュータ開発の大型プロジェクトに関わっていたとか、セキュリティの専門家とか、今までに触ったことのあるプログラミング言語が300個を超えるとか。でも、当時の技術的なトレンド(MongoDB、Ruby on Rails、AngularJSとか)についての知識が限りなく少なく、「フレームワークなんてその場で覚えればいい」みたいなタイプだった。中学生の頃にラジオ工作したとか、はんだごてで電子回路を設計したとか、そういう話は熱心にするのに、Bram Moolenaarの名前を知らなかったりした。要は、最近のプログラマがどういう関心やインセンティブでプログラミングやってるかを知らずに、過去の栄光を語ってるようなタイプだったと思う。
まぁ、それでも、その人のコネで中規模程度のSIerに入社して、そこそこいい感じの待遇だったように思う。当時の私の技術力は『わかりやすいJava入門』『たのしいRuby』を一通り終わらせて簡単な言語仕様を把握したぐらいでろくにコードも書いたことのないような人間だったから、定時で帰れて手取り二十万もらえるのは甘い汁を吸えたとは思うんだ。
でも入社を決めた一番の理由が、そのAさんが私の関心に理解があると思っていたからだ。というのも、当時の私は「人工知能や人工生命に興味があります。三年後に大学に入学するまでにプログラミングスキルを磨きつつ生活費と学費を稼ぎたい」ということを明言した上で、それを叶えてくれる会社を探していた。技術力はないものの、「自頭がいいから入社してからプログラミングを覚えればすぐに戦力になるよ」と複数の人間から言われていて、それぞれ就職先を紹介してもらえるような状況になっていた。今から思えば、そんなコードを書けない人間を自頭なんて胡散臭いもので褒めるような人間は信用してはいけないと思うし、口車に乗せられたと思うのだけど。そこは自分にも甘いところがあったように思う。あ、あと、補足しておくと、当時はDeep Learningなんていうのは全く人口に膾炙してなかった時期で、スチュアート・カウフマンや金子邦彦に憧れてたような、周回遅れの複雑系に魅せられた若者が私だった。
①親との折り合いが悪く、大学に進学したいが、金が足りない
②実家を出るために生活費を稼ぐ必要があったが、飲食のバイトとかではスキルが身につかない状態で、価値の高い若い時間を無駄にしてしまう
③そんなところに現れたのが過去の栄光を話す若者応援おじさんのA
④自分は殆どコードを書いたことのない業務未経験で、21世紀になっても複雑系の話に興味をそそられるような斜に構えたスノッブ
では、入社後の話をしよう。私が配属されたプロジェクトは80万行程度のJavaのコードで動いてるBtoB向けの製品を保守開発してるプロジェクトだった。やってることはGoogleやAmazonやMicrosoftみたいな大手ならやってるようなサービスの完全下位互換みたいなソフトウェアを、情弱だけど社員数は多いみたいな企業に売りつけるような仕事だ。国産とか、セキュリティとか、そういうよくわからない言葉を並べ立てて、海外のUIも洗練されていて、優秀なエンジニアが管理してるものをセキュリティ的に怪しいと不安を煽り立てて売りつけるようなやつだ。そんなクソみたいな製品でも年間5億円ぐらいの売上になるのだから、IT系って糞だなって思う。ネット上では優秀な人間ばかりがアウトプットしてるし、NDAの名の下に詐欺まがいのソフトウェア(今回の例なら無料でUIも洗練されていて、使いやすいサービス)が明るみにならないのだから、こんな国はさっさとスクラップ・アンド・ビルドすればいいのにって思うよ。IT化されてないのが時代錯誤で〜みたいな記事はネット上でもバズるけど、実際には10年前のスパゲッティコードを惰性と不安につけ込んで売りつけるようなSIerがたくさんある。そんで、そんな意味不明なソフトウェアを導入すれば、どこに何があるのか分からないUIの操作に大切な業務時間を奪われて、日本全体の生産性が落ちてしまう。ユーザーの時間と生産性を奪い、開発者にとっても技術的負債にしかならないようなソフトウェアを売りつけてる悪性腫瘍みたいなSIerはさっさと滅んでしまえばいいと思うよ。
まぁ、私が配属されたプロジェクトはそんな感じだ。まるで意義を感じないが金にはなってるプロジェクトに配属された。そのプロジェクトの根幹部分は一人のエンジニアが設計開発しており、そのエンジニアは既に退職して、どこに何が書いてあるのかわかってない人間が後任として保守を行っている。盲腸みたいに全く有難みのない機能を増やすことでより高く売りつけるようなプロジェクトだった。
そのプロジェクトの中にいる人について話そう。プロジェクトマネージャーは仕事漬けで毎月350時間ぐらい働いている60連勤とか当たり前で、常に酔っ払ったような、眠そうな目をしてる人だった。にも関わらず、同じプロジェクトの人間は仕事がなさすぎて業務時間中に関係ない談笑をしたりしていた。プログラマやテスターや文書作成をするスタッフが40人ぐらいいるところで、閑散期(機能追加のサーバーリリース前以外)は暇そうにしてる人が多かった。プロジェクトマネージャーを除いて。要は、PMは一生懸命働いているが、その一生懸命さは惰性で行われており、無能なのに業務時間が長いPMがいて、その人が全部仕事をやってしまう。他人に頼めない性格らしくて、存在意義が分からない業務を他人に頼んでは「なぜこんなこともできないんだ?」って怒鳴るのが生きがいみたいな人だった。頑張ってることがアイデンティティになってて、その頑張りに意味があるのか、必要なのかという吟味ができず、タスクを他人に振ることもできず、情報もそのPM一人だけが握っているから、周りの人も「私が仕事を請け負いましょうか」ということもできない。それで新入社員をイビるような存在意義のわからない仕事を振って、できなかったら人格否定をするような感じの。
私が受けた仕事ととしては、週に1回ベンダーのところに会議をしに行くんだけど、そのときの社内の資料を全部紙でプリントアウトして持っていくというのがあった。文書作成スタッフが製品の仕様をWordでまとめて、600ページぐらいのpdfにしたものが1500万円ぐらいで売れるらしく、その増えた言語仕様をプリントアウトしてベンダーのところまで持っていく。追加された仕様以外にも、今週やったテスト内容をExcelで纏めたものをプリントアウトしたりしていた。紙の量で言うと、一回の会議で2500枚ぐらいで、それをキャリーケースに詰めて客先であるベンダーまで持っていくらしい。聞いた話では、その2500枚の会議資料は殆ど読まれずに捨てられるのに、そのPMはベンダーにその慣習を廃止しようとは提案しない。ベンダーとの週一の会議の他にも、進捗報告を主とする社内会議があって、PM以外の人はあのプリントアウトする悪習は廃止すべきという話が上がっているのにPMが首を縦に振らないから一向に改善されない。まぁ、そのプリントアウトするのをやるのが私の仕事だったわけですよ。毎週4時間ぐらい掛けてWordやExcelの文書サイズとか調整してさ。元の文書のサイズや余白が狂ってるのに、客先に失礼だと言われて、手直しして、プリントアウされたコロコロコミック何冊分だよ? みたいな紙の束をホチキスで止めていくんだけど、ホチキスの止め方が汚いとやり直し。
じゃあ、なぜPMは頑なに意味のない業務をし続けて、それによって新入社員を使い潰そうとするのかと言えば、弊社の業績が悪くて倒産しそうだったときにそのベンダーが手を貸してくれたからそのときの恩義があるとかなんとか言っていた。だから、靴を舐めるようなことをするし、他人の生産性を奪うようなクソ製品を世の中に出して何も感じないらしい。読みもしない産業廃棄物を作り出して、それを無碍にされて喜んでいるような業務が、今の日本の何割を占めているのだろう? そのPMの口癖は「俺はプログラミングは全くわからないが、こんなプリントアウトの段取りもできないようなやつはプログラミングなんてできないと思うよ」だった。FizzBuzzどころか変数や関数すら知らないような人間にこんなことを言われるのは屈辱だったし、これが高卒未経験で就職することなのだろうと思った。
他にも、私が受け持った仕事に、製品が動くかどうかを確認するテスターという仕事があった。RSpecやSeleniumで自動化しようと言っても、そんな技術を持ってる人がいなかったから、一々自分でその製品を触って仕様通りになっているかを確認しないといけなかった。画面遷移が600ページのpdfになっているから、それを見ながら正しい画面遷移ができているかを確認する業務だったが、正直人間のやる仕事ではないと思う。画面遷移だから前のページから次のページに移行したときに前にどのページだったなんてスクショを撮ったぐらいじゃわからないのに、「このテストをExcelにした内容じゃ、本当にテストしたのかわからないだろう?」と言われた。言われたとおりにExcelファイルにスクショをひたすら貼り付けていたというのに。しかも、その他にも特定のファイルをアップロードするときにどの条件だとアップロードができないかを判別するテストをどうやって行うのか考えろというのがあった。今までにテスターをやっていた人に聞いても指針なんてないと言われ、「賢い人はそういうのを考えつくものだ。俺はパソコンに詳しくないが」とPMに言われ、嫌気が差した。
まぁ、ここまで書けば、如何にブラックと言うか、理不尽で不合理な職場かというのはわかったと思うけど、いい面もあったんだ。前にも書いたように、未経験の高卒が手取り20万貰えたのは嬉しかったし、研修のない会社だったから、最初の二ヶ月ぐらいは一人で勝手に勉強しててと言われたから、実働換算で時給3000~4000円ぐらい貰える計算だったのかな。一番瞬間時給が高かった日はメールの返答に20分ぐらい使ったときだったから、日給1万、実働換算の時給が30000円ぐらいになった。それぐらい放任されていた。
最初は社長が「君にはソースコードのUMLを書いてもらおう」とか言って、クラス図を書く練習をしていたんだけど、現場の人は「今更UMLなんて必要ない」「ソースコードを読めばわかる」と言って、全く必要とされていなかった。だから、業務とは関係ないTCP/IPやRubyやGitの勉強をしていた。家のことで勉強に対してモチベーションが落ちていた私は、金を貰えるという環境では目の前の勉強に集中できるようになって、元の勉強するための生活リズムっていうのか、そういうのを取り戻せた。それは当時の私にとっては有難かったと思う。
ここまでをまとめると
⑤無料で使えるサービスの下位互換といえるような、他人の生産性と金を無駄にするような製品を開発してるプロジェクトに配属された
⑥PMだけが忙しく働いて、周りの人の割り振りができていない。
⑧社会悪のようなソフトウェアを売りつけて金を稼いでいるプロジェクトだった。
⑨仕様書やテスト内容のプリントアウトという必要ない業務をしたり、指示内容と叱責内容が矛盾する理不尽を受けなければならなかった。
⑩しかし、勉強してるだけで月20万貰える環境は有難く、当時の私にとっては願ったり叶ったりだった。
では、次に私がその会社の入社から辞めるまでの経緯について書こう。最初のうちは、自分の勉強時間を取れていたし、振られる仕事も理不尽で意義を感じられないものであるものの、すぐに終わることが多かったから問題ないと感じた。それが徐々に仕事が増えていき、勉強時間が取れなくなっていった。
ここで若者応援おじさんAの登場である。Aさんは私と会ったときは有名企業に勤めていて、そこを辞めて私を紹介してくれた中小企業で働き始め、その数カ月後に私を紹介してくれた。元々、その会社の社長とは懇意にしていたから、一緒に働こうという話が何十年も前からあって、今回ちょうどタイミングが合ったから、その友人の会社の重役として就職したらしい。私が就職したのはその数カ月後だった。
Aさんは「何か問題があったら、部下や上司という立場を気にせずに忌憚なく言ってほしい」「俺は人を見る目はある方だ。君は一本芯の通ったところがあるから、周りに流されずに新しいことをできるだろう」「君には将来性がある」「俺は新しい会社でも権力を持ってるからへんなことを言ったり、したりしてる人がいたら遠慮なく言ってほしい」とかそういうのを入社する前に言っていて、まぁ、色々とおかしいところ、FAKE野郎みたいな発言が多かったけど、そこだけは信じてたんだよね。本当に騙すんだったら、そんなすぐに辞められるようなリスクを上げるような発言はしないだろうってさ。ちなみにFAKE野郎って感じたのは、一方的に自分の話だけをして、私が質問すると煙に巻いたり、私のことを買ってるという割には私の話をすぐに中断させて自分の話をし続けるとか。その人はFラン出身だったから、ちょっとインテリなことを言うと「君は変わってるね」って言ったり、きょとんとした顔で10秒ぐらい固まった後、すぐに自分の自慢話を再開したりと、決して自分の知らないことや分からないことを認めようとしなかった点だ。他にも、「私と働きたいと言ってくれていた会社はあったけど、そこは技術的に成長できそうだけど給料は月7万程度でバイトの身分だから、迷ってるんですよね。バイトだから自由時間は多く取れるんですけど」みたいな発言をしたら、鳩が豆鉄砲を食ったような顔をして、私が感じていた不安を取り合ってはくれなかった。Aさんは「俺は社内で影響力を持っているから、君を正社員にすることもできる」みたいな話を延々としてたのに、いざ蓋を開けてみると、「君の面接での受け答えが駄目だから、契約社員として雇用することになった」「あれから上層部に渋られてしまって、請負契約にすることになった」と話が二転三転していった。だったら、他にも選択肢があったのに、他のところに就職したのにと思ったが、自分の能力や経歴で負い目を感じていたから強く言うことはできなかった。高卒で就活するというのはそういうことだ。他にも選択肢があるのにも関わらず、どうせ労働に関する知識がないと足元を見られて、条件を徐々に下げられ、他に選択肢をなくした後で、悪い条件で働かざるを得ない状況になっていた。結局、勤務時間がタイムカードで管理されてるのにフリーランスとして請負契約を結ぶという偽装請負で契約させられ、もっと技術力を磨ける選択肢は潰されてしまっていた。
私は会社の問題点を丁寧に分析してpdfにまとめてAさんに送ったんだ。それが間違いだった。如何に会社がそのベンダーに良くしてもらったか、大変なのをわかった上で俺たちが会社を立て直してきたかということばかりを話していた。百歩譲ってそこはいいとしても、ベンダーとは関係なく職場環境を良くするための話までいい加減に聞かされてうんざりしていた。
「Aという問題があります。その背景にはBがあります。そのためにはCという解決策があります」
という話をしたときに、「Bぐらいみんな当たり前にしている。君だけ特別扱いすることはできない」みたいな返し方をされて、問題が発生してる事自体はないものとされていった。結局、職場にはびこる不合理で理不尽な業務やルールは改善することはなく、私への人格攻撃で終わってしまった。
毎日どうでもいい作業で疲れ切って勉強時間が取れなくなってしまった私は、最初に出会った頃のAさんの言葉を信じて、「私が本当にしたいことは、仕様書やテスト時のスクショをプリントアウトしたり、よくわからないテスターをやったりすることではない。このままでは、プログラマとしてのキャリアを積むための勉強時間を作ることもできないし、業務内でコードを書くこともないから業務時間を短くしてほしい」と言った。少なくとも、最初Aさんと会ったときは、「君には人工知能や Permalink | 記事への反応(1) | 23:52