“Every now and then some Unicode hyphen character makes its way into comments.”

Marcin Wichary

ときどき、コメントにUnicodeのハイフン文字が紛れ込む

原文は Marcin Wichary により に公開されました。 このブログを購読する

ピクサーのソフトウェアエンジニアであるジュリアン・フォンが、Mastodonに短いスレッドを投稿した。これまで見たことのない面白い視点だった。

私は今でも仕事でAIが書いたコードは使っていないが、最近はそういうコードをレビューする機会がどんどん増えている。最近気になっていることのひとつは、そのコードがいかに個性に欠けているかということだ。

RenderManは40年以上の歴史を持つコードベースだ。癖の強い人たちが書いた、癖の強いスタイルの集積である。

私はこのコードベースに26年以上関わってきたが、インデントやコメント、コーディングスタイルを見るだけで、多くの部分が誰の手によるものかわかる。そして、そのスタイルを作者の性格的な癖と結びつけられることも多い。

1990年にダン・マッコイが書いた一般的な多面体を変換するコードは、今でも生き残っている。おそらく、連結リストのためにfor ( ; l; l = l->next)というループを使っている数少ないコードのひとつだ。コメントでR.N.Gという略語を使うのを見たのは、後にも先にもダンだけだ。

トム・ダフはダフのデバイスの発明者だ。だから彼がどんなコードを書くかは想像がつくだろう。しかし彼は、implicit fieldのコードの中に、1755年のサミュエル・ジョンソンの辞書の序文からの引用をコメントとして残してもいる。それが彼という人間なのだ。

(うぬぼれから、何年も後に私がそのコードをリファクタリングした際、ノア・ウェブスターの『An American Dictionary of the English Language』の序文からの引用を返答としてコメントに残した。トムがそれに気づいたかどうかはわからない。)

私もちょうど先日ダフのデバイスについて考えていたところだ!

残りはぜひ自分で読んでほしいが、結末の部分も引用しておこう。

私たちの誰もが持つ、そうしたわかりやすい癖についていくらでも語ることはできるが、そうした歴史を持つコードベースに住むことは、バークレーのクラフツマン住宅に住むようなものだ。古くて、きしんで、正直エアコンもないし、夏に気温が華氏100度(約38度)に達すれば死にそうになる(最近はそれがあまりにも頻繁に起こる)のだが、それでも魅力的で芸術的なのだ。[…]

[Claudeが生成したコード]には、作者のオフィスでの面白いホワイトボードでの議論を即座に思い起こさせるようなタイプミスや癖は一切ない。あるのはただのコードと、そのコードが何をしているかを繰り返すだけのコメントだ。

コードは芸術だ。私は信じられないほど才能のあるアーティストたちに囲まれたスタジオで働いているが、それでもこの主張は譲れない。コードはしばしば雑然としていて汚く、作り上げて正しく動かすのは苦痛を伴うが、その成果は作り手の個性と創造の苦悩を映し出す。他の芸術と同じように。時にはソースコードを見なければそれはわからないが、探せばそこにある、表面の下に隠れて。

1世紀前、電信の時代には、トンやツーという音を聞いて文字通りのメッセージを解読するだけでなく、特定の人が特定の電鍵を叩くときのリズムやタイミング、癖にも耳を澄まし、特定の人物だけでなく、時にはその気分さえも見分けられた。連合軍のスパイたちが、(一度も直接会ったことのない)ドイツ側の通信士が誰一人として今まさに送信しているのかを、その打電の癖――「フィスト(fist)」として知られるもの――を覚えることで正確に把握していたという話もある。

フォンが語る同僚たちのプログラミングにおける「フィスト」の物語を読むのは、実に愉快だった。

この記事は「muse-spark-1.2-contributor」を使用して翻訳されました。

コメント