Why Atomic css makes people mad

I'm a fan of Tachyons which is a functional CSS library. It basically follows an idea is making CSS classes do one thing and naming them after what they do. For example the fr class makes any object float: right. You can also do fr-ns to turn it off when it's on mobile (which works for about any class in Tachyons). There's also -l and -m file turning on styles for medium and large screens respectively.

This whole "name things by what they do" has an odd reaction in people.

As soon as they see the longer list of class names their blood starts to boil, they grab their pitchfork and their symantic CSS Bible and go to work to eradicate these wild and unnatural ideas from anyone reading the comments section.

Why is this?

One possible conclusion is that functional CSS is doing something that most people see as wrong. It seems dirty when you see HTML polluted with long lines of class-names as apposed to one clean one like button.

Worse that your class names aren't "semantic", a word meaning,

"relating to meaning in language or logic." (google's dictionary)

or in practice, "the name that I made up after a few seconds of thinking about it".

However I think there's a deeper issue, I think perhaps functional CSS gets people angry because it's going against everything that they've been taught. About CSS maintainability.

We've all been taught that in the case of the "enviable" redesign we should only have to change a few CSS classes and the whole site would suddenly be different.

This argument could be true for some websites such as a blog or informational website. Why? Because these have basic layouts and follow basically the same structure on every page. Which means you'll have a few classes such as .title. you might even get away with styling the HTML elements themselves.

However I don't feel that web apps operate these days. I rarely get a ticket like: "change all the buttons to square and make them blue" and a lot more like "add some extra space to the top of the button on the settlings page"

The real reason

I think that this is a case of people misunderstanding what functional CSS is about.

It's a change in the way we think about CSS.

At it's most basic level redefining the role of a stylesheet.