I’ve been considering to use a CSS pre-processor like SASS, LESS, Stylus, etc, for a very long time. Every time someone asked me if I was using any of these tools/languages I would say that I’m kinda used to my current workflow and I don’t really see a reason for changing it since the problems those languages solves are not really the problems I’m having with CSS. Then yesterday I read two blog posts which made me reconsider my point of view so I decided to spend some time today studying the alternatives (once again) and porting some code to check the output and if the languages would really help to keep my code more organized/maintainable and/or if it would make the development process easier (also if they evolved on the past few years).
[This is one of those issues that pushes a to of buttons and I appreciate that MM went out of the way to try and not start a meaningless flamewar. That said, the piece caught my eye when he got to the postscript “PS: I love CSS, for me it’s one of the most rewarding tasks on a website development, it’s like solving a hard puzzle…”. I agree. It’s like solving a hard puzzle… and one that provides no business value. It feels like there’s a store room where I keep stuff I need to get all the time, but instead of a door, I pile stones in front of the opening. Each time I have to get something I have to unpile the heavy stones, get what I need, and then re-pile the stones. Over and over and over again. That’s not good is it? Anyone would suggest a door or moving the stuff somewhere that didn’t require all of that unnecessary effort. That’s what working with CSS feels like. Considering how similar the web looks overall, it seems silly that we hand generate so much CSS. And the tools being debated are more about making CSS more programmable because that’s the way developers think. But if you step back that’s not what we need and that’s what these preprocessors do. We need to get all this stuff back into the hands of the designers where they can do as they please. The point of collaboration would only exist when crafting something uncommon or unique.]