6 ms·
I think this is more or less totally wrong, based on my experience with native desktop development, which CSS has been racing to catch up with/overtake/replace.
by PaulDavisThe1st 10mo ago
I think this is more or less totally wrong, based on my experience with native desktop development, which CSS has been racing to catch up with/overtake/replace.
Nested widget heirarchies that are 20 deep are a dime a dozen in native desktop development. If you want to argue that this reflects poor UI/UX design, be my guest, but that's the way it has been for 30 years or more. Web design wasn't like this in 1995, but as the platform has evolved to support almost any kind of UI-driven application development, it has also picked up these long-utilized models from that world.
What CSS has added, which I view as an entirely good thing, is to extend the notion of rule-driven box packing as the fundamental underlying layout model. GTK realized the sense in doing this when the development of GTK3 began, and other desktop toolkits on all platforms have picked up either all or most of the same fundamental model for layout.
Native and web-based UI implementations are ever converging on the same models, and CSS has been the crystalizing force in that convergence, along with its recursive, fundamental box packing (sizing & positioning) concepts.
- taeric 10mo agoNested is fine. Setting text size to be 50% of parent just rarely does what you want it to do. Well, to be precise, it does exactly what you want for the first week that you have designed it and have not started adding all sorts of other widgets to a site. Such that, inevitably, you just want to have large swaths of text that are at given sizes. You don't care how nested the thing is to get you there. I remember learning the different Java Swing layout managers back in the day. Again, being nested was fine. That said, if you were doing a large layout, you were probably reaching for GridBagLayout. Back in 1999... (And I recall that SWT layouts were even simpler?) I'm willing to concede that many of the ideas in CSS are good. At the least, benign. User stylesheets were just flat out a rake in field, though. And I stand by the claim that percentage sizes is largely a massive foot gun. Edit: I should say that I find native interfaces took a massive nose dive in many ways when we abandoned so many interface builders. I have no idea how nested your typical MS Access form was or was not. I know that designing and wiring them up was far easier than what I typically see today.
- odie5533 10mo agoI haven't thought about this video in years, but your mention brought me back! "Totally gridbag": https://www.youtube.com/watch?v=zkJR9lmjqQo https://www.youtube.com/watch?v=zkJR9lmjqQo
- taeric 10mo agoThis one actually makes me curious on what "layouts" flash supported. I never wrote in it, but some folks made some amazing designs using it.
- Izkata 10mo ago> Well, to be precise, it does exactly what you want for the first week that you have designed it and have not started adding all sorts of other widgets to a site. Such that, inevitably, you just want to have large swaths of text that are at given sizes. You don't care how nested the thing is to get you there. Shared library components is where this could work - each individual application would be able to scale the component's size to what it needs.
- taeric 10mo agoIs certainly where folks thought it would work. I have never ever seen this work in a way that wasn't more work than makes sense. Happy to see some actual success cases, if you know of any.
- PaulDavisThe1st 10mo agoDon't get me wrong ... I don't think that trying to build apps with the complexity or layout demands of a native desktop app (particularly the creativity ones) using HTML+CS+*script makes much sense. The native toolkits are still a much better fit for this purpose. But the native toolkits have learned from CSS in many ways, and that is just accelerating as we see what new wonders get cooked up in a web context that people used to say "you just can't do this in a browser with HTML+CSS".
- 10mo ago