Purely Basic Front-end Web Development Is OVER, Full-Stack Web Development Is The New Norm.

Time to adapt to the change.

Purely Basic Front-end Web Development Is OVER, Full-Stack Web Development Is The New Norm.

Table of contents

Having stepped back from front-end web development for about a year to concentrate on my back-end career, I've observed significant changes in the tools and approaches we use to structuring front-end applications.

Cause

We have begun to question the viability of fully client-side rendered single-page application architecture. This is due to performance concerns like network waterfalls and evolving tooling preferences within the ecosystem, particularly regarding bundlers. These tools have undergone significant changes to address performance issues of the past, paving the way for the emergence of alternative solutions such as Vite.

With the factors outlined above, the Create React App React template, which was previously recommended by the React documentation, began to struggle in effectively addressing these issues. This prompted the React team to consider a significant shift in their approaches, focusing on reevaluating the optimal web project architecture and default tooling for applications. This involved exploring a variety of tooling options and rendering strategies, including SSR (Server-Side Rendering), SSG (Static Site Generation), ISG (Incremental Static Generation), and ISR (Incremental Static Regeneration), rather than solely relying on CSR (Client-Side Rendering).

You can observe the problem documented on the react.dev GitHub repository (new React documentation project) arising from the limitations of the suggested starter React template of the time (create-react-app) in addressing the complexities encountered by modern web projects, prompting the search for an alternative solution.

Here's the issue created by Theo Browne, who's a software engineer with great influence on Web development ecosystem with his own ideas and YouTube channel.

And here's the response of Dan Abramov, who's one of the most active contributors in the core React team.

I believe that the aforementioned GitHub issue and the given response has a definite historical value in the Web development.

My Opinion

The Web is no longer the same and it's for a good reason.

We are currently encouraged to build our new React applications using React frameworks (or "metaframeworks," as some prefer to call them) that offer improved default tooling and different rendering strategies. These frameworks aim to enhance both developer and user experiences, fostering a mindset that integrates back-end considerations with front-end development, blurring the distinction between the two in the Web platform. This shift is a significant evolution in web development practices.

The evolution of web architecture is emphasizing a more back-end centric approach, challenging "Front-end Developers" to delve into back-end concepts like establishing a REST API, validating request schemas, implementing authorization/authentication, and managing database interactions. Due to these circumstances, my perspective is that the titles of "Front-end Web Developer" and "Full Stack Web Developer" will simply evolve into "Web Developer" in the near future.

To support my viewpoint, it is notable that fully client-side rendered applications are not the default recommendation. This shift is evident in Next.js (the React framework highly endorsed in the official React documentation), where the components you create are server components by default, rather than client components.

Conclusion

As evident, the technology sector is undergoing significant disruptive changes, with AI being a prominent example. This evolution extends to web development as well.

Hence, it is crucial not to remain complacent and adhere to outdated methodologies.

It is imperative to engage in thorough research and comprehension of the current obstacles and the landscape of web development. This will ensure that we are not merely a follower of passing trends but can distinguish between the hype and enduring advancements. For this, we shall strive to attain a level of expertise that allows us to form independent opinions.

I anticipate that full-stack development will become the standard responsibility of a "Web Developer", making purely front-end development largely obsolete, except for highly specialized tasks such as 3D or browser game development.

Moreover, the threshold of entry into Web development is expected to rise.

To adapt and overcome, let's continue to learn, unlearn and relearn!