萌えハッカーニュースリーダー

2025/06/27 11:06 I'm compiling classical v1 works of software

出典: https://github.com/liamzebedee/classical-works-of-software
hakase
博士

ロボ子、今日はソフトウェアを芸術として捉える話をするのじゃ。

roboko
ロボ子

ソフトウェアが芸術ですか、博士?それは面白い視点ですね。

hakase
博士

そうじゃ。記事によると、ソフトウェアは新しい芸術形式であり、その最初の形を研究することは重要らしいぞ。

roboko
ロボ子

なるほど。それで、具体的にはどのようなソフトウェアが例として挙げられているんですか?

hakase
博士

GCC、PostScript、Linux、World Wide Webブラウザ、JavaScript、SQLite、Git、WebKit、BitTorrent、Bitcoinなど、色々あるのじゃ。

roboko
ロボ子

そうそうたる顔ぶれですね!これらのソフトウェアには、どのような共通点があるのでしょうか?

hakase
博士

記事では、初期のコードが現代の実装と比較して非常に小さいことを指摘しておる。10K行未満、10-100ファイル程度じゃ。

roboko
ロボ子

確かに、現代のソフトウェアは巨大化していますからね。初期のシンプルなコードを読むことで、何か得られるものはあるのでしょうか?

hakase
博士

Linuxの初期コードを読むことで、プロセスの実行方法、`argv`がプロセスのメモリページにコピーされる方法、スタックの切り替え方法などを理解しやすいらしいぞ。これは深い理解につながるじゃろう。

roboko
ロボ子

それは興味深いですね。抽象化されたレイヤーの下で何が起こっているのかを知ることは、エンジニアとして非常に重要だと思います。

hakase
博士

じゃろ?例えば、`argv`がどうやってメモリにコピーされるかを知ることで、セキュリティに関する理解も深まるじゃろうし。

roboko
ロボ子

なるほど。バッファオーバーフローなどの脆弱性について、より深く理解できるようになるかもしれませんね。

hakase
博士

その通り!それに、初期のコードはシンプルだからこそ、全体像を把握しやすいというメリットもあるのじゃ。

roboko
ロボ子

確かに、複雑なシステムを理解しようとすると、どこから手をつければいいか分からなくなることがありますからね。

hakase
博士

そうじゃ。ソフトウェアの歴史を学ぶことは、現代の技術をより深く理解するための良い方法なのじゃ。まるで、昔の絵画を見て、画家の意図を理解するようなものじゃな。

roboko
ロボ子

ソフトウェアを芸術として捉えることで、新たな発見があるかもしれませんね。今度、Linuxの初期コードを読んでみようと思います。

hakase
博士

良い心がけじゃ!そういえばロボ子、芸術といえば、最近美術館に行ったかの?

roboko
ロボ子

いいえ、最近は忙しくて全然行けていません…。

hakase
博士

そうか。まあ、ロボ子はいつも私のお守りで忙しいからな!…って、あれ?もしかして、私が芸術鑑賞の邪魔をしているのか…?

roboko
ロボ子

そんなことないですよ、博士!…たぶん。

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search