はてなキーワード: ファウラーとは
単体テストというのは、画面を手動で操作してスクリーンショットを撮る仕事だった。エクセルで仕様書を書き、レビューをしていたが、レビューアーはテストケースよりも、枠線の整え方に気を配っていた。
誰かが自動テストを導入しようと言い出した。「再現性がある」「保守性が高まる」「もっと良くなる」と口々に言われていた。
でも、テストコードを開発する工数はどうするのか、開発コードが増えればさらに大変になるのではないかと不安があった。
それでも、これが実現すれば、何かが大きく変わる予感がした。
アプリケーションフレームワークはStrutsだった。フォームをポストする瞬間にカオスが生じ、50行の無駄なコードを書き、100行の読みにくいコードを理解することが技術者の条件だった。
ある人が「レイヤリング」という概念を持ち出し、別の誰かが「DI」と言い出した。アプリケーションアーキテクチャという言葉も登場し、ファウラーという人物の名前も聞こえるようになった。
新しい構造が提案され、それに影響を受けながら、「いつかは美しいアプリケーション構造が生まれるのかもしれない」と夢を抱いていた。
当時、PerlでCGIを作っていたが、PHPやRubyが登場した時は、正直Web"サイト"を作るためのものだと侮っていた。
しかし、次々と洗練されたWebアプリケーションフレームワークが生まれ、StrutsやJavaEEよりもはるかに使いやすくなっていった。
数多くのWebフレームワークの中で、どれを選ぶべきか悩みながら、「いつか完璧なWebフレームワークが現れるかもしれない」と期待していた。
サーバーは冗長化され、ReversProxyを使い、セキュリティのために構成を変更してきた。そしてクラウドが登場し、Dockerなんて本番で使えないと言っていた時代から、
気がつけばどこに存在するのかもわからないクラスターの中で、コンテナアプリが動いている時代になった痛快だ。
かつてLinuxマシン一台を「鯖」と呼んでいた時代から、世界は目まぐるしく変化し続けるとかと思っていた。
誰かがAjaxと言い出し、別の誰かがReactと言い出した。「こんな方法でHTMLを作って良いのだろうか?」と疑問に思いつつも、「Webはアプリケーションだ」という感覚が強まっていた。Webアプリケーションがどう進化していくのか、未来を感じることができた
私たちは、ソフトウェアを開発すること自体に大変さを感じていた。新しい技術やフレームワークが次々と登場し、その都度課題が解決される一方で、新たな課題が生まれる。これほど面白いことはなかった。そしてエンジニアたちには一体感があり、誰もが自分なりの方法で課題を解決し、そのフィードバックループが世界を動かしていた。だからこそ、今は少しつまらない。変化は穏やかになり、「お金を稼ぐ」という目標だけが共通となり、課題は個々の事象に閉じ込められている。しかし、それが悪いことではない。ただ、私たちの時代が変わったのだ。
かつては、私たちの目の前には普遍的な課題があり、それぞれがそれぞれの場所で課題を解決し、そのフィードバックループが世界を動かしていた。
生成AIで例えると、それをどう使うかではなく、エンジニアが一丸となって生成AIをチューニングしていた。世界情勢で例えると、世の中の飢餓を全世界の人がアイディア出して、解決しようとしてたいた。
今でも、普遍的な課題は世界中に転がっているが、それらは高度で、私たちには手が届かないものが増えてしまった。
ITは面白かった。プログラミングが分かるだけで、世界の課題を一緒に解決できる時代だった。それぞれが自分の場所で働くだけで、世界を動かしていた。そんな時代が終わってしまったと感じる。
老害といえば昔話だろ!
ボブおじさんかテンガロンハットおじさんにこれ聞きたい
あっよく見るとマーチン・ファウラーのあの帽子はテンガロンハットじゃないっぽいな。
なんなのあれ。
インディ・ジョーンズの帽子みたいな奴。
って今ググったら少なくともインディ・ジョーンズの被ってるあの帽子はインディ・ジョーンズ・ハットって言う事知って驚いたよ。
https://ja.wikipedia.org/wiki/インディ・ジョーンズ・ハット
こういうのおじさんとかに言ったら「今の子はインディ・ジョーンズ・ハットも知らないのか…」と絶句されるのかな。
はてぶの記事を上から読んでいくのにもすぐに飽きた。
コンビニ飯ももういいや。
モルモットみたいに部屋をうろうろして使ってない2Kの倉庫部屋を開け放したら、
それだけで空気が淀んだ。
部屋の片隅にはここ二年間まともに開いてもない蔵書の山。
拭ったらそれだけで咳が出た。結城浩さんのデザインパターンの本にマーチン•ファウラー氏のリファクタリング。
ここ最近、参画するプロジェクト業務はテスターばかりで、そんな概念があることすら忘れていた。
PMになってもおかしくない歳で、テスターばかりやっている自分が今更読んで何になるんだよと思いつつ、ぱらぱら捲ってみる。
「このコンストラクタにpublicがないのは同じパッケージ以外からの参照を防ぐため」←ここ使えるっ!
『使える』かよ。ひどく気に障るメモだった。