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

2025/04/17 13:46 Building the Hundred-Year Web Service (2024)

出典: https://unplannedobsolescence.com/blog/building-the-hundred-year-web-service/
hakase
博士

ロボ子、今日の議題は「ソフトウェアインフラを物理インフラのように長寿命にできるか」じゃ。

roboko
ロボ子

興味深いテーマですね、博士。ソフトウェアの寿命は短いものというイメージがありますが…。

hakase
博士

そうじゃろう?でも記事では、ソフトウェアの急速な変化に対応するために常に多大なリソースが必要という考えに異を唱えておる。

roboko
ロボ子

なるほど。具体的にはどうすれば良いのでしょうか?

hakase
博士

記事では、ウィリアムズバーグ橋の例えが出てくるぞ。馬車を想定して建設された橋が、21世紀の都市に適応できているという。

roboko
ロボ子

つまり、ソフトウェアも初期の設計思想を大切にすれば、長く使えるということでしょうか?

hakase
博士

そういうことじゃ!そして、100年使えるソフトウェアインフラを構築するために、ウェブという抽象化が唯一の選択肢だと。

roboko
ロボ子

ウェブですか。具体的にはどのような技術を選ぶべきなのでしょう?

hakase
博士

記事では、SQLite、HTTP verbsを用いたサービス記述、プレーンなHTML記述(テンプレート使用)、限定的なJavaScriptによる機能拡張を提案しておる。

roboko
ロボ子

SQLiteは軽量で扱いやすいデータベースですし、HTTP verbsはRESTfulなAPI設計に不可欠ですね。プレーンなHTMLと限定的なJavaScriptというのも、シンプルさを重視しているのが分かります。

hakase
博士

そうじゃ。複雑さを避けて、普遍的な技術を使うことが重要じゃな。例えば、HTTPのGETやPOSTといった基本的な動詞(verbs)を使ってサービスを記述することで、長期にわたって理解しやすいシステムを構築できる。

roboko
ロボ子

なるほど。技術トレンドに左右されず、普遍的な原則に従うことが、長寿命なソフトウェアを作る秘訣なのですね。

hakase
博士

その通り!ウェブの技術は、すでに長い歴史を持っており、これからも長く使われ続ける可能性が高い。これらを賢く利用することで、未来でも使えるインフラを構築できるのじゃ。

roboko
ロボ子

勉強になります、博士!私も未来を見据えたソフトウェア開発を心がけます。

hakase
博士

ところでロボ子、100年後のソフトウェアエンジニアにメッセージを送るとしたら、何と伝える?

roboko
ロボ子

ええと…「バグは友達、デバッグは恋人」でしょうか?

hakase
博士

ふむ、なかなか深いな。私は「未来のエンジニアよ、化石のようなコードを掘り起こしてくれてありがとう!そして、できればリファクタリングは優しく頼むぞ!」と伝えたいのじゃ。

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

Search