🙄

使うべきとか使わないべきとか、好きとか嫌いとかの話と技術選定

2021/09/23に公開

動機

https://www.kbaba1001.com/entry/2021/09/17/073149
https://zenn.dev/coder_ka/articles/275b551d662e35

最近流行ってるらしい。
思ったことを好きに書けるのがいんたーねっとのいいところだよな!

この記事で言いたいこと

色んな人がいるから色々な意見を発信してそれを見聞きすると思うけど、
どのような態度でそれらの情報を技術選定の参考とすべきか。

この記事で言いたくないこと

それぞれの記事 (あるいはそれの派生記事) の内容について、指摘が妥当とか妥当じゃないとか。

使うべきか使うべきじゃないかは何で決まるか?

解きたい問題とそれを取り巻く環境によって決まる。
これは間違い無いといっていいと思う。

つまり、使うべきか使わないべきかは、まず、そこで求められている要件を前提に置いて考えないといけない。
したがって、他の人が使うべきとか使わないべきとか言っているときに、そこで明示的であれ、暗黙的であれ置かれている前提を理解して自身の前提と照らし合わせる事ができなかったり、全くべつの状態であればそこでの意見を強く参考にすべきではない。

例えば、趣味プログラミングで使う前提の話を、業務における技術選定で参考にしてもしょうがない。また、何年も先を見据えた上での技術選定の話を今を生きることがすべてのスタートアップな環境で参考にしても仕方ない。(ことが多いとおもっている)

前提が不明瞭な情報をどのように活用するか

読む人の参考になるような前提条件を事細かに書いてくれる人はそれほどいないと思う。
もしかしたら、ある言語やあるライブラリを利用した仕事で、深く心に傷を負ってしまってそれを少しでも癒すために恨みつらみを放出しているかもしれない。
そんな人達に『もっと前提条件を明確に書くべき』とか『個人的なお気持ち表明はやめろ』とか言うのはあまりにも酷だし、それが許されない道理はないはず。

大事なのは、見る側がどうやって自分にとって有益な情報として受け取るかだと思う。

多くの場合、このような記事には『〇〇ができない』・『〇〇という制約がある』という内容が列挙されていると思う。
ポイントは、筆者は当然のように上記の事実を問題視しているが、それが問題かどうかは場合によって変わるということだ。
したがって、このような記述を見たときには、『〇〇ができない』ことによって『△△という問題が発生しうるな』という想像ができるかどうかが大事になる。

これが思いつけば、あなたにとっても同じように対象の利用を避ける積極的な理由になりうるし、思いついた問題を回避するための代替案が見つからなければ、結果として採用を見送ることになると思う。筆者に感謝して当該技術とは距離を置けば良い。
一方で、これが問題にならないとすればどのような代替手段や前提条件であればよいかまで考えが広がると良い。もしかしたら、その代替手段が用意されているかもしれないし、特定の前提条件では有用な技術であることに気がつくかもしれない。今は距離を置くことになるかもしれないが別のシーンで採用候補になってくるかもしれない。

問題が思いつかない場合は、この筆者の考える点はあなたにとってはなんの問題にならない可能性が高い。
一方で、筆者の指摘点についてよくあなたがよく知らない場合もある。そのようなときは新しい知見を得るチャンスをくれた筆者に感謝して知識を深め、指摘の内容によって認識していない問題が発生しうるかをよく考えよう。

最後に、筆者が対象の技術をよく知らない可能性がある。
もともと何かを知っていて、新しい何かに触れたとき、元々知っていたコンテキストでうまく扱えないと不満を覚えることが多いと思う。
それ自体は仕方のないことで、あとは、この先になにかメリットあると思って使い続けるか、使えないおもちゃだと判断して使うのを辞めるかも人それぞれ。時間は有限。
なので、読者が気をつけないといけないことは、その指摘がそもそも事実なのかどうかということを認識すること。

まとめ

  • 自分がどのような前提で指摘内容を考えるかを意識しよう
  • 指摘が事実かを確かめよう
  • 指摘がどのような前提で問題になるかを考えよう
  • 指摘がどのような前提で問題にならなくなるかを考えよう
  • 問題の前提が、理解できないとき・自身の前提に合わないときは参考にするのは避けよう

おわりに

やっぱり思ったことを発信できるのはいいことだよな!

Discussion