I Hate Tailwind CSS and I Hate Myself for Loving It
index.sass
I prefer SASS. I know. I can hear the haters already. I don't care. I like it. I like the way I can nest it the same as my HTML and to me, it just makes sense. I rarely get to use it, professionally. It's not popular, but I feel like it follows the original semantics of cascading stylesheets. There's a weird 80s new wave cover band name in there somewhere.
Does that make me a purist? I try not to be a purist anywhere. I feel like it leaves you with little room to move when working with a team. Learning the concepts rather than the tools allows you to move more swiftly between toolsets, and most modern teams are choosing Tailwind CSS.
tailwind.conflicted.js
When I was learning CSS, back in 19-something-shutup, I remember being forced to build a css layout for a client without using tables. Up until that point, that's all I'd used to layout websites. It was 19-mindyabusiness afterall. I remember fighting, struggling, and cursing IE5 for Mac. But I built it. It worked. My first responsive site. I learned a TON about CSS. I kinda became known as "the CSS Guy", y'know?
I like using semantic css class names, and adding all the styling to the class. Having stylesheets that are arranged like the webpages they were styling. When you have a brand color scheme that you need to follow, it makes everything easier if you have a brand-header that follows those brand rules, and allows me to go change that in one place.
Every time I type in a text-blue-500 I want to lean on something sharp. The alternate universe version of me that became a Creative Director is taking nitro pills and fanning himself. Trying not to think about all the places we'll have to change if we ever have a rebranding.
tailwind.confess.js
I've chosen it too. For projects I'm working on alone. I can't deny that it makes it easy to just slap on a col-span-4 on something and call it good. At least, it means you can rely on Tailwind to make sure your columns and rows act appropriately across devices and without fail. Meaning you can concentrate on writing the code that gets the appropriate data to the screen and stop worrying about whether the visuals are lined up properly, and I love it for that.
And I hate myself for loving it. Can't break free from the things that you do.
tailwind.convicted.js
Every shop I see these days is choosing Tailwind CSS, and I totally get it: like it or not.
I've accepted that most teams don't care about the semantic naming of CSS classes. Why should they? Modern, front-end frameworks mean that the repetition matters less; you're reusing the whole component.
What about Creative Director, Lee? He's dead. Killed by some bad shrimp at a local LAMP stack Hackathon. Faint sound of "Peaceful Easy Feeling" floating on the breeze. ReST easy, brother.
README.md
- I still prefer SASS
- Tailwind is winning in the world
- Better suck it up and enjoy what it provides