psychopathより。
金言、格言は古今東西いろいろあるのだが、ここではプログラミングに関する格言がまとめられていたので、抜粋して翻訳してみる。翻訳に間違い等があった場合は、コメント等で指摘してください。
We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil
我々は、97%もの時間を占めているという、わずかな効果(を得るためだけ)の作業はやめるべきだ。尚早な最適化(作業)は諸悪の根源だ。
- C. A. R. Hoare
Walking on water and developing software from a specification are easy if both are frozen
水の上を歩くのと、仕様に基いたソフトウェアを開発するのは容易な事だ。どちらとも凍結しているのであれば。
- Edward V Berard
It always takes longer than you expect, even when you take into account Hofstadter’s Law.
作業にはいつでも予測以上の時間がかかるものである – ホフスタッターの法則を計算に入れても。
- Hofstadter’s Law
Some people, when confronted with a problem, think “I know, I’ll use regular expressions.” Now they have two problems
ある人達が一つの問題に直面した時,彼らは「ああ、正規表現を使えばいいのか.」と考えた。今彼らは二つの問題を抱えている。
- Jamie Zawinski
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
デバッグは最初にコードを書くことの2倍困難だ。 できるだけ賢くコードを書くなら、あなたは定義上それをデバッグできるほど賢くない。
- Brian Kernighan
Measuring programming progress by lines of code is like measuring aircraft building progress by weight.
行数でプログラムの進行状況を知る事は、重さで飛行機の出来上がり具合を知るようなものだ。
- Bill Gates
PHP is a minor evil perpetrated and created by incompetent amateurs, whereas Perl is a great and insidious evil, perpetrated by skilled but perverted professionals.
PHPは小さな悪であり、それは無能なアマチュア達によって創られた。Perlはすばらしく油断のならない悪であり、それはスキルがある変態的なプロフェッショナルによって創られた。
- Jon Ribbens
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.
常に、結局あなたのコードを保守することになる人があなたがどこに住んでいるか知っている狂暴なサイコパス(精神異常者)であると思って、コードを書きなさい。
- Rick Osborne
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
今日のプログラミングは、より簡単に誰にでも扱えるプログラムを作ろうとするエンジニアと、より愚かな(操作)者を生み出そうとする大宇宙との競争だ。今のところ宇宙が勝っている。
- Rich Cook
I don’t care if it works on your machine! We are not shipping your machine!
それがあなたのマシンで動くかどうかは気にかけてない! 私たちはあなたのマシンを出荷していないのだ!
- Ovidiu Platon
I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone.
電話と同じくらいコンピュータが簡単になることを常に望んでいる。私はもう電話の使い方が理解できないので、私の願望は達成した。
- Bjarne Stroustrup
A computer lets you make more mistakes faster than any other invention in human history, with the possible exceptions of handguns and tequila.
コンピュータは、人類がいままで発明してきたものの中で最も速く多くの誤りを犯す事ができる。例外があるとすればピストルかテキーラくらいだろう。
- Mitch Ratcliffe
If debugging is the process of removing software bugs, then programming must be the process of putting them in.
デバッグがソフトウェアのバグを取り除くプロセスなのであれば、プログラミングとはバグを入れ込むプロセスだ。
- E. W. Dijkstra
In theory, theory and practice are the same. In practice, they’re not.
理論的には、理論と実際は同じなのだが、実際はそうではない。
- Yoggi Berra
Perl – The only language that looks the same before and after RSA encryption.
Perl – RSA暗号化する前と後で同じに見える唯一の言語。
- Keith Bostic
Saying that Java is good because it works on all platforms is like saying anal sex is good because it works on all genders
すべてのプラットホームで動くからJavaが良いと言うのは、すべての性別で可能だからアナルセックスが良いと言っているようなものだ。
- Unknown
XML is like violence – if it doesn’t solve your problems, you are not using enough of it.
XMLは暴力に似ている–それがあなたの問題を解決しないならば、あなたはXMLを十分に多用していない。
- Unknown
Einstein argued that there must be simplified explanations of nature, because God is not capricious or arbitrary. No such faith comforts the software engineer.
神は気まぐれではないので、アインシュタインは、自然に関する簡略化された説明があるに違いないと主張した。 そのような信条はソフトウェア技術者の慰めにならない。
- Fred Brooks
05/17 6:00 修正
コメント欄の意見を参考に、大幅に修正しました。




2009年05月16日 14:21
typo発見? → 変態的なプロジェッショナル
2009年05月16日 16:47
格言楽しく読ませていただきました。
タイプミスと思われるところを見つけたので報告させていただきます。
>PHPは小さな悪であり、それは無能なアマチュア達によって創られた。Perlはすばらしく油断のならない悪であり、それはスキルがある変態的なプロジェッショナルによって創られた。
プロジェッショナル ⇒ プロフェッショナル
2009年05月16日 16:58
ふぁらお加藤さん ハゲと戦う頭部戦線司令官さん
ご指摘ありがとうございます。修正しておきました。
2009年05月16日 21:02
我々は、97%もの時間を占めているという、わずかな効果(を得るためだけ)の作業はやめるべきだ。尚早な最適化(作業)は諸悪の根源だ。
ホフスタッターの法則を考慮していてさえ(なお)予想以上の時間がかかる。
今日のプログラミングは、より簡単に誰にでも扱えるプログラムを作ろうとするエンジニアと、より愚かな(操作)者を生み出そうとする大宇宙との競争だ。今のところ宇宙が勝っている。
デバッグがソフトウェアのバグを取り除くプロセスなのであれば、プログラミングとはバグを入れ込むプロセスだ。
理論的には、理論と実際は同じなのだが、実際はそうではない。
2009年05月16日 22:07
英語には全く自信がないのですが、分かる範囲で解釈がおかしい気がするところを探してみました。
>私たちは、時間の約97%を占めるわずかな効率に関しては忘れるべきである: 時期尚早な最適化は諸悪の根源だ。
少しの効率のことは忘れ、時間の約97%について語るべきである: 時期尚早な最適化は諸悪の根源だ。
>あなたのコードを保守する人が、あなたがどこに住んでいるかを知っている乱暴な精神病質者のごとく襲ってくる。
常に、結局あなたのコードを保守することになる人があなたがどこに住んでいるか知っている狂暴なサイコパスであると思って、コードを書きなさい。
>デバッグがソフトウェアのバグを取り除くプロセスであれば、プログラミングには、そのプロセスを取り入れなければならない。
デバッグがソフトウェアのバグを取り除くプロセスであれば、プログラミングはそれを注入するプロセスであるに違いない。
参考になれば幸いです。
2009年05月16日 22:30
>デバッグがソフトウェアのバグを取り除くプロセスであれば、
> プログラミングには、そのプロセスを取り入れなければならない。
プログラミングはバグを注入するプロセスである。
XML is like violence – if it doesn’t solve your problems, you are not using enough of it.
> XMLは暴力に似ている?それがあなたの問題を解決しないならば、
> あなたは十分に使いこなしていない。
「あなたはXMLを十分に多用していない」かな。
要は「殴り足りない」みたいな・・・。
> A computer lets you make more mistakes faster than any other invention in > human history, with the possible exceptions of handguns and tequila.
> コンピュータは、ピストルとテキーラが引き起こした出来事以上に、
> ヒトの歴史におけるいかなる他の発明よりも速くさらに多くの誤りを犯す事ができる
exceptionsが、例外(TypeErrorとかの)とかけてあるんだろうけど、うまい焼くが思いつかない・・・。「拳銃・テキーラ例外」を連想させたいのだろう。
2009年05月16日 23:03
If debugging is the process of removing software bugs, then programming must be the process of putting them in.
デバッグがソフトウェアのバグを取り除くプロセスであれば、プログラミングには、そのプロセスを取り入れなければならない。
- E. W. Dijkstra
them は software bugs ですので,
デバッグがソフトウェアのバグを取り除くプロセスであれば、プログラミングはそれらを埋め込む作業に他ならない。
です
2009年05月16日 23:22
なんかいろいろ誤訳があるのが惜しいのですが、一番気になったのは
> If debugging is the process of removing software bugs, then programming must be the process of putting them in.
「デバッグがバグを取り除く作業であるのなら、プログラミングとはバグを作りだす作業なのだろう。」
2009年05月17日 01:18
Hoare:
97% うんぬんは, 開発に 100 日かけるならそのうち 97 日間は
最適化のことなんて忘れろ, だったりしませんか? (say は「たとえば」)
ホフスター → ホフスタッター. 正しそうな訳は wikipedia などにありますね.
Zawinski:
a problem だったのが two problems になった, という皮肉では?
Osborne:
(あたかも)…であるかのように(心積りして)コーディングせよ.
Dijkstra:
…プログラミングとはバグを注入するプロセスのことに違いない, とか.
Berra:
二箇所の practice を同じ言葉に訳さないと…
2009年05月17日 01:41
上の人もいってるけど、ダイクストラのは誤訳
process of putting them in. の them はバグのことでしょう。
Hofstadter は普通、ホフスタッターって読む。ちなみに、ホフスタッターの法則は、こんな感じ。
http://www.yamdas.org/column/technique/19laws.html
作業にはいつでも予測以上の時間がかかるものである – ホフスタッターの法則を計算に入れても。
2009年05月17日 04:58
It always takes longer than you expect, even when you take into account Hofstadter’s Law.
は、
「(作業には)いつもあなたが想像するよりも時間がかかる。これはホフスタッターの法則を考慮に入れてもあてはまる。– ホフスタッターの法則」
というような意味です。再帰ですね。
2009年05月17日 05:52
今までにないくらいのコメントが。ありがとうございます。
すべて反映させておきました。
格言の翻訳って難しいですね。
2009年05月17日 06:04
訳が違うような気がします。
If debugging is the process of removing software bugs, then programming must be the process of putting them in.
デバッグがソフトウェアのバグを取り除くプロセスであれば、プログラミングには、そのプロセスを取り入れなければならない。
→
もしデバッグがソフトウェアのバグを削除するプロセスなら、プログラミングはバグを挿入するプロセスに違いない。
2009年05月17日 06:23
先ほどのはすでに修正されていました。すみません。
ついでにもう一つ。have wishedで現在完了なので。
I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone.
電話と同じくらいコンピュータが簡単になることを常に望んでいる。私はもう電話を使い方が理解できないので、私の願望は達成した。
→
私は自分のコンピュータが自分の電話と同じくらい簡単になることをずっと望んできた。私の願いは叶った。私はもう自分の電話の使い方がわからなくなったので。
自分がぼけたのか、電話が高機能化したのか、後者だとは思いますが、両方の可能性がありますね。
2009年05月17日 06:41
もう一つおまけ。
bigger and better idiotを同じように訳したいです。
idiotをどう訳すか。とりあえずバカにしておきます。
1回目のbigger and betterはidiotに係るのか、programsに係るのか、
微妙なので、日本語でも曖昧に訳すしかないですね。
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
今日のプログラミングは、より簡単に誰にでも扱えるプログラムを作ろうとするエンジニアと、より愚かな(操作)者を生み出そうとする大宇宙との競争だ。今のところ宇宙が勝っている。 – Rich Cook
→
今日のプログラミングは、より大きくより良いバカでも使えるプログラムを作ろうと懸命に努力するソフトウェアエンジニアと、より大きくより良いバカを生み出そうとする大宇宙との競争だ。今のところ宇宙が勝っている。 – Rich Cook
2009年05月17日 09:03
私はもう電話を使い方が
↓
私はもう電話の使い方が
2009年05月17日 10:37
面白い記事の紹介,翻訳ありがとうございます.
さて,自分も誤訳と思われる所を数箇所見つけたので指摘させていただければと思います.
A computer lets you make more mistakes faster than any other invention in human history, with the possible exceptions of handguns and tequila.
はコンピュータはどんな発明より早く過ちを起こす事が出来て,その「どんな発明」
の例外がピストルとテキーラであるかもしれないというので,「ピストルとテキーラが引き起こした出来事以上」はニュアンスがちょっと違うように思います.
それを踏まえた上で訳するとすれば以下のようになるのではないでしょうか
コンピュータは、人類がいままで発明してきたものの中で最も速く多くの誤りを犯す事ができる。例外があるとすればピストルかテキーラくらいだろう.
2009年05月17日 10:41
もうひとつ.
Some people, when confronted with a problem, think “I know, I’ll use regular expressions.” Now they have two problems
は正規表現によって問題が増えたという事を言いたいので,以下のように約するのが適切ではないでしょうか.
ある人達が一つの問題に直面した時,彼らは「ああ、正規表現を使えばいいのか.」と考えた.今彼らは二つの問題を抱えている。
2009年05月17日 11:12
ありがとうございます、再び修正しました。
ここまでくると、公開デバッグですね(笑)
2009年05月17日 11:58
行数でプログラムの進行状況を知る事は、重さで飛行機の出来上がり具合を知るようなものだ。
プログラミング格言集より
2009年05月17日 15:04
すばらしいリストをありがとう。
2009年05月17日 20:40
ttp://hp.vector.co.jp/authors/VA000092/jokes/index.html
2009年05月18日 01:07
[...] られていたので、抜粋して翻訳してみる。翻訳に 間違い等があった場合は、コメント等で指摘してください。We should forget a bout small efficiencies, say about 97% of the time: premature… original article [...]
2009年05月18日 09:12
[...] プログラミング格言集 http://blog.cnu.jp/2009/05/16/%e3%83%97%e3%83%ad%e3%82%b0%e3%83%a9%e3%83%9f%e3%83%b3%e3%82%b0%e6%a0%bc%e8%a8%80%e9%9b%86/ ある人達が一つの問題に直面した時,彼らは「ああ、正規表現を使えば [...]
2009年05月18日 12:12
この「about 97% of the time」は、(ひょっとしたら「プログラムの実行時間」とかけたダジャレも少し入っているかもしれませんが、普通の英語として第一義的には)「most of the time」などと同様、「97%ぐらいの確率で」(=100回中97回ぐらいは)という意味だと思います。
http://eow.alc.co.jp/%22of+the+time%22
http://www.google.com/search?q=%22percent+of+the+time%22
などもご参照ください。
2009年05月19日 05:34
> sumiiさん
なるほど。そこまで機転がまわらなかったですね。検討してみます。
2009年05月19日 12:02
面白い記事ありがとうございます!
まだコメントに出ていないところで言うと、
the Universeは、大宇宙じゃなくて全人類だと思います。
他にもちょこちょこ訳してみたのでご参考になればと思います。
http://d.hatena.ne.jp/kiyo560808/20090518/1242658608