Nerd Blasphemy: “Sass & Less Really Aren’t That Great*”
I know that a lot of people will disagree and call me a blasphemer for saying so but… using Sass and Less for CSS really isn’t that great in my opinion*. The asterisk is added because I should say that for most websites Sass and Less really aren’t needed and can unnecessarily muddy the waters. I’ve used both libraries on both large and small projects and to be clear, larger projects can and will benefit from one of these stylesheet languages. However, most websites aren’t large websites. Now, I’ll also add that there are benefits even if you’re working on smaller sites if you’re cranking out very similar designs one after another.
But, to the point of this post, the drawbacks to using Sass/Less on smaller projects are numerous and outweigh the benefits in my opinion. Here’s one scenario: a website was built two years ago and now the client needs a simple update to their stylesheet. If you’re not the original website developer, and you don’t have those original source files, and don’t use that particular library, the simple update becomes a bit trickier. You’ll also have to crank open a processor in order to compile everything for even the simplest updates such as a link color change.
Another disadvantage in my mind is that the features of these languages are typically not used optimally. For instance, inexperienced developers will go crazy with nesting styles to the point that they’re so specific you can’t reuse them elsewhere which basically defeats the purpose of a stylesheet language.
When I design websites, I like to start with a blank slate. I don’t even use a pre-fab library or grid because I feel like it constrains the creative process. I like the freedom of a blank page in Photoshop without having to cram everything into a rigid structure. Using Sass/Less libraries encourages this behavior. Again, this can be just fine if you’re cranking out the same layout over and over but then what’s the point of design? To me it’s a problem solving task and each “problem” is unique so why use the same answer?
And last but not least, if you write clean code, I just don’t find it that difficult to create a clean, concise stylesheet. The time savings are very minimal to me. If you need to change colors, what about a good old find and replace? That takes all of five seconds.
All that said, these technologies do have their place but only on larger or cookie-cutter projects. I’ll step down off of the soapbox now. Until next time.