The new wave of JavaScript web frameworks
frontendmastery.com
frontendmastery.com
I think the network latency of reaching out to a server instead of a CDN edge node was greatly overstated, especially when we then immediately fire off other requests for assets and hydration. This quote was in the context of comparing MPA to SPA architectures and tradeoffs.
Fantastic article, very impressive coverage and matches my experience quite well.
While it's true that bare metal web components don't handle routing or state for you, in many apps those are problems that you can solve yourself -- and in a way that makes sense to you, rather than to the framework developer.
In my experience with Lit and bare metal (browser standards-based) web components that you hand-craft (not from a library), there are fewer bugs and the ones that exist are ones you designed -- rather than ones that come from a misunderstanding of a framework. Without a framework to learn, your cognitive load consists of only your own inventions and abstractions -- which are far easier to remember and deal with than something designed by a committee and documented with some largess.
You could help spread ideas you consider worthwhile (presumably the ones you mention) by providing concrete links to the things you are talking about, especially information on how to properly take advantage of them. I've never heard of Lit and/or bare metal, and don't know where to begin.
I also consider myself proficient in React and Angular.
It talks about bare metal vanilla components without any frameworks and such. This has my attention. But it ends with “here’s a library on top of web components called Lit!”
Are web components not good enough yet? Why do I need anything?
This fact, that it's the "anti-framework" (ie: not a framework) is both its greatest advantage and its biggest source of confusion for new folks.
IMO this newest wave is creating frameworks that have existed in the mobile app world for a while and are now showing up for productivity-oriented web apps.
Interesting to see more players in this space to help more and more developers do this.
Interesting that angular, and especially angular 2, only gets a passing mention.
For example, I worked at a place where it was a requirement that everything runs through GraphQL. Sure, fine, except then you see that they were making tailor-made resolvers for particular use cases. You wouldn't see multiple different apps or sections of the app pulling from the same endpoint but with trimmed down queries. It was essentially BFF but with a GraphQL middleware because "it's what big companies do." I've had a number of friends say they've seen the same thing. I'm sure when you're working with applications like Facebook and you're using it intelligently, it's great. My experience is that many people don't understand that.
That is ultimately a people problem, however: why doesn’t it click that a ”resolver” is intended to ”resolve” other entities based on fields of the parent entity?
----
I wonder if GraphQL is destined for the same type of evolution; React was a revelation compared to what came before, hugely popular, with a heavy client library and runtime costs. I see some of those in GraphQL
The new wave of svelte and quik etc are faster and lighter, by pre-compiling or rethinking how and when the work is performed