In case you’re worried, this article certainly isn’t a dis on React. It is however a wonderfully considered piece by Jack talking about his transition from React to custom Web Components - highlighting things we should always consider before reaching for 3rd party dependencies in our web projects.
It’s another good reminder of how much the native web platform (aka browsers) have come on over the last 10 years.
When I left my React focused role behind I expected to find the transition hard, and miss what React had to offer. I've ended up finding the transition easier than expected and have come to really relish working closer to the platform’s primitives and maintaining more control over the software I write and in this blog post I’d like to share why that is.
When you use a framework like React, your code is no longer in direct control of when components (or functions) are called. Your components don't directly tell React when to re-render them, but React decides. Your components have ceded control to React.
It’s not all rosy though - and albeit browsers have come a long way, this post is not to say that you shouldn't reach for dependencies. In response to Jeremy Keith's post on trust and third party dependencies, Charles Harries suggests that cross browser compatibility was historically the driver for dependencies.
I like how Jack finishes his article…
My hope is that with the baseline feature set supported by browsers now more uniform - especially with the death of Internet Explorer - that we as an industry can over time move to reaching for the extensive built-in functionality of browsers by default, polyfilling where absolutely necessary, and look beyond frameworks as a default starting point.
← Other bookmarks