HTML

Why Frameworks Are Overused (And How to Avoid It)

The Framework-First Fallacy

In the landscape of 2026, the default response to almost any web development project is to start with a framework. Need a personal landing page? Reach for Next.js. Building a simple data dashboard? Boot up a React template. Creating a documentation site? Gatsby or Nuxt is the presumed choice.

We have reached a point where many developers — especially those who entered the industry in the last five years — literally cannot build a website without first installing a framework. This isn’t just a shift in preference; it’s a Framework-First Fallacy that prioritizes the developer’s comfort over the user’s experience and the project’s long-term health.

Build a Portfolio Without React: A Step-by-Step Guide

Why Skip React for Your Portfolio?

If you’re a React developer, building your portfolio with React seems like a “no-brainer.” It shows you know the framework, right? Not necessarily. In 2026, the real mark of a senior developer is the ability to choose the right tool for the job, not just the one they are most comfortable with.

Reaching for a heavy JavaScript framework for a site that is essentially 90% static text and images introduces what I call the “React Tax”:

Building a Personal Portfolio with Tailwind CSS

Creating a personal portfolio website is one of the first projects most web developers tackle when learning new technologies. It’s the perfect combination of practical utility and skill demonstration — a place where you can showcase your work while practicing the tools you want to master. My latest project, a Tailwind Portfolio template, demonstrates how to build a modern, professional portfolio using Tailwind CSS with features that rival complex React or Vue implementations — all with plain HTML and JavaScript.

Why Tailwind CSS?

Tailwind CSS has revolutionized the way we approach CSS styling. Rather than writing custom CSS classes for every component, Tailwind provides a comprehensive utility-first framework that lets you build custom designs directly in your HTML. The key advantage? Zero runtime overhead and complete control over your styling without ever leaving your markup.