Have you tried npm.im/styled-components? CSS is nearly impossible to maintain in a modern web app…
Max Harris

Hey Max,

Yes I have but not out of frustration purely to see what the fuss was about and I couldn’t wait to get back to standalone CSS (ugh I hate having to say “standalone”), let’s just call it “CSS” 🙂.

CSS has never ever been impossible for me to maintain in any non-legacy (and in legacy codebases it’s not just CSS code that goes to shit) website or application that I’ve worked professionally on and I’ve worked on many, really large ones too.

Honestly it’s these sort of comments that I have a problem with. If CSS-in-JS works for you, and your engineering team, then great, but that doesn’t mean CSS is nearly impossible to maintain. At the end of the day any code can become a big ball of mud and yes CSS can get messy quick due to its global scoping but if you really understand it (and not some of it, as you mentioned, but really understand it), have a solid architecture backed by a foundational library, and a Style Guide backed by strict linting, then it’s totally maintainable, and scalable.

I guess you either know how to write scalable CSS or you don’t, i.e., you’re competent in that part of front end development or you’re not — I see your title is “Software engineer” so maybe you’re spread too thin to master the front end technologies? Which was one of the main points of the article. As I said in the article, we need specialisation in today's web development landscape.

Don’t assume that there will always be a DOM and that the browser will continue doing layout in the future, or that styles will always be written in CSS.

So are we supposed to stop using HTML and CSS, and JavaScript, if the DOM is going away? Obviously not. The future may go that way (a long way away…if it happens) but you can’t just stop mastering the technologies we have now.


Like what you read? Give Chris Pearce a round of applause.

From a quick cheer to a standing ovation, clap to show how much you enjoyed this story.