

The Swyx Mixtape
Swyx
swyx's personal picks pod.
Weekdays: the best audio clips from podcasts I listen to, in 10 minutes or less!
Fridays: Music picks!
Weekends: long form talks and conversations!
This is a passion project; never any ads, 100% just recs from me to people who like the stuff I like.
Share and give feedback: tag @swyx on Twitter or email audio questions to swyx @ swyx.io
Weekdays: the best audio clips from podcasts I listen to, in 10 minutes or less!
Fridays: Music picks!
Weekends: long form talks and conversations!
This is a passion project; never any ads, 100% just recs from me to people who like the stuff I like.
Share and give feedback: tag @swyx on Twitter or email audio questions to swyx @ swyx.io
Episodes
Mentioned books

Sep 23, 2021 • 12min
Email Economics: The Math to a $800k Email [Sam Parr, Nathan Barry]
Listen to the Nathan Barry show: https://nathanbarry.com/030-sam-parr-growing-2m-subscribers-selling-newsletter/ 50mins inSam Parr's $800k email: https://twitter.com/theSamParr/status/1332018614367645697?s=20https://twitter.com/theSamParr/status/1331759376433115140?s=20300k views: https://twitter.com/theSamParr/status/1332024062919503875?s=203k subscribers - max 1% conversion rateTranscript [00:00:00] swyx: Today, we're talking about email from two of its biggest practitioners, Nathan Barry from convert kit and Sam Parr from the hustle and sandbar par recently sends a email that converted into $800,000 worth of sales in one day. And this is. [00:00:19] Sam Parr: You want to know something funny that, that tactic of emailing the wrong link and then emailing them again to let people know that you've created. [00:00:27] Always gets more sales. [00:00:29] Nathan Barry: Oh, it does. Okay. You should tell everyone about your black Friday [00:00:33] Sam Parr: promotion. Okay. So I've done this twice. Most people don't know I did this twice. I actually did this in 2014. When we first started, when we only had about 40,000 subscribers. So back then in 14, what I did or 15? Well, no, when did we launch? [00:00:46] No, we lost at 16, so I didn't tell him 60. I'll tell you what I did black Friday. And I'll tell you what I did now or back then. So back then I, we accidentally sent, like, it was, the day was Thursday morning. We accidentally sent the previous Wednesday's email on Thursday. And so people got like the same one over and then we immediately send a reply and it was a screenshot of my slack, where it was me slacking to our writers saying. [00:01:13] You really screwed up, you know, this right. And then being like, oh my God, I can't believe I did that. It's like, and she's saying like, well, what do I do? And I'm saying, you better fix this or you're out of here. And she was being like, well, you got to give me some suggestions. I go, I don't know, just take a screenshot of this and put it in the email. [00:01:29] And if it gets a lot of opens, you're gonna keep your job. If it doesn't you're outta here. And we just screenshot of that and put it in the email and it got the highest open rate. Uh, some people didn't get the joke and they got mad at me, but I was whatever. Um, but the other day we made like $800,000 in one day. [00:01:47] And what we did was, um, this, this is like what I'm saying, like you, you convert kit creates the Lego pieces and, and it's fun for us to manipulate it, to create cool stuff. We, um, made an email, which is actually really hard to make an email look like a Gmail email. Um, It's like not intuitive. And you've got to like, kind of do weird stuff, but we made an email look like a Gmail email and we made it look exactly like I was having a conversation with the team and I sent them an email. [00:02:17] It said art, everyone are big black Friday sale. It's totally ready. Can you guys please make sure all the links work? Um, this is going to go live and it's actually like our biggest discount ever. I'm kind of think that we're giving too big of a discount, but, uh, whatever, I guess we'll see what happens. [00:02:33] Just, uh, let me know if it works and then we'll, and we'll hit send tomorrow morning and then they reply. And so that email was sent to a million plus people or something like. And we made it look like it was, it was an accident. You know, I accidentally sent it to our whole list as opposed to our company. [00:02:51] Right. And we got so much traction so much. There was tens of thousands of people on the website buying. And I got literally 10,000 emails and we send it from Sam at the hustle, my personal email. I got so many subscribers people saying, including my friends like Nathan, um, or, uh, Andrew Wilkinson, like smart techie, entrepreneurial friends. [00:03:13] They called me and they go, yeah, they go, dude, you just sent this out to your whole list. This was not meant for, this was you were not meaning to send this to me. And my reply was like, oh no, really? And, uh, it just crushed it. Yeah. It was like the biggest sales day ever. I think we, I think we stole that idea by the way. [00:03:32] I I'll give credit. I think it was Chubbies who I stole it or Brooklyn and we stole it from someone, but it was really effective. Yeah. [00:03:39] Nathan Barry: That's amazing. I just love the idea that someone receiving that email. That like, there's another email address of like entire list@:.com or whatever, they've you send to that? [00:03:49] It, like, I love that someone thinks that's a mistake that could act [00:03:53] Sam Parr: the people at HubSpot emailed me. This was during our due diligence and they're like, Hey, like they called me or texted me. They're like, I don't think this meant to go to everyone. And I was like, oh my God. I know it was a joke. It was a hit, it was a huge hit. [00:04:07] It was great. That's amazing. I'd [00:04:10] Nathan Barry: love to talk to just for a few minutes about monetization and, and any of that since you have this split between sponsored revenue and, and the paid revenue and all that, um, maybe share some of the numbers behind trends, at least at the highest level that you can. And then, um, I'm curious why, why you keep those two models. [00:04:30] Sam Parr: So, um, we were, we were probably going to do 20 million in revenue in 2021. Trends has over 15,000 subs. How many of those [00:04:41] Nathan Barry: were from, uh, black Friday in particular? I [00:04:44] Sam Parr: don't remember exactly. But that day or that like campaign drove, like he got a thousand, uh, probably 3000 customers. [00:04:54] That's amazing. Yeah, because 3000 times 300 is nine. Yeah. We, we drove. Yeah, we drove about $800,000 in sales that day. So whatever that divided by, I think it was 200. It was the price, whatever that divided by 200 is how many we got. So what's like, [00:05:11] Nathan Barry: what's the breakdown between, um, sponsorship revenue and, you know, the trends revenue as a percentage of [00:05:19] Sam Parr: the company. [00:05:20] By the time we sold advertising it was over a million a month in sales. Wow. Um, and trends was going to be close to eight figures this year. Um, but we counted our revenue a little bit odd. Like we want it to have like cash in the bank, like 20 to 22 million in 2021. [00:05:42] Okay. I think advertising could have been about 14, 15. [00:05:47] Nathan Barry: The majority is still at is advertising, but trends. [00:05:51] Sam Parr: Uh, kick-ass business. Yeah, because the renewal rates so freaking high. Yeah. Like our renewal it's really high. And I think w...

Sep 22, 2021 • 7min
Angel Economics: The Math to a $100k Angel Portfolio [Jason Calacanis, Zach Coelius]
Listen to TWiST: https://thisweekinstartups.com/ask-an-angel-plus-antonio-garcia-martinez-vs-apple-with-zach-coelius-e1215/Listen to my previous episode on Angel Investing Math: https://www.listennotes.com/podcasts/the-swyx-mixtape/why-angel-investing-is-dumb-v6oYXBeO4wS/

Sep 21, 2021 • 12min
Podcast Economics: The Math to $14,000 a month [Jordan Harbinger, Cal Newport]
Listen to the full Deep Questions podcast: https://www.listennotes.com/podcasts/deep-questions-with-cal-newport-cal-newport-t94EC0dyxsL/ (clip is from 40ish mins in)NotesYouTube CPM $2.50, Audio CPM $25, yet Audio gets paid for non-listened downloadsLow end YouTube podcast audience 37k, high end 400k views per episodeAudio makes way more for something half that audienceAudio targets 25-45yo professionalsBigger shows like Marc Maron have lower CPM, $9Science and education show: $35-40 CPMChillax show: $15 CPM10,000 fans * 4 ads a week * 25 CPM each ad = $1,000 a week, $4k a month50,000 fans => $20k a monthSales cut - 15-30%Transcript [00:00:00] swyx: Hey everyone today, I'm featuring a conversation between Cal Newport and Jordan harbinger. Both of whom are top podcasters talking about the economics of podcasting. So there are very few people who are as qualified to talk about it because the actual Lee have numbers and they make their living. [00:00:19] swyx: Partially at least on podcasting. There's two angles I'm interested in here. The first is of course just how people make money and what kind of money people make from podcasting. And second of all, I've been very interested in YouTube podcast versus audio podcasts. And Jordan goes a little bit brutally into why YouTube is just not that popular for podcasting. [00:00:38] YouTube vs Audio CPMs [00:00:38] Cal Newport: I think a little economics for my listeners will be useful to try to understand actual money amounts so that they can understand right now where the industry is before we go to where it could go in the future. So it might, if I'm correct. And I hope so because I'm doing some of this. Um, so our core number here to think about is four, uh, adds a CPM. [00:01:01] So cost per mil, meaning thousand, um, which is how many, how many dollars. Per a thousand people that are going to hear an ad, right? So is this, I think this is, this is the cord number, right? When trying to understand how to putting aside other types of revenue, but just for passive advertisers, this is the cord number. [00:01:21] Jordan Harbinger: Okay. It is, although I will nitpick one thing you mentioned, it's the cost per mil cost per thousand people who will hear an ad with podcasting it's actually download or even stream it doesn't mean listen. And there's a difference here for people who aren't super familiar with it. You probably have podcasts on your phone that you've downloaded, but you've never listened to, if you've got the Jordan harbinger show queued up on your phone, and there's an episode that you didn't think was interesting, but you still download it and you plan to delete it later. [00:01:48] I still got paid for every ad that is in there, you know, that fraction of a cent or whatever it is from you. So thank you for that. Um, That's important, an important distinction, because if you're a YouTuber, you don't get paid for somebody thinking about playing your video, right. You only get paid. If somebody hits play, they don't necessarily have to see the ad either they can quit halfway through and it counts as a play, but usually there's some sort of dynamic insertion that only inserts when you're playing yada, yada. [00:02:14] But what this means is it's important for the CPM, because what it means is the CPM for a podcast ad that is actually listened to is something like. Nine X or 10 X, the actual amount that you're getting paid per thousand downloads. So if, if I'm looking at it, there's some new technology that does this and they say, okay, we're only gonna pay you for the amount of people we think heard the ad. [00:02:43] And, but your CPM is 250. Yeah. Whereas if I sell an ad wholesale and I, and you pay for downloaded or streamed or listened to my CPMs, like 25 bucks. So it makes the pricing different, but it also shit, it sheds light on how valuable a viewer of a YouTube video is versus a listener of a podcast, because if you're a viewer of a YouTube video and you're getting three bucks CPM, and I'm getting, let's say 250, let's say you're getting two 50, $2 and 50 cents for a view of a video just to keep them. [00:03:15] I, my listeners are worth a hundred times more than your viewers, which means that a thousand people listening to a podcast is worth like a hundred thousand people watching a YouTube video. Now that is not actually true, but that's how the math works [00:03:29] out. [00:03:29] Cal Newport: Yeah. And what's interesting about it is, and this might have to do with the ad form because if you have. [00:03:36] Full U-turn version of your podcast. A lot of ad agencies are going to, um, count those views of the YouTube, like a download. So, so in other words, there's something about the host delivering the ad, I guess that, whereas the value is. If you listen to it, you're watching the host and the host is delivering an ad on a YouTube video. [00:03:58] And that's much more valuable, I suppose, than a banner pops up. Totally huts. It cuts to one of those skip, skip and five, uh, right. Like [00:04:05] Jordan Harbinger: Alexis ad in the middle of your favorite podcast. Exactly. Those are with way less and, and you're right. The host read is where the value is now. Again, slight nitpick just for the sake of being accurate here. [00:04:16] Um, if you have a, a YouTube based podcast where most of your views are YouTube, Yeah, you will generally get a lower CPM than somebody who's mostly get audio. Like if you look at my YouTube channel for the Jordan harbinger show, I've got like, I don't know, fricking 37,000 subscribers. Like no one is subscribed to my YouTube channel and no one's watching very few people are watching. [00:04:36] But my youth, my audio only impressions are obviously far higher and those ads are worth thousands of dollars each. Whereas I know a lot of people that have the inverse proportion where their audio downloads are sort of few, but their YouTube impressions are very high. Like 400,000 people are playing each video. [00:04:55] They're making far less money. Then somebody who has a podcast, an audio podcast show that's half the [00:05:01] Cal Newport: size. Yeah. Fair enough. So, so, and I've seen that before. Yeah. If you, if you have a big audio podcast, it's almost like the, the, the advertisers or the intermediate agency is saying, okay, if you have some extra listens or views of the show on YouTube, you can throw those into the count, but it's almost like you're being thrown a bone a little bit, but if you're a primarily. [00:05:21] Be that way that if it's you doing the read on YouTube, it shouldn't matter. But, um, I don't know if that's about a prejudice against who's watching YouTube or I think it is. [00:05:30] Jordan Harbinger: I think I hypothesize YouTube is a younger audience and also an older audience. And what I mean by that is I think. There's a higher concentration of, let's say 25 to 45 professionals that are employed listening to podcasts. And there is everyone is watching YouTube, but there's, that means there's...

Sep 19, 2021 • 1h 20min
[Weekend Drop] Sunil Pai: React and the Meta of the Web
A wideranging convo with Sunil covering the future of React, the Third Age of JavaScript, and the Meta of online discourse.Watch on YouTube: https://www.youtube.com/watch?v=H3h1WICelqsFollow Sunil: https://twitter.com/threepointoneChapters:[00:01:40] React and Temporal, Declarative vs ImperativeMy Temporal Explainer: https://twitter.com/swyx/status/1417165270641045505https://www.solidjs.com/ [00:12:57] State Charts and Lucylanghttps://lucylang.org/XState and Stately https://stately.ai/viz[00:17:08] The Future of React[00:25:03] React Streaming Server Rendering vs SSR/JAMstack/DSG/DPR/ISRReactDOMServer.renderToNodeStream()Sunil's Slides: https://www.icloud.com/keynote/0MyOJkDIOVfFit76PqJFLvPVg#react-advancedhttps://react-lazy.coolcomputerclub.com/ [00:33:13] Next.js and the Open Source Commons[00:38:46] The Third Age of JavaScriptThird Age of JS Benedict Evans (not Sinofsky) on Word Processors: https://www.ben-evans.com/benedictevans/2020/12/21/google-bundling-and-kill-zones[00:45:16] ESbuild vs SWC vs BunBun (Jarred Sumner) https://twitter.com/jarredsumner/status/1390084458724741121 [00:50:46] Let Non-X Do X: Figma vs Canva, Webflow vs Wix/Squarespace Canva vs Figma valuations https://twitter.com/swyx/status/1438102616156917767[00:52:42] JavaScript Twitter and Notion's 9mb Marketing SiteNotion 9mb JS Site Tweetmrmrs' Components.ai[01:06:33] React Server Components and Shopify Hydrogen/Oxygenhttps://twitter.com/swyx/status/1410103013885108229 [01:09:18] Categorical Imperatives of Web Platforms: Cloudflare vs AWS, MongoDB vs Auth0, Gatsby vs Netlifyhttps://auth0.com/blog/introducing-auth0-actions/ [01:18:34] Wrap-up Transcript [00:01:40] React and Temporal, Declarative vs Imperative [00:01:40] swyx: Okay. So the first topic we want to talk about is React and Temporal, right? [00:01:43] Sunil Pai: I feel Temporal is introducing a shift into the workflow ecosystem, which is very similar to the one that React introduced to the JavaScript framework system. [00:01:54] swyx: That's the hope. I don't know if like my explanation of Temporal has reached everybody or has reached you. There are three core opinions, right? The first is that whenever you cross system boundaries, when you call it external API. So when you call internal microservices, there's a chance of failure and that multiplies, the more complex the system gets. [00:02:11] So you need a central orchestrator that holds all the retry states and logic, as well as timers And it tracks all the events and is able to resume from it from failure. [00:02:21] Second opinion that you should have is you should do event sourcing rather than try to just write your business logic and then instrument with observability logs after the fact you should have your logs as the source of truth. And if it's not in the log, it did not happen. [00:02:34] And then the final piece is the workflows as code, which is the one that you're focusing on, which is the programming model, in the sense that like all the other competitive workflow engines, like, Amazon step functions, Apache airflow, Dagster, like there's a bunch in this category. [00:02:48] They're all sort of JSON and YML DSLs, and the bind that you find yourself in is that basically you're reinventing a general purpose programming language inside of these JSON and YML DSLs because you find a need for loops, branching, variables functions, all the basic stuff. And, people find that like at the end of the day, all this tooling is available, you just have to make it run in inside of a general purpose programming language. So that's what Temporal offers. [00:03:12] But it's very interesting because it kind of straddles the imperative versus declarative debate, right? [00:03:17] React, people view as declarative. And I think it's mostly declarative, like there's imperative escape hatches, and because it's declarative, people can have a single sort of render model of their entire app for the entire tree. And I think it makes sense to them. [00:03:32] And you're saying that that's better, right? That's better than the imperative predecessor of like jQuery and randomly hooking up stuff and not having things tied up together. You sounded like you want it to [00:03:42] Sunil Pai: interrupt. So it's actually two things. One is the jQuery had an imperative API, and then they went way too hard into the declarative side with templating languages and then started reinventing stuff there. [00:03:54] So really react was like, no, you need access to an imperative language to create, you need a fully featured programming language to generate description trees like Dom trees or in this case, a workflow graphs. [00:04:10] swyx: Got it. So it's kind of like a halfway solution, maybe, maybe anyway. So the problem with us is that we're trying to say that imperative is better than declarative, for the purposes of expressing general purpose business logic, which is an interesting sell for me because in all other respects, I'm very used to arguing to declarative is better. [00:04:33] Then there's also an idea that people should build declarative layers on top of us. And I, it's just a very interesting, like back and forth between declarative and imperative that I don't know where I really stands apart from like, wherever we are is never good enough. So we need to add another layer to solve the current problems [00:04:51] Sunil Pai: there. [00:04:51] So there's a phrase for it and I forget what it's called the mechanism. It says that, uh, the system that allows you to execute stuff should not be the same system that prevents you from doing bad things. So there's a core, which is basically a fully featured API. And then you put gu...

Sep 11, 2021 • 25min
[Weekend Drop] Temporal - Not so Temporary (with Jaden Baptista)
Video version on youtube: https://www.youtube.com/watch?v=ErO9UjccwdsMy conversation with Jaden Baptista introducing him to Temporal.Transcript[00:00:00] swyx: Hey everyone is Swyx. I've been gone for the past couple of days and you may or may not be wondering what's happened. I basically got a cold and at this conference, it's actually nice to have a conference cold. I guess, because that means that things are going back to normal, even the, not so great stuff about being meeting back in person. [00:00:22] But I have a cold and I did not feel great. And I think gets COVID. But anyway, I decided to take a little bit of a break, but I also, I'm not sure if you know, but the weekday topics are all done on the same day. And I tried to do this pattern of batching things in weekly themes and this week's theme. [00:00:43] Basically it was poorly chosen. I thought that I had enough to do some, some stuff on basically the how technologies get adopted or get their traction. But I just didn't I ended up not liking any of the other episodes or any other podcasts that I shortlisted for that particular topic. So I just ran out and I just didn't feel inspired. [00:01:06] I felt trapped in the format and didn't really know what to do with it. So I ended up not doing anything. I also had other work to catch up on, on top of the conference stuff. So that was all in my head recently. And in general, and wondering whether or not I'm going in the right direction. So if you do that, And I really am grateful. [00:01:26] Checking out this podcast, because it's like a weird experiment with no particular theme or direction apart from cause it's stuff that I like. If you are, if you have a strong opinion and if you particularly think that there's some ideas that I should just pursue further and you're just mad at me for not doing. [00:01:42] Now's the time to tell me, because I'm also a little bit direction as to where this podcast could go. That's it? I do think that there's a strong thesis for exploring or having a central place for exploring ideas. I am personally interested in and recent dictating my podcast appearances on other people's podcasts to my own feed. [00:02:03] So people who are interested in what I do can follow up directly. So here's a conversation that I had with Jen Battista on Twitter spaces that was recorded. And it's about Tim Poro. So this is the first of maybe. Three podcasts that I did in the last month or so. So I'll be dripping them out over the weekends the next couple of weeks. [00:02:23] And we'll see, we'll see where this goes. I want to get back more into writing. I still have hopes of spinning out my YouTube more seriously, but I think the creative journey. The part-time creative journey of these, where I have a day job and that should take priority over the other side of stuff. [00:02:42] I do dictates the format of the things that I can take on. So, so far the podcast thing has been really great. I actually have a lot, a long backlog of things, which I selected for sure. They just don't fit in any, any particular theme. I think that theme is really nice when I can do it. And just, maybe you don't have enough backlog to do it just yet, so maybe I might go back to not having themes anyway. [00:03:06] So here's my conversation with Jane and review stuff. Well, thank you for [00:03:09] Jaden Baptista: joining me today, Sean. I really appreciate you taking the time are you doing today? [00:03:14] swyx: Very good. I'm very entertained by your Twitch title called temporal nutso temporary. Very interesting. [00:03:22] Jaden Baptista: Oh yeah. I was trying to come up with like a S a stupid clever name for the Twitch streams, despite them not really helping out with what the stream is usually ends up being about. [00:03:34] We tend to wander from topic to time. [00:03:37] swyx: Sure sure. Yeah. Thanks for having me in a happy to chat to portal. Awesome. [00:03:42] Jaden Baptista: Yeah. Well, let me ask you just the first quick question. You know, every, every big program that we all talk about w we really enjoy using was, was built to solve a problem, some sort of problem. [00:03:55] What problem was tempura both too soon, but what was the point of building it in the first. [00:03:59] swyx: So, to be clear, I did not build it. Who did exactly it was built to solve the problem of The abstract problem that the category of problem, this is called is workflows anything long running that needs to take anything more than a simple request response cycle, a request response will be just like, you know, you're paying a serverless function. [00:04:20] It gets back to you in, let's say 300 milliseconds, right? That's a typical cycle, but sometimes you need to do long running work. Typically I would think this is something like video projects. So, if you kick off a job, it takes like four hours to transfer code audio file. But actually it is both longer and shorter than that. [00:04:40] So, this is actually a topic of my recent blog posts. Because even if you, so Dropbox, so box is one of our users and they use us for file transfers and normally a file transfer just feels instantaneous until you try to transfer a million files. Right. They just change that. A thousand of them. [00:04:58] So you need a solution that scales pretty nicely from like a single transfer that should feel instantaneous to you know, something that's gonna take a while. Cause, cause it's just distributed across a lot of systems and you need it to be perfect or you lose data. And if your box you cannot lose data the other super long running task is why does anything have to ever end? [00:05:17] So what if you could just model the entire journey of your customer from. Like their first contact with you to the time that they unsubscribe. And that is a single entity that you just interact with. So it then becomes easy to say things like, okay, on their seventh visit, send them a coupon. Every month charged them based on their, you know, their, their usage or the billing. [00:05:38] And all of this is encapsulated in a single function. So [00:05:43] Jaden Baptista: yeah. [00:05:44] swyx: Yeah, because because we have an internal basically, so. Solves, it brings together a database, a scheduler some networking, some search capability and it, and it does. And then it uses, it offers you an SDK, so you can write it in idiomatic language. [00:06:01] The, there, this is not a new problem. Our founders have been working on this for something like 20 years. The tech leads for Amazon SQS. And then in simple workflow Azure doable functions and then when they arrived at Uber, they, they built the initial version of temporal where it now power is like, Something like 400 use cases at Uber mostly driver onboarding marketing which they call communications or something like that. [00:06:25] It's just like, whenever you do something that is so fundamentally asynchronous, you could use it for a lot of things. And it tends to grow that way. So, you know, it was open source that Uber and then it was adopted by other companies like Coi...

Sep 9, 2021 • 13min
React Native's Near Death Experience [Christopher Chedeau]
Listen to the Sourcegraph podcast: https://about.sourcegraph.com/podcast/christopher-chedeau/ (~28mins in)Lessons learned:Hackathon is important for intrapreneurshipNear Death moment requires leap of faithSolve People Problems with Technology, not just technology problemsTranscript [00:00:00] swyx: I'm continuing my exploration of how technologies get adopted. And recently there was a really good interview of Christopher shadow by Beyang Liu on the source graph podcast. So I really had to feature it. this tells the story of the invention and adoption of react native internally within Facebook. And the context to this is. [00:00:21] Facebook had a problem with the iteration speed of mobile apps at Facebook, and they were much slower than web apps. So basically the context before this conversation is that mark Zuckerberg had actually set an engineering priority to fix the solution and the engineers have to figure it out. [00:00:36] Christopher Chedeau: One of those things that John had in mind, Can we embed JavaScript in a iOS app. And so at that point, we actually there was no API for this and they're going to do it, but like you found a way to cross compare something and he was able to do it. And you, you want it to be like, okay, can we run, react and power, like native iOS views out of react instead of like dibs and spans, you can like a UI label and a UI views. [00:01:03] And. And so this is like at Facebook there's hackathons. And so in the summer does a three day hackathon. And we basically like Ashwin Lynn that's where on my team, on the photos team. And Joanne, we hacked together off for three days working on this like raw using react to power, like native use. [00:01:25] And at the end of the three days, we had a demo where we are able to show his view and we had a primitive layout system. And. I have the texts it's on the right and the iOS, the rep on the left and basically moved the line like a before and after and a native, iOS, like button. And I bought to move the, like better from the left to the right. [00:01:49] And we were able to click on it. Now, the lights like actually like walks and we're able to like, do. Changing and saving would be like almost entirely. I think it was a hundred milliseconds, a refresh. So it was barely perspective perceptible and we presented to the like hackathon group, like all the, did some callbacks could go. [00:02:11] And what happened is the five project, like most interesting have an audience with Mark Zuckerberg. And so you went to present this hack to Mark Zuckerberg and there was a SRAP, the CTO of the company as well, like in this? Yes. Yeah. And wasn't for this. Yeah. And both of them were like, we're super excited. [00:02:32] And what happened the next week is we basically did like a wall tour of Facebook and we talked to all of the management chain, . And it was like a super, like a fun thing. But now the thing that happened then is okay, so we did this demo, there was like people liking it and everything, but now for like myself as an engineer, like I joined like Facebook, like less than a year ago. [00:02:54] And I moved like my, like myself, I married my wife. I like, this was like a huge like thing. We moved off way across the world. So now it was like a soul searching moment. Do I want to like bets, like this dream, like on a crazy idea that and I was like, like at that time I was like the answer was No. [00:03:18] And so what happened is like a Lena Nash Ashwin basically went and B up like a, they wanted to do an iOS photo up and they built it using what was react iOS at the time. And three months after they basically came back to us and said Hey look like we really want to build like the iOS photo app. [00:03:37] Yeah. And right now we're spending more time building this react iOS thing than actually building the products. And so we're going to restart the product like in a normal iOS. So we can actually walk on it. The project could die. All the project could live and I need to make a call. Do I want to invest in? [00:03:58] And so I did a lot of soul searching and I basically at that point I was like, okay, I think I need to do it. And so, Tom Occhino was the manager of a Joel at the time. And Joel Dan and myself okay, now we like basically creating a small team. And then she came in after this. And this is how like the program. [00:04:17] But this was like not an easy, like a decision to make. And this is like something, a lot of people don't realize it counting products and like they're super high risk Harry, well, for decks, but most of the projects actually fail. This is a startup. Like most of us, not the film and the fact that I'm like here talking to you, like all of the stars align and everything, like it's good work, but this was not a given at the time. [00:04:40] Beyang Liu: You took a risk and it paid off. And I think especially it was a big risk in Facebook at the time. Cause my understanding is that they had already tried to build an initial version of the mobile application using web technologies. That was like the first attempt. [00:04:54] And then it wasn't like performant enough for the user experience. Wasn't good. So they ended up rebuilding it in, native iOS and Android. So there must have been like probably some amount of institutional resistance. Right. . Have another go at a web based or web inspired technology, right? [00:05:11] Christopher Chedeau: Yeah. Yeah. This was like a very interesting time. And like one of the things that's also I don't know if it's true today, but like when I like joined Facebook and even at school, there was this notion of if you're doing web, you're not a real engineer. If you're doing like a channel or like network or native, like you're real engineer. [00:05:31] Yeah. And so there was this like super interesting notion where we are coming from a web background. And so when you have all of these preconceived notions, Whatever we'll doing is not going to be a real engineering. And we're like, scripted is, and let's do this. And this is like very interesting. [00:05:52] The other thing which has been super interesting is there's also a very big difference between the iOS community and general. Hmm. And so, the what's super interesting is iOS community is like apple, like plays a central role. And basically there's like this notion that like everything that apple does is the right way, and this is the way things should go. [00:06:16] And there's a very angry notion of this. And so now if you're basically come in, like we're doing something different when apple guideline, there's a lot of reasons. Yeah. And so this is in practice it has works well because like apple in practice, the software that they produce and like the libraries and everything, I actually really good in practice. [00:06:36] So that's reasonable. But it's been like one of the very interesting thing about trying to convince people the, on the other side for Android, which was super interesting is Android, like the state of the development at the time was like very fragmented. There's 20 different of Android and everything is hiking and like the quality of the framework and the fraud, was not as good. [00:06:57] And so basically like 400, ...

Sep 7, 2021 • 12min
How React got Traction [Pete Hunt]
Listen to the Future of Coding Podcast: https://futureofcoding.org/episodes/011 (30ish mins in)3 Lessons Learned:Features over Benefits- original was a tutorial - second time: here's why react is different. Focus on the implementation rather than how to use it- Sophie Alpert, Dan Abramov, Cheng LouSupport everybody: IRC, Stackoverflow, RedditInfluencers - David NolenBigger conferences, F8, ReactConfPublic user WikiHaters - view every hater comment was your faultTable stakesDocumentationInclusive communicationThree single sentences to communicate why your project is different and worthy of someone's attention - real reasons with tradeoffs, not "faster, smaller, lightweight"Transcript [00:00:00] swyx: Hey everyone. I'm coming to you today from the Infoship shift conference where I just gave a talk on the third is your JavaScript. And it's got me in a mood to look back a little bit on the history of some of the JavaScript frameworks and what better history to cover it, then react, which is something I know. [00:00:17] Well, but I think the history of react is not that well-documented and people. Should hear it from people who are there. The central question, which occupies a lot of my waking thought is how to get developer tools adopted. And there's no better case study than most, no more successful case study than react and how it overcame its initial difficulty. [00:00:38] Here's original reactive team member, Pete hunt on the future of coding podcast. [00:00:43] Pete Hunt: It took a lot of time to figure out how to message this. Because he can't just come in and say like, everybody's wrong and we're right. Blah, blah, blah, blah, blah, blah. That's not that's not really, you did that a little bit. [00:00:55] Which, which talk. So there was the original JS coffee us talk where we came in and we said, Hey, this is how we build user interfaces. At the time. And it was just like a tutorial. And then there's another way, which was the second top, which was the one that I did, which was basically like, Hey, here's why react is different. [00:01:15] The argument that we were trying to make is that, Hey, this is these are the problems that we had. Here's the solution we came up with and here's what makes our solution. And we had a lot of caveats in there that said, Hey, this might not work for you. There are these certain edge cases where it's actually slower than what you're doing today, but what we found was this was a better set of trade-offs and really what we focused on was. [00:01:40] Educating people on how to use react or how to build their next application with it. It was more about this is what makes it unique and interesting. And what that did was it disarmed people. They were like, oh, this is actually really interesting. We focus much more on the implementation in that than the, how to use it. [00:01:56] And people appreciated that. And the second thing it did was it recruited people into the community that were really passionate about what it does differently. And so you see. These big shots in the react community now like Sophie Albert, and Dan Abramov and Cheng Lou and all these, these people they originally recruited because I think they found the internals of react to the interesting or at least some of the ideas around it to be really interesting rather than, oh, I built my, my application and, three less days than it otherwise would have taken. [00:02:25] Steve Krause: From my perspective it seemed like react was inevitable and it just happened magically, but you were more on the ground floor making it grow. And it seemed like, like you find around the conferences telling people about evangelizing it. [00:02:38] So could you talk through like how it became adopted how, how that felt. Like w what were like some of the key milestones or like key the key things that happened that like made it like moved along. [00:02:50] Pete Hunt: Yeah. So there was JS con you asked, which was the original announcement. Everybody hated it. Then there was JS con EU which got some more people excited about it. [00:03:00] We wanted to support everybody a lot. So we were in IRC, like almost 24, 7. People would come in and ask a question and we would answer it. Some people would, would camp on stack overflow and answer those questions. But basically like the, the idea was we wanted to recruit and, and basically keep those people engaged in the community because hopefully they could help out. [00:03:20] And that ended up working out nicely. So the number one thing was like just supporting the hell out of people that [00:03:26] the second big milestone that happened was when David Nolan got involved. And brought in the closure script community. And they, he wrote this blog post called the future of JavaScript MVCs and he was kind of like, Hey, this reacting solves a missing piece that we've had in the closure script community for a long time. [00:03:44] And it's got a programming model that I really like. So that was a big noticeable uptick in the use of reaction. So again, what we're doing right now is, is recruiting. Passionate early adopters and started to slowly turn into some real production usage of react outside of the Facebook companies. [00:04:06] And then fast forward, maybe a year we are so flux is introduced and that solves a problem that the community had. We started talking at kind of bigger, more corporate-y conferences like Facebook's FAA, and then eventually put on a react. For all of the users and then that sort of to inspire a lot of confidence in people to use react. [00:04:28] And so then all these big companies started actually using react. And once you've got some PR real-world production usage, we had this Wiki page where people could add a link to their, their service and where they were using react and Redux. And we would point people to that when they're like, Hey, my boss doesn't know if I should use this new technology. [00:04:48] We said, well, did you know that Facebook is using an Instagram is using it Airbnb and the New York times and all these other, other well-known brands. So that was, that was helpful to then, we just started to see this big explosion in, in the usage of the, of react throughout the community. [00:05:05] The snowball was, was rolling down the hill at that point. React native was another big milestone in, in reacts kind of adoption because that opened up the world mobile developers. [00:05:14] So I I found react because of David Nolan's article that you mentioned. And I was immediately convinced after reading that article and then watching your rethink, rethinking best practices talk, which, which I think he links to in the, yeah. [00:05:26] In that essay. So I can definitely see how that was a big milestone. I didn't realize how big of a milestone that was in your mind, but, but that's, that's how you got me. [00:05:34] So makes sense. Yeah. That wasn't an accident either. So like there's a lot of, I was going to conferences and I was connecting with people on Twitter and stuff like that. [00:05:44] And the way that got put together was. There...

Sep 3, 2021 • 11min
[Movie Fridays] Shang-Chi and the Legend of the Ten Rings
Song: DJ Snake - Run It (ft. Rick Ross & Rich Brian) [from Shang-Chi and the Legend of the Ten Rings]BBC Radio 1 interview: https://www.bbc.co.uk/sounds/play/p09tz2bz

Sep 3, 2021 • 10min
Journey to Vitess [Alkin Tezuysal]
Full interview on the HOSS talks FOSS podcast: https://www.youtube.com/watch?v=8e3IC-lAgXsVitess: https://vitess.io/Planetscale: https://planetscale.com/Vitess was created in 2010 to solve the MySQL scalability challenges that the team at YouTube faced. This section briefly summarizes the sequence of events that led to Vitess' creation:YouTube’s MySQL database reached a point when peak traffic would soon exceed the database’s serving capacity. To temporarily alleviate the problem, YouTube created a master database for write traffic and a replica database for read traffic.With demand for cat videos at an all-time high, read-only traffic was still high enough to overload the replica database. So YouTube added more replicas, again providing a temporary solution.Eventually, write traffic became too high for the master database to handle, requiring YouTube to shard data to handle incoming traffic. As an aside, sharding would have also become necessary if the overall size of the database became too large for a single MySQL instance.YouTube’s application layer was modified so that before executing any database operation, the code could identify the right database shard to receive that particular query.Vitess let YouTube remove that logic from the source code, introducing a proxy between the application and the database to route and manage database interactions. Since then, YouTube has scaled its user base by a factor of more than 50, greatly increasing its capacity to serve pages, process newly uploaded videos, and more. Even more importantly, Vitess is a platform that continues to scale.

Sep 2, 2021 • 10min
Journey to CockroachDB [Spencer Kimball]
Listen to the full episode on SERadio: https://www.se-radio.net/2020/06/episode-413-spencer-kimball-on-cockroachdb/Previous two parter on Spencer: https://swyx.transistor.fm/episodes/consistent-synchronous-replicationhttps://swyx.transistor.fm/episodes/spencer-kimball-pt-2-competing-with-big-clouds