プログラミングKoans

翻訳者から: The Codeless Code-プログラミングの哲学に関するf話のコレクション。 コレクションのf話は異なります-血に飢えたものもあれば、技術的な観点から筋金入りの作品(著者の母国語はJava)もありますが、非常に容量が豊富です。 私が最も気に入った7つの物語の翻訳を紹介します。残りの30以上(毎週追加される新しいもの)はサイトで見つけることができます。



些細なこと




三日三晩、主人は彼の房から現れませんでした。 4日目に、修道士は彼を訪問するために初心者を送りました。



ウィザードはデータフロー図の検討に忙しかった。 初心者は、修道士が関与していた広大なシステムの小さな部分を彼女に認めました。 お辞儀をして、初心者はマスターが何に取り組んでいるのかと尋ねました。



マスターは答えました:「ここに欠陥があり、それをどのように修正するのが最善かを考えています。」



初心者は「しかし、あなたは優先順位をつけることの重要性を説いているのに、どうしてそんなに小さくて取るに足らないものに集中できるのか?」



マスターは一言も言わずにスタッフを持ち上げ、初心者の素足まで強制的に下げて、その小指を壊しました。 初心者は痛みで叫び、編組のステップを残しました。 その瞬間、彼は啓発を達成しました。



カプセル化




若い僧kは、すべてのクラスメソッドだけでなく、すべての属性も開いていると宣言しました。 修道院の修道院長は彼にコメントをするのにうんざりしており、助言を求めて師匠に頼りました。



翌日、師匠は僧monに朝食をとるように勧めました。 マスターのオフィスの会議テーブルで、豪華な食事が提供されました。 マスターは修道士に床に横になるように言いました。 修道士は従い、主人はカソックを開けて大きなナイフを取り出しました。 彼はナイフの先端を僧kの胸に押し付け、血が彼の下に出た。 僧kは恐怖で叫び、主人に何をするつもりか尋ねました。



「胃を引き裂いてください」とマスターは答えました。「ご飯を入れてお茶を注いでください。 今日はスケジュールが厳しいので、このゲストを治療する方法は非常に効果的だと思います。」



その後、僧kはこれについてコメントする必要はありませんでした。



無限大




Webクランの2人の修道士は、プログラムが無限のサイクルに入ったかどうかについて議論しました。



「それはどのくらい完了しましたか?」修道院の大修道院長に尋ねました。



「30分以内」と薄い青白い僧は答えました。



「しかし、それ以上に」、完全な浅黒い肌の修道士が指定しました。



「そして、あなたはそれが終わるのを待っている間、あなたはいじっていましたか?」大修道院長は言いました。 僧ksたちは恥ずかしがった。



大修道院長はこれについてマスターに言った。 彼は言った、「無駄のない修道士は周期が無限ではないと信じている。 彼の知恵のために彼にワインの毛皮を与えなさい-無限のサイクルはあり得ない。 ある日、停電が発生したり、サーバーがほこりに砕けたり、太陽が地球を飲み込んだりします。」



大修道院長は、「しかし、サイクルが無限であると信じている太った僧はどうですか?」と尋ねました。



「賢いので、彼にワインを2ファー与えてください。 ブラウザを待っているユーザーにとって、10秒は苦ago、1分-10億年、さらにはすべて-永遠のように思えます。 トラがカモシカをたいまつにするとき、8本の爪を使うか100万本の爪を使うかは関係ありません。」



進化




初心者はマスターのコードを研究し、彼のスタイルに正確に従いました。開発パターン、命名方法、インデントは同じで、コメントでさえマスターの声のように見えました。



次回のコードレビュー中に、初心者はマスターが非常に不幸であることに驚きました。



「しかし、マスター」と彼は抗議した。「私はあなたの例を最後のセミコロンまで追った。 その月に書かれたクラスは次のとおりです。同じ石積みの2つの卵のように、私のように見えませんか?



「それが問題だ」とマスターは眉をひそめた。 「昨日はばかだった、先週-ばか、そして1か月前-馬鹿だった。 「昨日書くことができるコードを見せないで、明日書くことができるコードを見せてください。」



雑草




神殿には新しい僧kが必要であり、2人の潜在的な信者がこの場所を主張しました。 マスターは僧monに両方にインタビューするように命じました。 その夜、修道士は報告しました:



「彼らはすべての点で完全に同等でした-年齢、体重、外見、マナー、剣の取り扱い、カフェイン入りの飲み物の好み。 それから私は彼らに同じ論理的なタスクを与えました。 そのうちの1人が決定しました、2番目-いいえ。」



それから師匠は修道士に、面接が行われた部屋に連れて行くように命じました。 最初に、彼らはタスクに対処しなかった候補者の部屋に行きました。 仕事のための彼のスケッチはまだボード上に残っていました:痛みを伴うきちんとした図が偶数行と列に並んでいます。 マスターは候補者の推論に誤りをすぐに発見し、「冬の雪を突破しようとしているエンドウ豆のシュートです。 それらを育てたら、春に素敵な夕食を食べます。」



その後、問題を解決した候補者の部屋に入りました。 彼のメモもボードに残っており、目立った順序なしにそれに沿ってクロールしました。 急いで走り書きされた落書きはジグザグにカールし、時には互いの上をrawう-ナンセンスなウェブ。 主人は首を横に振った:「あなたは香りの良いディルとレモングラスがあると言いますが、それらを雑草の中に見つけることができません。」



ティーリバー




マスターがお気に入りの喫茶店に落ち着くとすぐに、若い初心者が彼女に近づき、彼が書いたコードに関する意見を見つけました。



ウィザードはリストを調べて、リスト内の各メソッドが慎重に文書化されていることを発見しました。 PersonクラスのsetNameメソッドの場合、個人の名前を設定することが示されました。 getNameメソッドは、名前setNameを返すことを確認しました。 toStringメソッドでさえ、文字列を返すと誓っていました。



マスターはリストを落とし、黙って座っていました。 しばらくして、初心者は彼女が不幸かどうか尋ねました。



「興味深い質問です」とマスターは答え、コードを指さしました。「これは畳の上に横たわる紙です。」 紙のインク。 インクはたくさんの言葉です。 外のヒノキに鳥が座っています。 鳥には羽と2つの目を持つ2つの翼があります...」



彼女は、初心者が顔を赤らめるまで同じ脈を続けた。 彼は自分のコードを収集し、恥ずかしいが、悟りを開いた。



ゴミ箱




マスターは、遠隔地の修道院で書かれたプログラムを学びました。 彼女のモニターでは、大きなコードは黒ではなく緑で輝いていました。コメントアウトされています。



「好奇心が強い」とマスターは言った。「私は正確な時計を開け、オレンジと魚の骨の皮の中で見つけました。」



修道院長は、非アクティブなコードは不要であると説明しましたが、僧ksにそれを残すように命じました:いつかロジックを復元する必要がある場合、コードのコメントを外して、最初から書き直すことはできません。



「これは理解できる」とマスターはうなずいた。



翌日、僧ksたちが集まって、主人と会いました。 彼らは、修道院長がどこにも見つからないことを心配していました。 マスターは、修道院長の遺体が垂れ下がっている垂木に彼らを向けました。



「修道院長のサービスは必要なくなりました」とマスターは言いました。 「しかし、あなたの体を腐らせるために彼の体を残してください。 結局、いったん彼の方法が再び必要になるかもしれないし、新しいものをゼロから訓練するのは無駄だろう。」



彼女の報告書では、マスターは一族の作業方法の急速な変化に注目した。 彼女はこれを故大修道院長の良い例に帰し、「彼の復職の可能性を考慮すべきだ」と書いた。



All Articles