11 ポイント 投稿者 hongminhee 2025-07-09 | 2件のコメント | WhatsAppで共有

あまのじゃくスタックの定義

  • 主流技術ではなく、あえて代替技術を選ぶ開発哲学
  • 定番スタックの対義概念として、著者が名付けたもの
  • 著者の選択:
    • Ruby: Rails → Sinatra + DataMapper
    • JavaScript: Prototype → MooTools
    • Python: Django → Werkzeug + SQLAlchemy
    • 現在: React/Next.js → Solid/SolidStart

あまのじゃくスタックの困難がもたらした成長

  • Stack Overflow に答えがなく、ソースコードを直接分析 → 技術への深い理解
  • ユーザー層が少なくコミュニティ支援も乏しい → オープンソース貢献者へと成長し、PR マージの達成感
  • 著者の経験:
    • Werkzeug の抽象化の低さ → インハウスフレームワークを構築する力を獲得
    • 「無駄足」とも呼ばれる過程 → どのスタックでも活用できる根本的な知識
  • 利点: 問題解決の過程で得られる深い技術的洞察

後発技術の利点

  • 定番スタックの問題点を認識し、改善した設計を経験できる
  • 例: Solid の fine-grained reactivity(React の仮想 DOM オーバーヘッドを回避)
  • 意外な利点: 技術の「なぜ」を理解し、よりよいアーキテクチャ設計の感覚を身につける

組み立て式スタックの隠れた価値

  • 定番スタック: 便利な総合ギフトセット
    • Rails(CoC), Django(Batteries Included), Next.js(フルスタック)
  • あまのじゃくスタック: 部品ごとに選んで手動で組み立てる
    • 著者の事例: Sinatra + DataMapper + Haml + Sass
    • 各部品の設定やミドルウェア接続の骨の折れる作業
  • 利点: 技術の内部動作原理とレイヤー間の相互作用を完全に理解できる

歴史的な教訓

  • 今日の定番も、かつてはあまのじゃく(Rails は Java の代替、React は Backbone.js の代替)
  • 利点: 未来の主流技術を先に体験し、理解する先駆者の立場

LLM 時代の逆説的な機会

  • 定番スタックの優位はさらに強まる(ChatGPT は Next.js に習熟している一方、SolidStart には不慣れ)
  • 利点: LLM が苦手な領域での専門性が、より差別化された競争力になる
  • フレームワーク利用者ではなく、真のエンジニアへ成長する道筋

2件のコメント

 
gjen6s 2025-07-09

SQLAlchemyが天邪鬼だと思ったことは一度もなかったので、珍しいですね

 
krepe90 2025-07-09

たぶん SA というより Werkzeug を見て言われたのではないかと思います。普通は Flask や FastAPI を使いますからね。ORM まで逆張りするのはなかなか難しいです。