React was overhead for me, Vue and Svelte did better.
18 June 2023
React was the most popular and well known frontend library out there, it was always got the first rank in developer survey in the total usage in the frontend world. But in my opinion, React was overhead and really difficult to learn or grasp even though there is a lot of React tutorial out there in the willd, it was a real pain when i've been tried to learning it in the past.
When i'm still a students in university (around 2018), i've always seen learning materials about frontend stuff is all about React and it was make me feel overwhelmed from the concept to the implementation itself (how is JSX can be readable for non-programmer anyway ?). The Library and Information Science approach was architecture of information and how the information was delivered and disseminated to the end-users in convenient way, and end-users doesn't care about what tech you're gonna uses. But, for the librarian, using tech was sometimes really exhausting and can distract us with learning complex stuff and doing debugging rather than focus more on product itself (the information).
Year of 2020, Vue was the most starred project on GitHub and the road to Vue 3 was pave it's way. I'm started to learning Vue and it was incredible experience, the documentation and example was really easy to follow and give me more faster adoption to it's implementation. The tooling was also convenient, because the SFC concept and Vite (build tool of Vue) was initially release and give breeze usage for Vue, later it was adopted in most frontend framework. After Vue 3 stabilized in 2022, the documentation and feature of Vue progressively enhanced (like the motto on it's page) like no brake! The Composition API was my favourite from the Vue 3, because the concise structure and easy to follow mutable state for value.
Svelte on 2020 gaining my attention because the syntax and pattern was really simple but powerful. I've read the blog post from Rich Harris that say Virtual DOM was pure overhead. I don't really "get" what does that mean, but when i'm compare the load speed and bundle size of React, Vue and Svelte then i'm nearly "get" that. Build things to be more optimized was mandatory in the era of information, because a lot of people hate distraction and want to get information more quickly and efficient. I know maybe there is a lot of people using a high-end device that can process web load and information pages more quickly from the help of their devices and fast network, but don't forget there is a lot of people too that barely afford to use 3G network in their place. Indonesia was one of the most middle-to-low area for network connectivity and devices power, thus most of consumer really have limited access over the internet and the web. Bundle Size and Performance was the important actor here right now, because we need to use user-friendly architecture and infrastructure to make sure our user can get information they need more fast, low-resources and reliable. Svelte was the key here to implement this kind of architecture and platform.
Svelte also has really great standard tutorial and learning page that can be followed so easily. What i've really hooked to Svelte was the word that Rich Harris said in the Documenter :
"We would rather have a thing that a small number of people love than a thing a large number of people tolerate"
~ Rich Harris(2022)