Writing CSS is easy. It has a really low barrier to entry with simple declarative syntax combined with its results being (for the most part), visual. Authoring CSS is simple, it doesn’t need to be compiled to be interpreted by a browser. It’s an easy target for being dismissed because of misunderstanding the properties and values have assumed meanings (like float or inline-block or positioning entirely).
Now writing good CSS is a completely different animal. While authorship is simple and we face a whole host of challenges in order to reach our users. Chief among them is maintaining a consistent visual style across components while writing performant front-end code. To make this even more difficult we can draw very few concrete conclusions about users as our landscape of even-increasing devices expands and never knowing the type of connection speed a user will have at a given time. All this leads to a high level of complexity within our projects’ front-end code.
Quite a few meth