Zharzhan Kulmyrza

Frontend Web Engineer

Can I CSS?

Fri Aug 05 2022

Can I CSS? That would be a weird question to ask myself.

Given my around nine years of experience, of course, I can. But lately, I feel more and more distant from it. So I just wanted to reflect those thoughts now for future me, and perhaps you.

Golden Age of Bootstrap

When I had just graduated from uni in 2013 and started to work at a local startup, the title Frontend Developer was a novelty. Not many people called themselves like that; everyone was just a Web Developer. And yet, already, many Web Developers didn't like to write CSS and were delegating those tasks to Frontend Developers. And those who couldn't delegate CSS to anybody, started using Bootstrap. Which is awesome framework to get things done, but you are using uniquness, and bound by limitations of it. No need to write CSS was a huge boost for Bootstrap, which was version 3 in 2013.

After a while, almost any new website started to look same. Which could be fine, but CSS in 2013 was already providing us so much more: flex, grid, CSS variables. Most of greatness of CSS was already there, or almost there. Instead of using them most of the products were relying on some new CSS framework.

Rise of BEM

If Bootstrap&Co. have weakened Style part of CSS(Cascading Style Sheets), then BEM come and almost erased Cascade from everyones memory. Nowadays, people(myself included) forgot to think in cascades, we are too busy with thinking on how to name things.

I understand that maintaining CSS on big projects can be tideous, and using BEM for ease of maintaining makes sense. But again, everyone start using something for everything. We always should assess the problem and tools that we have to solve the problem.

Headwind for CSS

Don't get me wrong, I like Tailwind. It is pretty neat tool, even my current site you are on is built using Tailwind, because it is fast and very handy to not jump between files to style something.

Tailwind just eliminates CSS alltogther, shrinking it just to some class names, not considering all it's declarative nature, and making it something utilitary.

Rebirth of CSS

Enough with me complaining. Despite everything, right now CSS is capable for so much more. You don't need Javascript™ to style things, CSS is there and usually it is just one line code.

I guess, it is just evolution path of any technology, there are ups and downs. Plus, the projects that I work on now(at work, and at a spare time, like this website) are not using CSS much, I am constantly battling with CSS-in-JS, Design Systems, Tailwind and other stuff. I just need to keep asking myself `Can I CSS?` and keep answering that retorical question.