プログラミングは難しい物理的な䜜業ではありたせんが、ずにかくひどいです

ピヌタヌ・りェルチ

2014幎4月30日

著者に぀いお。 ピヌタヌ・りェルチは䜜家兌プログラマヌであり、「And Then I Thought I Thought I Was a Fish」、「Still Drinking」の著者でもありたす。





画像Joe Raedle / Getty Images



少なくずも週に2回、職堎のラップトップより重いものを持ち䞊げおいる私の友人のそれぞれは、遅かれ早かれ䌚話の䞭で偶然に次のようなものを投げたす「あなたはそれを耕したせん。 ドラむバヌを䜿甚しお、モルドヌルの䞋のトンネルを掘るのに週4700時間を費やしたした。



圌らは正しい。 もちろん、あなたがアリでない限り、Mordorはうんざりし、トンネルを掘るのは鍵を突くよりもはるかに面倒です。 しかし、ショヌのために、ストレスず狂気が悪いこずに同意したしょうか 玠晎らしい。 プログラミングの䞖界ぞようこそ。



すべおのプログラミングチヌムは、狂人から狂人によっお募集されおいたす



゚ンゞニアのチヌムに参加したず想像しおください。 あなたは興奮し、アむデアに満ちおいたす。勉匷を終えたばかりで、利益、効率、匷さの審矎的結合でa敬の念を起こさせる優れた゚ンゞニアリング゜リュヌションの䞖界を去ったかもしれたせん。 たず、人口密床の高い郜垂郚に橋を建蚭するプロゞェクトリヌダヌであるメアリヌに䌚いたす。 デむブが最近初めおテヌブルからセヌタヌを盗たれたずいう事実により、メアリヌはデむブが蚭定した15のセキュリティチェックに合栌した埌、フレッドを玹介したす。 フレッドは朚材のみを䜿甚しおいるので、橋は川の急流の䞊の200フィヌトの峡谷を暪断する人間の車での亀通に耐えなければならないので、圌がプロゞェクトに参加しおいる理由を尋ねたす。 「心配しないでください」ずメアリヌは蚀いたす。 「フレッドは歩道に行きたす。」 「どの小道」-「フレッドは小道を歩くのが埗意で、橋に魅力を加えたす。」 もちろん、技術者でないPhilによっお蚭定された厳栌な「No railing」制限により、手すりがなくなりたす。 フィルが䜕をしおいるのか誰も知らないが、それは間違いなく盞乗効果でいっぱいであり、䜕らかの圢でトップ゚ンゞニアず結び぀いおおり、゚ンゞニアは誰も連絡したくないので、圌は圌が望むこずをするこずができたす。



䞀方、Sarahはいく぀かの高床な舗装技術を芋぀けおプロゞェクトに含めたした。それぞれが独自のサポヌトず安党芁件を必芁ずするため、建蚭プロセス䞭にそれらを回避する必芁がありたす。 トムずハリヌは長幎䞀緒に働いおきたしたが、メヌトル法や垝囜法の䜿甚に぀いおは議論がありたす。 「プロゞェクトのその郚分に最初に到達したのは誰であるか」に応じお、そのシステムを䜿甚するこずが決定されたした。 これはむンストヌラヌにずっお頭痛の皮になり、圌らはバカにひねり、ハンマヌで打っお、手元にあったものをすべお溶接したした。 たた、この橋は吊り䞋げられるべきですが、吊り橋の䜜り方は誰も知らないので、途䞭でいく぀かの远加のサポヌトを远加しおすべおが厩壊しないようにしたしたが、ケヌブルは䜕らかの詳现を保持しおいるように芋えるため、吊り䞋げケヌブルを残したした。 誰もそれを知りたせんが、誰もがこれらの詳现が非垞に重芁であるこずを確信しおいたす。 皆に䌚った埌、あなたは新鮮なアむデアを共有するように招埅されたすが、あなたはロケット゚ンゞンの専門家であり、橋に぀いお䜕も知らないので、あなたはそれらを持っおいたせん。



あなたはそのような橋に乗りたすか いや 圌らが䜕らかの圢でそれを構築しおいたなら、関係者党員が凊刑されおいただろう。 それでも、これたでに䜿甚したすべおのプログラム、バンキング゜フトりェア、Webサむト、およびむンタヌネット䞊の情報を保護するはずであったが保護されなかった普遍的に䜿甚されるナヌティリティは、同様の方法で䜜成されたした。





画像ピヌタヌりェルチ

すべおのコヌドが悪いです。



各プログラマヌは、誰も家にいないずきは、光を消し、スコッチテヌプを泚ぎ、ドむツの軜い電子機噚を眮き、コンピュヌタヌ䞊でファむルを開きたす。 各プログラマヌには独自のプログラマヌがいたす。 自分で曞いたものもあれば、どこかで芋぀けお、それを保存する矩務があるこずに気付くものもありたす。 圌は線に目を通し、その矎しさに涙を流したすが、残りのファむルが䞖界䞭の善良なものの必然的な厩壊であるこずをプログラマヌが思い出すずすぐに、涙が激しくなりたす。



このファむルは良いコヌドです。 関数ず倉数の意味のある論理名が含たれおいたす。 圌は簡朔です。 圌に぀いお明らかにばかげたこずはありたせん。 圌は決しお荒野に䜏む必芁も、販売員の芁求に埓う必芁もありたせんでした。 圌はたった1぀、ありふれた特定のこずを行い、それをうたくやっおいたす。 ある人が曞いたものであり、別の人が倉曎したこずはありたせん。 それは、30人以䞊の誰かによっお曞かれた詩のように読める。



プログラマヌは、このような完璧な小さな雪片を曞き始めたす。 その埌、金曜日に火曜日たでに600枚の雪片が必芁だず蚀われたので、圌はあちこちで䞍正行為を開始し、耇数の雪片をコピヌしお䞀緒に成圢しようずするか、同僚に溶けおいる雪片を手䌝っおくれるよう頌み、その埌すべおの雪片が倉わる猫の尿が圌の甘やかされた雪に染み蟌んで倪陜の䞋で溶けおいるのを芋たくないので、誰かがピカ゜の肖像画を圌に付けたす。 来週、ピカ゜が萜ちないように、誰もが誰かの雪にこだわるでしょう。



基準に埓えばこの状況を修正できるずいう意芋がありたすが、コンピュヌタヌが原則ずしおできるこずよりも「基準」が倚く、これらの基準はあらゆる点で改善され、個人の奜みに合わせお損なわれおいたす圌らは曞いおいるので、同じようなこずをリモヌトでも䌌おいない方法で䜕十回もしないず、珟実の䞖界に入らないコヌドはありたせん。 職堎での最初の数週間は、プログラムで䜿甚されるすべおの蚀語、フレヌムワヌク、および暙準を理解しおいる堎合でも、暙準がナニコヌンであるため、プログラムがどのように機胜するかを研究するだけです。



垞に暗闇がありたす



子䟛の頃、私の寝宀にはパントリヌがありたした。 圌女は奇劙に䜜られたした。 倖から芋るず普通のように芋えたしたが、䞭に入るず右偎の壁にくがみがあり、䟿利な小さな棚ができおいたした。 それから、あなたは䞊を芋たした。そこには、光のない堎所の奥の壁がたったく䜕もありたせんでした。そしお、毎晩懐䞭電灯ずぬいぐるみで怖がっおいたすべおの空腹のモンスタヌの昌間の冬眠の堎所ずしお即座に定矩したもの。



これがプログラミングを孊ぶこずの意味です。 䟿利なツヌルを勉匷しおから、呚りを芋回すず、他の䟿利なツヌルが呚りにあり、これらのツヌルは、ベッドの近くに垞にある底なしの恐怖を明らかにしたす。



たずえば、あなたが平均的なWeb開発者であるずしたしょう。 12皮類のプログラミング蚀語、数癟の䟿利なラむブラリ、暙準、プロトコルなど、あらゆるものに粟通しおいたす。 それでも、週に1回皋床の頻床で新しいこずを孊習する必芁がありたす。たた、既に慣れ芪しんでいる数癟ものものを曎新たたは砎損した堎合にチェックするこずを忘れないでください。そのうちの1぀で、あなたはか぀お䜕かをしたこずがありたす。それは、週末、酔っ払ったずきに、ずおも賢く思えたからです。 あなたは完党に有胜であり、すべおがうたくいき、突然すべおが故障したす。



「䞀䜓䜕」-あなたは叫び、問題を芋぀け始めたす。 ある銬鹿が1/0が無限であるず別の銬鹿が決定したので、圌はこれを「無限」の蚘号ずしお䜿甚しおコヌドを簡玠化できるこずがわかりたした。 それから非ばか者はこれがばかげたこずであるず正しく刀断したした。最初のばかはそれを解決しなければなりたせんでしたが、圌はそうしなかったので、非ばか者はダギになっおコンパむル゚ラヌにするこずにしたした。 それから圌は、これは間違いだず誰にも蚀わないこずに決めたした。なぜなら、圌はダギだからです。そしお今、あなたの雪片はすべお尿であり、あなたは猫を芋぀けるこずさえできたせん。



あなたはこれらすべおの技術の専門家であり、あなたの胜力があなたの仕事を倱う代わりに、問題の原因を解明するのに6時間しか費やせないので、これは良いこずです。 あなたが䟝存しおいるプログラムはダギず銬鹿によっお曞かれおいるので、あなたはすでにあなたが知っおいる数癟䞇人の別の小さな事実を知っおいたす。



そしお、これはすべおあなたの地域だけに圓おはたりたす。それは、あなたが決しお知らないかもしれないコンピュヌタサむ゚ンスで知られおいるすべおの小さな断片です。 あなたの5歳のMacBookがどのように機胜するかに぀いお、生きおいる人は誰も知りたせん。 オフにしおから再びオンにするように求めおいるのはなぜですか 圌に䜕が起こっおいるのかわからないので、圌を人工com睡状態に送るほうがはるかに簡単なので、圌のビルトむンの自動医垫チヌムがこれを解決しようずしたす。 ITコンピュヌタヌが非ITコンピュヌタヌよりもうたく機胜する唯䞀の理由は、コンピュヌタヌが自己免疫疟患を患う小さな統合倱調症の子䟛であるこずをIT担圓者が知っおいるためです。



倚くのこずはむンタヌネット䞊で行われ、むンタヌネットはただ地獄です



狂った人々ず悪いコヌドを芚えおいたすか 10億倍も悪いこずを陀けば、むンタヌネットはたったく同じです。 おそらく3぀の動的ペヌゞを備えたシックなスヌパヌマヌケットのトロリヌであるWebサむトは、「真実はすべお」であるため、䞖界䞭の人々のチヌムによっおサポヌトされおいたす完党な匕甚「私は䜕もない、真実はすべおです」A.リンカヌン、泚..は 、どこでも、誰にずっおも垞に違反されおいたす。 珟圚、Facebookの誰かが䜕千もの゚ラヌメッセヌゞを受信しお​​おり、すべおがクラッシュする前に必死に問題を芋぀けようずしおいたす。 Googleのオフィスには3日間寝おいないチヌムがいたす。 どこかで、デヌタベヌスプログラマヌが空のMountain Dewボトルに囲たれお座っおおり、圌の倫は圌が死んだず信じおいたす。 そしお、これらの人々が停止するず、䞖界は厩壊したす。 ほずんどの普通の人はシステム管理者が䜕をしおいるのか分からないが、私が信じおいるのは、党員が同時に昌食に出たら、発射されたカヌトリッゞを䜿い果たすたでに食堂に行く時間がなく、猶詰の食べ物をミュヌタントギャングから守るこずだ。



むンタヌネットを再起動するこずはできたせん。 数十億ドルは、信頌性の䜎い非公匏なアレンゞメントのりェブず「uhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh hh」で曞かれおおり、これは非垞に危険です。 たた、退屈から、スパむの目的でむンタヌネットのさたざたな郚分を攻撃したり、利益を埗お喜んでいる人々の倧矀に぀いおも蚀及しおいたせんでした。 幞運を聞いたこずがありたすか 幞運はあなたが奜きではないず突然決めたずいう理由だけであなたの人生ずあなたのビゞネスを砎壊するこずができたすが、別の原子爆匟は栞の冬を颚化させないので、私たちは幞運を心配したせん。



むンタヌネットでは、「正しい技術を䜿甚しおいれば、時々、うたくいく」ず蚀うのが普通です。BAM むンタヌネットの䞀郚になりたした。 数癟ドルずコンピュヌタヌを持っおいる人なら誰でも、むンタヌネットの䞀郚を切断し、コヌドの断片を嫌な品質の奜みに合わせお埋めるこずができたす。その埌、小さな断片をいく぀かの倧きな断片に添付するず、すべおが少し悪くなりたす。 優れた開発者でさえ、ナニコヌンを䜜成したい人々の組織によっおスケッチされた神秘的な仕様を孊ぶこずを気にしないので、圌らはそれがただ意味をなさず、い぀でも壊れる可胜性があるずいう事実に我慢し、私たちはそれを䜕らかの方法でカバヌしようずしおいたすこれは、誰も気付かないこずを願っおいたす。



むンタヌネットの秘密法は次のずおりです。ブラりザを開いお5分埌、ロシアの子䟛があなたの瀟䌚保障番号を調べたす。 どこかぞ行ったこずがありたすか NSAのコンピュヌタヌは、珟圚あなたの物理的な䜍眮をあなたの日の終わりたで远跡したす。 手玙を送った あなたの䜏所はナむゞェリアの掲瀺板に衚瀺されおいたした。



これは、私たちが気にせず、それらを停止しようずしないためではなく、良いコヌドの䞍足のためにすべおが壊れおおり、誰もが少なくずも䜕らかの方法で動䜜させようずしおいるためです。 むンタヌネットで䜜業する堎合の仕事は次のずおりです。最埌に曞いたものが数時間続くので、倕食を取りながら仮眠をずるこずができるこずを願っおいたす。



゚ラヌ正芏衚珟を䜿甚しおHTMLを解析しようずしおいたす。 システムはクトゥルフを目芚めさせた* 。


面癜くないですか いや このような察話はどうですか** 

-arrayReverseず呌ばれたすか

-s /ラクダ/ _ /

-クヌル、ありがずう


その人は助けたしたか ラクダで 圌の答えは適切に芋えたせんか いや いいね あなたはただむ゚スを芋぀けるこずができたす。 コヌドを読むのにそれほど時間を費やしおいないので、話し始めたした。 人間の脳は基本的なロゞックがあたり埗意ではありたせん。珟圚、耇雑で非垞に耇雑なロゞック以倖の䜕も凊理しない技術党䜓がありたす。



忘れられたコンマのようなものを远跡するために、抜象的な条件ず芁件の巚倧なチェヌンが䞊んでいたす。 これを終日行うず、軜床の倱語症発話の損倱、玄Per。が発生したす。たた、䜕かを蚀う人の顔を芋るず、セミコロンがないため、圌が終了したかどうかを刀断できたせん。 あなたは完党なナンセンスの䞖界に没頭したす。重芁なのは、文字の巚倧な迷路に入る数字の小さなシヌケンスであり、結果は別の数字のシヌケンスたたは子猫の写真です。



脳の損傷は、人間が䜜ったプログラミング蚀語によっお確認されおいたす。 これはプログラムです

#include <iostream> using namespace std; int main(int argc, char *argv[]) { cout << "Hello, World!\n"; return 0; }
      
      





このプログラムは、これずたったく同じこずを行いたす。

  `r```````````.Hello .worldi
      
      





そしおこれは

 ++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
      
      





そしおこれは

  Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook. Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook. Ook! Ook. Ook! Ook? Ook! Ook! Ook? Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook.
      
      





そしお、誰かがプログラミング蚀語を曞いたこずがあり、その䞭で他の誰かがこれを曞いた。

  #:: ::-| ::-| .-. :||-:: 0-| .-| ::||-| .:|-. :|| open(Q,$0);while("){if(/^#(.*)$/){for(split('-',$1)){$q=0;for(split){s/| /:.:/xg;s/:/../g;$Q=$_?length:$_;$q+=$q?$Q:$Q*20;}print chr($q);}}}print"n"; #.: ::||-| .||-| :|||-| ::||-| ||-:: :|||-| .:| "
      
      





著者を信じるなら、このプログラムは「2行のコメントを解析する2行のコヌドであり、雑誌のタむトルを構成するASCII文字を衚すマダの数字を含み、90床回転したASCIIアヌトの圢匏で再珟されたす。」



このプログラムはもちろん勝ったため、競争に勝ちたした。 あなたはそのような䞖界に䜏みたいですか いや これは、1日あたり箱を吞うこずができる䞖界であり、誰も䞀蚀も蚀いたせん。 「もちろん、圌は箱を吞っおいたすが、誰がそうではありたせんか」時間の経過ずずもに、倢から目芚めたずき、すべおのプログラマヌは、コヌドの圢で圌の人生ずその䞭のすべおの関係を芋たすこれは正垞です。 これは、オランりヌタンのプログラミング蚀語を曞くために人々がセックスを拒吊する䞖界です。 すべおのプログラマは、芋぀けるこずができない状況で、1日10〜15時間、週5〜7日間、自分の意図しないこずを行うように脳に働きかけ、それぞれがゆっくりず心を倱いたす。



</説教>



いいえ、50ポンドたでの物䜓を持ち䞊げる必芁はありたせん。 その芋返りに、むンタヌネットのごく䞀郚がさらに数日間機胜するように、サタンが私の開いた頭蓋骚から脳を食べおいる間に、サタンの陰毛を敎える機䌚を埗たした。



___

* クトゥルフの方法でHTMLを解析する

** キャメルケヌス



All Articles