目的を忘れた機能


15年ほど前の話なのですが、その当時、ぼくはあるWindowsアプリの開発を担当していました。ほとんどの機能はすでにできあがっていて一部の機能を修正してほしいという要望がありました。それが「ローマ字機能」だったのです。
 
 何のアプリなのかは書けませんがその機能を具体的に説明すると「ひらがなで入力された名前をローマ字にする」というものです。例えば「せきね」と入力されたら「SEKINE」と変換します。
 なんだローマ字仮名変換の逆だね。ローマ字から仮名に変換するのは難しいけど逆の場合は簡単でしょ?
 と思われた人も多いと思います。ぼくもそう考えていました。
「あ」→「A」 「い」→「I」 とテーブルを用意すればいいだけです。「しゅ」→「SYU」など小文字があった場合の対応もしないといけないですがそれもたいしたことではありません。
 
 プログラムはすぐにできましたが、クレームが来ました。「王」→「おう」→「OU」ではまずい、その場合は「OH」にして欲しい。でもそうなると「いとう」も「ITOU」ではなく「ITOH」でしょうか。なんだかわからなくなりました。そこで詳しく調べてみるとローマ字には大きく分けて2種類あるということがわかりました。
 
(ここまで読んで「なんだローマ字の種類の話か」と思ったあなた、まだ先があるのです。もう少しおつきあいください)
 
 ではどうするか。そこでぼくは次のようにしたのです。「いとう」と入力されたとき、「ITOU」と「ITOH」の2つを表示してユーザーに選んでもらうのです。「候補から選択する」というわけですね。
めでたしめでたし・・・ではないのです。
 
 根本的にこの仕様は間違っているのです。なぜならもともとこのソフトはひらがなでも英数字でも入力できるのですが、名前のローマ字がわからないときに使うのです。つまりローマ字がわからない人が使うのだからそもそも候補から選ぶことなどできないのです。
 
 世の中の機械やソフトにはこれと同じようなことがたくさんあるような気がします。

この記事へのコメント

2021年10月27日 12:25
ローマ字をあらかじめルールを選択させておけば、もんだいないような。
Koji
2021年10月28日 08:02
ローマ字自体わからない人なら、何をしても一緒、ってな感じですね。
フリガナもかな漢字変換があって初めて正しく機能する。

世の中の装置のUIですが、「慣れりゃ勝ち」的な論理を全く考えていない物が多いですが、元々正解がないので難しい。
2021年10月28日 08:48
kojiさん、おっしゃるとおりです。

この記事へのトラックバック