Hacker News new | ask | show | jobs
by serious_angel 72 days ago
//

  > The backend: from simple to absurdly complex...
  > Here's where the real inversion happened...
  > 2011 stack: PHP...
  > 2026 stack: Next.js...
Welp, it's your choice to complicate the stuff. You could easily keep the PHP and just add ReactJs or even better - VueJs.

Have you ever checked out Laravel at all, considering your Rest API endpoint even?

And why use Docker in Production of personal projects that are supposed to be used for high load? Why not deploy on a finite VPS/VDS environment existing explicitly for this single workflow? Why add a separate layer in already isolated environment?

2 comments

Totally fair points. Back in 2011 everything was built in plain PHP, and honestly, it worked perfectly for years. The shift to Next.js came much later, mainly because we needed proper SSR to handle SEO at slace. We're talking about 4 languages and around 13M pages. in that context, Next.js really shines, especially with file based routing and ISR making things much easier to manage.

Regarding Docker, we have quite a bit running on a single EC2 instance: PostgreSQL with PostGIS (about 13 million rows), Redis, Nginx, theAPI and web app. Using Docker Compose lets us keep everything versioned and spin up or redeploy the whole stack in seconds. Without it,we'd dealing with dependencies manually, and that's where things tend to get messy fast.

How is PHP not SSR?
You're right, PHP is SSR by nature. What I meant is that Next.js gives us SSR plus built-in routing for 4 languages, ISR for cache invalidation on ~900K pages, and a React frontend — all in one framework. With PHP we'd need to wire that up separately.

That said, honestly, the ecosystem momentum probably influenced the decision more than a strict technical comparison. Looking back, we probably weren't critical enough about whether we actually needed to move away from PHP. It works and we're happy with it, but I wouldn't claim it was the only valid choice.

> VueJS ... Laravel

It's even easier with Inertiajs