I’m a younger millennial born in 91, and I recognize Zoomers obviously have it worse than I did. It’s just math.
Boomer and Gen X inability to admit they had it better is wild. They’ll wax poetic about the 70s, 80s, 90s then 2 secs later pretend those glory years didn’t happen.
In every single country that passed age verification laws:
1) databases got leaked
2) innocent websites got censored
3) governments became more censorship heavy
4) protests became more criminalized
5) information got harder to find
I don't think people understand the gravity of the situation as the UN is preparing for possible nuclear weapon use in Iran.
This is a picture of Tehran. For you uneducated, untraveled, never-served, warhawks licking your chops at the thought of bombing it. It's not some low population desert. There are families, children, family pets. Regular working class people with dreams. You're sick to want war.
Tehran is a city of nearly 10,000,000 people. Imagine nuking Washington, Berlin, Paris, London, or beyond, bombed with nuclear weapons.
I gave up my diplomatic career to leak this information. I suspended my duties so as not to be part of or a witness to this crime against humanity, in an attempt to prevent a nuclear winter before it is too late.
Yesterday, nearly ten million people protested “No Kings” in the United States. The possibility of the use of nuclear weapons must be taken very seriously. It's dangerous. Act now. Spread this message worldwide. Take the streets. Protest for our humanity and future. Only the people can stop it. History will remember us.
Made React ~74% faster when turning the server components payload into elements to render in the browser or during SSR/SSG.
In real-world Next.js applications this shows 15% to 30% faster rendering to HTML, depending on the RSC payload size.
Vercel will be officially sponsoring https://t.co/QF7eOed81b. That's a given. We as a community and industry owe @adamwathan and team a lot. Tailwind is foundational web infrastructure at this point (it fixed CSS 😉). I've also reached out to Adam to explore how we can make this a longer-term commitment.
At the risk of sticking my neck out during a bad time: I’m sick of seeing this photo
This is 100% server code, this isn’t a client side component that sends SQL to a server. You can’t add click handlers, state or hooks.
The code renders on the server an wires up a form action just like you’d do with PHP
react fiber is honestly one of those things that people think they get until they actually look under the hood and then suddenly the whole thing feels like some alien technology living inside javascript. everyone parrots those same shallow lines like “fiber is the new diffing engine” or “fiber is concurrent rendering” and it’s just… no man, it’s so much deeper and way more deranged than that. the old react, the stack one, was like this innocent recursive tree walker that just kept diving into components like some happy kid climbing down a ladder, except that ladder was welded directly to the javascript engine’s callstack, so once you’re halfway down you can’t stop, you can’t turn around, you can’t take a break, you can’t do shit except finish it. so if you had big trees, like some giant UI with thousands of nodes, react would just lock the entire main thread and choke the browser until it was done. you typed into an input? too bad, the browser can’t react because react is too busy react-ing. it was legit painful. and the browser’s like “pls, bro, i need to paint” and react’s like “nah bro, i’m in the middle of rendering this dumb component”.
so the react team basically looked at that mess around 2016 and realized the entire approach was screwed. like no amount of small optimizations could fix the fact that recursion is not interruptible in JS. the JS engine owns the stack, not you. and if you can’t pause, you can’t avoid jank, it’s just physics. so instead of fighting it, react just said screw the whole model and built their own stack. not metaphorically, literally. that’s what fiber is. it’s not some “algo”, it’s an entire fake callstack implemented as a linked structure of nodes. each fiber is like a tiny memory cell react controls completely, storing the component type, props, state, the children pointer, sibling pointer, parent pointer, priority info, effects flags, and all this other internal stuff. it’s like react turned every component into a little OS task.
and the crazy part is that because it’s all controlled manually, react finally got freedom from the JS callstack. instead of recursive rendering, it’s this iterative stepping through fibers one by one. and that suddenly means react can pause. like just literally stop mid render, drop everything, let the browser repaint, handle input, chill, take a breath, then pick up exactly where it left off inside that huge UI tree. no more “oh no i’m stuck deep in recursion”. you can’t get stuck because react isn’t using the builtin stack anymore. it’s rolling its own.
this is where the whole scheduling thing comes from. people think scheduling is some abstract idea but it’s literally react walking the fiber graph and deciding which updates matter more. typing is urgent. animations are medium. background data fetching is low. old react treated everything the same and that's why old apps felt like garbage when doing heavy work. fiber changed that whole world. suddenly react could say “yo, someone typed into an input, drop the low-priority render, resume later.” and the app stays smooth even if you have 50k components.
and because fiber creates this double-tree thing, the current tree and the work-in-progress tree, react can run through the whole render phase in like a simulation mode. this is the wild part most ppl dont realize: when react is “rendering”, it’s not touching the dom at all. it's building this offscreen imaginary version of what the UI should look like. and only when the whole thing is done, consistent, no half-finished nodes, react switches to the commit phase and actually mutates the real DOM. like how game engines draw everything in a hidden buffer then flip it. that’s why the UI never shows broken half-updated states. fiber gives react the room to compute the perfect frame before actually showing it.
and dude, this is exactly why suspense works. why transitions feel smooth. why server components can be streamed in and stitched into the client ig
@sam_ferree@RyanRodemoyer2 Yeah lets all type more characters for a pretend boogeyman that never actually happens and if it does is a bug in the upstream code that should just be fixed.
@asidorenko_ Don't like this decision. Params should be ISR'd by default (no generateStaticParams needed). Feels like nextjs is really torn between dynamic by default in 16, and trying to be serverless on vercel which isn't good with dynamic ISR pages