I assume that by clicking on this post, you fall into one of these categories:
- “Eww, CSS is gross, tedious, and it never does what I want it to.”
- “Ehhh, CSS is okay. I’ll use it when I need to; otherwise, I don’t really care.”
- “Yes! CSS is the bomb.com. I could actually do this all day.”
Wherever you fall, CSS can be a controversial topic among different developers, and more often than not, I hear and see people err on the side of disliking it. Call me crazy, but I am one of those people who love CSS. In this post, I will share three reasons why I love CSS, in hopes that you will also come to love it, or at the very least, appreciate it a little bit more.
1. There is beauty in the CSS.
I’m going to show you two different images. Of the two choose the one that appeals to you the most.
I’m going to guess that you probably chose the second picture. There are many reasons why: it looks a lot more visually appealing, it’s more user-friendly, and it’s more intuitive. So what’s the difference between these two images? They are of the same website, but one uses CSS and one doesn’t.
That is the power of CSS. It can dramatically improve any page. This is why I love CSS — without it, the pages we look at would be bland, confusing, and less readable. We often forget that the webpages and interfaces we interact with daily are only so great because someone took the effort to write and design good CSS.
To me, writing CSS gives me an opportunity to create something beautiful that directly impacts the end user’s experience. Good CSS can make a world of difference.
2. It produces results quickly.
The second reason I love CSS is that it’s a rewarding language to write in. In most modern frameworks, changes made to the CSS can be rendered and seen in seconds. This means you can see every incremental change you make to the CSS quickly in your application.
For me, because developing in CSS has a quick feedback loop, I love seeing the immediate visual results of the changes I’m making. Although incremental, it’s all moving towards the creation of the final product. That keeps it interesting for me. CSS is not just about writing code; it’s about the visual feedback I get to interact with and see as I write the code.
Developing with CSS is kind of like watching one of those cool time-lapse videos of something being built. In this case, every line of CSS you write is like that time lapse moving forward one more step as your end product is being created.
3. It makes a lot of sense.
This may come as a shock. I’ve heard a lot of talk about how CSS can be very confusing and that it often doesn’t work the way you want it to. Although it may seem that way, let me assure you that it’s not. What I see a lot of people do is randomly fiddle around with different CSS attributes. They essentially brute-force different options, hoping that the result looks the way they want it to. If this is how CSS is being developed, it’s no wonder it’s not a great experience.
CSS is a language you have to take the time to actually learn. Most people don’t give it the time of day, and that results in the pain points that come with it. You can think of it as learning any other language. You might know how to say certain words, but if you don’t know what those words mean, you’ll be using them incorrectly in the wrong context. The same applies to CSS; you have to learn what each attribute means to apply it correctly.
The more time I have put into learning CSS, the more it just makes sense. I no longer need to fumble around trying different CSS values because I know exactly what values need to be used to get the desired result. Like learning any other language or skill, it takes time to master. The biggest problem is that people don’t spend the time to do that, but once you do, all of this becomes so much easier.
Here’s why you should love CSS.
Okay, the truth is that I can’t make you love CSS. But, I can at least share my passion for it in hopes it inspires you to appreciate CSS a little more than you did before. My love for CSS comes from a backward progression of these three steps.
First, it starts with learning and understanding CSS. Doing so speeds up your development process and produces results more quickly. As a result of all of this, you get to build beautiful products with CSS. It’s all of this that really fuels my love for CSS.
Where do you stand with CSS? Have any thoughts? Let me know in the comments below.
Love this! Especially point #3. If people take the time to really learn and understand CSS, it makes a lot of sense. It can require careful planning and thought to prevent it from becoming spaghetti code, but like you said, the payoff is huge and highly visible, and there’s a quick turnaround so it’s very rewarding! So, I guess I love all 3 points, not just the 3rd one, hehe :D
I’m a lover of CSS! If I could spend every day getting paid to crunch out HTML and CSS, I would be all over that! JavaScript, otoh, nah. CSS makes sense – within the context of its own language – just like any other language. Great article!