Skip to main content

Why I Bet on Go, Next.js, and AI for the Next Decade

·3 min read

I have written PHP for 15 years. Laravel for 8. Node.js for 6. These tools built everything — the hosting platforms, the licensing systems, the ERP, the WhatsApp automation. They earned their place.

But when I looked at what the next decade requires — real-time licensing APIs handling thousands of requests per second, admin panels that feel like native apps, AI copilots embedded in every product — I knew the stack needed to evolve.

Why Go

Go is not trendy. It is boring in the best way. A single Go binary serves our licensing API with 3ms response times on a $5 VPS. The same endpoint in Laravel took 80ms on a $20 server.

For licensing and hosting platforms where every millisecond matters and every dollar of infrastructure cost multiplies across 28,000 customers, Go's performance is not a nice-to-have. It is a financial decision.

The concurrency model handles thousands of simultaneous license checks without the process management overhead of PHP-FPM. The deployment is a single binary — no runtime dependencies, no package managers on production servers. Build it, ship it, forget about it.

We rebuilt our entire licensing backend on Go with Fiber, sqlc for type-safe SQL, and River for background jobs. The result: 10x faster API, 5x lower infrastructure cost, and a codebase that junior developers can read and understand in a week.

Why Next.js

Every admin panel and customer-facing dashboard is moving to Next.js 15 with React Server Components. The reasoning is simpler than it sounds.

Our WHMCS-based panels were PHP rendered. Every click was a full page reload. Server-side rendering meant the server did all the work. The user experience was acceptable in 2015. In 2026, it feels like using a fax machine.

Next.js gives us the best of both worlds: server-side rendering for SEO and initial load, client-side navigation for speed, and React components for building complex UIs that actually feel responsive.

We paired it with Refine.dev for admin panels — it handles CRUD, filters, and data tables out of the box while we focus on business logic. The developer experience went from "fighting the framework" to "building features."

Why AI

I am not building AI because it is a buzzword. I am building AI because my support team handles 200+ tickets a day, and 70% of them have answers that already exist somewhere in our knowledge base.

ServerAdmin.ai is our internal tool that reads server logs, diagnoses common issues, and suggests fixes before a human even opens the ticket. AI Ticket & Chat handles first-response triage — categorizing, routing, and answering common questions automatically.

The key insight: AI is not replacing our team. It is handling the repetitive 70% so our engineers can focus on the complex 30% that actually requires human judgment.

The Discipline of Rewriting

The hardest part is not choosing the new stack. It is keeping the old systems running while you build the new ones. We migrated our TSL licensing platform from WHMCS to the new Go+Next.js stack while serving 28,000+ customers daily. Zero downtime. Zero data loss.

The rule: never rewrite everything at once. Migrate one brand, one system, one API at a time. Keep the old system running until the new one has proven itself in production. Then — and only then — turn off the old one.

Decades of building taught me that technology choices matter less than discipline. Go, Next.js, and AI are tools. The discipline of shipping reliable software, maintaining backward compatibility, and never breaking production — that is what actually matters.