Giving up on CSS

CSS is a nightmare. One that I summoned willingly. In February 2021, I decided to teach myself Frontend development. This is a narrative of how that is going.

I settled on two learning resources: Freecodecamp and Frontend Masters (Github Student Developer Pack) and started out on my journey.

The plan was:

  1. Learn CSS
  2. Learn some JavaScript
  3. Learn React to build out little projects

It was great. Up until I started trying out challenges on frontend mentor. My confidence immediately took a hit as things that seemed minor like understanding the need for the reset below became increasingly frustrating:

* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
}

Ultimately I ended up building only one component, the profile card component, and gave up on the frontend mentor challenges. My version's code can be found on GitHub and deployed on Github.io.

I gave up on learning how to use CSS for more complicated things. There were too many things that didn't make sense.

I moved on to JavaScript and that was the last of my dedicated CSS learning.

So yesterday, I get a newsletter email from Josh Comeau to check out the flex box openhouse for his CSS for JavaScript Developers course. It so happened that I had spent a good amount of time learning flex box and I was super curious to see how he tackled it.

So I dived in!

What I learnt made me finally at peace with quitting CSS.

In about two videos he immediately made the idea of building responsive sites significantly less daunting for me and pointed out pitfalls that would otherwise take me ages to figure out on my own. It made two things immediately clear:

  1. Learning from a skilled person like Josh was how I was meant to learn CSS
  2. Now was not my time to learn CSS

My goal for learning Frontend development is to have the ability to build things on the internet and getting good at CSS as a prerequisite for that, makes that goal that much harder to attain!

So in the spirit of:

Get going > then get good

I started learning React on Scrimba. Once I learn and build my many small projects, where I'll use bootstrap or tailwind for styling. I'll come back and learn from Josh. And while, in all honesty, the price tag on the course is mad daunting, I'll figure out how to get it. Because when you want something you go out and get it. Obstacles or not.

And so, to the past version of Adrian, I would tell him to get his hands dirty first with React and get to building things. Simply because action breeds confidence. Then later come back and learn good design and styling.

And that, dear reader, is why I am giving up on CSS. For now ; )