TMTOWTDI ~ 人生色々、プログラミングも色々 | 悪態のプログラマ

悪態のプログラマ

とある職業プログラマの悪態を綴る。
入門書が書かないプログラミングのための知識、会社の研修が教えないシステム開発業界の裏話は、新人プログラマや、これからプログラマを目指す人たちへのメッセージでもある。

IT 用語には、妙に耳に残る言葉がある。「WYSIWYG(ウィジウィグ) 」とか、「ユビキタス」とか。プログラミング関係では「ポリモフィズム」とか。

「GNU」などは、人によって発音の仕方がバラバラである。「グヌ」とか「ニュー」と読まれることもあるが、「GNU OS のサイト 」によると「グニュー」が正しいようだ(※1)。

略称を無理に発音させていたり、馴染みの薄い言語(ラテン語とか)に語源を持っているものなどは、日本人にとって変に聞こえるものが多いのではないだろうか。

そういった「変な言葉」に出会うと、ちょっと意味を調べたくなったりするものだ。


「TMTOWTDI(ティムトゥディ)」という言葉も、妙に耳に残った言葉のひとつだ。「There's More Than One Way To Do It.」の略で、「やり方はひとつではない」という意味である。

同じ機能のプログラムを作るにも、コードの書き方は色々ある。また、そうであるべきだという考え方だ。もともとは、Perl というプログラミング言語のスローガン(設計思想)である(※2)。

これは、コーディングの話だけではないだろう。例えば、サーバーの OS を選ぶとき、プログラミング言語を選ぶとき、「どれを選んでも同じことが出来ます」という状態は TMTOWTDI であるといってよい。例えば、.NET の世界の「クラス」は、C# で書こうが、VB で書こうが、C++ で書こうが、区別なく利用できるが、これも TMTOWTDI だろう。


IT の普及に伴ない、システム開発における選択肢の幅もかなり広くなった。開発者にとっては、自分が得意な方法を選ぶことが出来るのだから、嬉しいことではある。

しかし、喜んでばかりはいられない。職業プログラマは、自分の得意とするやり方だけで仕事が出来るというわけではないからだ。

例えば、他人のソースを読むときに、「このような書き方は知らないので、ここの処理が何をやっているのか分かりません」なんてのは通用しない。「VB しか知らないので、C# のクラスは直せません」なんてのも、通用しないのである。

技術者には、技術についての「好き嫌い」がある。それは当然のことだし、むしろ技術者としての情熱があるということで、好ましいことでもあるだろう。しかし、「嫌いな技術も使える」ということも大事なことなのである。


※1
「GNU」は「GNU's Not Unix」の略。再帰しているところにセンスを感じる。

※2
最近では、Perl は CGI のための言語だと思っている人もいるようだが、その歴史は WWW よりも古い。長年の人気を保っている秘訣のひとつが TMTOWTDI という設計思想だろう。


■関連記事
デザイナーの屈辱
豆腐とウィジウィグと私


■関連リンク
パソコン用語の読み方 (Haraday さん )
Linux の読み方奥村晴彦さん
TMTOWTDIの謎を探る(調査報告:単純さと複雑さの関係とは?)Kiyoka Nishiyama さん
・TBテーマ「ちょっと賢く見られるIT用語講座


[PR] Amazon で探す Perl の本
[PR] オレ流パソコン・IT 用語納得事典 2006年・2007年版