あるいは情強気取りの情弱。
××で大腸の宿便がごっそり! 痩せた!
とかいうサプリを、「これ、まじ、痩せるんだって!」と買い込む人をどう思うだろうか?
「あるわけねーだろ。バカじゃね?」
じゃないだろうか?
あるいは、「ほうしゃのーがっ! チェルノブイリがーっ! ツイッターで言ってた!」とかいうやつとか。
「ノーワクチン! ツイッターで言ってた!」とか。
「ちっと考えろや」という人が、プログラマーには多いのではないだろうか?
なのに、なぜ「××は〇〇の△倍の性能!」とか「これからは××の時代!」とかいうのは無批判に信じ込むのだろうか?
その性能差が実現するにはどんな前提、制約があるのか、確認しない。
それを導入した時のトレードオフがどれくらい致命的か理解できない。
導入してあちこちに障害、不都合が生じているのに、「Webにたくさん書かれていたから正しい」って障害、不都合が生じている方がおかしいと決めつけるとか、技術者を名乗る資格はない。
これからは関数型言語の時代とかいう言葉に踊らされて、手続き型のアルゴリズムを見よう見まねのHaskell写経みたいな関数型でプログラム組んで、性能は出ないわGC頻発するわ、障害調査も機能追加も、ソースを追いかけるのも一苦労な状態でいるのに、「古典的関数型がMust」「より素晴らしい状態になっているはず」とか、クライアントからレスポンスが遅いんですけどと言われてるのに関数型だからそんなはずないとか、頭悪すぎてうんざりする。
手続き型アルゴリズムも関数型でプログラムできるけど、そもそも処理自体を関数型で設計しないと全てにおいてネイティブに近い手続き型に勝てるわけがない。
問題は、ソース上で「速くなっているはず」とか「わかりやすくなっているはず」と思い込んでいるだけの現状だ。
現実を掘り下げる頭もない。
関数型プログラム(処理/思考)は、局面によってはMustだ。
が、関数型「言語」ではない。
中途半端なscalaz/cats使いなんてタヒんでしまえばいいのに。
本当のscalaz/cats使いなんてそんなにゴロゴロ発生するようなものではないし、そんな人が書いたプログラムなんてメンテ地獄だから業務で使うには危険度が高い。scalaz/catsでシステム組んだところがいいって言っていたとか聞き込んで、中途半端なのに自分も使えると思い込んだ人間が見よう見まねでHaskell風に書いたものはクソみたいなのに、「scala使うならscalaz/cats」とか、標準機能になってからにしてくれ。
そういう視野の狭い偏屈な連中のせいで、scalaが下火になったんだよ。
なんていうか、プログラムは組めても、システム全体を見ることができないのが増えているような気がする。
そして、その一文がCPUにどんな苦行を強いるか、イメージできないのが。
今関わってるシステム、書き直したら少なくとも3倍は性能出せるわ。