使いこなしてないAと使いこなしてるA

二個目、Bの間違いじゃない?
って一瞬思いそうですが、Aです。両方ともAです。

同じAですが、まるで別人のようです。。。

あるあるマンガ

ちょっとおもしろいショート漫画を見つけました。

The problem is not the tool itself | CommitStrip

MySQLが遅くて限界だから、NoSQLにしようと。
ちょっと待って、Index貼ってみるね。
あっ、20倍速くなった。。。

目の前の道具、ちゃんと使ってる?

似たような話、リアルで現場にあります。

別に NoSQL はそれはそれで必要な道具です。
それが向いてるケースもたくさんあるし、
RDBとハイブリッドで使う現場は幾らでもあります。

って、今日はそういった議論をしたいわけではなく、
焦点は...

目の前の道具、使いこなしてますか?

ということ。

その別のツールも使いこなす?

「使いこなしてないMySQL」と「使いこなしてるMySQL」

つまり、

「使いこなしてないA」と「使いこなしてるA」
そこから生み出される価値には大きな差があります

...
...

「使いこなしてないA」で問題があるから、
別のツール B を導入してみよう!

みたいな。。。

その流れ、とても不安です。
その B も、使いこなすことができますか?
別の場面で、その B に対して同じようなことを
言い始めたりしませんか?

すると今度は B が、かわいそうです...

こなす、ってほど大げさでもない

もちろん、完全に使いこなすのは大変だし、
完全に使いこなす必要もないだろうとは思います。

要は「程度の問題」です。

だから議論が難しい。
一般に、程度によって結論が変わる類いのものを
議論することはとても難しいことです。

例に出た、MySQLのインデックスの話は、
RDBに対してほんの少し突っ込んで学べばわかること。
ちょーど、こんないいブログが。。。

サイバーエージェント公式エンジニアブログ:
 -> MySQL初心者に贈るインデックスチューニングのポイントまとめ2014

漢のコンピュータ道
 -> OSC広島と中国地方DB勉強会に参加しました。

基本的なチューニング問題を解決できずに、
新しい道具を連れてきても、
先行き不安に感じても不思議ではないでしょう。

実際は複雑でも、結局は...

まあ、ここまでわかりやすく単純過ぎるケースは、
それ自体あり得ないだろうと思うかもしれませんが、
マンガとして複雑な要素を排除したわかりやす過ぎる
モデルにしたに過ぎないでしょう。

実際はもっと複雑で、雑音的なセオリーも多く、
パッと理解するのが難しかったり、
何が論点かはっきりしないケースが多いでしょう。

しかしながら、複雑にカモフラージュされていても...
「よくよく考えると、Aを使いこなしてないだけ」
なんて、ケースが多いのです。

そう、この二人の A は、全くの別人です。

立体的なセオリーを導く

導いたセオリーから A が限界と言えるなら、
そのときは遠慮なく B でしょうね。

o そもそも、そのビジネスに合わなかった
o もしくは、その役割を終えようとしている
o というか、使いこなすつもりがなかった (今後もない)
o ...などなど

そのセオリーはとっても立体的になるはずです。
様々な選択肢を見つけてシミュレーションを繰り返します。
それで出た答えが B ならば。。。

ちゃんとしたねぎらいの言葉をのせて、
A を気持ちよく送別してあげましょう。
そして、B もしっかり使いこなしてあげてください。

...
...

でも、もしかしたら、
その B ってのは、使いこなした A なのかもしれません。
AとBをハイブリッドにしたのが、Bなのかもしれません。

60億分の1を決めてるわけじゃない

ツールの選定というものは、
非常に多岐にわかる要因から導き出されます。

今のその状況、その組織、そのビジネスに向いているかどうか?
を議論しているのであって...

「どっちが強いのか?」

って、世界最強を議論しているわけじゃないです。

道具ドリブンで強い方を選ぶわけじゃなく、
要件ドリブンでフィットする方を選ぶもの

なので、マンガのような本当にそんな単純なものじゃないし、
逆に、A の機能でその問題が回避できるからといって、
B のセンがなくなったわけでもないでしょう。

よく勘違いされるので、しっかり書いておきますが、
将来のスピードのためや土台構築のためなど、
とある道具を使うこと自体に意義のある場合は、
それはれっきとした「要件ドリブン」です。
道具自体がちゃんと要件を持っている。
そういう道具を作れるようになりたいですね。

そのとき、その状況で何を大切にしているのか?

...
...

ぼくらは、
「技術者として使いたいと感じる道具」と、
「ビジネスとしてそこで使うべき道具」との狭間で、
葛藤しながらも仕事人としてバランスをとって、
ビジネスの成功に貢献するのです。

...
...

# jflute自身への戒めとして、こうブログに書いてみました。
# 仕事人のアーキテクトとして見誤らないようにと。