Frontend Masters Boost RSS Feed https://frontendmasters.com/blog Helping Your Journey to Senior Developer Wed, 07 Feb 2024 02:32:13 +0000 en-US hourly 1 https://wordpress.org/?v=6.5.2 225069128 2023 JavaScript Rising Stars https://frontendmasters.com/blog/2023-javascript-rising-stars/ https://frontendmasters.com/blog/2023-javascript-rising-stars/#respond Wed, 07 Feb 2024 02:32:13 +0000 https://frontendmasters.com/blog/?p=742 JavaScript Rising Stars is interesting to look at year after year because of the simple methodology of measuring how many more GitHub Stars a project gets year after year. A project like React with a massive amount of star-based popularity isn’t guaranteed to top the list, and in fact this year clocks in at #7.

The winner? shadcn/ui, notable for it’s extremely unusual distribution method.

This is NOT a component library. It’s a collection of re-usable components that you can copy and paste into your apps.[You] do not install it as a dependency. It is not available or distributed via npm. Pick the components you need. Copy and paste the code into your project and customize to your needs. The code is yours.

Clearly, this approach really connects with people. The components are React-only, in TypeScript, and styled with a Tailwind dependency. Impressive the level of popularity even with that thick set of requirements.

]]>
https://frontendmasters.com/blog/2023-javascript-rising-stars/feed/ 0 742
Million.js 3.0 https://frontendmasters.com/blog/million-js-3-0/ https://frontendmasters.com/blog/million-js-3-0/#comments Mon, 15 Jan 2024 21:42:29 +0000 https://frontendmasters.com/blog/?p=509 Million.js caught my eye a few months back because of the big claim it makes: Make React 70% faster. I ended up listening to a podcast with the creator, and the meat of it is: it removes the need for “diffing” the virtual DOM that React uses when re-rendering to find what needs to change, which can be slow. I see the project still has momentum, now reaching 3.0.

Skeptical? Good — it’s your job to be skeptical. If this is so amazing, why doesn’t React itself do it? Potential answer: it requires a compiler. That’s a pretty big directional shift for React and I could see them never wanting to go down that road. Although I say that but I’m even more surprised that React will have server requirements (presumably, with server components, right?) And do I actually need this? How complex does my project need to be before I can actually feel React being slow in diffing? What is my technical debt here? How much of my code base has to change to accommodate this? What is this project dies out, where does that leave me? Is there any entirely un-biased endorsements or critical reviews out there to find?

I can’t answer all this for you. I just bring it up because it’s my goal with Boost to get you thinking like you need to think to become a senior developer, and this is part of how.

]]>
https://frontendmasters.com/blog/million-js-3-0/feed/ 3 509
The Two Reacts https://frontendmasters.com/blog/the-two-reacts/ https://frontendmasters.com/blog/the-two-reacts/#respond Tue, 09 Jan 2024 02:42:17 +0000 https://frontendmasters.com/blog/?p=400 A nice bit of writing from Dan Abramov in which he argues for code that should run on the client, and then again for code that should run on the server. It feels like an elaborate setup to explain React Server Components1 in a part two.

Is there some way we could split components between your computer and mine in a way that preserves what’s great about React? Could we combine and nest components from two different environments? How would that work?

It’s neat that React is getter better SSR support or whatever, and I’m sure it’s very neat with how they share state and such. But mostly I like Dan’s approach here of getting people thinking about where certain types of code is the most appropriate place to run. To be sure: you don’t have to wait for React for that.

I talked to a woman yesterday about the curriculum at the college she oversees, and she said the Advanced Web course they teach has students build the same websites three ways, all client-side, all server-side, and a hybrid. The server-side stuff is PHP, because PHP is a perfectly nice server side language that is perfectly good at generating and returning HTML or data, and still quite popular. But it could be Ruby, Python, Node, Go, or anything else. The language doesn’t matter, is why you are doing it.

  1. Josh has a good explainer on them, and there are other good blog posts around about them. But kinda strangely no official docs other than the announcement blog post from years ago. ↩︎
]]>
https://frontendmasters.com/blog/the-two-reacts/feed/ 0 400