Jump to main content

Why I don't use Compass

  • Published:
  • Category: CSS

When I started using Sass to write my CSS, I made a conscious decision to not use the Compass framework. And as far as I’m concerned, I think I made the right choice.

Now don’t misunderstand me. This is not being written to dissuade anyone from picking up Compass. Compass makes Sass easier. It’s full of excellent mixins and reusable patterns. There are also certain features built into Compass that are just not available in Sass alone. Like sprite building, blueprint grids, Compass’s helper functions and more.

So why would I turn away from using Compass when it clearly offers so much value?

I didn’t use Compass because it did too much for me. I wouldn’t have really learned Sass if I jumped right into Compass. Instead I would have learned the framework.

Not that I wouldn’t have then gone and learned what the code powering Compass was doing. But it would have been an extra step. I wanted to learn Sass. I wanted to learn to write complex mixins. And starting off by using a pre-built library would not have helped me in reaching those objectives.

That’s just the way I am. I need to write code myself for me to actually understand it and soak it all in.

Months later, after spending lots of time writing my own mixins and basic Sass functions, I look at Compass and truly understand the value of the framework and why it’s such an excellent tool to have.

I’m glad Compass exists and is out there to help others in building their Sass projects. If anything, I love checking the Compass documentation to see how they have written components that I am writing myself. It’s a great resource to see well documented and written code.

I still don’t implement Compass on my personal projects. I’ve written my own Sass framework with my own mixins and reusable patterns that are unique to my needs and written in a way that I totally understand. I understand that there is still a lot more for me to learn, and there may even come a time when I realize that I will need the extra muscle of Compass to get me through a project. But until then, I’m happy to look to Compass as a resource for learning, rather than a dependency for my projects.