CSS

NullPointer@programming.dev to Programmer Humor@programming.dev – 696 points –
i.imgur.com

easy to get into trouble for sure.

34

You are viewing a single comment

It's really not, though. This is only true if you're bad at CSS, which basically can be said about anything.

unless you inherit a large base written by someone who is bad at it where their approach seemed to be to write new bad rules in attempt to cover up previous bad rules and so on. we all know how supportive employers are at addressing technical debt. (site redesign cant come soon enough)

Not sure about your particular situation but there’s also the possibility that the bad CSS was good CSS when it was written and over time that got superseded by advancements in both technology and practice.

Or simply different styles and/or skill levels were mixed. I'm currently sifting through a code base that I know for a fact started out goodish, but through multiple team reorgs and lax standards/tight deadlines it devolved into a hot mess. A major contributor being that most of the devs were inexperienced in the framework and just did what they thought was right.

Even supposedly senior devs often have a "I know best" mentality and when they get their hands on a code base do it their way, with the result that after something went through a couple of hands you have a mess of different coding styles and even different software design choices in the same code base, or in other words, and unmaintainable mess.

Yes, it's that way if you include bad CSS. What isn't the same as you being bad with it.

"it's not that hard" just announces to the world that you haven't tried to do anything hard with it.

What do you consider difficult to do with CSS that wouldn’t also be difficult without it?

As someone that has gone through some of the available online tutorials like freecodecamp, and has no real world experience, especially in a team setting, I think I agree with you. I wouldn't say it's hard, but I do feel it's unnecessarily complicated in some areas. Some naming conventions are unintuitive, the cascading inheritance can get confusing especially with multiple hands working on something, and from my experiences, there's minimal if any effort put into best practices, so everyone does things a little different.

Pff, just define your own cascade with @layers :)

Best advice I can give: Don't use CSS directly, use a pre-processor like SASS/SCSS. It really helps keeping things sane and somewhat organized.

As someone who is bad at CSS, I can confirm at least half of your statement. ;p