Skip to content
0:00 / 0:00

#react#flux#mvc

Hacker Way: Rethinking Web App Development at Facebook

Meta Developers

311K subscribers • 8 videos on Hallway

YouTube
  • Recommended by 6 people: 5 on Hacker News and 1 curated list.
  • A classic. People kept recommending it from 2014 to 2024.
  • Made by the vendor. The company whose product it covers made or sponsored it.
  • May be out of date. Uploaded 12 years ago, in an area where tools change fast.
  • An opinion. It argues one side of a question engineers disagree on.

Intermediate. Assumes working knowledge.

899K views12 years ago6 recommendations

Web developmentSoftware designReactVue, Svelte, Angular and othersSoftware architecture

Facebook engineers introduce the Flux architecture and React, explaining how unidirectional data flow solves complex UI state bugs at scale.

Delivering reliable, high-performance web experiences at Facebook's scale has required us to challenge some long-held assumptions about software development. Join us to learn how we abandoned the traditional MVC paradigm in favor of a more functional application architecture.

Why it's here

6 people recommend this, 1 disputes it

What people say. Engineers point to this landmark talk as the definitive explanation of why Facebook abandoned MVC for React and Flux.

Moments people linked to

yazaddaruvalaon Hacker News • Recommends

On “React is 10 years old”

I'll try one last time: > Sorry none of this makes any sense to me. If you're not familiar with the MVC variants (MVVM, MVP, MVI, MOVE)01 we should start there. Next you should read through some common mistakes of Backbone.js like applications link and some criticisms of MVC on HackerNews in 20120. Finally if you haven't before these talks, they are the ones that sold me on React: - link - link - link to this video 0 link 1 link

programming-talkscurated list on GitHubRecommends

Under “Web Development”

Hacker Way: Rethinking Web App Development at Facebook 00:44:36 by **Tom Occhino, Jing Chen & Pete Hunt** (it starts pretty slow and marketingy, but gets much better over time) (2014)

rattrayon Hacker News • Recommends

On “Flux Application Architecture”

Video seems to start discussion of Flux just after the 10 minute mark. Direct Link: link to this video EDIT: So far, the video is much more helpful to me in terms of bringing the concepts of Flux to life. Jing does a terrific job explaining in my opinion.

danesparzaon Hacker News • Recommends

On “How to optimize React applications that use Redux”

Redux is an implementation of Flux. I don't use Redux, but the original Facebook engineering announcement videos helped me understand React and Flux tremendously: link to this video If you're talking about Redux specifically -- I agree with you. I think it's ugly and confusing.

franciscopon Hacker News • Recommends

On “React is 10 years old”

Exactly, this is the same as saying Redux has two methodologies, the "setter system" and the "event system"; since it wasn't that well documented initially doesn't mean that the setter way was ever recommended (it's not). In fact if you watched the Flux youtube talk, something highly recommended to learn the philosophy behind Redux, it was pretty clear. Edit: here's the video (from 10:20) link to this video

phailhauson Hacker News • Recommends

On “React 19”

…t to decide when to render." So if you want to update state, React will manage that for you and queue up the render. With React, your UI and state literally cannot go out of sync (except for refs), and all the data dependencies are managed for you. Facebook gave a great talk on Flux architecture vs MVC ten years ago that you should check out here: link to this video > what's the point of the setXXX() functions? Why not just make them constant explicitly Look at the code again: it is explicitly constant! `const myState, setMyState = useState(0)`. `myState` is a const, and will literally not change its value for the entire render cycle. There is no mutable state to manage, no race conditions. You just…

Zanfaon Hacker News • Disputes

On “Ask HN: Why is the Instagram desktop website so unreliable?”

That would definitely explain why facebook.com still has had the exact same unread messages counter bug from 2014 that they used as a case-study for the React/Flux announcement video1. They just don't care. 1: link to this video

Zanfaon Hacker News • Disputes

On “Web Crap Has Taken Control”

Apparently Facebook can't do it with React either. They still experience the exact same state inconsistency bug as described 0 during React announcement as rationale for using React. 0 link to this video

u/MrJiksin r/vim • Mentions

…han buffering it in browser. And at times I save the video urls for later download with some info about their names (mostly). Following is a sample file with what I have to download: * http://ruby-kickstart.com * http://lang.stanford.edu/courses/ee380/100310/100310-ee380-500.wmv | small is beautiful, on design of lua * http://vimeo.com/36579366 * link to this video | Haskel development workflow * link to this video * link to this video * link to this video * link to this video * link to this video * http://vimeo.com/73866851 * link to this video | FB reimagines web dev * link to this video | WHat it means to be reactive I created a macro to convert lines with the link to the format that can be used in my terminal to download the video. let @d="0idv '\<ESC>f i'\<ESC>f|xxi…

liscovichon Hacker News • Mentions

On “Meteor hits 1.0”

I wonder if the criticism that the Flux team at Facebook has directed at two-way data binding is also applicable to Meteor. Jing Chen is her intro of Flux ( link to this video ) says that two-way data binding creates a major challenge for scaling applications because views can trigger changes in data, and data changes can trigger cascading changes in views, which makes it very difficult to predict the behavior of the app as a whole. Wouldn't Meteor face the same challenges? In other words, if you believe that the Flux design pattern (which involves a central dispatcher as the only entity capable of updating the data) is sound, shouldn't you stay away from Meteor's model when building large applications…

alexanderchron Hacker News • Mentions

On “Facebook Hit by Apple’s Crackdown on Messaging Feature”

I don't think it's intentional. Facebook has had this bug for several years. Interestingly one of the reasons they created react/flux was to fix it: link to this video (15 minute mark)

franciscopon Hacker News • Mentions

On “Show HN: SimpleR State – simple state management for React”

It formalizes how data is created, accessed and modified. Instead of multiple places trying to modify some specific data ad-hoc and with possible collisions/changes, now you have a mores strict way of dealing with data. Basically the Flux architecture. See from 10:20: link to this video

acemarkeon Hacker News • Mentions

On “UIs are not pure functions of the model (2018)”

> React is a child of the Flux architecture philosophy FWIW, this isn't actually the case. React was first announced in 2013: - link The "Flux Architecture" was first announced a year later, in 2014: - link to this video React's original influences were things like Facebook's internal PHP-based UI definition layers: link

u/Liamdevin r/dotnet • Mentions

On “tech choices for scalability?”

> Why wouldn't MVC be scalable? link to this video > What does .NET introduce that makes ASP.NET MVC not scalable? Views have a significant first-use and memory cost due to the way they are compiled, when a view is run two JIT operations run; first to build the requested model tree and then to load the assigned model in to the tree (2nd op runs every request). SE use their pre-compiler to eliminate this problem. Caching doesn't actually cache output, it just stores an in-memory version of the model to prevent calls to the backing store and DMX still has significant work to do in order to render a view. SE use their own front-end cache to eliminate this problem, .net is used to generate resources fo…

u/Millkovicin r/dotnet • Mentions

On “tech choices for scalability?”

10:55 on that video (link to this video you can see that FB completely failed misimplementation of MVC. I am sure Stackoverflow could run without a custom compiler and micro ORM is logical step for a website of that scale.
1View on Reddit

u/ethansidentifiablein r/softwarearchitecture • Mentions

On “Is MVC hard to understand?”

I would argue that MVC isn't hard to understand. It's just asking for a mess of crisscrossed responsibilities, because, like OOP in general, it's one of those things that's very sensible on paper but in actual practice things don't exactly fit into these special little boxes that you've built. https://imgur.com/KrZVDsP I think Facebook's old talk about their "flux" model is enlightening for the advantages of simpler ways of thinking. link to this video