Use whatever works best for you, be it a CSS stylesheet, CSS modules, styled components, CSS-in-JS, whatever. But doing bashing on other people's work just because of the technology used is just rude.
Basically, it's like this:
Lea dislikes an older technology X. She thinks: “If only we could change the past and start from Y instead!”. Lea uses a time machine to introduce Y first. Fast forward to present day. To her surprise, everybody uses X now. “It’s new and doesn’t have the problems of Y!”
Sounds reasonable to me. :)
I agree to some extent, but a good portion of software engineering (and engineering in general) is things are continuously improved upon based on past experience. If we weren't making improvements, there'd be no reason to make anything new in the first place. That isn't to say everything is an improvement or better, but many things are. There's a lot of hype and bandwagoning around certain technologies that is IMO misdirected, but many new technologies just are legitimately better than their predecessors. A bigger problem IMO is people using new technologies where they don't belong simply because they're 'new.'
I tend to be pretty happy tracking newer things but trying to stay on the back wave of the adoption curve.
It's very painful to be on the front edge of a trend no matter how correct that trend is. I understand the need to move off CSS in order to avoid a lot of types of pain, but I don't want to do it just to incur a bunch of other types. I don't want to fundamentally rewrite big parts of my code at someone else's pace or else be caught in a limbo of unsupported techniques and libraries.
I agree with CSS in JS's purpose a ton. But I'm only now starting to think the landscape has stabilized with a few winning ideas that are worth getting into.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.