ロードオブザリングの作成とプログラミングの共通点は何ですか?

プログラマーの仕事は複雑さとの闘いです。 クラウドテレフォニーに関する最も一般的な質問の1つは、「アスタリスクを自分で取得し、スワイプして、すべてを実行できる場合に使用する理由は何ですか?」です。 練習からの不思議な詳細:アスタリスクの後に私たちに来る多くの人がいます。 つまり、まず彼らが私たちのところに来て、プラットフォームにお金の価値があることを見て、「はい、私たちはすべて自分でやる」と言って去ります。 6か月後、彼らは「アスタリスクではなくビジネスをやりたいと思った」という言葉で戻ってきます。 プログラマーとして、私たちは複雑さと戦うのが大好きです:アスタリスクをJavaScriptツールボックスで半製品に置き換え、クラウドサービスを使用してコードとタスクを処理し、すべてを小さな部分に分割し、バージョンを実験します。 結局のところ、私たちはそれを愛しているだけではありません。 年末年始に、私は偶然にTolkienが彼自身のGitを持っていることを読みました。 カットの下-Habrに適合した翻訳。



本を読んでいるとき、一般に生きている人がいかに独創的なものを書くことができるかを理解できなかったことはあなたに起こりましたか? 私にとって、そのような本は指輪物語でした。 私はそれを読んだとき、私は百の命についてさえ、とても詳細でとても深くて美しい本を書くことができないことに気づきました。 それ以来、私は主の創造について少し学び、この知識は私に第一印象を再考することを許しました。 しかし、最も驚くべきことは、この知識が何年も前にコンピュータープログラムの作成について学んだこととどのように交差したかです。



プログラムの開発が単一のファイルで始まり、長年の作業の後、1人の人がそれを理解することすらできないような巨大なシステムに変わることは、常に私を驚かせてきました。 「ゼロから」最終結果を繰り返そうとすると、ほとんど成功しません。 それはそう整理されています。 ソフトウェアは、開発にかかったパスに依存します。



カンブリア爆発の前に私は単細胞ソフトウェアのこの進化に個人的に何度も参加しました。 自分の目で見ました。 しかし、私が見たことがないのは、本を書くことにとても似ているということです!



良いソフトウェアを作成することは、生き残るための反復による進化です。 同様に、良いストーリーが作成されます。 彼らは私たちの心によって作成されているという事実によって団結しています。



心は集中するためのオブジェクトを必要とします。 プロジェクトの各中間状態はそのようなオブジェクトです。 このような状態の組み合わせは、本当に素晴らしい何かを作成するために私たちの心を刺激します。 最初にあったもののかろうじて目立つ痕跡を運ぶ何か。



ロード・オブ・ザ・リングがそのようなプロセスの良い例であることがどのように起こったか教えてください...



当初、ロードオブザリングはホビットの続編と考えられていました。 出版社は、続編を使用して、本の人気でさらにお金を稼ぎたかった。 「The Silmarillion」はそれほど続編ではありませんでした。 そこで教授は、続編を書くという目標を掲げて仕事に取り掛かりました。 そして、それはひどいものでした。



名前の最初のバージョンは「指輪物語」ではなく、「影の帰還」でした。 まだ子供向けの本でした。 フロドの名前はビンゴでした。 放浪者はトロッターというホビットでした。 ビルボは結婚しようとしていました。 そして、リングはまだ単なるリングでした。 ストーリーには、明確に表現された動機と開発のベクトルがありませんでした。 「ホビットは他に何ができるでしょうか?」トールキンは自問しました。 ホビットのアイデアは尽きました。 その「ロードオブザリング」は、私たち全員が愛していますが、それでも非常に遠く離れていました。



ドラキンのドラフトの後、ドラフトは歴史の発展の方向性を試み、求めました。 それはすべて、彼がBlack Horsemanと一緒にシーン作成したときに起こりました。 最初は、ブラックホースマンはホワイトホースマンでした。 ビンゴと話をするようになったのはガンダルフでした。 しかし、突然洞察が起こりました。 振動するニューロンのグループが共謀し、馬の色が白から黒に変わり、ガンダルフは巨大な黒いマントとフードに包まれた見知らぬ人に変わりました。 新しい履歴フレームワーク(英語フレームワーク)が作成され始めました。



どうやってそれを知るのでしょうか? 幸運とクリストファー・トールキンのおかげで、彼の父親が一貫してロード・オブ・ザ・リングに適用した変化の歴史があります博士から素晴らしいビデオがあります。 Corey Olsenは、実際にはThe Lord of the RingsのGitログとは何かの手で私たちを導いています。 これは、トールキンの真の鑑識家と有能なアナリストの魔法です。



本のアイデアがどのようにテキストで策定されているかを確認します。 これは、新機能のリファクタリングと開発の継続的なプロセスでした。 これらのアイデアの一部は、最初のバージョンから最終リリースまで保持されています。 多くが削除されました。 多くが変更されました。 ほとんどの会話は保存されていましたが、まったく異なる状況でそれらを話した他のキャラクターに引き継がれました。



このログを読んで、プログラムを作成するときと同じ感覚を経験しました。 唯一の違いは、その結果、実用的なプログラムを入手できず、史上最も強力なストーリーの1つを得たことでした。



私は自分自身で古いアイデアを確認しました。成功する大規模なシステムは成功する小さなシステムから始まります。



これは、作家とプログラマの両方に当てはまります。 あなたのストーリーやプログラムは、最初から驚くべきものである必要はありません。 進化と開発がそれを実現します。



2017年、これはロード・オブ・ザ・リングが私に与えたレッスンです。



All Articles