skip to content
Podcast cover art for 100 Years of WordPress and RSC in Frameworks
Podcast

100 Years of WordPress and RSC in Frameworks

An open discussion about Chrome’s new features, WordPress’s 100-year plan, future of AI, feature flags, and Redwood’s approach to React Server Components

Open .md

Episode Description

JavaScript Jam covers Chrome 118's privacy sandbox APIs, WordPress's 100-year hosting plan, Solid Start's move to Nitro, and feature flags with a guest developer.

Episode Summary

This JavaScript Jam open mic episode moves through several notable web development topics. The hosts begin by examining Chrome 118's beta release, focusing less on individual browser features and more on the significance of the privacy sandbox — Google's evolving approach to replacing third-party cookies with APIs like Topics, which succeeded the failed FLoC initiative. The conversation shifts to WordPress's newly announced $38,000 hundred-year hosting plan, which the hosts find thought-provoking as a statement about digital permanence and long-term thinking on the web. Erik Rasmussen calls in from a conference in Croatia to highlight Sean Wang's talk on "Software 3.0" and the emerging AI engineer role. The discussion then covers Solid Start's architectural pivot from Astro to Nitro as its underlying server, which the hosts see as a meaningful signal for Nitro's growing ecosystem beyond Nuxt, particularly for edge computing environments. Guest Chris Griffing joins to discuss feature flags, introducing his open-source tool Vexilla and exploring the broader value of decoupling feature deployment from code releases. The episode closes with a look ahead to Next.js Conf and the upcoming RedwoodJS Conference, where the headline announcement will be going all in on React Server Components — sparking a debate about whether developers need to understand RSC conceptually or whether frameworks will abstract it away.

Chapters

00:00:30 - Welcome and Chrome 118 Beta Discussion

The hosts open the show with casual banter about Twitter Spaces sound effects and a brief history of JavaScript Jam, which has been running for two to three years across different platforms. After welcoming the audience and promoting the JavaScript Jam newsletter, they transition into the story of the week: the Chrome 118 beta release and its 18 new features.

Ishan frames how developers should think about browser releases, noting that Chrome often leads with bleeding-edge features that may take years to reach cross-browser support. He highlights the View Transition API as an exciting evolution from the earlier Portals concept, but emphasizes the practical reality of checking Can I Use before building around any new browser capability.

00:09:20 - Privacy Sandbox, FLoC, and the Topics API

Anthony flags the privacy sandbox as potentially the most significant part of Chrome 118, which leads into a deep discussion about post-cookie advertising. Ishan explains FLoC, Google's earlier attempt to move interest tracking into the browser using federated learning, and how it failed to gain traction with the advertising industry before being replaced by the Topics API in early 2022.

The hosts walk through how the Topics API is designed to work: the browser learns a user's interests from browsing history, ranks them among roughly 300 categories, and then shares a random subset to websites for ad targeting — even introducing deliberate randomness to prevent certain attacks. They acknowledge they haven't kept up with privacy sandbox developments but agree it's the most broadly impactful part of the Chrome release for developers and non-developers alike.

00:17:06 - Conference Reports and AI Engineering

Erik Rasmussen joins from the Frankfurt airport, returning from the Infobip Shift conference in Croatia, where the standout talk was Sean Wang's presentation on "Software 3.0 and the AI Engineer Landscape." Erik describes the talk as dense and mind-blowing, noting each slide required significant background research to fully understand. The hosts discuss Swyx's podcast and the distinction between Karpathy's Software 2.0 (pure ML) and Software 3.0 (integrating LLMs into engineering workflows).

Anthony explains that the concept of the "AI engineer" represents a new developer niche focused on building products with existing models rather than training them. Ishan also recommends the AI Breakdown podcast and mentions a recent episode on RWKV, an alternative architecture to transformers. The conversation briefly touches on the cultural dimensions of podcasting before moving to the next topic.

00:26:00 - WordPress's 100-Year Hosting Plan

The hosts discuss WordPress's announcement of a $38,000 hundred-year hosting plan, which Ishan finds conceptually significant despite its niche market. He connects it to the Long Now Foundation's 10,000-year clock project and the broader problem of digital ephemera, noting that the cost breaks down to roughly $30 per month. The plan is targeted at legacy-minded individuals, family offices, and founders seeking long-term digital preservation.

Anthony draws a parallel to GitHub's account transfer feature for deceased users and to the RedwoodJS framework, which was named after long-lived redwood trees as a symbol of durability. The conversation takes a lighter turn as they joke about the accounting challenges of recognizing revenue over a century and speculate about future computing costs, before Scott delivers a mid-show reminder encouraging audience participation.

00:33:39 - Industry Moves and Open Sauced

Scott brings up Nicky T.'s departure from Netlify to join Open Sauced, which Anthony had some advance knowledge of from personal conversations. Anthony provides background on Open Sauced, explaining that founder Brian Douglas has been building the project for about four years, starting as a side project while working at GitHub, and has since turned it into a funded company with around half a dozen employees.

Anthony shares that Open Sauced's Discord was the first he ever joined and recounts how he connected with Brian through Jamstack Radio, eventually watching the project grow from a streaming side project into a real company. The hosts tease an upcoming episode featuring Brian demonstrating new AI capabilities in the platform, and Scott uses the moment to promote the JavaScript Jam newsletter.

00:36:54 - Next.js Conf Preview and Solid Start's Move to Nitro

The discussion turns to upcoming events, with Next.js Conf invitations going out and talk submissions still open. Anthony predicts heavy AI representation at the conference, while Ishan notes the unusual presence of WPP, a major UK advertising firm, as a Titanium sponsor. They then cover Solid Start's decision to move from Astro to Nitro as its underlying server technology, with Anthony explaining that Ryan Carniato found Astro too heavyweight for Solid Start's needs.

Ishan highlights this as an important ecosystem milestone for Nitro, drawing a parallel to how Vite grew beyond Vue. He emphasizes Nitro's importance for edge computing, where traditional Node servers are too heavy and runtimes tend to use bare V8 engines, WASM containers, or lightweight JavaScript runtimes instead. The adoption signals that Nitro is becoming a genuine multi-framework server platform.

00:45:08 - Feature Flags Deep Dive with Chris Griffing

Guest Chris Griffing joins to discuss Hypertune, a feature-flag tool with a Vercel partnership, and introduces his own open-source project Vexilla — a static-file-based feature flag tool designed for simplicity and low switching costs. Ishan asks Chris to explain feature flags for the audience, and Chris describes how they decouple application logic changes from the deploy process, citing mobile app deployments and holiday theme rollouts as practical examples.

Ishan enriches the discussion by referencing Martin Fowler's "Feature Toggles" taxonomy and Facebook's username launch case study, where the SRE team used feature flags not just to control the new feature but to dial down other system components under load. Chris raises the underappreciated problem of feature flag cleanup, pointing to Uber's Piranha tool as the only serious attempt at automating removal, before Ishan suggests branch-based testing as an alternative approach.

00:55:37 - React Server Components and RedwoodJS Conference

Anthony previews the RedwoodJS Conference happening September 26–29 in Oregon, where the headline announcement will be going all in on React Server Components. He positions Redwood as occupying a middle ground between Remix, which hasn't adopted RSC yet, and Next.js, which has already committed fully. A debate emerges about whether RSC is inevitable and whether developers need to learn it directly.

Anthony argues that frameworks like Redwood will abstract RSC away so developers won't need to change how they write apps, while Ishan pushes back, suggesting the mental model shift from pure front-end to server-aware components is worth understanding. The episode wraps with Scott's closing remarks, reminding listeners the show runs every Wednesday at noon Pacific except for the following week, and encouraging newsletter subscriptions at JavaScriptJam.com.

Transcript

00:00:30 - Anthony Campolo

Yo, what's up, everybody? Welcome to JavaScript Jam live open mic, y'all.

00:00:38 - Erik Rasmussen

All.

00:00:39 - Anthony Campolo

Yeah, yeah. We've got Anthony and Ishan joining us here today.

00:00:44 - Ishan Anand

Let's bring them on up.

00:00:46 - Anthony Campolo

There we go. And there we go.

00:00:52 - Ishan Anand

All right.

00:00:52 - Scott Steinlage

Invites sent, y'all.

00:00:53 - Anthony Campolo

All.

00:00:55 - Scott Steinlage

We got Sabin saving the world down there joining us.

00:01:02 - Ishan Anand

Yes. Yes, sir.

00:01:07 - Anthony Campolo

How's the world of

00:01:10 - Scott Steinlage

engineering doing?

00:01:12 - Anthony Campolo

That's how the world's doing. The world is doing train sound. Nice. I don't really know what any of these sounds do except the applause. So I'm gonna try a new one each week, and then at the end, I'll have at least a second sound that I can use.

00:01:29 - Ishan Anand

Where are you guys seeing this? I don't see this.

00:01:32 - Anthony Campolo

You don't know how to do sounds in spaces, Ishan. So it's the magic wand symbol, obviously.

00:01:38 - Ishan Anand

Oh, there it is.

00:01:40 - Anthony Campolo

And then hit the applause one. That's the one. Solid. There you go. If you pull that one out at the right time, it's very good. All the rest, terrible. Awkward. Kills the mood. Don't hit any other button on there except the fart one.

00:01:59 - Ishan Anand

So what's the voice trans? What's the voice transformer?

00:02:03 - Anthony Campolo

I have no idea. Oh, we lost Scott.

00:02:06 - Ishan Anand

Suddenly my AirPod stopped working. Oh, no, we lost Scott.

00:02:12 - Anthony Campolo

Well, maybe that's for people if they want to, like, not be throwing, like, an alt. Maybe that doesn't have their real name associated with it. Maybe that's why.

00:02:26 - Ishan Anand

Oh, interesting. Look at this. We've been doing this for two years, maybe three. We're trying to figure out how long we've been doing JavaScript Jam,

00:02:40 - Anthony Campolo

and

00:02:40 - Ishan Anand

it's at least two years, if not three years, I think. Although before it was on Clubhouse and it was actually on Thursdays instead of Wednesdays, and it was called JavaScript Thursdays. But it's been a long while, and I'm still discovering new things.

00:02:58 - Anthony Campolo

Always more to learn.

00:03:00 - Ishan Anand

Always more to learn. Well, welcome, everyone. Looks like we got Scott back. There he is. Welcome to JavaScript Jam Live. JavaScript Jam Live is what we like to call an open mic, so anything JavaScript or web development-related is on topic. Sometimes we have guests, sometimes we don't. Next week, actually, we'll be off, but the week after that we've got a couple guests lined up for you and we're looking forward to having them bring their insights and conversation. But it's also designed to be, on some weeks, an open mic so people can just raise their hand. We often talk about a variety of topics in web development, and we send out a newsletter every week that kind of gets the juices going for what to talk about that Anthony puts together. And if you want to see that newsletter, go to JavaScriptJam.com and click on newsletter and, oh, it sounds like Scott's having internet issues.

00:04:00 - Anthony Campolo

You got your sounds on still.

00:04:02 - Ishan Anand

I do have my sounds on.

00:04:03 - Anthony Campolo

Hear your notifications, which is really just us messaging you.

00:04:09 - Ishan Anand

Exactly. But if you aren't a subscriber to the JavaScript Jam newsletter, I highly encourage you guys to read it. Anthony does a great job putting together a bunch of resources from around the web about what's new and noteworthy in web development in JavaScript. So just go over to JavaScriptJam.com and you can see the newsletter link and sign up right there. And maybe

00:04:33 - Anthony Campolo

to the Jumbotron.

00:04:34 - Ishan Anand

Right to the Jumbotron. There we go. So with that, that's your invitation to, you know, raise your hand at any time. You'll see it at the bottom of your Spaces interface. And we're happy to bring anyone up onto the stage and talk about whatever is interesting or noteworthy. And I want to just add, if you're a beginner or an expert, we want to hear from you. We have lots of advanced conversations, but we also have lots of conversations with people who are just trying to get started. In fact, very often we have people asking, how do I improve or get to the next step in my career? I'm just starting with HTML and I want to get started with web applications. Should I learn React? Should I learn Vanilla JS? That was a topic I think we just had last week or two weeks ago. So always happy to help anybody at any level of the spectrum. So with that said, Anthony, do you want to lead with what your story of the week was for the newsletter this week?

00:05:36 - Anthony Campolo

Yeah, story of the week is Chrome 118 beta. This is the type of thing that in the past I probably wouldn't have paid a whole lot of attention to. But I guess I'd be curious asking you, like, how often are major Chrome releases actually important, or a big deal, or worth paying attention to? Because if there's 118, that seems like a lot, but also there's, like, a whole very long blog post, like 18 new features they've added. So what's your read on it? Is this something that's actually worth paying attention to, or is it kind of like there's always going to be new updates and this is only for the super-duper hyper-niche browser fan people?

00:06:21 - Ishan Anand

Here's my answer, which is it depends who you are. Certain features are really important to others. Browsers have such a wide surface area of people they support. And the most important thing, I think, is for most developers, Chrome tends to be one of these browsers that is on the bleeding edge of new features and is actively working. Then there are other browser vendors who are kind of slower. So first I look at some features and I say, well, this is an example of something on the bleeding edge. Will I really bother using it? No, not until Firefox and Safari support it. So then it's like, okay, let me look and see, and I gotta wait a couple years, right? A good example is Web Push, where you have to wait more than a couple years. There are certain other features, like some CSS features, that to be fair, WebKit actually pushes some of those faster than Chrome does. And because of, I think, Apple's really strong design sense, I personally pay attention to more of the JavaScript stuff since I'm less of a designer. But for me it's just like I look at them like, oh, that's interesting, it's a peek at the future, but am I actually going to use it?

00:07:37 - Ishan Anand

Probably not. Occasionally something comes out that gets me super excited, but I still wouldn't use it. A good example though is the View Transition API. That was one, and before that it was Portals. That really points to what a future web browsing experience might look like.

00:07:57 - Anthony Campolo

But again, Chris was obsessed with Portals. When Portals came out, he was trying to explain it to me and I'm like, so it's like a really fancy iframe was kind of my take on it at the time.

00:08:08 - Ishan Anand

Yeah, I think I bucket Portals and View Transition API as like, you don't have to pay attention to Portals now. And it's a good example why you shouldn't get too wrapped up in it. It didn't seem to take with the rest of the browser ecosystem. It's a good example of like, great idea. And then it got, you know, transformed or you know, evolved into the View Transition API. But the central problem.

00:08:32 - Anthony Campolo

Transition, Transition.

00:08:33 - Ishan Anand

Thank you. I totally missed that. I look at it as a peek into the future, at how people are trying to solve these problems. But I look at things like, you know, I go to Can I Use, right, and see if it's broadly supported. And there's a few things that I'm always eagerly looking to see whether they're there. And that's kind of my first take on looking at what's in the beta. It's always like, oh, this is interesting, but can you actually use it? Unless you've got a specific use case and, you know, given Chrome's market share, it's highly likely. If you've got a specific use case that isn't working for somebody and you'd like to enable it, push notifications is a good one.

00:09:18 - Anthony Campolo

Yeah.

00:09:18 - Ishan Anand

Then that makes sense.

00:09:20 - Anthony Campolo

Something that did look somewhat significant to me is have you heard the privacy sandbox?

00:09:25 - Ishan Anand

I was about to get to that. There's a whole other dimension which is not just for developers, which is the disappearance, like the phasing out, of cookies and how Chrome and all the different browsers are managing that. And that's the thing I think is definitely worth everyone paying attention to, even non-developers, in terms of how they're going to evolve the web ecosystem into a cookie-less world.

00:09:52 - Anthony Campolo

It definitely made me realize I don't know anything about this, Erik. It lists four APIs: Attribution Reporting, Protected Audience, Topics, Private Aggregation, and Shared Storage. I don't know what any of these APIs are. Apparently there's this whole suite of APIs underlying this privacy sandbox thing.

00:10:15 - Chris Griffing

Yeah.

00:10:16 - Ishan Anand

And to be honest, I haven't been up on it and I tell people they should be, so I'm a bit of a hypocrite. But they used to have a precursor to this called FLoC, Federated Learning of Cohorts. And the idea was that instead of cookies, the central problem that needs to be solved here is: if you get rid of cookies, how can advertisers track users? How can advertisers get advertisements that are targeted to the people that are potentially interested in their product? So I'm not going to define it in terms of tracking, but imagine you have a new product and you want to get it out to people. I don't know, Marvel bobbleheads, right? And you're like, how do I find these people? Well, right now the way you find those people is they've been on sites that maybe were about Marvel movies or about comics, or they like actual comics. There's a variety of sites where they might go to. And then, you know, the tracking basically indicates that. And then if you can target against that, you can say, serve these ads to those people. Or maybe it's based on their age.

00:11:20 - Ishan Anand

If you're on Facebook, or if they say they like or they're part of certain groups on Facebook. So the central problem, right, that advertising is trying to solve is how do I put the offering of my product in front of the people who should be interested in it? And, you know, advertisers aren't interested in putting it in front of people who aren't interested, right? So they don't want everyone. They want to hopefully get like a 100% click-through rate and not have to show it to anybody and pay for clicks that aren't going to result in sales. So they want to be as targeted as possible. And if you don't have cookies to kind of correlate somebody's interests and actions across a variety of sites, what is the alternative? And so the idea they came up with in FLoC was that the browser was actually going to store this data rather than Google storing what you're interested in. Basically, the browser would make it

00:12:20 - Anthony Campolo

client side instead of server side and

00:12:23 - Ishan Anand

they would figure out the things and topics you're interested in. And I believe there was some AI component, if I recall correctly, that was going to decide amongst the browsers or something like that. But it didn't get any traction or pick up a lot in the advertising industry.

00:12:38 - Anthony Campolo

Yeah, this is the first I've heard about it.

00:12:40 - Ishan Anand

Yeah, it died about, oh well, let's Google FLoC. Google. I think it died last year. Yeah, January 25th, 2022. Google kills off FLoC and replaces it with Topics. So Topics is the new proposal. But again, the idea is very similar. Your browser learns about your interests as you move about the web. It keeps up to date for a couple of weeks on what your browsing history is, and it restricts it to a certain number of topics. I think according to this proposal it was like 300, and it needs to make sure that doesn't include some sensitive topics. I think that's what the protected API is about. So, like, you don't want to target on anything that might be a protected class like gender or race, for example. And that's basically what this new privacy sandbox is about. It's how do we create an efficient advertising platform that still respects people's privacy? That's the goal. After FLoC died, I was like, okay, like I talked about with the browsers, let me wait to really pay attention until multiple browsers support it. I haven't really paid attention to privacy

00:14:05 - Ishan Anand

Sandbox. Looks like we have somebody coming up. Oh, looks like that was Scott.

00:14:13 - Anthony Campolo

Yeah. I'm gonna just throw out a bunch of invites to everybody, though, because most of the crowd right now are people who usually talk.

00:14:19 - Ishan Anand

Yeah. What'd you say?

00:14:25 - Anthony Campolo

I said, I just threw an invite to everyone in the audience. They're all people who previously have spoken here, so it's silly for them all to just sit there listening. Come engage. Engage with us, guys.

00:14:39 - Ishan Anand

Yeah. So when you hit upon a site, the way this API is supposed to work, as far as I understand it, is the browser shares the topics you're interested in randomly from your top topics, and then the site can share that with their advertising. So let me back up. You've got maybe some 300 topics you're interested in, and the browser will rank them. And then when you browse the site, it will pick randomly some subset of those topics that it will share to the website. And then the website says, oh, I've got somebody who's interested in Marvel, you know, F1 racing, and AI, right? And then you can go to your advertiser and your advertising platform and say, I've got a user with these three interests. What ads do you have? And I don't know if this is part of Topics, but FLoC used to have this thing where it would actually even randomly lie in order to prevent, you know, a bunch of attacks.

00:15:48 - Anthony Campolo

That's funny. Yeah, we should do a reset right now. Also, I just want to say, every time we say FLoC, all I can think of is Waka Flocka. I don't know if you have any idea who Waka Flocka is.

00:15:57 - Ishan Anand

I have no idea. I'm so out of touch.

00:15:59 - Anthony Campolo

He's a rapper. So I just say, anyway,

00:16:05 - Ishan Anand

This happened when we were doing work on security, and I kept talking about web application protection as WAP, and people are like, there's this Cardi B song or some rapper song.

00:16:16 - Anthony Campolo

That's a much worse connotation. You don't want that. Yeah, don't go there.

00:16:23 - Ishan Anand

So I won't go there. But anyways, that's the Topics API. And so the reason, you know, going back to why people should pay attention to this, is that cookies and privacy are something that affects everyone. Obviously, it's a controversial and very focused topic. So that's probably the really significant thing here that folks should pay attention to, and it's really big in the release. That being said, I don't know what the adoption is going to be for this. Yeah, go ahead.

00:16:53 - Anthony Campolo

Yeah. Scott, you want to reset the room and then introduce some of our new speakers here? Are you functional right now, Scott? Otherwise I can. We got Bro Nifty. Jason, Eric, thank you for jumping up. How you guys doing?

00:17:12 - Erik Rasmussen

Squad,

00:17:16 - Ishan Anand

what's up? I don't really have much to say. I just came up just to show some support here.

00:17:22 - Anthony Campolo

Awesome. Eric, what's up man?

00:17:25 - Erik Rasmussen

Hey man. I'm in the Frankfurt airport about to board a flight back to Spain.

00:17:32 - Anthony Campolo

On my way back some airport space and I've done a lot of that.

00:17:35 - Scott Steinlage

Nice.

00:17:36 - Anthony Campolo

Yes.

00:17:36 - Erik Rasmussen

On my way back from a conference in Croatia so.

00:17:40 - Anthony Campolo

Really? What was that like?

00:17:42 - Erik Rasmussen

It's lovely. It's my third time going there, and the organizers do a really good job. It's called Infobip Shift.

00:17:54 - Ishan Anand

Oh yeah.

00:17:56 - Anthony Campolo

And it.

00:17:59 - Erik Rasmussen

And it was amazing. A two-day conference with lots and lots of speakers. This morning I had breakfast with the co-founder of Netlify. Not to flex or anything, but that was pretty cool.

00:18:17 - Anthony Campolo

Christian. Yes.

00:18:20 - Ishan Anand

Nice.

00:18:22 - Erik Rasmussen

Who's super cool. And like we sat and talked for like an hour.

00:18:27 - Scott Steinlage

That was awesome.

00:18:29 - Erik Rasmussen

Anyway, I'm about to get on my flight that was delayed and I saw you guys were online so I, I tuned in. But don't expect a lot of content from me because I'm about to go into airplane mode.

00:18:40 - Anthony Campolo

Good stuff. Thanks. Thanks for joining.

00:18:42 - Ishan Anand

Thanks for joining. Yeah. Is there one? What's the most mind blowing interesting thing you saw at the conference or you heard?

00:18:48 - Scott Steinlage

Oh that.

00:18:49 - Erik Rasmussen

That's easy.

00:18:51 - Anthony Campolo

Mind blowing.

00:18:52 - Erik Rasmussen

My mind was not strong enough to be blown. That was by Sean Wang, Swyx.

00:19:02 - Anthony Campolo

He.

00:19:03 - Erik Rasmussen

He has this understanding of what AI is going to be.

00:19:09 - Anthony Campolo

Small AI size talk. What.

00:19:12 - Scott Steinlage

What it.

00:19:13 - Anthony Campolo

But.

00:19:13 - Erik Rasmussen

But his slides were like, you need to stop and do like 30 minutes of research to understand each one of his slides, because he was just giving us this brain dump of his knowledge in this space and just how crazy things are going to be. But it was way over my head.

00:19:39 - Anthony Campolo

Was this "Software 3.0 in the AI Engineer Landscape"? Is that the talk?

00:19:44 - Erik Rasmussen

That's the one.

00:19:44 - Scott Steinlage

Yeah.

00:19:45 - Anthony Campolo

Great. Awesome. Yeah. So if people have been listening to his podcast, this is gonna be like a condensed version of probably the last six months of this podcast which is absolutely top notch. Yeah.

00:19:56 - Erik Rasmussen

I really need to look into that. I haven't, haven't been listening to that. But. But he's like, yeah, I've got this podcast where I talk about all this stuff all the time.

00:20:04 - Ishan Anand

Yeah, yeah, yeah, it's a good podcast.

00:20:07 - Anthony Campolo

Very high signal to noise ratio.

00:20:11 - Erik Rasmussen

Yeah, it was just like mainlining signal on this in his talk. So that's by far the most interesting talk. But anyway, I'll let you guys investigate that on your own.

00:20:26 - Ishan Anand

Anthony, could you drop a link to that podcast?

00:20:29 - Anthony Campolo

Yeah, I'm doing it right now. I'm doing both the talk and the podcast.

00:20:35 - Erik Rasmussen

Yeah, thanks guys.

00:20:38 - Ishan Anand

I mean, I think Karpathy called it Software 2.0.

00:20:43 - Anthony Campolo

Yeah, that was more in the past, where it was kind of pure ML learning. Whereas what he's talking about is now that these models are built, how do you integrate them into a regular engineer's workflow? That's kind of his whole thing, which I think is really interesting because it creates a new niche of developer, like an AI engineer is what he's branding it.

00:21:07 - Scott Steinlage

And I think it's a very, very specialized developer, basically.

00:21:10 - Ishan Anand

Well, here's a good point that he's making: there's a gap between having an LLM and having a product, which is this AI engineer. And he's got a conference, I think, coming up in October called the AI Engineer Conference. Also worth checking out, the other podcast I'd say does a good sum-up is AI Breakdown as well, while we're on the topic. But I did not know he has a new talk on it, so I will go check that out as well. The most recent one they had was on an alternative architecture to transformers, which was really pretty fascinating, RWKV, which I thought was a really good talk. It was also interesting because he switches accents in the podcast as a host, and he calls it out explicitly. I don't know if you've listened to that podcast episode. I thought it was really fascinating. I'd never considered whether you're being conscious or not about which accent you're using for which audience. So anyways, it was fascinating on multiple dimensions as an episode.

00:22:25 - Anthony Campolo

Very cool. Yeah, I'm linking that podcast as well on the Jumbotron. Sweet.

00:22:38 - Ishan Anand

Okay, I think we have Jason as well, right?

00:22:42 - Anthony Campolo

We do.

00:22:44 - Ishan Anand

I'm here, I'm in the car and

00:22:46 - Anthony Campolo

the signal is not great.

00:22:48 - Ishan Anand

So I will do my best

00:22:54 - Anthony Campolo

Nice. Scott, are you functional?

00:22:58 - Scott Steinlage

I'm out here trying to function.

00:23:02 - Anthony Campolo

Conjunction Junction lets you function. Co-host Scott Steinlaggy.

00:23:08 - Scott Steinlage

Oh, my gosh. I'm here, I'm here, I'm here. Yes, I'm functioning now. It was quite the journey having fiber being run through the subdivision. And they're drilling, and so I feel like the drilling, at least this is my experience, has been interfering with my current provider and connection. But that's okay because I plan to switch over to fiber when they're done with it. And guess what? They just announced that they're going to be doing 2 gig and not just 1 gig. And I'm like, what? That's incredible.

00:23:47 - Anthony Campolo

Dubs gigs.

00:23:47 - Scott Steinlage

Yeah, dude. I was just like, wow, that's gonna be cool. So excited for that. You know, just the.

00:23:59 - Anthony Campolo

I once had a buddy who, his dad got sold fiber and they basically just inserted like fiber in between two normal Internet connections. So it wasn't actually fiber.

00:24:10 - Scott Steinlage

Yeah, I've heard of that too.

00:24:11 - Anthony Campolo

And that always stuck with me. And I always thought that was funny. I was like, huh? How much of fiber is actually a scam at.

00:24:17 - Scott Steinlage

And t is doing that. I've seen it. Well, my own mother, she's like, oh, they got fiber. I'm like, okay, what's your speed? And she just told me it was like, basically like a normal, you know, like 200 meg or something. And I'm like, okay, you know, I know you can get fiber. It's 200. Sure. Or whatever. But the point was, is that she did not have speeds that were the same up and down. Right. Which is what fiber would do for you. I mean, obviously they can throttle it all they want. They can do whatever they want. But typically, you know, if you have a gig, you have a gig up and a gig down or whatever it might be. So anyway. But yeah, I'm excited to actually, they are running fiber through here and not hooking up to, you know, they. They go back to.

00:25:10 - Anthony Campolo

Actually they're getting a real fiber straight from the source.

00:25:13 - Scott Steinlage

Partner with a larger company that has. What do you call it, dark fiber or black fiber? Yeah, dark fiber. Which is like a huge.

00:25:23 - Anthony Campolo

I've never.

00:25:23 - Scott Steinlage

It's just. It's never heard of. It's a massive pipeline, essentially, of fiber.

00:25:30 - Anthony Campolo

So you're saying that it's a series of tubes. The Internet. A series of tubes is what you're saying. That's what it is.

00:25:38 - Scott Steinlage

I don't know if I'm saying that,

00:25:39 - Anthony Campolo

but sounds like that's what you're saying.

00:25:43 - Scott Steinlage

I Guess. Anyway, so yeah, fiber is actually glass, I believe I'm not mistaken.

00:25:51 - Anthony Campolo

Or glass tubes can be glass. The glass tubes.

00:25:56 - Scott Steinlage

Yeah.

00:25:56 - Anthony Campolo

Series of glass tubes.

00:25:59 - Scott Steinlage

Yep.

00:26:00 - Anthony Campolo

So anyway, we should get back to the topics at hand.

00:26:04 - Ishan Anand

Yeah. You guys are giving me a chance to eat some of my lunch. So I'm like, I'm trying to get us decided. Like do I want another bite to eat or do I want to get back on?

00:26:16 - Anthony Campolo

Let's talk about how WordPress is going to last a thousand years. Let's talk about that dinosaur millennium. A millennium of WordPress.

00:26:24 - Ishan Anand

It's 100 years. A millennium at the current rate would be.

00:26:28 - Anthony Campolo

See, but they're saying you can renew. If you can renew your hundred year plan, why can't you renew it ten times?

00:26:33 - Ishan Anand

Okay, I was going to talk about React Server Components and Remix versus Redwood, but let's go with that one. So for context, WordPress announced hundred-year hosting. It is $38,000, and they guarantee that they will host your site for the next hundred years. And then my favorite part is at the very end they're like, we hope you renew. But I have to give them a lot of credit. Here's why it's interesting and important. It gets people thinking about building for the long term. There's this organization in San Francisco called the Long Now. They tried to build an accurate clock, I think, that's supposed to run 10,000 years. There's so much of web history that is ephemeral, and we take it for granted. Whether it's our tweets, whether it's certain blog posts, we think they'll live forever, and they don't. I mean, this is why archive.org exists. And, you know, it's $38,000, but if you divide that over 100 years and then divide it by 12 months, you're talking about $30 a month.

00:28:01 - Ishan Anand

Not exorbitant. And the way they're targeting it is, you know, crafting a legacy, so it's not for everyone, but it's an investment. Whether it's for a gift for a loved one to celebrate, they said, a birth, or for family offices or things like that. Basically families who wish to preserve digital [unclear], founders who want to protect past, present, and future, or individuals seeking a stable, flexible, and customized online home that they know will be able to adapt to whatever changes technology brings. But I think it's really important to start thinking about, wow, you know, I don't know the last time I looked at a SaaS product that says, yes, we have a 100-year plan. It's a real commitment to thinking long-term and future-wise. And it was a really interesting angle. If you look at the video, it's about, you know, celebrating or crafting a legacy. And it reminded me of the Patek Philippe. You know those watches that they advertise at the back of the Economist magazine and they have that line, you know, you don't really own

00:29:13 - Anthony Campolo

Can't say I'm familiar with any of the things you're talking about right now.

00:29:16 - Ishan Anand

It's a super fancy high-end watch. And the saying on it is, you don't actually own a Patek Philippe. You merely take care of it for the next generation. And that's got some adult with their kid, you know, doing something together.

00:29:33 - Scott Steinlage

Right?

00:29:35 - Anthony Campolo

But I want mine, Ishan. I want my things to be mine. I want it to be the next generation. Screw the next generation.

00:29:42 - Ishan Anand

The next generation is going to put it through AI and it'll be probably ElevenLabs. They'll have your voice and your likeness. So anyways, that was the hundred-year WordPress plan. I thought that was very interesting, and people aren't used to it.

00:29:57 - Anthony Campolo

I like the idea because, you know, with GitHub, you can actually say, if and when you're deceased, who your GitHub will transfer to. And so I kind of like this. It does put you in a different kind of mindset of like, what are you creating, and is it meant just for right now or is it meant to last long term? And so I do like that idea. This is actually one of the reasons that Redwood is called Redwood, is that it's like a framework that was meant for the long term, like a giant tree that lives a thousand years.

00:30:32 - Erik Rasmussen

Oh, I'd forgotten that.

00:30:34 - Ishan Anand

Yeah,

00:30:38 - Anthony Campolo

yeah. Part of me, part of me has

00:30:39 - Ishan Anand

me thinking about the poor accountants and the revenue recognition on that 100 year plan. It's like, how do the accountants and the deal with that? Yeah, yeah, yeah.

00:30:56 - Anthony Campolo

Esau and I were talking about that too. Like, did they get actuaries involved?

00:31:03 - Ishan Anand

Well, you know, the cost of computing and storage eventually is going to go down. Oh, go ahead.

00:31:10 - Anthony Campolo

Jason's Internet is failing him.

00:31:12 - Ishan Anand

Yeah, well, he said he was driving, but that. Go ahead. Let's see if we can get Jason in here.

00:31:21 - Anthony Campolo

I'll mute him for now.

00:31:23 - Ishan Anand

Okay. But yeah, this used to be a thing. If you did computing back in the 486 Pentium days or 386, you're building products trying to project what the capabilities of systems would be. It's like, well, what do you think the cost of computing is going to trend to, or storage will trend to, on a 100-year timescale? That would be really interesting. But one question that is really easily answered is, what is the customer lifetime value? So that part of your SaaS metrics is set, unless you're counting on them to renew. So maybe if we get Jason back, we can go back to that. It looks like we're at the halfway point, maybe a station break, and we'll see if anybody has anything else. Otherwise we can move to the React Server Components.

00:32:17 - Scott Steinlage

Yeah. Thank you all so much for joining us today. Greatly appreciate everybody in here who's come up on stage, anybody who's out there listening in the audience. Greatly appreciate it. Just remember, whether you're a beginner at this or whether you're an advanced developer, it doesn't matter. We want to hear from everybody. So feel free to raise your hand and we will, or request, I guess. Click on request. We'll bring you up on the stage. You can ask whatever questions you want, state facts, opinions, it doesn't matter. We'd love to hear from you. In fact, that's when some really great conversations happen, is when people come up and contribute and just have some fun hanging out with us. So we'd love to hear from y'all if you want to hang with us. Yeah. Don't forget we do this every Wednesday at 12:00 p.m. Pacific Standard Time. Except for, is it next Wednesday?

00:33:07 - Anthony Campolo

Yes. Next week. Yes.

00:33:10 - Scott Steinlage

Yeah, there you go. Next week, no JS Jam. But the following week we will be.

00:33:16 - Anthony Campolo

Because I'll be in Italy and Anthony

00:33:18 - Scott Steinlage

will be in Italy. Yes. So that'll be cool.

00:33:23 - Anthony Campolo

Eating food.

00:33:24 - Scott Steinlage

Sure.

00:33:24 - Anthony Campolo

It's staring at very, very old rocks and.

00:33:28 - Scott Steinlage

And lots of food.

00:33:29 - Anthony Campolo

Extremely old rocks.

00:33:31 - Scott Steinlage

Food, wine, dining, and rocks. It'll be good. Yeah, man, we'd love to hear from it when you get back.

00:33:38 - Anthony Campolo

Absolutely.

00:33:39 - Scott Steinlage

Good. Awesome. Real quick, actually, I just want to say, not to change the subject too much, but who was super surprised when Nicky T. left his job recently?

00:33:54 - Anthony Campolo

Ooh.

00:33:56 - Scott Steinlage

Netlify, and now he's at Open Sauced as of yesterday, I think.

00:34:02 - Anthony Campolo

Oh, I mean, well, I missed that. I had talked to him last time we were at a conference together, so I wasn't surprised, but I had inside information and he told me, like, hey, I'm leaving, just in conversation about career and stuff. And it seemed like he was open to other opportunities at the time. And a lot of people he's close with are already working at Open Sauced. People like Becca, who I think, I'm not sure if she is full time or still contracting with them.

00:34:33 - Scott Steinlage

I don't know. I think she's full time.

00:34:34 - Anthony Campolo

She's been involved for a while. And you got Brandon, Brandon from Angular and Analog, he works there. He was one of the first employees. And yeah, Open Sauced is just, it's a cool project. Brian himself, obviously, as the founder. And we actually have an episode set to go out about Open Sauced where he'll be showing off some of the new AI capabilities, which is very exciting.

00:35:01 - Ishan Anand

How many people is Open Sauced now? I didn't realize.

00:35:05 - Anthony Campolo

Probably about half a dozen full-time employees now, with a couple kind of peripheral people doing some contracting and some other people contributing open-source stuff. So yeah, it's got a pretty good center of people. A lot of people who Brian has known for a while and who are just very visible in this kind of community and work. So yeah, it's great. I've told people that actually Open Sauced is the very first Discord I ever joined because when Brian was first creating this, he was doing it just as a side project while he was working at GitHub. And he's actually been working on this project like four years now. And I had gotten in touch with him through Jamstack Radio to talk about Redwood. And then he was, after the conversation, like, hey, you should join this Discord. And he just sent me a link to it. And then I was also going to his streams. He was streaming while he was kind of building this. And that's how I met all these people. And now it's actually a company he's getting funding for, and he's able to quit his job, and now he has employees that he's hired.

00:36:07 - Anthony Campolo

And it's just like I've seen this build over like four years now and he's played it very, very smart. So they're at a very exciting point now.

00:36:16 - Scott Steinlage

As you can tell, Anthony has the deets on everything. So, you know, Nick, Ryan, doesn't matter. You mention somebody, Anthony's got the deets. So guess who writes our newsletter? Anthony does.

00:36:29 - Anthony Campolo

That's on me. Yeah, I'm not gonna talk about people and when they're thinking about quitting their jobs in the newsletter.

00:36:36 - Scott Steinlage

We have the latest and greatest inside of our newsletter, JavaScript Jam. So if you're not already a subscriber, like several hundred other people are, go to JavaScriptJam.com and subscribe today. Don't miss out. That's it for me.

00:36:54 - Anthony Campolo

You want to talk about React server components on.

00:36:57 - Ishan Anand

No, I changed my mind.

00:36:59 - Anthony Campolo

You changed your mind?

00:37:00 - Ishan Anand

All right, I changed my mind.

00:37:02 - Anthony Campolo

Free flowing improv.

00:37:03 - Ishan Anand

Yeah.

00:37:04 - Anthony Campolo

Never say no.

00:37:06 - Ishan Anand

You know, the invites went out for Next.js Conf later this month. So we can move on to server components, but I'd love to hear from folks in the audience. Again, we're an open mic, so just raise your hand and we're happy to bring you up, whether you're a beginner or expert, to talk about what you think might get announced or what you would love to see be announced or what you're looking for from this year's conference. We actually had one of the people involved in it come on for an episode after the conference last year, which was really interesting, a friend of the show. So I'd be curious to hear what folks think and what they're interested in. Do you have a sense, are you hearing anything that you can share, Anthony, on what you think might be in there?

00:37:57 - Anthony Campolo

I mean, I've seen some people who have shared that they submitted talks, and I think if you look at previous years' Next.js Conf speakers, you'll get a good sense of the type of speakers who will be speaking this year. But I think that you're gonna see a wide span of things because Next is used for a lot of different stuff. I imagine we'll see a pretty heavy subset of AI things. And I kind of had a cheeky little joke because they let you pick a tag and throw it on your ticket. So I picked about 60 AI tags and covered my entirety with it because that's obviously what I'm most excited for. But I'm sure other topics will be discussed as well. I'm sure some people will talk at length about how they think there's too many AI talks as well. And that's fine. They're welcome to their opinion. But that's what I'll be looking for.

00:38:52 - Ishan Anand

It's the new Bitcoin in that way, in some sense. So I was surprised or interested to see that, you know, this public relations company, WPP is actually one of the, the sponsors of one of the Titanium sponsors that wpp, it's.

00:39:12 - Anthony Campolo

I don't know who that is.

00:39:13 - Ishan Anand

If you Google it, they're a publicly traded company from the UK, basically advertising and public relations. Really large company.

00:39:26 - Anthony Campolo

Interesting.

00:39:27 - Ishan Anand

It's not somebody you'd normally see at developer conferences, so I thought that was interesting.

00:39:34 - Anthony Campolo

It's very corporate.

00:39:36 - Erik Rasmussen

Oh, yeah.

00:39:36 - Ishan Anand

Well, I mean, it's growing up, I suppose, but I don't think they've released the speakers yet.

00:39:44 - Anthony Campolo

No, because talks are still. You can submit talks, I think for another week or so. Oh, really?

00:39:50 - Ishan Anand

Okay.

00:39:51 - Anthony Campolo

Yeah. So if people want to speak at Next.js Conf, now is the time. You can submit a topic, and if you think you've done something cool with the framework or have an interesting take on it, then go for it, you know.

00:40:03 - Ishan Anand

Okay, well, if you've got things you wish to see there or, you know, your thoughts on what you expect will be there, feel free, raise your hand. We'll bring you up to the stage with that. Again, before I get to React Server Components, you also had in the newsletter this week one more thing about Astro moving to Nitro from the Nuxt team. Speaking of.

00:40:32 - Anthony Campolo

No, Solid Start moving to Nitro.

00:40:36 - Ishan Anand

Thank you.

00:40:36 - Anthony Campolo

Yeah, Solid Start moving off of Astro to Nitro. Yes.

00:40:40 - Ishan Anand

Okay. Sorry, I got off. Yes, you're right. Ryan Carniato from Solid, moving Solid Start over to Nitro. So why don't you give folks the background on that?

00:40:51 - Anthony Campolo

Yeah, yeah. So Solid Start is the SolidJS meta-framework. Kind of think of it like the Next to the React. Ryan has kind of gone back and forth on how he wants that to actually work because he said many times that he never really wanted to make a meta-framework. He was always hoping someone else would just kind of make it instead of him. But at a certain point he kind of had to admit he was going to have to do it. So for a while he was just creating Solid Start, kind of following a similar architecture to Remix to a large extent. And then they decided to try and use Astro as the underlying thing. But when they first announced it, it didn't really make a whole lot of sense to me because it seemed like Astro had too much other stuff that was not related to what he would want to do with Solid Start. And so recently he kind of, I think, realized this and decided to go off of Astro to Nitro, which is the underlying server for Nuxt. So it makes more sense that he's now kind of looking more at Nuxt as an inspiration, how they're using Nitro as the underlying server to do all the extra fancy stuff you need your meta-framework to do.

00:42:01 - Anthony Campolo

So I think that's pretty promising because it gives him an interesting avenue into a different ecosystem, the Vue ecosystem and the Nuxt ecosystem, which are quite large and substantial and, I think, not a very well-trodden path for React kind of devs. Those worlds tend to stay kind of separate. So I find it interesting that Solid now is kind of taking a step into that world to a large extent.

00:42:28 - Ishan Anand

I think it's interesting that I think this is Nitro's second big, you know, framework that runs on it. Am I correct or incorrect on that?

00:42:36 - Anthony Campolo

Well, it was created by the Nuxt team for Nuxt, you know.

00:42:40 - Ishan Anand

Yeah, it was.

00:42:41 - Anthony Campolo

It's kind of like how Vite was a Vue thing that was just so good it was eventually picked up by other frameworks. You know, it's a similar type of thing.

00:42:50 - Ishan Anand

Yeah. And I guess what I'm suggesting is, it's an important milestone for Nitro as it being something other than just Nuxt naming the thing that they use there. There's actually an ecosystem that seems to be forming around it. It's proof of ecosystem adoption. And I think what's interesting to me about Nitro is it's got this goal and, you know, actually if you go to our YouTube, we have a bunch of videos from a summit we held last year called the Composability Summit. And we had somebody from the Nuxt team speak specifically about Nitro. But the goal is to build servers that can run anywhere and not just in a Node environment. And I think that's really important and interesting, especially as we're evolving towards an edge computing landscape where these edge runtimes, whether it's ours at Edgio or those of our other peers in the marketplace, very few of them, I don't think any of them, are really running a true Node server on the edge because it's too much overhead. It's usually either a bare V8 engine or some type of WASM container, or it's a really well-defined JavaScript runtime like the NGINX runtime, but it's not a true Node server with the full Node API because that's too heavy.

00:44:19 - Ishan Anand

And so the ability to have the flexibility to run in all those environments and not necessarily have to be bound to the node ecosystem I think is really important for applications and meta frameworks going forward. So I'm really happy to see Nitro picking up more things that run on top of it.

00:44:41 - Scott Steinlage

Cool.

00:44:41 - Anthony Campolo

Yeah, I linked that talk nuxt and the composable web I believe is the one you're referring to by Daniel.

00:44:48 - Ishan Anand

Yes.

00:44:49 - Anthony Campolo

And then I also pinned up Chris Griffing in the crowd, who was talking about Hypertune. I'm not familiar with Hypertune. Apparently it's a feature flag tool. Yeah, feature flagging is a deep problem set for sure.

00:45:08 - Ishan Anand

Oh, Chris, I'd love to hear more. Okay, if you want to come up to the stage. So I expect to hear a lot about Hypertune HQ. I'm especially interested because I'm making a feature flag tool as well, but theirs seems cool. Would love to hear, actually, Chris, about your tool. But this is actually a really important use case for teams, especially as you move up-market in the enterprise. I know it's a capability we have in the platform that a lot of our customers are really excited about. Looks like we got him up.

00:45:48 - Anthony Campolo

What's up, Chris?

00:45:49 - Ishan Anand

Oh, Chris. Yeah, come on up.

00:45:50 - Chris Griffing

Hi everyone. How's it going? Thanks for having me. I only just discovered it within the past couple days, but they even have a partnership with Vercel and it's really cool. Basically it's like the official Edge Config software that they're using for Vercel under the hood, which is kind of crazy to me. So really cool partnership for them. And I'm building an open-source feature flag tool, and they check a lot of the boxes that I thought I was unique with. So Hypertune is really kind of cool, and I'm looking forward to learning more about it.

00:46:21 - Anthony Campolo

What's the name of your tool?

00:46:22 - Chris Griffing

It's Vexilla. It's just a static-file-based feature flag tool. So you could just launch it up to GitHub for, like, PR review. So you get audit tracking, and then it's hosted on whatever static file server you want to put it on. It's more about the client doing all of the logic, which is useful for just bootstrapping and hobbyists and things like that.

00:46:46 - Ishan Anand

Got it. How do you spell that? You want to put the link in? We'll put it up.

00:46:51 - Anthony Campolo

I got V, E, X, I, L,

00:46:53 - Chris Griffing

L, A. Yeah, so vexilla.dev is like the most recent version being made. I have an older version that's been on GitHub for a bit but needs much more improvement.

00:47:02 - Anthony Campolo

Ah, Good. Yeah, I saw the GitHub one. This website looks pretty clean. I will share this.

00:47:08 - Ishan Anand

How did you get into this space of, you know, feature flags and, you know, A/B testing? What made you start building this?

00:47:16 - Chris Griffing

So I built a lot of software on Stream and I started looking into a feature flag tool just because, you know, I just have certain services that are used and I wanted to implement billing and ship it and test it without necessarily releasing it to all my users on various things. And I didn't see any platform that was really like something I could afford to use. LaunchDarkly is notoriously expensive.

00:47:36 - Anthony Campolo

Right.

00:47:37 - Chris Griffing

But nowadays there are other tools like Hypertune and then Opti...

00:47:40 - Anthony Campolo

Optimizely is one that I usually hear about the most.

00:47:43 - Chris Griffing

Yeah, Split.io, Optimizely. There's a couple big players, but now there's actually some affordable ones too, like GrowthBook, and Hypertune has unlimited monthly active users for their free tier, which is kind of cool. Yeah, it's just really interesting. The space has grown a lot since I started building this as a hobby project.

00:48:01 - Ishan Anand

Yeah. What use cases are you primarily seeing people use Vexilla for?

00:48:07 - Chris Griffing

So we're using it at the company I work at right now, Fairwinds, just because it's a really easy thing to opt into. There's no server to maintain, there's no service to sign up for. It's just a static file based feature flag tool that you know, we're using with very little like cost if we decide to go to something else, which is nice.

00:48:24 - Ishan Anand

Got it. Okay. You know, we've mentioned some companies in the space. Maybe we should back up for people who aren't aware. Do you want to explain to folks, or I'm happy to do it. Like the why of feature flags and the value they provide.

00:48:36 - Chris Griffing

Sure. Yeah. I actually have a spiel about this. I didn't realize that Next.js is still accepting talks. So I'm about to propose one about feature flags for, you know, just a quick ten-minute talk, but I can totally give the spiel. Basically feature flags are part of the 12-factor application stack, or just the 12-factor app. You need feature flags, testing different environments, blah blah blah, and it makes a robust application. It's something that's been around for 20-plus years. The interesting thing that feature flags are meant for is to decouple changing logic in your application from your deploy process. In some organizations your deploy might take up to, you know, like a week. Like you have a weekly deploy. If you're doing a mobile app and you want to change something, you have to deal with submitting your app to the App Store. And it could be up to a week before they finally approve it, because they might not even call out a problem for something you just made. They might notice something that you already had previously, and you got to fix it before it can launch.

00:49:32 - Chris Griffing

So instead, if you wanted to turn on like a holiday theme in your mobile app, you could have that shipped out to users in an update weeks ahead of time, and then just turn it on when you're ready for it and turn it off without having to deal with the deploy process.

00:49:47 - Ishan Anand

Yeah. Thank you. I like to sometimes decouple feature flags, like the technology, from the use case. And there's a great chart, Martin Fowler, I don't know if you've read the Martin Fowler article called "Feature Toggles," where he talks about, he used the word toggle, but then he goes through the different, he calls it the level of dynamism versus the level of longevity. So certain things are just for, like, a canary deploy, so they have a short time window and a high amount of dynamism. Other things might be A/B testing, so they have a little bit longer amount of longevity that live in the system, but eventually they go away because eventually the A or the B wins and you clean that up. Then there are things like permission toggles, which stay around longer in the code because they might be, oh, only the VIP users get this. That's generally how we've looked at it. A great example of the canary release is, I love the Facebook username launch example. They wrote a blog post about that where, when they launched Facebook usernames, the SRE team was like, we don't know if the system is going to be able to handle all the influx of people signing up for usernames.

00:51:11 - Ishan Anand

They had a bunch of feature flags that they were able to toggle in order to make sure they could handle the load. This is different than a Canary release. It's more like the ability to modify the system in real time to handle operational requirements.

00:51:25 - Chris Griffing

And if it blows up, you can just roll it, right?

00:51:28 - Ishan Anand

You could. Well, not just the feature itself, which was really interesting. So one of the things they outlined was they had the ability to turn off particular features like the new item notifications, or they slowed down and configured how often clients refreshed the buddy list or the default number of stories on the home or profile pages. So as they knew things were going bad, they could slowly make tweaks operationally, like take the foot off the gas pedal for various other parts of the system to allow this other feature to go out successfully, in addition to what they called the nuclear option, which is to disable the new feature completely. So I always reference that as a great case study. It's kind of like a really mature use case of feature flags. It's not just that one feature. It's that you've got the operational control over various parts of your system. So if something's going wrong, you can effectively route around the problem. Maybe your PayPal integration suddenly breaks or something like that. You've got a way to kind of bucket that or turn that capability off so that you're not sending people down a dark path in your checkout flow.

00:52:27 - Chris Griffing

Exactly.

00:52:28 - Ishan Anand

Is another example of that.

00:52:29 - Chris Griffing

Yeah, I kind of wanted to hit on the fact that, yes, you mentioned how it was called toggles by Martin Fowler. And that's just one small part of turning it off and on. There's gradual release, which is basically the building block to A/B testing, like you mentioned. But there's also things like rolling out a new payment plan or, you know, updating a price for something like a Stripe payment. All of these things can actually be fetched in real time rather than having to do a deploy for it, which actually becomes really helpful. You could even do copy changes and things like that. So, very powerful stuff.

00:52:57 - Ishan Anand

Yeah, I guess the big thing is it's a huge productivity unlock and it's a really fascinating space. So that's really interesting. Interesting prediction. You should definitely submit that talk. Thank you. I think. Yeah. And I'll definitely check out Vexilla. Cool.

00:53:19 - Chris Griffing

There's one more thing I wanted to mention. Sorry, go ahead. One more thing I just wanted to mention about feature flags is the hardest part is actually figuring out when you can remove a feature flag from your logic. There's only one company that I've even seen attempt this, and that's Uber, and they have a tool called Piranha, but it's meant to work with their feature-flagging tools. And so far I'm not seeing PostHog or LaunchDarkly or any of these companies actually implementing a tool to help you clean up your codebase afterwards. So I think that's a major place where one of these companies is going to swoop in and make that as easy as possible.

00:53:51 - Ishan Anand

So I agree with that. There's actually another solution, which is if you're doing a multivariate test, it's harder to do. But what you can do is you essentially create a branch for the code. You don't put the fork in the code itself. You create separate branches and then you run the different branches. That's something we've got in our platform, is we let you run different versions of the code. Then when you know which one works, you can just pick that branch and make that one your main or merge it into your main, and then it fits in your normal code development process. And it's not this thing where you have to go into the code itself. You can manage whether that feature flag got removed or not. You know which branch won or not. And that's another way to approach the same problem of removal.

00:54:40 - Chris Griffing

Yeah, that makes sense. Yeah.

00:54:41 - Ishan Anand

Cool.

00:54:41 - Chris Griffing

I'm going to have to check out your platform too.

00:54:44 - Ishan Anand

Yeah, absolutely. Feel free to DM me.

00:54:47 - Chris Griffing

Yeah, sounds good.

00:54:50 - Ishan Anand

Thank you for coming.

00:54:50 - Chris Griffing

Yeah, thanks for letting me speak with

00:54:53 - Ishan Anand

Any Next.js predictions or requests for what they want to see at Next.js Conf coming up? Okay, well, feel free to raise your hand maybe then. Anthony, do you have any hot takes on the fact that Remix, you know, came out with Remix V2 and they said we're still not doing React Server Components, we'll wait till it's stable, which was maybe news to people who saw it in Next.js. And I know Redwood is definitely going all in on server components, and you're a core member of the Redwood team and RedwoodJS Conference is coming up. Do you want to just tell people about that?

00:55:37 - Anthony Campolo

Yeah. Next week is going to be RedwoodJS Conference, September 26th to 29th. It will be in Oregon, and unfortunately I will not be able to make it because I will be, as we mentioned earlier, on my honeymoon. But I definitely encourage people to check it out online because there'll be a lot of great talks. And as you said, the headline talk is going to be all in on React Server Components. So it can't be making a clearer statement than that. And I think that's really exciting because I've been interested in React Server Components for a while, and I always figured Redwood would go this direction. It's just a fairly slow-moving, conservative framework in a lot of ways in how it adopts new React features. But we ended up kind of in the middle, if you think about it, because as you mentioned with Remix, they still haven't adopted it yet. Next has already kind of declared they've gone all in. So we ended up, I think, about in the middle in that respect.

00:56:34 - Scott Steinlage

Are you like the Apple of frameworks

00:56:39 - Anthony Campolo

or maybe you wait just long enough for the first person to fall on the sword, so you can be like, oh, here's actually the better version that I [unclear].

00:56:49 - Scott Steinlage

Right.

00:56:53 - Ishan Anand

Let me ask if you feel like React Server Components is an inevitability. Is it clear at this point? I think 12 months ago, well, maybe even further back than 12 months ago, because there was the Next.js release 12 months ago that was really heavy on React Server Components. But it seemed like we didn't know whether it was going to be like Suspense, which seemed to take forever. It seems like it's picking up steam. More and more frameworks are adopting it. Is it an inevitability? If you haven't been bothering to learn it as a developer, should you get on that train now, or do you think it's still...

00:57:28 - Anthony Campolo

I reject that framing entirely because I think it can both be an inevitability and not be something that the developers need to learn, because the frameworks are going to kind of put it in there for them. So I think that whatever React builds into core is going to be an inevitability in the sense that unless React decides to go away from React Server Components, which they can always do, but I think it's unlikely, then it's an inevitability because frameworks really only have so much choice here. They can kind of fight whatever the underlying library does and try and do something slightly different. But if the underlying library is really like, this is how it's going to work into the future, and other frameworks are picking that up, then there's a kind of inertia that goes along with that and other frameworks kind of just have to adopt it. Like when they went from classes to hooks. If some React framework wants to be like, no, I really want to keep using classes, it's like, sure, you could do that, but no one's really going to want that.

00:58:32 - Ishan Anand

I guess I would push back. So I agree with that. In some sense it's inevitable. I'd push back on your pushback of my framing in that, yes, the frameworks are going to solve this for you, but I feel like you need the conceptual mental model, get used to the conceptual mental model, that as a front-end developer you haven't had to think about for a

00:58:53 - Anthony Campolo

while. See, but with Redwood that's not going to be the case. With Redwood, you're going to write your Redwood app literally the exact same way and you're not going to have to think about it. And that's, I mean, to a certain extent you're going to have to kind of not use as much GraphQL, I think. But it's not like you're going to have to completely relearn the framework itself. I think that's going to be kind of different from framework to framework, and I think that's probably what Remix would want, but they may not be able to achieve it yet. And with Next.js, they kind of introduced a certain amount of breakage and a certain amount of people need to learn some new things. And you saw that friction kind of play out in real time. So we'll see. With Redwood, it's not fully baked yet, so all of this is just speculation at this point and maybe we won't be able to make it as smooth as I'm hoping we'll be able to do. The jury's still kind of out at this point.

00:59:48 - Ishan Anand

Is it kind of like what Blitz was trying to get to, which was like, you don't have to think about the boundary as much, it just kind of all works together for you under the hood?

00:59:59 - Anthony Campolo

Yeah. The idea with any of these opinionated frameworks is that you want there to be a kind of layer in between, like with the framework. Because with Redwood you have things like cells and you have all this kind of built-in stuff, how you think about how you do your data fetching and how you connect to your database. And so that is the type of thing that can kind of exist and have the underlying framework thing, which would be React Server Components happening underneath it. So that's kind of the goal, and we'll see how much actually ends up being true or not, I guess.

01:00:36 - Ishan Anand

Okay, well then if you get a chance, folks, tune in to the RedwoodJS conference next week. I would actually, except I have another conflict. But it sounds like it'll be really intriguing. I'm curious to see what they come

01:00:52 - Anthony Campolo

up with. And I should say more: also, in addition to the React Server Components stuff, this is actually being built as a conference for builders. Because really what Redwood is all about is enabling companies to build apps with users that ship products. And that's really the most important thing. So that's why it's been many years where we have kind of pushed back on adopting the hot new React whatever, whether it was Vite, whether it was React Server Components, and now we've decided that it's time to flip the switch on that. But the overriding emphasis is still on, like, this is something that is meant to make you productive, not getting you mired in React minutiae.

01:01:31 - Ishan Anand

Interesting. Okay, well, on that note, we're almost. We're effectively at time. Scott, do you want to take us out?

01:01:39 - Scott Steinlage

Take me out to the ball game. Okay, now. Yeah. Thank you all so much for joining us today. Greatly appreciate it, as always. We are here every Wednesday, 12 p.m. Pacific Standard Time, except for next week. So be sure to come hang out with us in two weeks. It's going to be fun. Yeah. By the way, if you got any value from anybody that was up here on stage, please feel free to follow them as well. Because if you got value from them here, you're probably going to get value from them in other places too. Or maybe you just found them interesting. Yeah, give them a follow. Obviously, we wouldn't mind a follow too on JavaScript Jam. And like I said before, if you haven't already subscribed to our newsletter, JavaScriptJam.com, and you want to know all the wonderful things that are coming up for every Wednesday that we're going to be discussing and talking about and just some other cool things on there that we may not touch on during Wednesdays, go to JavaScriptJam.com and subscribe to our newsletter with the other hundreds of people that are already there.

01:02:35 - Anthony Campolo

Yeah.

01:02:35 - Scott Steinlage

Don't miss out. All right, thanks y'all so much for joining us and we'll see you in the next one.

01:02:41 - Anthony Campolo

In the next one.

01:02:43 - Scott Steinlage

Yeah. Thanks, y'all. Love you. See you in the next one. Peace.

On this pageJump to section