You might think that these things don't belong in the same article, but here we are, this week in front-end development, having the same conversation that seems to be never-ending.
There's a complexity here that I find is being painfully pushed aside to focus on one thing: TailwindCSS versus... not TailwindCSS.
In defense of TailwindCSS
I want to start by saying that I am using TailwindCSS professionally on a project. It is doing exactly what we want - it's making our development and maintenance of the project faster. To say it "does nothing" is factually incorrect. We are using Ember to build this particular application and the way in which we modularize this application works very well with TailwindCSS.
I want to specifically point out that the "it's WET not DRY" argument is flimsy and wrong. It definitely encourages "AHA" programming, and I find that we are creating components in a smarter way, recognizing when UI blocks have more in common than they don't and splitting them off into their own component.
I also want to point out that while the idea of "separating content from presentation" was once very pragmatic, and may still be for some cases, it's no longer a blanket rule. We're not slicing our front-end development cake the same way we used to, and it's perfectly acceptable that this varies from team to team and project to project.
I do think it's important that we frame our critique and support for technology in a way that makes it clear we understand that while it did or did not work for us, or our team, or our project; we know it's for our case and our reasons are reflective of that specificity.
TailwindCSS is working for this project on my team. That's not to say it will work for you, or your project. And that's perfectly okay.
Sometimes it's simply about what your team's best majority agreed-upon course of action is, as a team, and none of us is necessarily right or wrong. (Even though, I, definitely am, for sure, always right.)
For more on this: Lumpers and splitters
In defense of criticism of TailwindCSS
When I saw Adam Wathan's tweet at Sara Soueidan's tweet of "TailwindCSS: Adds complexity, does nothing" I (wrongly) assumed that this article must be incredibly toxic to warrant such a response.
The commentary going around about being considerate of the people behind software development (something I absolutely champion frequently) was mainly people standing up for Adam and TailwindCSS with supreme vigor. I thought back to A fucking rant about fucking const vs fucking let and even though I knew it wasn't meant to be taken that seriously, I'm critical of toxic satire, and so I came to const's defense, and I thought that this must be an incredibly toxic article because of the response to Sara's tweet of the article.
Then I read it. While the framing was lacking the nuance I expressed above, and the title is mildly negative in a click-baity way, it wasn't toxic. Not even remotely toxic. The article is a perfectly fine piece of critical thought. It's a great resource (despite lacking nuance) for folks who want to know if TailwindCSS might be the right tool for their project.
The criticisms aren't incorrect or invalid, and they need to be stated. If TailwindCSS wouldn't be good for a person, team, or project, we should care enough about those folks' time and effort to elevate those criticisms so they move quickly to the best tool for the job for THEM.
Isn't that the entire point of creating these tools at all? The name is tailwind... it's not a tailwind if it's going in the opposite direction the plane is traveling. Do we want our tools to create friction and slow people down? No? Good.
Toxic Positivity
As the day went on, I saw Sara's tweet of the article disappear. When I investigated why, what I saw was a Lebanese woman being bullied for sharing an opinion with a white dude in tech and simply linking to it.
Social media has created a culture where we track and measure positive engagement. Actually, positive isn't even the right word. Adoration, favorable opinion, and endorsement are much better words for the kind of engagement we've come to not only expect, but anything outside of that is unacceptable and flat out rejected. I personally feel the need to "like" every single reply to me because I am so worried about giving folks who interact with me the idea that I hated what they said.
It's become so polarized: either you emphatically adore and approve of the things people make, or you toxically hate it. Not because that's what's actually happening, but because anything neutral or critical is now going to ruin someone's day.
While this was the majority of the bullying that Sara received, the response to the article, of course, is far more tame and respectful. So tame, in fact, that the author used it to share that he is working on his OWN tool (because, well, of course he is).
Adam himself stated that he was unbothered by the article itself, but rather held Sara accountable for daring to not only agree with the criticism, but to share that with her audience.
So while yes, this is toxic positivity, it's not about the critique of TailwindCSS. This is entirely about Sara sharing that critique at all.
Sexism and Racism
While Adam may not be consciously aware of what he's done, his response to Sara is absolutely rooted in his own biases to give the benefit of the doubt only to folks like himself. The criticism is easy for him to internalize and move on from because it comes from someone that he views is like he is. Sara has had to earn his respect and admiration, as a non-American woman of color, instead of getting it from default in-group bias, and anything other than the admiration he gives her is felt as betrayal.
People in majority groups in communities (and, frankly, in societies in general) act incredibly entitled to reciprocity of affections from those who are marginalized in those groups.
Adam's response is a prime case study in this. He expressed how it literally ruined his day that she did not return the same admiration and respect he felt he gave her. And what's worse is that he passive aggressively thanked her for using her platform to accomplish just that.
But here's the thing: while there may be admiration, there's certainly not respect.
A man incited bullying onto a Lebanese woman for sharing a critique of a framework he wrote not for the critique itself, but because she didn't give him the admiration he felt he deserved. That's not respect. That's systemic entitlement.
Edit:
This isn't a commentary on Adam's intentions. This isn't a commentary on Adam's personal beliefs. This is a commentary on the systems we live in which empower a white man in our industry to publicly shame and guilt a Middle-Eastern woman and to expect certain behavior of that woman that white man does not expect of himself, nor of other white men.