Prioritizing Architecture Over Framework in Web Development

This ad is not shown to multipass and full ticket holders
JSNation US
JSNation US 2025
November 17 - 20, 2025
New York, US & Online
See JS stars in the US biggest planetarium
Learn More
In partnership with Focus Reactive
Upcoming event
JSNation US 2025
JSNation US 2025
November 17 - 20, 2025. New York, US & Online
Learn more
Bookmark
Rate this content

What if the architecture of our web applications wasn't solely about technological choices? Many backend architecture practices could be relevant in the frontend but remain underutilized. These practices capitalize on how our brain functions to enhance efficiency. Since we spend over 70% of our time reading code, developing the ability to read more efficiently, achievable through solid architecture practices, would be advantageous.

This talk has been presented at React Summit 2025, check out the latest edition of this React Conference.

FAQ

Alexandre Rivet is a senior front-end developer at NextApp with nine years of experience, based in Quebec City, Canada.

The main focus of Alexandre Rivet's talk is on prioritizing architecture over framework in web development to improve code maintainability and efficiency.

Focusing solely on technology can lead to projects that are hard to maintain and difficult for newcomers to understand, as it lacks a solid architectural foundation.

Human memory, particularly long-term memory, helps programmers recognize and understand code faster. Long-term memory supports working memory by allowing quick recognition of familiar programming concepts.

Some tips include using components effectively, avoiding too many dependencies, making APIs independent, and separating business logic from UI components.

A well-architected application helps new team members understand the codebase faster, as it is designed to be human-readable and maintainable.

Separating business logic from UI components ensures a clear separation of concerns, making the code easier to understand and maintain. It also aligns the code with non-programmers' understanding of the business model.

'Dumb' components focus on rendering and receive data via props, while 'smart' components handle state management and data fetching, supplying data to 'dumb' components.

'Chunking' is a process where the brain groups information into larger, meaningful units, which helps in understanding and remembering complex information more easily.

Alexandre Rivest
Alexandre Rivest
17 min
17 Jun, 2025

Comments

Sign in or register to post your comment.
Video Summary and Transcription
Alexandre Rivet emphasizes prioritizing architecture over frameworks in web development for efficiency and project maintenance. Leveraging long-term memory improves code comprehension and speed. Effective React applications require clear component naming and caution with global state usage. Strategies for efficient React development include separate logic for DOM and smart components, reducing global state dependencies, and creating independent API clients for flexibility.

1. Analyzing the Importance of Architecture

Short description:

Alexandre Rivet discusses prioritizing architecture over frameworks in web development, emphasizing the importance of efficiency and focusing on architecture to avoid project maintenance challenges. He shares insights from his experience with React projects and highlights the impact of architecture on project maintainability and ease of onboarding new team members. Alexandre also references a presentation by Filiane Hermann, linking memory function to programming proficiency.

Hey, everyone. My name is Alexandre Rivet, and welcome to my talk about pricing the architecture over the framework in web development. A bit about me, I'm Canadian. I live in Quebec City, so I'm French. And I am a senior front-end developer at NextApp for nine years now. NextApp is a constant company, so I've seen many projects using different languages, libraries, tools, framework, you name it. Because of that, I had to learn ways to be efficient in my work without focusing too much on specific technologies. And one of the ways to achieve this is by focusing on the architecture. That's why it's my subject today.

From what I've seen in the multiple React projects I've worked on for my clients, a lot of people tend to only think about React and the brand new tools that just came out. However, if you only focus on technologies, you'll end up with the project hard to maintain. Well, maybe not for you, but maybe because you've designed it. But it will be for newcomers on the project. And that's basically my situation for many projects.

So, last year, I asked myself why we had so many difficulties working on STEM that we have not designed ourselves. I started searching online on why the real reason behind it, and I stumbled upon a presentation called How to Read Complex Code. It was a talk given by Filiane Hermann, who is from Amsterdam. I learned recently. She also wrote a book called The Programmer's Brain. And Filiane draws a link between the functioning of our memory and how to help us be better at programming.

To explain my point about the architecture, I'm going to borrow one of her exercises. I'm going to briefly show you symbols. Try to remember as many symbols as possible, enough to be able to draw them. It's going to go very fast. Are you ready? Three, two, one. That was very fast, right? Would you be able to reproduce the whole series? Probably not, and that's normal. People tend to remember about three symbols when I show them. When we see something, the information goes through our short-term memory. There is a very limited amount of information that it can retain at the same time. The latest study suggests that we can retain between two to six units of information at the same time in our short-term memory.

2. Optimizing Memory for Coding

Short description:

When coding, our working memory interprets information, influencing memory retention. Long-term memory aids working memory in recognizing patterns, enhancing code comprehension and speed. Recognizing familiar concepts quickly in code signifies long-term memory utilization for efficient understanding.

So, despite this, if I display a symbol again, it will be easier for it to remember that. That's because after seeing the information, our brain starts to interpret it. The interpretation is done by our working memory. It analyzes the information and decides what to do with it. If it takes too long, however, the information will be lost in the short-term memory for new information. When you are exhausted after a long day of work coding, most of the time that's because your working memory has been overloaded.

In French, we say that we are out of brain juice. An important thing to say is that the working memory doesn't depend only on the short-term memory. To prove that, we're going to do the same exercise but with a little twist. I'm going to show you a symbol. Try to remember as much as possible in the short amount of time. Ready? Three, two, one. If I ask you to write what you saw, it would be easier, right? That's because we recognize those symbols. They were letters.

That's because our long-term memory supports our working memory in analyzing what we've seen. We have trained our long-term memory all our lives to recognize these letters. The same principle can be applied in programming. If I say public void if else, use state props for react-specific. Those are all concepts that we have learned to recognize quickly because we've seen them many times, and we create long-term memory about them. So, we do not have to ask ourselves, what does it mean? We just know. It makes us read the code faster.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Scaling Up with Remix and Micro Frontends
Remix Conf Europe 2022Remix Conf Europe 2022
23 min
Scaling Up with Remix and Micro Frontends
Top Content
This talk discusses the usage of Microfrontends in Remix and introduces the Tiny Frontend library. Kazoo, a used car buying platform, follows a domain-driven design approach and encountered issues with granular slicing. Tiny Frontend aims to solve the slicing problem and promotes type safety and compatibility of shared dependencies. The speaker demonstrates how Tiny Frontend works with server-side rendering and how Remix can consume and update components without redeploying the app. The talk also explores the usage of micro frontends and the future support for Webpack Module Federation in Remix.
Understanding React’s Fiber Architecture
React Advanced 2022React Advanced 2022
29 min
Understanding React’s Fiber Architecture
Top Content
This Talk explores React's internal jargon, specifically fiber, which is an internal unit of work for rendering and committing. Fibers facilitate efficient updates to elements and play a crucial role in the reconciliation process. The work loop, complete work, and commit phase are essential steps in the rendering process. Understanding React's internals can help with optimizing code and pull request reviews. React 18 introduces the work loop sync and async functions for concurrent features and prioritization. Fiber brings benefits like async rendering and the ability to discard work-in-progress trees, improving user experience.
Thinking Like an Architect
Node Congress 2025Node Congress 2025
31 min
Thinking Like an Architect
Top Content
In modern software development, architecture is more than just selecting the right tech stack; it involves decision-making, trade-offs, and considering the context of the business and organization. Understanding the problem space and focusing on users' needs are essential. Architectural flexibility is key, adapting the level of granularity and choosing between different approaches. Holistic thinking, long-term vision, and domain understanding are crucial for making better decisions. Effective communication, inclusion, and documentation are core skills for architects. Democratizing communication, prioritizing value, and embracing adaptive architectures are key to success.
Full Stack Components
Remix Conf Europe 2022Remix Conf Europe 2022
37 min
Full Stack Components
Top Content
RemixConf EU discussed full stack components and their benefits, such as marrying the backend and UI in the same file. The talk demonstrated the implementation of a combo box with search functionality using Remix and the Downshift library. It also highlighted the ease of creating resource routes in Remix and the importance of code organization and maintainability in full stack components. The speaker expressed gratitude towards the audience and discussed the future of Remix, including its acquisition by Shopify and the potential for collaboration with Hydrogen.
The Eternal Sunshine of the Zero Build Pipeline
React Finland 2021React Finland 2021
36 min
The Eternal Sunshine of the Zero Build Pipeline
For many years, we have migrated all our devtools to Node.js for the sake of simplicity: a common language (JS/TS), a large ecosystem (NPM), and a powerful engine. In the meantime, we moved a lot of computation tasks to the client-side thanks to PWA and JavaScript Hegemony.
So we made Webapps for years, developing with awesome reactive frameworks and bundling a lot of dependencies. We progressively moved from our simplicity to complex apps toolchains. We've become the new Java-like ecosystem. It sucks.
It's 2021, we've got a lot of new technologies to sustain our Users eXperience. It's time to have a break and rethink our tools rather than going faster and faster in the same direction. It's time to redesign the Developer eXperience. It's time for a bundle-free dev environment. It's time to embrace a new frontend building philosophy, still with our lovely JavaScript.
Introducing Snowpack, Vite, Astro, and other Bare Modules tools concepts!
Composition vs Configuration: How to Build Flexible, Resilient and Future-proof Components
React Summit 2022React Summit 2022
17 min
Composition vs Configuration: How to Build Flexible, Resilient and Future-proof Components
Top Content
Today's Talk discusses building flexible, resilient, and future-proof React components using composition and configuration approaches. The composition approach allows for flexibility without excessive conditional logic by using multiple components and passing props. The context API can be used for variant styling, allowing for appropriate styling and class specification. Adding variants and icons is made easy by consuming the variant context. The composition and configuration approaches can be combined for the best of both worlds.

Workshops on related topic

AI on Demand: Serverless AI
DevOps.js Conf 2024DevOps.js Conf 2024
163 min
AI on Demand: Serverless AI
Top Content
Featured WorkshopFree
Nathan Disidore
Nathan Disidore
In this workshop, we discuss the merits of serverless architecture and how it can be applied to the AI space. We'll explore options around building serverless RAG applications for a more lambda-esque approach to AI. Next, we'll get hands on and build a sample CRUD app that allows you to store information and query it using an LLM with Workers AI, Vectorize, D1, and Cloudflare Workers.
High-performance Next.js
React Summit 2022React Summit 2022
50 min
High-performance Next.js
Workshop
Michele Riva
Michele Riva
Next.js is a compelling framework that makes many tasks effortless by providing many out-of-the-box solutions. But as soon as our app needs to scale, it is essential to maintain high performance without compromising maintenance and server costs. In this workshop, we will see how to analyze Next.js performances, resources usage, how to scale it, and how to make the right decisions while writing the application architecture.