« サイボウズラボのブログ開始 | メイン | イベント + 地図 = 追っかけ支援サイト »

2005年07月25日

regist という英語は無い

さて、サイボウズラボの立ち上げプレスリリースが出たこの瞬間、とりあえずこのブログを見に来る人も多いと思われる。そんなチャンスに、このブログを読んだ人、特に日本のソフトウェア技術者に一番訴えたいことってなんだろう? と考えた。

それは、日本人プログラマーだけが使う謎の動詞 registについてである。そんな単語は存在しないから、ちゃんと "register" を使おう。

出てくるのは日本語のサイトばっかりである。拡張子を".jsp" や ".asp" にしても同様だが、とにかくこの「存在しない単語を使ったファイル名」のなんと多いことか。

register = 「登録する」 は、名詞でもあり動詞でもある単語だ。"-er" がついた単語は「○○する人」の意味のことが多いため、"er" をはずした "regist" が動詞だと勘違いしてのことだと思う。

これに比べれば、たまにスラッシュドット.jp や技術系のメーリングリストで話が出てくる、 warning や alt の正しい読み方なんて小さい問題だ。

この存在しない動詞 regist 、仕事でだけでも過去に3回見たことがある。そのうち一回は、"regist" を "register" に直すだけで1年半かかった。

あるプロジェクトに途中から入ったとき、外部への公開 API を読んでいたら、なんか違和感を感じた。登録用の関数の関数名 "regist" を辞書で確認してみると、そんな単語は無い。「登録」なら "register" だ。

天下の○○○が、間違った英語を API に含めて出してるのはまずいと思ったので、会議の際に議題にあげてみたのだが、どうも反応が薄い。「すでにその名前で呼び出している他のプログラムがあるので」とか、「関数名を変えてビルドすると全部再試験になるので」(そのプロジェクトには、自動ビルドとか自動テストという概念は無かった)とか、まあとにかくいろんな理由で、直さないという決定になったもんだ。

結局、regist を register に直せたのは、メジャーアップデートのタイミング、気づいてから一年半後だった。

ソフトウェア技術者として、英語は避けることができない要素だし、「名前重要」が身についているなら、常に書いている英単語が正しいかどうか、辞書でチェックすべきだろう。

今このエントリを読んで、「おお、そういわれると間違っていたかも」と思って自分の過去のソースをチェックしよう思ったなら、それが技術英語を身につけるための正しい態度だと思う。

正しい英語名をつけることに気を配っていると、その場その場では余計な時間が取られるような気がするだろうが、「英語で変数名や関数名をつける能力」は簡単に伸びるものなのだ。

帰国子女でもないし海外留学もしたことがない僕が、アメリカでアメリカ人に指示を出す仕事ができたのは、日本にいたときでもそういう細かい作業の積み重ねをしていたからであると思う。

とは言っても、辞書を引くのも適切な単語を調べるのもたいへんなことだ。アプリケーションやウェブサイトを使って、さっと簡単に調べるにはどうすればよいか、どんな道具を使っているかについては、次回に(いつか。すっかり忘れていた)述べたいと思う。

[2006-10-06 追記]

Googleのソースコード検索が出たので、"regist"を使っているソースを検索してみた。件数は3万件でるが、先のページをみても全14件しか出てこない(バグ?)。14件のコード中の署名などから、"regist"を使った人の国籍を推定してみたのが以下。

日本人 7人
不明 3人
フィンランド人 1人
スウェーデン人 1人
ドイツ人 1人
アメリカ人(カリフォルニアの大学、ということで英語ネイティブかどうかは不明) 1人

半数は日本人だった。圧倒的じゃないか。

投稿者 秋元 : 2005年07月25日 05:38

トラックバック

このエントリーのトラックバックURL:
http://labs.cybozu.co.jp/cgi-bin/mt-admin/mt-tbp.cgi/5

このリストは、次のエントリーを参照しています: regist という英語は無い:

» CyDE2 プロジェクト立ち上げ from 開発部 別室
2003年3月、次期フレームワークプロジェクト開発のために、3名の開発者が集めら [続きを読む]

トラックバック時刻: 2005年07月25日 16:02

» JavaOne Tokyo 余談 from 秋元@サイボウズ研究所プログラマーBlog
JavaOne Tokyo 2005 の感想を書きたいが、立て込んでいて(3日フ... [続きを読む]

トラックバック時刻: 2005年11月11日 15:18

» regist問題 from ひまわりカンパニー
regist という英語は無い 上記のブログに書かれてるがregistという英語... [続きを読む]

トラックバック時刻: 2006年01月10日 12:41

コメント

僕の場合、べつに英語が好きだから覚えたわけではなく、自分のプログラマとしてのキャリアを考えた際に役に立つだろうと思ったからなんですよ。

プログラム関連の英語の読み書きができると、景気が悪くなってもなんとか食っていけるかなあ、という安心感が持てますね。

投稿者 秋元 : 2005年07月25日 12:23

そうですね。
周りでローマ字を使う人が多く、関数名や変数名に英語を使用するのは、好みの問題なのかなと思ってしまいそうになるのですが、プログラミング言語の特性から考えても読み易いと思いますし、英語圏の人達との協力による作業を予想すると必須の事であると思います。
何千ページもある辞書をめくるのに比べれば、便利な辞書サイトがある今日、一つ一つ調べていくのもそれほど労なく、それ以上に身になるものが少なくないと思います。

投稿者 shinokenn : 2005年07月25日 19:00

最近の話ですが、社内で似たような問題があった時に「関数名とかを
決める時は英語の辞書を引いて確認し、より適切な単語を選びましょう。」
みたいな話をしたら、「英語が分かるエンジニアはほとんどいない。
そんなのは現実的でない。それっぽい単語を適当につけておけば十分だ。」
と即却下されちゃいました。

英語での電話会議やディベートなら難しいのは理解できますが、たかが
関数名でまさかここまで軟弱なセリフを言われるとは思いませんでした。
(私なんか、英語のためにSR-T7000を発売直後に自腹切って購入したのに....)

こういうセリフを恥ずかしいと思う人って少数派なんですかね。

投稿者 村山 : 2006年03月18日 18:43

お疲れさまです。僕も似たようなことを言われていたのでよくわかります。

上のような理屈を言う人に対して僕がわからないのは、英語が一切絡んでこないというソフトウェア開発(そんなのが実際どれぐらいあるのかわかりませんが。呼び出すライブラリのAPIはまず英語だと思うので)で、わざわざニセ英語を使おうとする気持ちですね。

英語が関係ないのなら、間違った英語ではなく全部日本語やローマ字で通せばいいと思うのですけど。どうして「それっぽい英語」でなければならないんでしょうね。

投稿者 秋元 : 2006年03月20日 15:25

むしろ「regist」は「registration」の省略のつもりで命名していると思いますよ。
それでも「registration」の音節は、「reg-is-tra-tion」なので
省略するなら「regis」が限度で、やはり「regist」と省略するのは不適切ですが。
他にもネイティブから見ると省略の仕方が不適切な英単語は多々あると思います。

投稿者 T.H. : 2006年10月06日 10:28

うーん、それはどうですかね。

「登録する」は英語で何? と聞いても regist と答える人は多いのではと僕は想像しますけど。

投稿者 秋元 : 2006年10月06日 10:34

ちなみに、僕は「自然な省略形(他の技術者とスムースに意思疎通ができる変数・関数名)を考えるのはネイティブでない身には困難」と思っているので、できるかぎり英単語は省略しないことを心がけてます。

投稿者 秋元 : 2006年10月06日 10:36

Gaucheの作者の川合史朗さんは日本人ですが、ChangeLogに出てくる「regist」は「resist」(抵抗する)のタイポなのでで、「register」と勘違いしてるわけじゃありません。

http://www.kahua.org/mlarchive/kahua-dev/msg00011.html

なんか本人も指摘してたりして。

投稿者 Anonymous : 2006年10月06日 12:46

>日本人プログラマーだけが使う謎の動詞 regist

とお書きになってますが、Googleの「中国語(繁体)」で
検索してみましたか?

regist.cgi 98,800 件
register.cgi 29,200 件

と出てきますよ。

投稿者 ロンセスバジェス : 2006年10月10日 10:18

そうですか。ありがとうございます

投稿者 秋元 : 2006年10月10日 11:13

"regist"を"resist"「抵抗する」と勘違いしている
可能性は確かにありそうですけどね・・・。

投稿者 T.H. : 2006年10月12日 08:23

登録する→regist、登録する人→registerだと思ってました。
サンプル等でよく見かけている綴りでしたので辞書調べることを怠っておりました。
大事な事を見逃したままプログラムを書き続けるところでした。危ない危ない。
このブログ読んでて良かったです^^
ありがとうございました。

投稿者 みづき : 2007年05月22日 11:06

> サンプル等でよく見かけている綴りでしたので

そうなんですよね。日本製のフリーCGIなどを見ていると、むしろ"regist"が正しいんじゃないかというぐらい間違いが多いので、(自分が)よく目にするというだけでは間違うこともある、のが難しいところです。

投稿者 秋元 : 2007年05月22日 12:42

registerと書くとコンピュータ関係では全く別の意味になってしまうので危険かと。
少なくとも日本英語としてはregistは正しいものと思われます。レジスターとかいうと店先においてあるものになってしまうし。

投稿者 Aba : 2007年07月15日 10:06

一語に二つの意味があるのは普通じゃないかと思います。登録画面のURLに"register"が出てきたからといって、CPUに関することだとは誰も誤解しないでしょう。そんなことを言い出せば、"post"は日本英語(?)では郵便ポストのことになり、「投稿する・投げる」とは取られないと思うのですが。

投稿者 秋元 : 2007年07月15日 10:31

べつにどっちでもいいじゃん

投稿者 asia : 2007年08月09日 11:47

はじめまして。
registなどという単語はない、これは私も声を大にして言いたいです。

この単語の勘違いからの派生として、「Now unregisting...」などと画面に表示させるとんでもない間違いを見つけたことがあります。私が指摘する以前にそれなりの人数が目にしているはずなのですが。
この"英単語"の日本国内における定着率は、問題ですね。

投稿者 go-go : 2007年12月06日 11:56