Live data from Hacker News

The CSS Zen Garden dream, finally shipped

josprague.com

51–60 of 117 posts

Re: The CSS Zen Garden dream, finally shipped

#51

The CSS Zen Garden worked because everyone was using a single markup file. In real life, it doesn't really work. Instead of thinking of separation of concerns as a religious principle, think about what benefits it actually yields in the case of HTML. When the markup is completely separated from its styling, this means that the CSS rules need a way to be mapped onto the DOM. This involves specific elements, organized…

The real divide isn’t separation of concerns or implicit vs explicit structure. It’s whether you have staff that wants to think about markup as a data format expressing domain entities and/or generalization of presentation concerns.

Most developers and organizations don’t want to and they don’t want to think why or what doing so would buy them. They will probably find the tailwind local maxima enabling that reasonably comfortable and may even repeat the familiar mantra as has been done here. It especially pairs well with unreflective product management, which is the most popular kind of product management.

Re: The CSS Zen Garden dream, finally shipped

#52

Earlier quoted context omitted.

I also dont think you can cleanly separate HTML and style. Technically you can separate them but doing so in practice just handicaps your design and ability to express things in HTML and CSS (Zen Garden prohibiting css 3+ in most cases). People have this idea that they should be decoupled. You can do that if you really contort them. Naturally, they are coupled. The structure of HTML puts constraints on the style. You…

The dream was that you could separate content from presentation and content could be adapted and reinterpreted by anyone using whatever tools they choose: User Agents that actually respected the users' vision, not the publishers'.

And accessibility.

The posts above claiming design and content are inextricably linked are probably blessed with all the standard senses.

As usual it's a bunch of folks talking past each other. Style and content together is a nice simplification when you want to conform to a particular vision. Separation is a nice abstraction if you want to enable multiple views of the same content (like a pdf version or a colorblind version or a vision impaired version) without having to change/control the content.

Like most things in this space, different tradeoffs make one better than the other in different scenarios. Taking a hard stance of "one true way" is probably missing some imagination or experience.

Re: The CSS Zen Garden dream, finally shipped

#53
post #44
post #40

Earlier quoted context omitted.

I get the sentiment, but what if it was the difference between not getting the thoughts out there and being able to celebrate the fruits of their labor? It's okay to exercise nuanced views (as well as choosing to say nothing.)

what if it was the difference between not getting the thoughts out there and being able to celebrate the fruits of their labor? I'm sure I don't know what implausible hypothetical scenario to which this could refer. The "difference" is that of spending five entire minutes proofreading the output. But this blog post, like the other 98%, is once more the tasteless fruit of very, very little labor. Whether you value it…

Maybe they ARE lazy. Maybe they are unapologetically bullish on AI AND they did it just to spite the haters.

But it’s also possible that they have other, more important stuff going on in their life? Or that they find writing legitimately difficult?

I’m not excusing anything, or saying that you can’t feel dismay or even sickened.

I was merely proposing another perspective, that’s all.

Re: The CSS Zen Garden dream, finally shipped

#55
post #53
post #44

Earlier quoted context omitted.

what if it was the difference between not getting the thoughts out there and being able to celebrate the fruits of their labor? I'm sure I don't know what implausible hypothetical scenario to which this could refer. The "difference" is that of spending five entire minutes proofreading the output. But this blog post, like the other 98%, is once more the tasteless fruit of very, very little labor. Whether you value it…

Maybe they ARE lazy. Maybe they are unapologetically bullish on AI AND they did it just to spite the haters. But it’s also possible that they have other, more important stuff going on in their life? Or that they find writing legitimately difficult? I’m not excusing anything, or saying that you can’t feel dismay or even sickened. I was merely proposing another perspective, that’s all.

Mostly, I have other, more important stuff going in my life. I did write a lot of this post myself, but used AI to flesh out some of the details because otherwise between my perfectionism and tendency to overthink blog posts, I would have never gotten around to publishing this.

Re: The CSS Zen Garden dream, finally shipped

#56
post #18
post #2

Author here. Like a lot of people on HN, Dave Shea's CSS Zen Garden is how I learned CSS in the first place. Building stylesheets for that one HTML file taught me to think about CSS as a system, and it stuck. Nearly two decades later I got to build the design system for the new Firefox.com together with a team from Lincoln Loop, on a contract engagement with Mozilla using pure, modern CSS with no preprocessors (almos…

Is the code open source? It‘s not part of the protocol design system?

Correct, it's not part of Protocol. It's in this repo: https://github.com/mozmeao/springfield

Re: The CSS Zen Garden dream, finally shipped

#58
post #41

Earlier quoted context omitted.

Umm... this is disingenuous. At the time, most websites were built using tables and were completely non-accessible. One of the reasons we moved to XHTML, semantic markup, CSS instead of Tables... was to enable accessibility.

No, it's not disingenious. Tables _were_ accessible and easily navigable, including by screen readers. They are also a very logical way of organizing content. > One of the reasons we moved to XHTML, semantic markup, CSS instead of Tables... was to enable accessibility. Again, nope. Try a design with 3-4 columns with the old CSS and see how it behaves. The order of elements in the HTML often differs from the visual or…

I remember tables within tables within tables. Were those really accessible? The humans writing that html couldn't always keep it straight

Re: The CSS Zen Garden dream, finally shipped

#60

The CSS Zen Garden worked because everyone was using a single markup file. In real life, it doesn't really work. Instead of thinking of separation of concerns as a religious principle, think about what benefits it actually yields in the case of HTML. When the markup is completely separated from its styling, this means that the CSS rules need a way to be mapped onto the DOM. This involves specific elements, organized…

> Tailwind looks ugly, but there are no hidden abstractions or structures in the code

Verily, Tailwind is the assembly language of CSS. No structure, no semantics, no abstractions, only twiddling specific bits of visual representation.

To turn to it is to admit that your product lacks the structure and the design vision that allow to use some abstraction ("semantic classes"), and that all you can usually do is to patch some areas of it, disconnected from the rest, and unable to touch the rest (lest it goes down in flames). Assembly is definitely suitable for patching.

This is often the endgame of old large products that changed hands and directions many times, without much care.

Post reply on HN