Tailwind and Bootstrap: Rethinking CSS Frameworks for a Better Web
Written on
Chapter 1: Understanding CSS Frameworks
When discussing CSS frameworks like Tailwind and Bootstrap, it's essential to establish a few ground rules. To start, I must clarify my personal experience: I have not used Tailwind, and my encounters with Bootstrap were minimal and long ago. I neither advocate for nor against these frameworks. In truth, my interest in them is quite limited. đ¤ˇââď¸
In our discussions, we often reference Jason, a staunch advocate for web accessibility. His expertise in HTML, CSS, and accessibility is profound, making him a reliable source of knowledge. Yet, he frequently critiques frameworks like Tailwind, Bootstrap, React, and Vue, labeling them as subpar options.
Interestingly, Jason's perspective is not unique; many share his views. I completely understand the concerns about Tailwind and Bootstrap, as they likely have significant drawbacks, and Iâve had my own learning experiences with Bulma, which I found valuable, though it might not be the ultimate solution either.
Recently, a colleague posed a question on our company Slack regarding Tailwind:
"Iâm looking to improve my poor CSS skills and found Tailwind CSS appealing for a hobby project. Has anyone tried it? What are your thoughts?"
Amid the generic replies pointing to various resources, one response stood out:
"Honestly, I find Tailwind visually unappealing and contrary to the principles of semantic CSS. While it may suffice for quick projects, itâs not ideal for learning CSS or creating maintainable code."
While I can appreciate the critiques, what troubles me is the intensity of the arguments against these frameworks. Critics often fail to offer constructive alternatives. Jason may be an expert, but not everyone shares his level of proficiency. Many developers don't aspire to be experts; they simply want to create functional solutions and add value to their users' experiences.
This is where the rhetoric becomes problematic. The dismissive attitude towards those who choose to use frameworks is, in my opinion, quite elitist. Developers come from various backgrounds and possess different skills and aspirations. Itâs crucial to recognize that not all developers are on the same journey, and this lack of understanding can lead to an exclusionary environment.
Having read many of Jasonâs articles on Medium, I admire his insights, though I find his repetitive style somewhat tedious. His singular piece of advice seems to be:
"Learn HTML/CSS/JavaScript properly."
While this is certainly valuable, simply telling people to âdo it rightâ doesnât address the complexities of the industry. Jason has proposed an intriguing concept called SSMPL to improve HTML, but he himself refers to it as a mere dream, lacking the support necessary for implementation.
The reality is that the web is a multi-trillion dollar ecosystem, with companies vying for a share of the market. The demand for software engineers far exceeds the supply, and itâs unrealistic to expect all developers to be experts in HTML and CSS. Suggesting that everyone should âjust learn properlyâ is as futile as proposing that all societal issues could be resolved by simply urging people to stop being ignorant.
What I challenge these critics to do is to leverage their expertise and create their own frameworks. Build a framework that is clean, semantic, and accessible. Call it Semantic Maximus or any name you prefer. Use your knowledge to promote a better web experience and help others understand the advantages of your approach.
Create a framework that enhances accessibility and usability, and don't fear the potential loss of clients who may seek out poorly designed solutions. Your innovation could revolutionize how we approach web development.
How difficult can this be? Surely itâs easier than convincing every developer to master HTML, CSS, and JavaScript overnight.
ÂŻ_(ă)_/ÂŻ
Read more:
The first video titled Do You Really Need Bootstrap or Tailwind? discusses the necessity and effectiveness of using these frameworks versus creating custom solutions.
The second video titled Should You Use Tailwind CSS? provides insights into the advantages and disadvantages of adopting Tailwind CSS in web projects.