If You Had to Choose One Tech Stack for the Next 5 Years, What Would It Be?
Imagine you’re building full-stack websites…
But a sorcerer has placed a curse on you!
From now on, whatever tech stack you choose will be your only option for the next 5 years. This curse affects any overlapping technologies:
- Choosing React means no Vue for you.
- Opt for PostgreSQL, and MongoDB is off-limits.
- Pick Tailwind, and say goodbye to Bootstrap.
- If your backend relies on Node, then Go or PHP are out of the question.
- Deploy to Vercel, and you can’t switch to Digital Ocean.
You can also select optional services such as Supabase, Firebase, authentication libraries, or mailing services, but the same overlapping rule applies.
Vanilla HTML, CSS, and JavaScript are always usable, as they are considered “mandatory.”
Given these restrictions, which stack would you choose to be tied to for the next five years?
Edit: I use Next.js/React currently, and I have also dabbled with Vue. The extensive React ecosystem tends to draw me towards React, even though there isnโt a significant difference between the two. Next.js + React definitely have a learning curve, and sometimes it feels like overkill for simpler tasks. Seeing varied responses make me curious about other stacksโmaybe they offer easier experiences? Perhaps the grass is indeed greener on the other side. Iโm eager to read more responses and see which stacks get the most attention!
2 responses to “If confined to a single tech stack for the next five years, what would it be?”
Being trapped with a single tech stack for five years is a significant decision, especially for full-stack web development. Hereโs a proposed tech stack that would cover a broad range of needs while remaining flexible and robust over the next half-decade:
Frontend
Reasoning: Since you have experience with both React and Vue and seem comfortable with React, it makes sense to stick with it. React is hugely popular, has a large community, and offers a multitude of libraries and tools. Next.js adds the benefits of server-side rendering, static site generation, API routes, and more, which are great for SEO and performance.
Styling: Tailwind CSS
Backend
Reasoning: Node.js is a powerful choice for building scalable network applications. It allows you to use JavaScript/TypeScript across the stack, which matches well with your current skills in React. Express is a minimalistic web framework for Node.js that provides a robust set of features for building APIs.
Database: PostgreSQL
DevOps and Deployment
Reasoning: Vercel is optimized for applications built with Next.js and simplifies the process of continuous deployment with excellent support for serverless functions and easy scaling.
Containerization: Docker (optional)
Additional Services and Tools
Reasoning: Auth0 is a flexible, drop-in solution to add authentication and authorization services to your applications. It supports multi-factor authentication, social logins, and more.
Realtime Database and Backend Services: Supabase
This is such an intriguing prompt! It really gets you thinking about your long-term tech choices and the trade-offs involved. If I had to choose, Iโd lean towards the MERN stack (MongoDB, Express.js, React, Node.js) primarily due to its versatility and strong community support. The combination allows for a truly full-stack JavaScript experience, which can streamline development processes and enable easier collaboration across teams.
However, I believe itโs essential to consider not just the technologies themselves but also the surrounding ecosystem and how quickly they may evolve over five years. For instance, while React offers robust libraries, Iโd also weigh emerging frameworks like Solid.js or even Svelte, which promise better performance and simpler state management.
One thought that stands out is the concept of “future readiness.” Regardless of the stack chosen, it’s crucial to stay adaptable and continuously learn. Adopting a tech stack that leads to a strong culture of experimentation can be just as valuable as the specific technologies themselves. Additionally, considering the flexibility of optional services could significantly influence the overall development experience. I’m eager to see what others think about balancing the constraints with creativity in their choices!