言語もフレームワークも移り変わる中で、変わらない開発の悩み
杜甫々氏は、プログラミング言語の進化を3世代に分けて紹介した。C言語やCOBOL、FORTRANといった第1世代、PerlやJavaScript、PHPなどのスクリプト言語が増えた第2世代、そしてScalaやRustのような「速くて安全なC言語」的な言語や、TypeScriptへ進化したJavaScriptが登場した第3世代である。ただし、TypeScriptが2012年に登場してから14年ほどの間、新しく流行しそうな言語は少ないと感じているといい、「熟成しているのか、停滞しているのか、どうなんだろうな」と述べた。この先はAIでプログラミングしていく時代になるため、新しい言語自体が生まれてこないかもしれない、という見方も示した。
Web標準についても触れ、HTML 4.0が仕様として廃止され、現在はバージョンを持たず日々更新されるHTML Living Standardが標準資料になっていることを紹介した。直近では、<select>で選択された項目にスタイルを当てるための<selectedcontent>要素が2025年7月にHTML Living Standardへ採用された一方、<param>要素は削除されたという。さらに、位置情報やカメラ・マイクへのアクセス許可を扱う<geolocation>要素と<usermedia>要素についても、追加するかどうかが審議されている段階にあると紹介した。CSSに関しては、JavaScriptを使わずにカルーセルやスクロール駆動アニメーション、ビュートランジションなどを実現できるようになったこと、ネストや関数、if文がサポートされるようになったことを取り上げた。JavaScriptについては、2015年のES6で大きな進化があった後、ブラウザで動く言語という性質上、互換性を損なうような大きな変更は少なく、比較的安定してきているとした。今後、ブラウザがTypeScriptを直接サポートするようになるのかどうかには関心があるとも語った。
好きなフレームワークは「Vanilla JS」と即答する理由
フレームワークについても、Ruby on RailsがRubyでは一貫して主流であり続けていること、PHPではLaravelの存在感が増していること、Pythonでは長らく主流だったDjangoに対して近ごろはFastAPIの採用が増えていることなど、言語ごとの流れを紹介した。そのうえで「一番好きなフレームワークは何ですか」とよく聞かれると明かし、答えは決まって「Vanilla JS」だと語った。Vanilla JSはジョークサイトとして知られ、機能を選んでダウンロードしても常にファイルサイズが0バイトになる、生のJavaScriptをそのまま使えばよいという趣旨のネタフレームワークだ。
あまりフレームワークに頼りたくない理由として、杜甫々氏は自身が携わってきたプロジェクトの多くが20年、30年単位の長期運用であることを挙げた。フレームワークにはサポート期間があり、それが切れると別のフレームワークへの乗り換えや作り直しが必要になったり、バージョンアップへの追随が負担になったりする。「開発のときには、確かにフレームワークを使うと開発コストは下がるんですけれども、作った後の運用コストというのも考えて、そのバランスを考えながらうまく使っていかなくちゃいけないな」と述べ、小規模なものは自作することが多いと語った。技術選びの基準を語った杜甫々氏は、続けて、30年間かけて培ってきた学び方のコツについても触れた。
