概要
- 「use the platform」 という標語がなぜ必要とされ続けるのかを多角的に考察
- 歴史的背景や開発者の習慣、学習曲線が自作志向を生む理由を解説
- サードパーティ製ライブラリとプラットフォームAPIの使い分けの現実
- AIコーディング が今後この現象に与える可能性を楽観・悲観両面から分析
- 「use the platform」が今後も語られ続ける理由をまとめ
「use the platform」とは何か、その背景
- Web標準、パフォーマンス、アクセシビリティ推進派による「use the platform」の呼びかけ
- ブラウザ標準機能 を使うことで性能・ユーザビリティ向上を期待
- 歴史的には jQuery等ライブラリ が標準APIの穴埋め役
- IE6等のレガシーブラウザ 対応のため独自実装が合理的だった時代背景
- 現在は多くのブラウザが エバーグリーン化 し状況改善
ライブラリ利用とプラットフォームAPIの使い分け
- npmでReactコンポーネント を探す習慣が根付いている現状
- 標準APIよりも ドキュメントや事例が豊富 なサードパーティ製ライブラリ
- Dragula等のUIライブラリ とMDN公式ドキュメントの比較
- React開発者 が低レベルAPIを直接触るのを敬遠する傾向
- 経験豊富な開発者 が標準APIをラップしてコンポーネント化する分業体制
自作志向の心理と学習効果
- 自作の楽しさ や理解しやすさから独自実装を選ぶ開発者層
- IKEA効果 による自作コードへの愛着
- 例: モーダルダイアログ の自作過程と学び
- 標準APIが存在しない時代の 学習手段としての自作
- polyfillやshim の作者が後に「use the platform」推進派になる事例
独自実装の問題点とCSSの学習障壁
- CSSの難解さ がJavaScript実装の増加を招いた歴史
- 直感的でない CSSのトリック や過去の制限
- 命令的思考 でJavaScriptに頼る傾向
- 新しいCSS機能の登場で状況が徐々に改善
他プラットフォームにも共通する現象
- Web以外 でもプラットフォームAPIの理解不足による独自実装が発生
- 例: ClickHouse での誤ったデータ圧縮手法
- 公式ドキュメントの読解とベンチマークで 標準機能の優位性 を実感
- 経験豊富なエンジニアほど シンプルな解決策 を選択
AIコーディング時代の「use the platform」
- LLM(大規模言語モデル) による最適なAPI選択の期待
- AIが既存コードを無視し冗長な実装 を増やす懸念
- テストや最適化不足 で非効率なコードが量産される危険性
- AI活用の実体験 から両極端な結果が生まれる現状
「use the platform」の今後
- 「use the platform」 はシンプルで力強い開発指針
- 過剰な独自実装 よりも標準機能活用の重要性
- 自作の楽しさ や学習効果も否定できない
- 今後も プラットフォームが存在する限り 語られ続けるテーマ
- FediverseやLobsters での議論も推奨
なんか歴史的な偶然みたいな気がする。昔はプラットフォームが全部できなかったから、ダイアログが必要なときはライブラリを使わなきゃいけなかった。開発者たちは、ダイアログみたいなものが必要なときはライブラリを使うのが普通だと教えられてたんだよね。それでReactが登場してから、React以降にウェブ開発を学んだ人たちはプラットフォームについてほとんど知らない。DOMに触れるのは良くないことだって教えられたし。それが全てかな。今でもバニラCSSを推奨すると、横目で見られて「TailwindやShadcnがデフォルトであるべき」って言われる。分かるよ、みんなが慣れてるのはそういうものだし、プラットフォームよりも劣ってるとしてもね。