A few days back, a developer named Jason revealed that 99% of front end development as we know it today will be fully automated within 3 years. “The 1% will be branding and curating. 2-3 individuals will do as much as 20 does today,” he said in a post on X.
Jason isn’t wrong. HTML, CSS and JavaScript are still considered as the foundation of frontend development. HTML arranged both structure and content. This material is styled using CSS. JavaScript has the ability to provide the content an incredible level of interaction.
Source: X
However, the frontend development landscape of today is incredibly vast, with bundlers like Webpack and Rollup, automated task runners like Gulp and Grunt, and CSS preprocessors like Sass and Less that let developers modularise CSS code and work with control flow commands and other utilities in it.
There are also powerful testing tools like Puppeteer and Cypress, and UI frameworks and libraries like Vue.js, Angular, and React.
Source: X
Additionally, web developers have become quite outdated! These days, it’s unlikely that a neighbourhood bakery, dentist, or artist will hire a developer and pay them tens of thousands of dollars to create a website from the ground up. They will visit website building and hosting softwares, select a preferred template, and pay as low as $20 per month.
The Threat of Generative AI
AI tools are also taking up some frontend development tasks. A tool like Anima lets you convert Figma designs to React code. Sketch2Code converts wireframe sketches into HTML pages. These AI coding tools can increase developer productivity, allowing them to build products faster.
Source: Mckinsey
Debugging AI-generated code can be difficult, though. You may end up taking up even more time than you’d have if you’d written the code yourself.
Too Complex
This is similar to what AIM had said earlier that overuse of such tools had made frontend development more complex. Many developers on Reddit have found web development frustrating.
One developer went on to say that, “Web development is f**** stupid”, while another wrote, “I started off learning video games and desktop apps, but by the time I finished college, I realised most of software engineering is web apps, which I despise.”
Developers say that the dependency management with npm and Yarn (JavaScript package managers) is a nightmare and “frameworks like React, Redux, and Next.js are constantly changing for no reason, making the entire process unnecessarily complicated”.
The hate for web development is not new. A simple search on Google, X, Quora, Reddit, or any community platform throws thousands complaining about the constantly changing paradigm of web development for more than a decade.
The threat of low-code and no-code tools
Even large corporations have some low- and no-code use cases. For instance, Upwork uses Webflow to add new pages to its website and change it in real time without consulting the IT team.
As a result, the engineering team can concentrate on the final product instead of making quick tweaks or upgrades that the marketing team may do on their own.
Without a doubt, low-code tools may help front-end developers with some jobs. For instance, they can create templates that can be used to generate designs rather than having to start from scratch.
Too Early To Call It Quit
However, not everyone shares this negative view. Some see the challenges of web development as opportunities for interesting projects. “There are so many interesting projects in web development. People think it’s just building simple websites, but web apps can have so many interesting challenges and depth,” a user noted.
Moreover, simply using AI tools won’t help you build a website. According to the McKinsey study “Unleashing developer productivity with generative AI,” AI code tools produced “incorrect coding recommendations and even introduced errors in the code.”
The project or organisation’s context is unknown to the tools. You have to provide the context as a developer, meaning you need to be great at prompt engineering.
AI code generation tools are also more suitable for simpler tasks, like generating code snippets. They do not generate helpful code in more complex use cases.