Live data from Hacker News

"CSS is dramatically more difficult than learning assembly language" [audio]

feeds.resonaterecordings.com

71–80 of 109 posts

Re: "CSS is dramatically more difficult than learning assembly language" [audio]

#71

I don't understand the CSS confusion. Maybe because I've been doing it for 15+ years but it's extremely intuitive to me and I love working with it. Tailwind annoys me because it removes some of that flexibility / freedom for me to just solve a problem immediately with a new class or something.

> maybe because I've been doing it for 15+ years yea, that's about right, except the maybe part

I saw your user name. Wink, wink

I knew about HTML/CSS around 2004, and knew about C++ in late 2005 - so kind of about the same time, almost 20 years ago.

Both of them have evolved and have had substantial additions since then, but I can't imagine that I'd say "C++ is easy!" if I kept putting my nose on it all this years - even back then the pointers thing (and pointers to pointers, to be more specific... won't even think about all its new stuff) was absurdly difficult to understand for me. Whereas the concepts behind CSS were much easier to understand, the difficulty I found about it (and what I suspect people say it's "difficult") was in its implementation - styling for IE was a living hell, and after that all the gibberish we had to do to support -moz, -webkit, -o, -ms and co, and now all the platforms, modes, layers, medias and all of that we have to take care of. But I repeat - it's not that the core of what CSS does or how it works is the difficult part.

Re: "CSS is dramatically more difficult than learning assembly language" [audio]

#72

Earlier quoted context omitted.

This doubles as a perfection explanation of why the web is such a terrible technical platform for rich client applications. All of the assumptions baked into the foundational design of HTML & CSS were based around the idea these would be used for creating lightly styled documents.

No, because like I said, CSS later introduced other layout systems that weren’t based upon this.

I reccomend listening to the podcast that the thread is about, where Casey Muratori discusses the many failings of CSS as a layout specification language.

https://twitter.com/sw_unscripted/status/1730707950518309109

Re: "CSS is dramatically more difficult than learning assembly language" [audio]

#73

slightly OT but can someone recommend how to learn CSS in 2023 for a backend web developer, who 30ish years ago grokked mainframe Assembly reasonably well (and since then developed in c, php, python, ruby, bash, etc etc)? Can/do I start with tailwind? Do I start with old-school CSS or jump straight into flexbox? Do I need to care and learn about BEM, Sass, etc? Do I start with an empty page and build it? Do I need to…

Colt Steele is my favorite web dev teacher. He has taught web development in an actual in-person classroom environment, so I find he has a better understanding on how to get people to learn things than most online instructors.

He has a new for 2023 HTML and CSS course that is a fantastic intro to modern CSS. You can probably skip over the HTML section and jump straight into CSS. Even with skipping the HTML, there is 30+ hours of CSS content in the course. It regularly goes on sale for less than $15.

https://www.udemy.com/course/html-and-css-bootcamp/

Re: "CSS is dramatically more difficult than learning assembly language" [audio]

#74

This just in: learning to use a CNC is more difficult than learning to use a saw. --- > Learning CSS is dramatically more difficult than learning assembly And styling with assembly is dramatically more difficult than styling with CSS.

The point of Casey's rant in the OP is that CSS is incredibly complex with a poorly defined spec, and yet at the same time its also a terrible layout engine.

Re: "CSS is dramatically more difficult than learning assembly language" [audio]

#75

This just in: learning to use a CNC is more difficult than learning to use a saw. --- > Learning CSS is dramatically more difficult than learning assembly And styling with assembly is dramatically more difficult than styling with CSS.

The point of Casey's rant in the OP is that CSS is incredibly complex with a poorly defined spec, and yet at the same time its also a terrible layout engine.

Assembler is kinda outta of left field

Re: "CSS is dramatically more difficult than learning assembly language" [audio]

#76

Advanced results require advanced skills. CSS is one of my favorite languages. And the only way I can consider CSS to be difficult is if you have no experience with HTML. If you try to do HTML by hand, then doing CSS by hand on top of HTML by hand is really easy and wonderful. And this is truly where you gain the fundamental framework for "getting CSS".

nah doing the same exact thing in CSS is like different every other year because someone invents a new attribute to solve the old friction

and its like what

and its like how is everything so compatible so quickly now

and why do I have to do it this way

and why does the interviewer expect this answer instead of last years solution to the same problem

I currently like tailwinds.

but dont ask me to set it up from scratch in a typescript project, but fortunately the bun runtime makes that simpler now, for now

Re: "CSS is dramatically more difficult than learning assembly language" [audio]

#77
Here is the thing.

In declarative languages, you generally specify what you want, rather than how you want it calculated.

Not so in CSS! It's thoroughly declarative, but in a way where you're fiddling with a whole lot of "how", whereby the "what" disappears in the fray.

Differential equations are declarative too, but likely a bad way for most users to be asked to specify how something should move across the screen.

Re: "CSS is dramatically more difficult than learning assembly language" [audio]

#78

Assembly is not trivial lol. The instruction set is easy to learn yes, but the kind of bit manipulations that occur at ASM are not easy or simple. Look at optimized division sometime. Try reverse engineering, it's an art that takes decades to learn. I do agree with "Anyone who can learn CSS can learn assembly" though, anyone can learn pretty much anything with enough time and effort.

Please forgive me for straying off topic a bit, but:

- I just picked up Jeff Duntemann's newest Linux assembly book, x64 Assembly Language Step By Step —get it from your local indie bookseller

- I want to get Dennis Yurichev's book Reverse Engineering for Beginners, a.k.a. Understanding Assembly Language, at https://www.beginners.re/

Re: "CSS is dramatically more difficult than learning assembly language" [audio]

#79
post #54

Earlier quoted context omitted.

I would probably start by opening the browser dev tools on web pages and use inspect element to see how an element in the page has been made to look the way it is. You can edit properties to see what effect they have when changed. The domain of styling html is so large that there's no chance of learning everything in theory then applying it, I think it's best to learn by doing.

I’ve been doing that for over a decade, without making tangible progress.

You've probably accumulated a lot of relevant html knowledge which will help you.

I presume you have some css-related projects/tasks in mind that you'd like to be able to tackle yourself. I would pick one of those and jump in at the deep end. Although a small goal like restyling something that already works is probably better than starting from scratch.

For a completely abstract task, you could try developing a stylesheet for markdown html output.

Vanilla CSS is good enough (and browser support consistent enough) now that you don't need to use any compilers/frameworks to get started.

If you find yourself struggling for design inspiration, try to re-produce an existing design without seeing how they did it.

Re: "CSS is dramatically more difficult than learning assembly language" [audio]

#80

Advanced results require advanced skills. CSS is one of my favorite languages. And the only way I can consider CSS to be difficult is if you have no experience with HTML. If you try to do HTML by hand, then doing CSS by hand on top of HTML by hand is really easy and wonderful. And this is truly where you gain the fundamental framework for "getting CSS".

I have yet to find a frontender (and I have worked with 100s over the past 30 years) that can do any significant css without trying it out in a browser; if there is something off or needs to change on the frontend, very often the most experienced senior frontender can guess (and often a little bit right) what it is but to actually fix it they have to try a few times.

To me (someone who likes logic) that is a sign it’s all not very good. I can write a bunch of code on paper in several programming languages and even non web frontend frameworks and it will work after I type it in first time ; when it comes to web frontend, it has to be tried out to know it works as it likely will have issues (unless it has no css layouting of course or absolutely trivial prototype stuff).

Post reply on HN