Table of Contents
プログラミングに関する驚くべき10の事実:おそらくあなたが知らなかったこと
プログラミングは、魅力的な物語、奇妙な癖、そして驚くべき事実に満ちています。あなたがベテランの開発者であろうと、始めたばかりであろうと、これらの豆知識はきっと楽しませてくれ、次のチームミーティングで同僚を感心させるかもしれません。
1. 最初のコンピュータのバグは実際の虫だった
システム内の欠陥や誤動作を表す「バグ」という用語はコンピュータ以前から存在していましたが、最初に記録されたコンピュータの「バグ」は実際に本物の昆虫でした。1947年、グレース・ホッパーと彼女のチームは、ハーバードマークIIコンピュータのリレーに蛾が挟まっているのを発見しました。彼らはその蛾をログブックにテープで貼り付け、「実際にバグが発見された最初のケース」という注釈を付けました。
蛾がテープで貼り付けられたままのログブックは、スミソニアン国立アメリカ歴史博物館に展示されています。
2. 「Hello, World!」は1972年に生まれた
有名な「Hello, World!」プログラムは、1972年にBプログラミング言語(C言語の前身)のドキュメントで初めて紹介されました。ブライアン・カーニハンが最初の「Hello, World!」の例を書き、彼とデニス・リッチーの独創的な著書「Cプログラミング言語」を通じて広く普及しました。
#include <stdio.h>
int main() {
printf("Hello, World!\n");
return 0;
}
3. 最初のプログラマーは1800年代に生きていた
エイダ・ラブレスは、世界初のコンピュータプログラマーとして広く認識されており、彼女は19世紀に生きていました!1843年、彼女はチャールズ・バベッジの解析機関に関するノートを発表し、そこには機械によって処理されることを意図した最初のアルゴリズムと認識されるものが含まれていました。彼女は、単なる計算を超えたコンピューティングの可能性に気づき、機械が記号を操作したり、音楽を作成したりすることさえも構想していました。
4. QWERTYキーボードはタイピングを遅くするために設計された
QWERTYキーボードのレイアウトは効率のために設計されたものではありませんでした。むしろその逆です!1870年代に機械式タイプライターのために作成され、一般的な文字のペアが速すぎるとタイプバーが詰まるのを防ぐためでした。頻繁に使用される文字を離して配置することで、実際にはタイピストの速度を低下させました。より効率的な多くの代替案が開発されたにもかかわらず、QWERTYは世界中で標準的なキーボードレイアウトであり続けています。
5. 火星探査車はJavaScriptで動作している
別の惑星で初めて動力飛行を成功させたNASAのインジェニュイティ火星ヘリコプターは、F´(F Prime)と呼ばれるオープンソースソフトウェアフレームワークで動作しています。飛行制御ソフトウェアには、JavaScriptで書かれたコンポーネントが含まれています。つまり、簡単なウェブサイトを作成するために使用するかもしれない言語が、火星の探査にも役立っているのです!
6. プログラミング言語は人の名前にちなんで名付けられている
いくつかのプログラミング言語は実在の人物にちなんで名付けられています:
- Pascalは数学者のブレーズ・パスカルにちなんで名付けられました
- Adaはエイダ・ラブレスにちなんで名付けられました
- Haskellは論理学者のハスケル・カリーにちなんで名付けられました
- Pascalは数学者のブレーズ・パスカルにちなんで名付けられました
7. マトリックスのコードは実は寿司のレシピ
映画「マトリックス」で画面を流れ落ちる象徴的な緑色の文字は何でしょうか?それらはランダムではありません。「デジタルレイン」は、プロダクションデザイナーのサイモン・ホワイトリーが妻の寿司の料理本から日本語の文字をスキャンして作成しました。つまり、仮想現実システムを表すコードは、実際には日本食のレシピだったのです!
8. 歴史上最も高価なバグ
1962年、マリナー1号宇宙探査機は、プログラミングエラーが原因で離陸直後に破壊されました。コード内のハイフンが1つ欠けていたため、ロケットがコースを外れ、ミッションコントロールは自爆シーケンスを開始せざるを得ませんでした。この小さなタイプミスにより、NASAは今日の金額で1億3500万ドルに相当する費用を負担しました。
9. 最初のウェブサイトはまだオンラインにある
CERNのティム・バーナーズ=リーによって作成された世界初のウェブサイトは、1991年8月6日に公開されました。驚くべきことに、それは今日でも元のURL(http://info.cern.ch/hypertext/WWW/TheProject.html)でアクセス可能です。それはワールドワイドウェブとは何かを説明する簡単なページです。
10. 700以上のプログラミング言語が存在する
ほとんどの開発者はJavaScript、Python、Javaなどの人気のある言語の小さなサブセットで作業していますが、700を超える注目すべきプログラミング言語が存在します。これには、主流の言語から、Brainfuck、Whitespace(スペース、タブ、改行のみを使用)、LOLCODE(lolcatミームのスタイルで書かれたもの)などの難解な言語まで、あらゆるものが含まれます。
HAI 1.2
CAN HAS STDIO?
VISIBLE "HELLO WORLD!"
KTHXBYE
ボーナスファクト:コーディングは詩になり得る
一部のプログラマーは、「コードポエトリー」と呼ばれる、有効で実行可能なコードでありながら詩としても読めるプログラムでコードを芸術に変えます。Perlプログラミング言語は、その柔軟な構文のため、この目的に特に人気があります。開発者が形式と機能の創造的な組み合わせを披露するコードポエトリーコンテストさえあります。
次回、午前3時にコードをデバッグしているときや、技術者ではない友人に自分の仕事内容を説明しているときは、プログラミングの視点からこれらの事実の1つを取り出してみてください!