Here's the rational: http://mrmrs.io/writing/2016/03/24/scalable-css/
You can name your magic numbers/RGB values. You can move your shared behaviour into mixins. You can stop using float for god's sake - it's 2016, we have flexbox now (OK, so that's not related to preprocessors, but it's still true).
Sure, if it's a quick hack or something you're throwing together for personal reasons, use whatever mixture of inline-styles, "visually semantic" classes, and table layout goes fastest for you. But if the point is "scalability" (In the sense of size of team working together), then this halfway point between semantic classes and inline styles is definitely not the right way to achieve it.
Are public middle schools farther along the tech curve than "enterprise"?
(Legitimately curious. It'd be pretty funny if so.)
I wonder, though, if there could be some workflow where you write and edit with tachyons, (babel-) analyze the code, find commonly used combination and prompt to name them.
EDIT: I also usually work with only two or three people, I guess it's different if there are 20 working on the css.
But especially in teams: don't you consider it extremely valuable that one can change the style of exactly one part somewhere in the page without affecting anything else?
Practical example: I have a form with a header. I look at it and think "there needs to be more space below the header". So I change
className="mt0"
to className="mt1"
It hot-reloads etc. It took me exactly two keystrokes to change this and I know that the spacing is consistent with all the other spacing in my app. style="margin-top: 1rem;"
to style="margin-top: 2rem;"
It's also two keystrokes, and is mathematically determined...