RustのBorrow Checkerと格闘し、KubernetesのYAML地獄を抜け、TerraformでState管理に頭を抱える。

個人開発において、 オーバーエンジニアリング です!

Perlから始まり、Java、Kotlin、Rust、そしてReact/Next.jsと、あらゆるモダン技術を渡り歩いてきましたが、私が辿り着いたのは作りかけのアプリケーションばかり。

今度こそ私は間違えない!

コンテナではなく、あえて素のPHPなのか。技術的負債ではなく「技術的資産」としてのPHP戦略について、私の視点で解説します。

技術遍歴と「敗北」の歴史

まず、私の悲しい歴史を紹介します。

PerlのCGI時代を経て、PHPの簡便さに触れ、その後は型安全とパフォーマンスを求めて旅に出ました。
Javaの冗長さに絶望し、KotlinのSyntax Sugarに感動し、最終的には Rust に辿り着きました。「メモリ安全性」と「ゼロコスト抽象化」は、エンジニアとしての美的感覚を極限まで満たしてくれました。

フロントエンドも同様です。地獄のバニラJSを経て、jQueryをダサく感じ、Reactの宣言的UIに移行し、TypeScriptで型パズルを解くことで昇天する日々。

だが、ある時ふと我に返りました。

私は、インフラの世話をするためにコードを書いているのか?

Docker Imageの軽量化、マルチステージに数時間を費やし、EKS(Kubernetes)のアップグレード計画に悩み、NAT Gatewayの料金に枕を濡らす。

「動けばいい」だけのアプリケーションに、私は何をしているんだ?

AI時代にコードの定義が変わった

現代の開発フローにおける最大のパラダイムシフトは、 「コーディングの主体がAIになった」 こと。
Claude CLIやGemini CLIにプロンプトを投げれば、コードは一瞬で生成されます。

ここでRustの「コンパイラが人間に厳しい」という特性が、逆にボトルネックになります。
AI生成コードにおいて、人間がBorrow Checkerのエラーを修正する時間は無駄です。動的型付け言語の「ランタイムで動けば正義」という緩さは、AIとのペアプロにおいて圧倒的なスピードを生みます。

だからこそ、 PHP なんです(爆)

なぜ「PHP + レンタルサーバー」が最強のアーキテクチャなのか

ここでいうPHPは、Laravelとかいう、私が使ったこともないフレームワークでガチガチに組む話ではありません。もっとプリミティブな、あるいは軽量フレームワークを用いたミニマムな構成です。

1. デプロイパイプラインの極小化 Rsync 祭り

CI/CDパイプライン? Blue/Greenデプロイ?
個人開発の初期フェーズにおいて、それらは過剰です。

  • モダン構成 : Git push -> CI (Test/Build) -> Container Registry -> K8s Rolling Update -> Pod起動待ち(Cold Start含む)
  • PHP構成 : AIが書く -> rsync -> 即反映

よくみたら、モダン構成何してんのかわからんなw

このスピード感。Rsyncなら差分転送で一瞬です。超原始的だけど。
Dockerコンテナのビルド時間を待つ間に、PHPなら本番環境で動作確認が終わっています。

2. コストパフォーマンスという名の「非機能要件」

AWSやGCPで、まともなRDBMSとロードバランサを用意してごらんなさい。最低でも月額数千円〜数万円が溶けます。

対して、日本の ロリポップ!エックスサーバー はどうでしょう。

  • PHP-FPMのチューニング済み
  • WAF標準装備
  • MariaDB 込み!?
  • nginx/Apacheの設定不要

これで 月額500円〜1000円 です。
これをクラウドで再現しようとすれば、VMインスタンスの管理コストだけで赤字になります。彼らは長年の運用で、PHPを動かすことに特化した「究極のマネージドサービス」を提供しています。

大丈夫、流行ってからRustに書き直せ😄

「でも、PHPじゃスケーラビリティが……」
おまいらはすぐにそう言う。だが聞きたい。 おまいらの個人サービス、秒間何万リクエスト来るんですか?

  1. AIにPHPを書かせ、共用サーバーにデプロイ。ランニングコストは月500円。
  2. サービスが当たり、サーバーが悲鳴を上げ始める。収益が発生する。
  3. ここで初めて、稼いだ金とAIを使ってRustやGoにフルスクラッチ し、コンテナ化してK8sに移行する。

最初から最終構成で作るのは、YAGNIの原則に反します。
「動くコード」を最速で市場に出すことこそが正義です。

まとめ

もし、コンテナホスティングサーバーが月500円で、RDBMS込みで、コールドスタートなしで動くなら、私だってRustがいいです。あいつは最強です。でも現実はそうじゃないです。

今の私の開発フローはこう。

  1. AIに要件を伝える。
  2. PHPコードを出力させる。
  3. XサーバーにRsyncする。

これ以上に「速く」、そして「安く」仮説検証を回せるアーキテクチャがあるなら教えてください。

泣きながら unwrap() を書くのはもうやめましょう。私たちが必要としているのは、美しい型定義ではなく、 ユーザーに使われるプロダクト なんですから。

ただいま……PHP。いじめてごめんね。

追記(2026-09-07):これは当時の思考実験で、実際の構成は別です

この記事は「AIにPHPを書かせてレンタルサーバーへrsyncするのが最速で最安」という主張で書いています。読み返すと、これが私の実際の開発フローだと受け取れる書き方になっているので、はっきりさせておきます。これは当時の思考実験で、今の構成はこうではありません。

現在はこうなっています。サイトはAstroで作ってCloudflare Workersに載せ、データベースはさくらのVPSに立てたPostgreSQLをHyperdrive経由で使っています。デプロイはmainブランチへのpushだけで、rsyncは使っていません。PHPも書いていません。

ではこの記事が全部外れていたかというと、そうでもありません。**主張の芯は「凝った技術選定より、仮説検証を速く安く回せるほうが勝つ」**で、そこは今の構成にもそのまま引き継がれています。定額のVPSを選んだのも、従量課金でデータベースの請求が想定外に膨らんだ経験があったからで、「安く固定できること」を優先した結果です。RustやKubernetesを持ち出さないという判断も変えていません。

変わったのは、その芯を実現する手段のほうです。当時はレンタルサーバーとPHPが一番速いと考えていましたが、実際に運用してみると、静的生成とエッジ配信のほうが手離れがよく、費用も抑えられました。結論は違ったけれど、選び方の基準は同じ、というのがこの記事の今の立ち位置です。