I'm thinking about
A friend of mine was just getting into programming and asked me whether back-end or front-end was easier. The best answer I could come up with was that in both fields you would be asked to develop solutions to the limits of the existing technologies. So pick whichever you find more exciting, they’re both hard.
When I started programming, front-end work was little more than adding event handlers and changing elements dynamically. Now we’ve reached a point where UI applications can become so complex it’s impossible to keep everything together.
When back-end engineers reached the limits of what can sensibly be developed as a monolith, they started splitting them in smaller independent applications called microservices. In only a few years, front-end applications reached the same scale of complexity.
Now micro-frontends are becoming popular for large-scale projects. There isn’t a single best way to split a SPA into smaller ones and stitch them together but many companies are looking for a way to deploy pieces of their UIs independently.
Technique worth exploring
Webpack Module Federation - Time and time again I read about micro-frontends on different companies’s blogs. Some of them had their own solutions and tools but they all seemed too limited or made to work in scenarios specific to the company. It wasn’t until I read the merge proposal for Webpack’s module federation that I started taking that pattern seriously. It allows a SPA to pull modules from a remote origin, allowing us to share and stitch together screens from different sources. Here's the original Merge Proposal and here is another useful read related to Next.js from the creator of Module Federation.
Books worth reading
Building Micro-frontends & Micro-frontends in Action - I need to note that I haven’t read those books, but they both have high Goodreads scores and have good reviews from readers. They’re both focused on micro-frontends and the patterns around them. Even if you don’t get to build such an application in the near future I think it’s worth expanding your knowledge. The best practices of the future will be based on the lessons from the early implementations.
Black Friday Sale
Earlier this year I wrote Tao of React - a book containing best practices for building React applications. It combines all the knowledge, wisdom and experience I’ve gathered the hard way in the last 5 years. Until the end of the week it’s 50% off, so get yourself (or a React developer you know) an early Christmas present.
Quote worth pondering
"Try new things. Bias towards novelty within the space of feasible solutions. Fight the impulse to copy designs verbatim. Every major system was just a half-baked idea in someone’s head at some point." – Mahesh Balakrishnan