JSX: yesTypeScript: sureCommonJS & ESM: no problemDecorators: yeehawWeb Components: how dare you, this is too much complexity
-
@rawrmonstar The web platform is calcified in the same way! One person’s calcification is another person’s stability
-
@zachleat i know, that’s the point. I’m guess you are responding to Ryan’s post?
I don’t think it’s an absurd criticism to think that web components calcified something that most developers did not even want and now a ton of work is being made to add more things, once added are also calcified, to just get them to the point that they meet expectations of what a component even is.
All of these additions nudge web developers towards one direction but it’s not even clear that that direction is where we want to end up and it feels like it’s piling on apis simply to steam roll ahead something that is still not even clear are any better than user land solutions.
-
@rawrmonstar I don’t think it needs to be one or the other, for whatever that’s worth. I talked about this a bit here: https://www.zachleat.com/web/good-bad-web-components/#framework-tension
Maybe also this one: https://fediverse.zachleat.com/@zachleat/111626148366004657
-
@zachleat I guess i don’t see much of a difference between server side rendering a solid component with what webc does. They both are build steps, It’s also hard for me to see what webc gets out of rendering to a web component instead of just rendering the underlying dom.
-
Curioso 🍉 🇺🇦 (jgg)replied to Zach Leatherman :11ty: last edited by
Any current tool for JS development is bound to be replaced by a web standard sooner or later. In fact, CommonJS is already obsolete.
The main reason React and friends are still relevant is because Web Components are still incomplete.
-
Naiyerreplied to Zach Leatherman :11ty: last edited by
@zachleat A few things I learned over years:
- Angular 9 -> Angular 11 (4 weeks)
- Angular 11 -> Angular 14 (3 months)
- Angular 14 -> Angular 16 (2 weeks)
- Vue 2 -> Vue 3 (4 months and still counting)
- Web components (casting amused glances at the above migrations since day 1, years ago, no migrations required till date)Web components just make life easier for long haul.
-
@rawrmonstar I think I see what you’re saying. Fwiw, WebC components aren’t required to be Web Components—they can generate HTML without custom elements too. Moreso, WebC can generate a standalone custom element with 0 library JavaScript overhead.
-
Zach Leatherman :11ty:replied to Curioso 🍉 🇺🇦 (jgg) last edited by
@jgg I dunno if I’d say CommonJS is obsolete quiet yet—definitely still has a place in Node.js land (at least until CJS/ESM compat ships)
-
Zach Leatherman :11ty:replied to Naiyer last edited by
@naiyer whew, I’ve definitely felt that Vue 2/3 pain
-
@naiyer what about Web Components v0 -> v1? But yeah Web Components are stable now so that's good!
-
Zach Leatherman :11ty:replied to Tegan last edited by
@rawrmonstar @naiyer v0 was Chrome-only. We can have a conversation about overly aggressive single vendor web features but this isn’t one of those
-
Teganreplied to Zach Leatherman :11ty: last edited by
-
-
Zach Leatherman :11ty:replied to Tegan last edited by
@rawrmonstar @naiyer for sure—I don’t think the v0 thing was good either. But folks blaze past the two+ impls best practice all the time (which is risky!). e.g. Astro shipped View Transitions stuff when it was Chrome-only and no one batted an eye (well… I did, but ️)
-
Teganreplied to Zach Leatherman :11ty: last edited by
-
Zach Leatherman :11ty:replied to Tegan last edited by
@rawrmonstar @naiyer you get what I mean though—multiple impls is an important milestone
-
Mike Aparicioreplied to Zach Leatherman :11ty: last edited by
@zachleat CSS: what do I look like a fucking rocket scientist? WTF even is this shit?
-
Zach Leatherman :11ty:replied to Mike Aparicio last edited by
@peruvianidol 🫣🫣🫣 I still have trouble wrapping my head around a preference for HTML over CSS, it just doesn’t fit the stereotype