The Changelog: Software Development, Open Source - Why we need Ladybird (Interview)

Episode Date: August 14, 2024

Andreas Kling and Chris Wanstrath have joined forces to form a non-profit called Ladybird Browser Initiative to manage the newly forked Ladybird browser. We discuss what it's going to take to get to a...lpha, the why behind Ladybird, avoiding incentives other than those of the users, their plans for incremental adoption of Swift as the successor language over C++, and of course what they hope Ladybird can achieve as a truly independent open source browser that's for the people.

Transcript
Discussion (0)
Starting point is 00:00:00 What's up, welcome back. This is the change law. We talked to the hackers, the leaders and those who are building truly independent open source browsers. On today's show, we're talking to Andreas K cling who has joined forces with chris wanstroth one of the github co-founders together they formed a non-profit called ladybird browser initiative to manage the newly forked ladybird browser we discuss what it's going to take to get to alpha in the summer of 2026 the why behind ladybird from both of them, avoiding incentives other than those of the users, their plans for incremental adoption of Swift as the successor language over C++, and of course what they hope Lady Bird can achieve
Starting point is 00:00:53 as a truly independent open source browser that's for the people. A massive thank you to our friends and our partners over at fly.io. That's the home of changelog.com. You can deploy a scalable full stack without the cortisol. No stress. Over 3 million apps have launched on fly.io,
Starting point is 00:01:13 and we're one of them, and you can too. Learn more at fly.io. All right, let's Lady Bird. What's up, friends? I'm here with Dave Rosenthal, CTO of Sentry. So Dave, when I look at Sentry, I see you driving towards full application health, error monitoring where things began, session replay, being able to replay a view of the interface a user had going on when they experienced an issue with full tracing, full replay, being able to replay a view of the interface a user had going on when they experienced an issue with full tracing, full data, the advancements you're making with tracing
Starting point is 00:01:50 and profiling, cron monitoring, co-coverage, user feedback, and just tons of integrations. Give me a glimpse into the inevitable future. What are you driving towards? Yeah, one of the things that we're seeing is that in the past, people had separate systems where they had like logs on servers written to files. They were maybe sending some metrics to Datadog or something like that, or some other system. They were monitoring for errors with some product, maybe it was Sentry. But more and more what we see is people want all of these sources of telemetry logically tied together somehow. And that's really what we're pursuing at Sentry now. We have this concept of a trace ID, which is kind of a key that ties together
Starting point is 00:02:32 all of the pieces of data that are associated with the user action. So if a user loads a web page, we want to tie together all the server requests that happened, any errors that happened, any metrics that were collected. And what that allows on the back end, you don't just have to look at like three different graphs and sort of line them up in time and, you know, try to draw your own conclusions. You can actually like analyze and slice and dice the data and say, hey, what did this metric look like for people with this operating system versus this metric look like for people with this operating system and actually get into those details. So this kind of idea of tying all of the telemetry data together using this concept of a trace ID or basically some key, I think is a big win for developers trying to diagnose and debug
Starting point is 00:03:18 real world systems and something that is, we're kind of charged the path for that for everybody. Okay. Let's see you get there. Let's see you get there tomorrow perfectly. How will systems be different? How will teams be different as a result? Yeah, I mean, I guess again, I'll just keep saying it maybe, but I think it kind of goes back to this debugability experience. When you are digging into an issue, you know, having a sort of a richer data model that's, you know, your logs are structured. They're sort of
Starting point is 00:03:43 this hierarchical structure with spans. And not only is it just the spans that are structured, they're tied to errors, they're tied to other things. So when you have the data model that's kind of interconnected, it opens up all different kinds of analysis that were just kind of either very manual before, kind of guessing that maybe this log was, you know, happened at the same time as this other thing, or we're just impossible. We get excited not only about the new kinds of issues that we can detect with that interconnected data model,
Starting point is 00:04:11 but also just for every issue that we do detect, how easy it is to get to the bottom of it. I love it. Okay, so they mean it when they say code breaks, fix it faster with Sentry. More than 100,000 growing teams use Sentry to find problems fast, and you can too. Learn more at Sentry.io.
Starting point is 00:04:28 That's S-E-N-T-R-Y.io. And use our code CHANGELOG. Get $100 off the team plan. That's almost four months free for you to try out Sentry. Once again, Sentry.io. So we're here talking about Lady Bird. We've got a, I guess an OG in the house today. Since episode 10, Jerry, like that's before your time even here at Change Along. That's forever ago.
Starting point is 00:05:20 And I'm wearing the old school shirt on purpose. Nice. Like this was the logo back when Chris Wanshroth was on the show. Episode 10, Chris. That's crazy. Long time ago. I have one of those shirts. Do you?
Starting point is 00:05:31 I've kept every shirt. Not in my drawer, obviously, but I've got all these boxes and storage of every get up shirt that we ever produced that I got. All the free conference shirts from RubyConf and RailsConf. And I'm positive I have that exact changelog shirt somewhere. Fantastic. Well, that's good news. I'm glad you got the shirt. Maybe you can make a blanket out of it. I don't know. That's what I heard is
Starting point is 00:05:49 kind of cool. It's like make a throw rug or something with it. Yeah, you can quilt them all together. Museum, right? I'm going to hang them up on the wall. Sure. And of course, we have Andreas back talking about Lady Bird. And the last time we talked to you, Andreas, was, I guess, around SerenityOS primarily. And Lady Bird was obviously part of that conversation, but it was kind of a side
Starting point is 00:06:09 card to the main conversation. But now you've forked it, and it's going to become a bigger thing than it was before, something far more focused. And that's the conversation. So, where's the best place to begin? Ooh, I don't even know. I guess at the fork, perhaps? Okay. So, we had Serenity OS, which people know about, and I've talked about it on the show before. And it was a great, fun, relaxing project for myself and a lot of people. But over time, it just happened that the Ladybird browser, which started
Starting point is 00:06:40 as a tiny little component in Serenity, it just grew and grew until it became sort of bigger than Serenity OS itself, especially in terms of the amount of work going into it. And for the last year, I guess before we forked, it was the main focus in the repository. And not everybody liked that. It certainly was a pretty cramped way of working, like trying to do an operating system and also doing a browser all in one repository. So it kind of setting up a secrets, um, secrets, yes. Setting up a nonprofit for Ladybird where, um, you know, we wanted to kick things up a notch and, um, go focus on Ladybird for real and turn it into a real product. And I felt like when we were getting
Starting point is 00:07:40 ready to make the nonprofit public, we just had to, had to pull the trigger on forking Ladybird because launching the nonprofit and then having to explain to everybody, well, you see Ladybird is a component of a great operating system that has like 400 other components, but don't worry about that. This nonprofit is about Ladybird. It was much easier to say, here's the Ladybird Git repository. It has Lady Bird in it. So I wanted to do that sort of spring cleaning before. And that's why the fork happened when it happened. But it's been a great success, I think.
Starting point is 00:08:15 Now people who want to work on operating system internals, desktop widgets and GUI stuff, they can do that. And they don't have to get trampled by people working on HTML internals and stuff like that, and vice versa, you know. But it's certainly been a crazy last two months. We launched on the 1st of July, I think. What month is this, right? Right. It's a week into August. And yeah, we launched on the 1st of July and it was pretty wild. Got so many people interested in what we were doing. The story was a little muddy though, because you were sort of embedded in Serenity and it made sense to fork and consolidate the story into one that could be backed by a non-profit you mentioned this
Starting point is 00:09:05 secret relationship for a year though how did you guys meet like what made the relationship blossomer even come around so i guess i can tell my side of the story which uh is that i was stuck in an airport in denmark and i had been up for 24 hours and i'd been a bunch of flights had been canceled and i was just trying to get home I've been to a conference for web engine developers and I'm trying to stay awake desperately so I'm on my phone like just tweeting at people liking stuff and I don't know why it came to me but I remember that Chris had like tweeted about Serenity OS sometime earlier. Like, I don't know if it was a couple of weeks before or something like that.
Starting point is 00:09:48 And I thought, that's cool. Why don't I direct message him and say, thank you for promoting the project. So I just wrote to Chris saying like, thank you for promoting Serenity OS. That's cool. And then he was apparently at the computer. So we started having a conversation, and I quickly told him that I had been thinking about taking Lady Bird more seriously and spinning that off
Starting point is 00:10:13 and trying to make something real out of it. And Chris, I guess you can take over here and fill out your perspective. You were on the computer, Chris. What happened from there? I was on the computer. I barely remember that because I was not in an airport in Denmark under duress. Well, for me, I would say it starts a lot earlier because after GitHub, I started programming again a lot. So I took some time off. We sold GitHub to Microsoft. People think that I went to work at Microsoft. I never worked one day at Microsoft. So I just left. I was unemployed. And I started learning Unity. I started making games. I started writing Go. I started writing Rust. I started learning a lot
Starting point is 00:10:55 of these languages that I didn't feel like I had the time to keep up with while I was in CEO mode at GitHub. The world had changed a lot since we spoke on podcast number 10 yeah so i wanted to learn the new technologies significantly um so i made a fake github account with a fake name which is a trick i learned from techno weenie and i just started hacking on stuff sending pull requests um getting really involved in whatever i was interested in weird weird so languages, Gopher, things like that. And along the way, I was getting into learning assembly, learning about CPUs, learning about binary math,
Starting point is 00:11:32 stuff that I'd never learned before because I don't have a CS background. And that kind of led me to the Serenity OS project. And here they are building an operating system from scratch. They're doing it in C++, which was also a language that I'd never done before
Starting point is 00:11:42 that I was learning. And so I started following Andreas really early. I think I was one of the first Patreon subscribers as well on Serenity. So I'd watched that for years and years and years. And I saw when libweb was created and followed the JavaScript engine a little bit. But I separately had been really interested in open source web browsers. I was an early supporter of Firefox back when they tweeted this recently, but Firefox 1.0, they had a campaign to crowdsource an ad in the New York Times. It was two pages. I think I was 18 or 19 years old. So I put in whatever, 5, 10,. I was running all Linux on my machines. And, you know, obviously, Firefox has become a small part of what the Mozilla Foundation is doing. Meanwhile, Chrome and Chromium and Google have really taken over the web. So I've been thinking for a while, not that I was going to write a browser, but I would love to find some folks who are interested in this and get involved and help in any way I can. And so I watched Lady Bird sort of evolve from afar. And when Andreas and I started talking, I felt like it was the perfect fit. I mean, because he had already been doing it. He had the experience, he had the team,
Starting point is 00:12:56 he'd proven he could run a project already with Serenity. And I just felt like I could help fill in some of the gaps in terms of the legal side and the business side and some of the funding. So it was really an amazing sort of coincidence in situation from my perspective. Yeah. Very cool story from both perspectives and one that we were immediately excited about this because I feel like for the last 18, 24 months, we've been hemming and hawing talking about what if there was a young fresh new open source you know user oriented first browser and then like it's kind of just a big undertaking it's kind of just like a yeah that'll never happen kind of a thing because you got to have significant funds you got to have people who have the know-how you have to have sustained efforts somebody who can organize and inspire and lead and it seems like when I first saw, and Andreas,
Starting point is 00:13:48 obviously when you were on the show last year, we talked to you about Serenity. And when we got to the end and started talking about Lady Bird, like my ears perked up and I was like, oh, this is very interesting. Could this be a thing? And, but of course you had this much bigger project that you were also working on. And so just want to throw my hat in the ring to say like, super excited that this has come together and that, uh, it's been formalized and it's been funded by you, Chris, to start off with. And obviously try it's a nonprofit. So trying to get other people involved as well. Where does it go from here though, Andreas? Because I read that you're like multiple years away from a 1.0. Talk about having multiple launches.
Starting point is 00:14:26 Obviously, people want to use the thing. The first thing you said was, well, we have to break it free from Serenity. We have to bring it to other platforms. But tell us what the work looks like from here and onward. Whenever I tell this to people, they usually have very different reactions based on how much experience they have working on browsers. But we are aiming to do an alpha version in 2026 so two years out roughly which from my perspective is incredibly ambitious
Starting point is 00:14:54 because we have to support the web and the web has a lot of features it does and you just get more all the time yeah exactly we exactly. We're not going to be able to support all of them. But for an alpha in 2026, what we want is a usable browser that could be a daily driver for developers like myself, but also for courageous, enthusiastic early adopter types, people who are willing to suffer a little bit to send in crash reports. That's kind of the first target. So two years out for an alpha, and then assuming that we get a ton of great actionable feedback, a beta year later, and then a year later after that, we would hope to do a general release. That's sort of the high level outline that I'm that I'm
Starting point is 00:15:43 looking at at the moment. And there's a lot more detail, of course, of what goes into each of these steps to qualify something as a serviceable alpha. But we are working on a more detailed plan for that. But yeah, so it's pretty far out in terms of time, which a lot of people have been telling me that, why are you even talking about this now? If it's two years away, that's an eternity, right? That's my internal question right now. Right.
Starting point is 00:16:11 That feels so far away. It does. Will the web change drastically between now and alpha? Probably not drastically, but it will certainly change incrementally. Thanks to the good folks at the other browser companies who are always busy adding new features. It is a little bit of a complicating factor for us that we we have to keep up with that. But when you're in it, like every day, you're kind of in the trenches, just implementing these things. It's not so bad. It's a lot worse. It looks a lot worse from the outside. But when you're
Starting point is 00:16:44 in the in the middle of it you're sort of like oh now apple is adding this feature google is doing that we can do that too like it's not that bad but yeah from that from the outside i understand that this looks like a very busy mess daunting daunting is my single word one could say yes it is It is daunting. I suppose it's a personal strength of mine that I ignore these feelings of intimidation that you're supposed to have about this type of stuff. Right. Why? Because you can have the ability, the skill, the financing, the friends, the organization, all those things. But if like, what is the why? Like, why is it worth climbing this mountain? Right. So I think everybody is going to find a different why that works for them. I know Chris and I have pretty different whys, but there's a lot of overlap as well. So for me, it's personal in many ways. I've loved browsers ever since I first used one back in
Starting point is 00:17:51 like 95 or whatever, connected to a local Swedish website and read a cartoon over the internet. I thought that was amazing. I was 10 years old, I think, or 11. And I started working on browsers when back in 2005, I think, so it's I've been at it for a while. And I've always just loved the idea of this giant hypertext network that we can all access. And the idea that I can work on the software that accesses that network. Why would I want to work on anything else else if I can work on that thing? That's the coolest thing. So for me, it's like, I love the browsers. I love the web. And I've worked as a browser engineer for many years, but I just didn't really fit into
Starting point is 00:18:36 big tech, I guess. So after I realized that about myself, I left. And then it took a while. And I didn't know how I was going to get back into browser development again until I just made a new browser accidentally. And now I get to be a browser developer again. I hate it when you do that. Accidentally make a browser and then you have to be one, you know.
Starting point is 00:18:58 Happens to everybody. No, but it's personal. I just love it. What about you, Chris? What's your why? What's my why? Do you agree this is a daunting task given the 2026 alpha? The web may change.
Starting point is 00:19:12 Browsers may become less useful, I suppose, potentially. I don't know because the way people are using the web is changing. And we don't know what's going to happen two years from now. Do you agree it's a daunting task? No. Okay, it's not. Okay, fine. So what is your, what is your why that I suppose to even do this in the first place? Well, start with two years is not a long time, I would say. I think maybe if you're a web developer, it feels like a long time because you can do an app in a weekend, right? You can, you can launch a startup in six months,
Starting point is 00:19:43 but for a lot of software projects, two years is like nothing. And I think like it feels a long time because, you know, years are years are years. But like ChatGPT was released two years ago, right? Does that feel like it was six months ago or a year ago? Like it was November, 2022. So two years, there isn't a lot of change really.
Starting point is 00:20:01 Like they're still trying to figure out what's going on with AI stuff, right? Sure. So COVID was four years ago. Feels it was 100 the start of that so now that i'm working with game engines you know coming from a rails app like github where we worked in terms of weeks and months now we're talking about with games years two years to release a game four years to release a game two years to release a game engine these are to release a game, two years to release a game engine. These are sort of the timelines that you get into when you get into a different sort of software. If you look at other places, like if you're an MCU fan, there's just been the big Doctor Doom announcement. That movie's coming out two years from now, right? So like two years is actually a
Starting point is 00:20:36 pretty reasonable amount of time, especially when you're older. So I don't think that that timeline is that ridiculous or that far away. As a consumer, it sucks to wait that long, for sure. Sure. But I think it's a reasonable amount of time to build something ambitious. And in terms of the web changing, I mean, that's just like the name of the game, right? That's going to be true of anything you're working on
Starting point is 00:20:55 for a long period of time. So I think what we are thinking about and what I'm interested in is like 10 years from now, right? Like two years from now is just to getting to the beginning alpha, but like what's the web going to look like 10 years from now? And I think what we're seeing and what we've seen is like, look at this app we're looking at right now. We're like, we're doing podcasting through the web with video. Like, I think the web is only going to become
Starting point is 00:21:17 more ingrained, more powerful, more mission critical. And this is a lot coming from like one of the electron people right but like the web is far more now than reading ai generated news articles on some ad driven website right like the web is a tool ingrained in so much of computing so i think if you look at like you have like brain implants in the future there's a good chance some of that's going to be running on the web too right like it's such a great technology it's such a great playing field to put all sorts of new things into. So that's what it's about for me is I think the web is going to be around forever. I think it's only getting bigger, more ingrained in our life and more powerful. And I think we need something that's not controlled
Starting point is 00:21:59 by Google. And so, yeah, I look at it like over 10 years and I think 10 years from now, this could be, maybe it won't be the biggest browser that consumers use, but I think the engine is also going to be a really big part of this and people using the engine to build products and embedding it in things. So I'm not daunted because I'm not the one doing the work.
Starting point is 00:22:16 How about that? Okay, fair enough. So as a game dev, Chris, another thing you probably think about is platforms because that's a huge part of game development is like, well, where is this game going to run? And of course, the web is a platform, but it runs on platforms, right? So you are breaking it free from serenity. That's obviously important for a mainstream browser to not be on a niche operating system, bringing it to Linux and macOS. But for me, in the future of browsing, it seems like it's going more and more mobile. Certainly not on your two-year plan, but is that like a 10-year plan in terms of like, we have to be a mobile browser too? Maybe Andreas can answer first and Chris can follow up. Yeah, of course. We absolutely want to go mobile as well. I probably browse 50-50 mobile desktop
Starting point is 00:23:02 myself. And I think most people probably browse even more on mobile these days. At least that was the wisdom when I worked at Apple. We learned that people were browsing way more on their phones than anywhere else. And we have to get on the phones. But we are currently in such a catching up state in our project. We're just catching up to be able to render the web at all so we have to do that first before we can worry about luxuries like mobile or windows that's cool fair enough but uh eventually yeah we totally want to get on ios um apple willing
Starting point is 00:23:39 and android and it looks like apple is going to have to let us play on iOS, at least in Europe, thanks to the EU stepping in. I don't know if America will ever get arbitrary browser support on iOS, but it's an interesting time. I will say that we do have the beginnings of an Android port. So we have a proof of concept where we can load a website on android but i don't think we can scroll so it's a little bit limited but we've seen it work it makes the fold even more important right everything has to be above the fold right for now all right chris obviously you think mobile is all important-term. Do you think the project's in a good place to go there, get there? We're talking about team funding.
Starting point is 00:24:30 Obviously, there's a lot of work to be done. But you've thrown in personal money, hoping to get other people's money, I'm sure, to fund this. But where do you think it can go with the current roadmap or runway, as they call it in the startup world? I think you have to start small for anything like this. I think it's a mistake to hire 100 people or something like that and just go for it because you're just going to be then dealing with organizational issues and people issues instead of dealing with technical issues.
Starting point is 00:24:58 So from my perspective, I think it's great that they're starting to focus on only really the platforms that they're using, not even Windows right now, and trying to get the core foundation stable, working, and then thinking about growing it from there. And I think we're thinking about the team size and the funding in a similar way, slowly growing the team. And then when it's, you know, getting to a place where it's working, and there's a foundation adding on from there. So yeah, I mean, I'm definitely committed to being a part of this, and would love to have other people see the vision. And I think what's going to happen is when it gets closer to being something that people can use, they're going to become a lot
Starting point is 00:25:34 more interested in it. You know, like we're in this tough spot right now where it's really a dream and a vision and sort of a promise, right? Two years, we're not going to push that back. But I think when we get there and people start seeing like i can use this every day especially given the fact that things like ad blockers are about to go away on google chrome i think it's going to get we're going to get a snowball effect and a lot more support so yeah i think i think this is the right way to grow it i think that they've got the leadership the team and sort of the energy to do it i think it's the right plan and i really believe in it.
Starting point is 00:26:09 Andreas, what does it take to get from Serenity to Linux and Mac? In terms of, is there architecture? Is it just surface area that needs to exist that doesn't exist there? Like, how do you get it from where it is to there? It was really easy, actually, looking back on it, because Serenity is a Unix-like operating system inspired by Linux and macOS, for the most part. Not visually, it looks like Windows 2000, but the internals are all like Linux and macOS kind of stuff. So lifting it over took, I would say, a couple of weeks until we had it running. And at that point, we just kind of switched over from... It used to be that we would develop the browser by sort of building Serenity OS
Starting point is 00:26:55 and then booting it up and testing the changes we'd made. And there was a gigantic edit-compile-test cycle, which included the booting process of an entire operating system just to test the browser change. And the moment we could run it on Linux or Mac OS, it was such a productivity increase that I think everybody working on the browser just switched immediately. And looking back, maybe that was the moment that I sort of switched from Serenity OS to Ladybird myself as well, because I just became a Linux user of Ladybird at that point, or a Linux developer.
Starting point is 00:27:30 But yeah, so like all the abstractions and things that we had inside SerenityOS, they just translated beautifully to other operating systems and not Windows, which is why we talk about Windows the way we do as a future thing. And we hear people say often that, you know, why not Windows? If you don't do Windows, this can never succeed. Most of the world is on Windows. And we acknowledge that. We just don't
Starting point is 00:28:01 know any Windows experts at the moment who happen to also work on Ladybird. Sometimes people show up and they say that they're going to port it and they're going to help us. And then they spend a couple of days doing that. And then they just disappear out the back door when they discover how much work is involved. And that has happened many times. And I don't blame them for it. You know, it's real work, but it's real work that we will take on ourselves eventually because we do need to get on Windows as well. We want to make a browser for everybody, not just people who use the same operating systems that we do
Starting point is 00:28:34 or people who feel the same way we do about the web or whatever. And especially now being a nonprofit, that's something that's very important to me is that we have sort of a very neutral stance on this type of stuff that we just have to make ourselves available everywhere to everybody which is a bit scary I will admit because I don't know the first thing about Windows development last time I did Windows development was on 3.1 I. So it's been a while. Hey, friends. I'm here with Brandon Fu, co-founder and CEO of Paragon.
Starting point is 00:29:28 Paragon lets B2B SaaS companies ship native integrations to production in days with more than 130 pre-built connectors or configure own custom integrations. Brandon, there's a certain level of pain that a product team or an engineering team has to endure to, let's just call it, rolling your own integrations. Help me understand that pain, that angst for those teams. Help me understand that true pain of delayed integrations for a product, not integrating or having to roll your own integration, this seemingly slower route to integrations. I think for context, one of the reasons we started Paragon is that today, the average company uses over 130 different software applications. So that means if you're a B2B software company selling into the markets, there's over 130 of your customers' applications that you probably need to connect your tool to. Because customers today expect that any product they buy is going to work seamlessly with the hundreds of other applications that they're using. Of course, we see this when companies come to us and they say, hey, we have a backlog of 10 or 20 or 50 integrations that, you know, our sales team has told us we're
Starting point is 00:30:25 losing deals because customers are asking us to integrate with all these different apps. And we can't deliver on those integrations, or maybe our competitors are integrating with these tools. And the problem that that results in for product and engineering teams, of course, is how do we build and maintain these integrations in a way that's scalable, that we can not just satisfy what customers are asking for us today, but we can maintain those integrations in a way that's scalable, that we can not just satisfy what customers are asking for us today, but we can maintain those integrations in a way that's scalable for the next hundred customers, the next hundred integrations that we need to build. So for engineering, one of the challenges, obviously, the backlog and prioritizing time for certain features or integrations. But then there's this other side where you got to really
Starting point is 00:31:03 learn every single API and everything is hand rolled, custom, maintained. And over time, that kind of gets, I got to imagine, kind of taxing on teams. What do you think? So most engineers know that, you know, every API is completely different, can be completely different in terms of how they handle authentication, in terms of how they deal with different record types. And so it becomes this problem for engineering teams to basically have to become experts in other people's APIs and what could be dozens or hundreds of different APIs. And to build those integrations we've seen can take as much as three to six months per integration for a developer to write the code to build that integration. And it depends on the use case, of course, and the type of product that you're integrating with. But of course, that
Starting point is 00:31:50 becomes a massive challenge at scale when you're looking at how do we scale our product to support 10 or 20 or 50 different integrations. So again, Paragon was really designed to solve that problem and to distill the complexities and the nuances and the differences between hundreds of different SaaS apps into a single connecting platform, into a single SDK that your engineers can install in your app and then easily connect your products to all these different SaaS applications in the market. Okay. Paragon is built for product management. It's built for engineering. It's built for everybody. Ship hundreds of native integrations into your SaaS application in days. Or build your own custom connector with any API. Learn more at useparagon.com slash changelog. Again, useparagon.com slash changelog. That's U-S-E-P-A-R-A-G-O-N dot com slash changelog. you'd mentioned i think in your faqs really the the use of third-party libraries can you speak to
Starting point is 00:33:14 i guess the uh freedom you may have now comparative to serenity os's you know strict no third party we rated ourselves kind of montage right express how that's changing for you yeah so that's been a big change and part of why it was so easy to lift ladybird from serenity os to other operating systems was that ladybird was like this big dense package that just had the whole code stack in one pile. So once you figured out how to get pixels to show up on the screen, everything just worked. And it was like you took a window out of Serenity OS and just lifted it over to Linux or Mac OS. But building everything ourselves was great in Serenity OS. It was great for personal therapy and building a kindergarten for computer programmers, those kind of purposes, great.
Starting point is 00:34:07 But for shipping a product in two years, insisting on writing every line of code ourselves was getting in the way a little bit. And we decided that we're going to relax and say, maybe we don't have to do everything ourselves. Like, maybe we don't have to say everything ourselves. Like, maybe we don't have to say that we are experts at all of these things. Like, we don't have to be the expert at image formats or encryption or 2D accelerated graphics on the GPU or whatever. There are all these things
Starting point is 00:34:39 that are not really core competencies of a browser that we don't really need to do ourselves. And we decided to just let go of SerenityOS's rule or mindset that everything has to be built by us. And we said, everything that isn't really a web technology, we can just lean on the open source ecosystem and take advantage of mature, high performance libraries that exist. And this has been hugely profitable for performance for productivity. And for correctness, we've been able to like just take ready made components that do a lot of stuff that we need to do. And they work better and faster than what we had. And we've been able to delete, I think, like 150,000 lines
Starting point is 00:35:26 of code or something like that, just by lifting in libraries that everybody had on their computers anyway. So it's fantastic, really. And there's been some social challenges to this because a lot of people were really attracted to the project because of this mentality that we do everything ourselves. We don't care how long it takes. We don't care if it sucks. It's ours. It's attractive. A lot of people love that environment. I love that environment. I wanted people to have that. And that was also one of the reasons that the fork made a lot of sense because then the fork could retain that way of working where in Serenity OS, they have those 150,000 lines of code
Starting point is 00:36:05 that we wrote ourselves. And they will continue to live on in that world, unbothered by the greater OSS ecosystem. But in Ladybird, we leverage existing stuff to make it possible to ship in this lifetime, basically. And other freedoms that you have now, is to evaluate as you say a mature successor i'm quoting the faq a mature successor language c++ was the language you chose for your purposes you as personal convenience for you as you mentioned uh but there's opinions out there and i'm sure there's opinions sort of like well now that you have the freedom can you choose
Starting point is 00:36:43 something different can you speak to what this uh evaluation period might be what that language might be thoughts sure expectations etc doesn't like rust I remember you don't like rust from last time because of the lack of object oriented right was that you that said that that sounds like exactly what I would say okay okay sounds like him definitely sounds like him i just throw that in there all right yes okay i'm preceded by my previous statements we have a transcript too you don't you can change your mind you have the right to change your mind no no that's that's still accurate uh but we still evaluated rust recently so what i've done is I've asked a bunch of people to
Starting point is 00:37:27 please implement these things in a couple of different languages. And then we can talk about how that went, what you liked about each language, and which one you would like to work in every day. And what we ended up with was that people were initially excited to work in Rust because there's a lot of hype. And it's like a popular language. You would think that it's the greatest thing since sliced bread. And in many ways it is, if what you want is sliced bread. Or I don't know where I'm going with that. But it works well for a lot of things.
Starting point is 00:38:00 Sliced bread 2.0. Sliced bread 2.0, right. But it turns out it's not ideal for building a browser because the browser stack sits on top of this API that was designed in the 90s that's sort of inspired by Java and XML and stuff like that at the time. All this 90 API, and it's at the core of the whole web stack. And it's super object oriented. And it's just hard to express all that stuff in Rust, because Rust doesn't lend itself to object oriented programming, it doesn't have inheritance, for example, which is a very fundamental building block. And so what happened was, I asked people to write in Rust and they were initially excited and then they came back frustrated. And nobody had a good time working in Rust as far as I understood.
Starting point is 00:38:52 When doing anything but trivial programs that like take an input and transform it into something else, the moment you try to model something sort of in a browser space, it just became tedious. So we looked at some other languages. And the one that everybody has liked so far has been Swift. So it's a bit of an unlikely candidate. But we decided to look at it because it is a safe modern language that has great object-oriented programming capabilities. I would say it's even better than C++ in many ways. And it's a little weird because it feels like an Apple product almost, but they've been making great strides on Linux and Windows, especially now the upcoming Swift 6
Starting point is 00:39:41 is looking like it's going to be a really good release on other platforms as well. So that's sort of where the ship is pointing right now. We haven't committed to it because we're still figuring out how to do some things. But it's been really positive and everybody's enjoyed working in it, myself included. It's been fantastic. So that's sort of what we're looking at it's quite a vote of confidence for swift chris do you have a dog in the language race over here
Starting point is 00:40:11 are you are you involved in these details are you largely uninvolved in that kind of stuff uh i'm not involved i'm a huge fan of rust i've written a lot of rust i don't think anyone should write web applications in it unless maybe you're trying to scale to the moon. Programming languages are tools and they're suited to certain tasks. So it totally makes sense to me that Rust might not be the best for building what they're building. And you need these object oriented concepts in the document model and things like that. And so you got to use the tool that is best for the job. What I think I've told Andreas from the beginning, and you know, it's their decision, but I'm a huge fan of the memory state languages, huge fan of what Rust does provide in terms of safety. And I know Swift has a lot of that too. So that's something that I
Starting point is 00:40:55 really think the whole industry should be moving towards. And so I'm just happy with the decisions that they're making. Surprised about Swift but uh my good friend is a huge swift i don't know what you can call it anymore uh swifty cultist rewrite everything in swift so uh we've been chatting about it and he's super excited about it too how tethered is swift to apple i think that'd be my only concern is i know it's it is open source it's separate but like contributions are the open i don't know much about the evolution of the Swift language and how, I guess, contributable it may be or literally open source it is, you know, in terms of contributions and direction, like how Apple tethered is it?
Starting point is 00:41:38 Open source on GitHub. It was one of the, maybe the first time Tim Cook said the word GitHub in a keynote. Is that right? It was a huge day for us. Yeah. I got a Swift t-shirt and everything. Did you put it in your quilt? Not yet.
Starting point is 00:41:48 It's in my quilt. It's in my museum quilt. Oh yeah, it's in there. Awesome. Yeah, no, I think they recently announced at WWDC this year that they are moving Swift from the Apple org on GitHub to its own Swift Lang org. So they're kind of stepping it out outside of the Apple company
Starting point is 00:42:08 and they want to turn it into its own organization that can have people from other companies, other communities join and participate in the governance and evolution of the language. So that's something that seems like a great thing for us. And we haven't contributed code yet, but we have contributed bug reports. So we're looking forward to see how that process goes as well. I think historically, it's been pretty tied into Apple stuff. And it's still true that you do end up pulling in
Starting point is 00:42:38 a chunk of Apple code that you sort of have to use as the standard library in Swift. You have to use the foundation library and like Grand Central Dispatch and these kinds of things serve as the standard library in Swift. But outside of that, you are left to your own devices and you can call C code. And Swift, unlike Rust,
Starting point is 00:43:02 actually has official investment in C++ interoperability, which is a huge deal for us because we have half a million lines of C++ that we are carrying around. And it's going to take time to do any kind of incremental rewrite or anything like that. In the reality where we're doing a ship of Theseus maneuver on our project, having a successor language that actually tries to interoperate with C++ is essential. What that means in practice is that Swift has facilities that allow you to call from C++ to Swift and from Swift to C++. It's not always completely trivial to do so, especially if you have weird, complicated objects
Starting point is 00:43:46 with confusing ownership. But there's a way to make them talk to each other. And we didn't get the feeling that that's nearly as easy in Rust land, because at the risk of being slightly controversial, I get the impression that people in the Rust land would rather make fun of C++ than help C++ programmers interoperate with Rust, which is unfortunate. It is unfortunate. You are correct, though. The new GitHub organization for Swift was announced on June 10th. So that is true.
Starting point is 00:44:20 GitHub.com slash Swift lang. Are you fact checking me, Adam? Well, you know, I'm a podcaster. I'm behind the scenes checking some things. I'm just ringing true. We're just following along. Yeah, yeah. Sure, sure.
Starting point is 00:44:33 That's good. We're here to also point the audience in the right direction, not just have a conversation with you. So I'm confirming your facts are true for the audience. Well played, Andreas. Well played. Yeah, I think this is all cool. I mean, obviously, I think when you look at,
Starting point is 00:44:50 when we zoom back out, we think Chris's response was, okay, two years is a short time frame in terms of alpha. I don't disagree with that. I think the mountain is daunting, but as you said, Chris, you're not coding it. So, hey, you don't have to worry about that. It's only daunting for Andreas, you know?
Starting point is 00:45:06 Right. And he doesn't get scared of anything, so we're good. This is his problem, not necessarily yours. And I suppose the team that gets hired, which is a small team now, and you're hiring at a pace that keeps an 18-month clip in the bank to have runway. But if you're thinking like a 10-year process, this next bet, if you do make a major native language change to the core code that's being written for Lady Bird, it has to be the right one, right? So you want to, as you said, the ship is pointing to a direction.
Starting point is 00:45:34 It's pointing to Swift. I think that was a cool process, too, to kind of give that task to those who are daily writing Lady Bird code. Evaluate languages. Write something that you like and kind of report back versus this other route. But it's kind of crucial, this next choice, right? I mean, it would kind of suck
Starting point is 00:45:52 to be two years down the road and have to rewrite things because maybe Swift wasn't the right choice or whatever wasn't the right choice. There's a lot of weight on this. Yeah, which is why we've been taking so long and we're still hemming and hawing a little bit because whatever we choose we're going to be stuck with for a long time there are other alternatives but one that i like in particular is um there's this guy named
Starting point is 00:46:17 sean baxter who is doing a weirdly heroic one-man effort to evolve C++. He has his own C++ compiler called Circle, and he has adapted the memory safety model of Rust to C++ and then built a compiler that shows that you can actually do this. And he did it all himself, and he's been dabbing on people on Twitter, for lack of a better term, about how it is actually possible to do this.
Starting point is 00:46:47 And he recently spoke to the C++ Standards Committee, showing them like, look, you say that this is impossible, but I did it. Can we talk about making C++ safe now? And they seemed interested, but it's the C++ Standards Committee. So even if they're ultra interested, this might get into a standard in eight years or something. Who knows? So we want to ship something to users sooner than C++ can evolve.
Starting point is 00:47:16 So we don't really have the luxury of waiting for that kind of thing. And I think, as Chris was saying, like memory safety is very important. It is unfortunate that this thing started as a hobby project for me to chillax. And I just wrote in C++. And then the whole thing snowballed and accidentally build a browser. And now we accidentally built one in C++. And we have to steer it towards safety. If I were to start over, obviously I would do it differently, but we are where we are. So what we have to do from my perspective is we just have to isolate the most like security sensitive parts of the program where like we're dealing with untrusted data from the network, stuff like that, and focus on converting those to a safe language first and then over time like other parts
Starting point is 00:48:07 as well and it's going to be a daunting subtask of a daunting main task so it's just more daunting and who cares just have to do it do you feel like you're treading water in the meantime between now and this decision and this eventual future? Because obviously there's other things to be working on, but would you want to go in two directions at once? Or you always have that deal of like, well, it's kind of like when you're waiting for the new phone to come out. You're like, do I buy a new phone right now? Or do I just wait until September?
Starting point is 00:48:36 Because right now would be kind of a waste. Are you having that in the meantime before you pull the trigger? No, not really. Okay, good. We're going to be stuck with c++ for years anyway whatever we do because we can't rewrite in any language fast enough that the alpha would be totally rewritten so we're gonna have to just focus on converting the most important parts that we can with the highest value items where safety is valuable. And I guess there's also the part where
Starting point is 00:49:06 using a safe language allows us to do concurrency. It's something that we don't really exploit very much in our browser. You may have 16 cores on your CPU, but we will only use one because we are treading cautiously in C++. Once we move to a safe language, we can do things in parallel and not worry about race conditions and things like that. So that's an area as well that we want to use a safe language to exploit. But I'm not at all concerned about having both languages in parallel. Reality is going to be that way anyway. And we have tons of people just working on improving web support right now. And they're probably going to continue working in C++ for the foreseeable future. And this is more of a long-term play to move to another language.
Starting point is 00:49:56 Awesome. Let's talk support. Chris, you kicked off the support, you and your family. There's also availability for sponsorship there are some companies sponsoring now your company as well is one of those and so can you lay out how the support will work how it's working now and how you hope it works down the road to get to this vision that y'all are building if you're listening to this please donate donate to Lady Bird. There you go. Say more. Yeah, I mean, we want it to be a nonprofit for a lot of reasons. One is that we want everything to be transparent. We
Starting point is 00:50:33 want to focus on the development of the browser. But I think more importantly, we want this to be for the people using it. We don't want there to be corporate interest. So, you know, there's a lot of ways we could have done this. It could have been a startup. It could have been something privately funded. But I think it's really important that the sort of North Star, as VCs like to talk about, is building a browser for the people using it. And that's just not the case with any popular browser today, right? They all have different reasons for existing. They all have different things they talk about in their planning meetings and their board meetings and whatnot. And so it is important that we get donations from the people using it. But like I said, you know, I think my involvement is really to help get this thing started and get the foundation in place and get it going to an alpha. And I would love to see the support grow as more and more people are able to use it. I don't think we're going to have like this massive amount of support this year that we can be able to hire all these people because you really don't have something that you can use yet. But I think that there are people chipping
Starting point is 00:51:30 in, which is super helpful. They're going to help us get to that point. And once people can download this and use it, I think it's going to be a whole different game. And I think more and more people are going to be more willing to donate. So yeah, I mean, that's really the plan is to get us to the alpha show that this is real. It's something you can use at the same time, try to bring in more folks to help us build it and then make it a real nonprofit. Who can use it today? Andreas, is it people who can are literally working on it? Chris, do you have it on your machine? I mean, is it even too early for Chris Wanstroth? I build it. I check websites in it. I check all my websites in it. I'm not using it as a daily driver or anything,
Starting point is 00:52:07 but it builds on Mac, and you can definitely, I mean, it's actually shocking how much you can use it. I will say anyone using it will notice it crashes a lot, but in terms of what renders, it's kind of amazing how far it is.
Starting point is 00:52:21 Nice. Andreas, who should try it out this early? Developers only? Early adopters? Enthusiasts? What? Definitely developers. And perhaps anybody who's curious about what a pre alpha browser looks like. But if you try to use it as a daily driver, you will be completely disappointed very quickly. But if you are any kind of software developer, please use it, please disappoint yourself, and then get interested in fixing the thing that disappointed you. There you go, because it is actually
Starting point is 00:52:55 really easy to get started. And Chris will tell you that it's really easy to build as well. I never had to help him build it or anything. Nice. I have internal projects that unlaunch startups that are harder to build than Lady Bird. That is the truth. There you go. That's a vote of confidence. Yeah. The docs under the build instructions for Lady Bird
Starting point is 00:53:18 seem pretty clear. I mean, you've got a clear path, at least for macOS, which is probably a large population of developers. Obviously, Linux is a large population of developers as well, but I'm just reading through the build steps and the process to get even a macOS system in place to be able to do a build, and it seems pretty straightforward. Now, I have not done it, but it reads well, so maybe it performs well in the build process. I don't know. I mean, that's kind of half the battle is getting to a place where you can have people build it even on their own.
Starting point is 00:53:52 I suppose even though there's an alpha stage for two years from now, what is the allergy to providing some version of even early pre-alpha releases? What's the analogy to at least providing maybe a slightly easier path and go build it yourself? It's the observation that when you do that, you get a lot of low quality, unactionable bug reports, more of that than anything else. And it is, I would say, kind of not fun to have to tell people, yeah, I understand that that website you tried doesn't work. I'm sorry, it's a pre-alpha. Thank you for reporting the problem. And then you have to do that like 20 times a day. And we get one chance to make a good first impression. And
Starting point is 00:54:42 I would prefer that we don't make that first impression today because it's not going to be great. Yeah. The impression today is the mission, not the artifact. That's right. The artifact, a year or two from now, will be far more polished,
Starting point is 00:54:56 far more impressionable. Whereas the mission, I think a lot of people will align with, which is why I kind of began the conversation with the why. Because I think the why is what attracts. We all get it. It's a browser. At this stage. Right. I think the why is super attractive because, you know, being frank, Chris, you bring a great name to the table. Like your pedigree and what you've done for software developers
Starting point is 00:55:19 forever is amazing, right? Creating GitHub is a big, big deal. Leading GitHub to where it's at today is a major deal. And you've thrown your hat in. And I think that's the first time I've seen you in public. I've seen you on Twitter slash X, but like you even put out a video to throw your hat in the game.
Starting point is 00:55:36 Like that's, to me, that's a big deal. So like the why and the perspective of, hey, look at Lady Bird, I think has got a nice spotlight on it. Yeah, I'm not an angel investor. I don't do a lot of things. And so the things that I do, I want to make sure they're really meaningful to me
Starting point is 00:55:53 and that they're going to be meaningful to other people. Because, yeah, I just feel like this matters and it's important and it could be big. And even if it's not the biggest, it can have a really big impact. So that's why I want to be part of it. But yeah, I'm very selective with the things I get involved in. You will be seeing more of me in public over the next few years, I will tell you that. But this is definitely something where I'm just excited about it. the turnout for you has been, let's just say, well above amazing. It took a toll on your mental health, your personal mental runway, your ability to show up, and you want to sort of like retract and steep yourself into all the things, like you had said, you were CEOing.
Starting point is 00:56:37 You weren't able to daily code as much as you'd like to. I got to imagine that was a great thing for you to sort of step away, unplug from the system, so to speak, kind of re-immerse yourself in things that matter to you. And obviously, like I said, this is the first thing I've seen from you, your video for Lady Bird since I think maybe on stage with Satya, you know, or that video with Satya announcing the GitHub acquisition. Like that was, it's been a bit. That would have been June 2018. Yeah. Are you asking me if I have post-traumatic stress from the GitHub experience? The answer is yes it's been a bit. That would have been June 2018. Yeah. Are you asking me
Starting point is 00:57:05 if I have post-traumatic stress from the GitHub experience? The answer is yes. It's a resounding yes. And, you know, it's like, not to get too much into this, but it's one of these things
Starting point is 00:57:15 where the role I was in as CEO, especially at the end, there was a thousand people. There's a lot of anxiety with that, right? Because there's so much uncertainty and you're trying to do the right thing and you have all these competing sort of interests from the board to the employees to the users to the different types of customers. And you know, if
Starting point is 00:57:32 you if you're not a super secure person, that can be really hard. And I was steeped in insecurity, because in my mind, I'm a programmer, I'm a product person and making this transition to CEO, it was a new thing for me, even though I've been cumulatively have done it for over eight years there. It wasn't how I thought of myself. I thought of myself as a programmer, as a product person. So there was a lot of anxiety at the end. And I thought the day that I handed the keys over to Microsoft, the next day, the anxiety would be gone and my mental health would be fixed. And that's not true. Anyone who's gone through this knows just you build up these habits and you start feeling anxious about other things.
Starting point is 00:58:06 And so for me personally, I think I had to go through an almost like self-care period of figuring out how to be myself again, figuring out what mattered to me. You know, honestly, my email was Chris at GitHub for 11 years. And then all of a sudden, I don't have that email address anymore. So there's a lot of my identity tied up in being, you know, one of the GitHub people being the GitHub guy. So yeah, I wasn't sure what I would do after. And I certainly knew I wasn't going to do I love games. I love working with creators. I love helping prop other people up. And so a lot of what I'm doing now is in the world of game development, working with game developers, working with programmers there. But something like Lady Bird, I mean, it's exactly what I'm interested in. It's exactly what I want to be a part of. And it's exactly what I want to see in the world as a consumer. And having
Starting point is 00:59:02 the success of GitHub and being in this position where, yes, I think we did a lot of things to make it successful, but we're also just like ahead of a freight train. I mean, it got so much bigger and better than I could have imagined. I feel like I have to sort of pay it forward. And it's my responsibility now to use some of my success and resources to help make other projects thrive. And Ladybird is one of those. It's good to hear. It's a good sentiment too. I think that I wasn't sure really how deep the PTSD might go because- Very deep. From the outside, people think, oh, money solves problems, right? Because I mean, I'm sure you got a nice paycheck from all of your hard work, which is what you're suggesting here. You're taking your
Starting point is 00:59:39 resources and things like that, and even your donation from your family towards this nonprofit, and even putting your work into it and your name into it like that's part of it but i think you can probably agree that money doesn't solve all the problems you still have that that sort of inner i don't want to say like ego in a negative way but like this ego in terms of like who you think you are what you think you can do now i would just say maybe you can just resurrect logical awesome and kind of go back to that email address i don't know versus or air the blog dude air the blog right bring it back chris go back to your roots potentially and but i do agree like chris at github.com was part of who you were and losing that was a change definitely i started github when i was 22 and when i I was 33. And so it's just a huge
Starting point is 01:00:28 chunk of my life and a huge chunk of my growing up. I mean, I don't know why anyone would do listen to a 22 year old CEO at this point. But that's what happened. And yeah, I mean, money does solve a lot of problems. But at the end of GitHub, I didn't have money problems. I already had a bunch of money. You know what I mean? And so my problems were not problems that were going to be solved by an even larger paycheck, as great as that is. It was mental identity, sort of those sorts of anxiety problems. And yeah, more money doesn't solve those. In fact, it can make those problems worse right yeah because you can kind of be alone you're in quotes i'm putting air quotes you could be alone and you're crazy with a bucket of cash and just freedom to do whatever and that can be very destructive yeah very destructive great word jared yeah very destructive glad to see you dove back into the code yeah and now you're making video games that seems like the perfect solution i mean maybe that's that's probably what i would do i'd like write some code and make some video games i mean coding's fun right like it just is
Starting point is 01:01:30 the act of it uh making ideas become real you know i'm not a person who paints i'm not that kind of artist but i feel like when i hear people talking about painting or something like that it's therapeutic to them you know and they it's something that you can work on for a long time, maybe sometimes two years, and you appreciate the process and you appreciate the end result. And that's what coding is for me. And so I like working on toys. But I think the other thing I identify with Andreas is Serenity is a great project, but ultimately, it's sort of a hobbyist project. It doesn't have this sort of take over the world end goal. It doesn't have this goal of even, I think, being used by tons of consumers or replacing anything. It's really for knowledge and community and fun, whereas Lady Bird's a little bit more serious,
Starting point is 01:02:15 you know? And I think that people are drawn to something like that. You're drawn to something like that as a creator to feel like what you're doing every day is going to matter and make a positive impact in the way you can. And I'm as drawn to that as anyone. So it's one of the reasons that I've been working on not just games, but a game creation platform. Because it's fun to work on open source projects with an anonymous GitHub profile,
Starting point is 01:02:38 but it's even more fun to build something serious that lots of people can use and can help them achieve their goals. Are you still anonymous on GitHub? Or have you come out and it's me? Well, a couple people know. I made a couple of friends through that. Probably it was the first pull request I ever sent that the person receiving it didn't know I was one of the creators of GitHub.
Starting point is 01:03:01 So that was an interesting experience to get into these communities. And I will tell you, being a creators of GitHub. So that was an interesting experience to get into these communities. And I will tell you, like, being a part of GitHub, being a part of seeing customer support, hearing lots of complaints, and hearing what people don't like, and where they want you to go. A lot of the community is very welcoming. And it's very positive. It's very inclusive. And so I maybe it's part of my mental health struggles. And I was focusing on the wrong things. But I first sent my first pull request as an anonymous person. And they were just overjoyed to have a contributor, right? And it was a community I got pulled into. So I made a lot of friends that I eventually pulled off the mask and told them who I was. But now I'm not really contributing to open source. Presently, everything I'm doing is closed source, a lot of it with the intent to become open source presently everything i'm doing is closed source a lot of it with the intent to become open source in the future so i'm basically like not sending prs to random projects right now gotcha so i love that you're putting so much behind ladybird but i wonder with your coding chops you know why don't you throw in why don't you uh you know ask andreas if he needs any
Starting point is 01:04:00 help why don't you get in there and get in the action? We've talked about it. I mean, I've done a ton of programming languages as hobbies. You know, I did the Crafting Interpreters book and building an interpreter in Go, building a compiler in Go. I did the Mile NAL project on GitHub, make a Lisp, where they just give you tests and they give you the Lisp file and you implement the Lisp in your own language and get them to pass. I did the From NAND to tetris course that's available online that was the thing i put a lot of time into and i've made just tons of programming
Starting point is 01:04:30 languages that are like 40 to 20 complete so the javascript stuff they're doing really interested me but i just um there's a lot of responsibility you know if i'm programming for fun right now i'm making a game that no one's going to play. That's sort of where I'm at. Right. Well, Andreas, it's a lot of responsibility. I mean, you were making a toy OS, but now you're making a serious browser. I know you're not daunted,
Starting point is 01:04:53 but you know, the rest of us might be. Sure, yeah. But it's also really familiar for me because I was a professional browser developer for most of my adult career. So it's really like going back to something nice and familiar and just running a victory lap almost in a way. But it's a very long victory lap
Starting point is 01:05:13 because we have to build the whole thing. But yeah, it just feels good to be back in that business. And the fact that I've been able to build a community of people around it as well is super cool, I will say. And I do always want to give credit to the people who have been developing it with me, because it certainly hasn't been a one-man effort. I sometimes read about myself on the internet that I'm doing a heroic one-man effort to build a browser. And it's very tiresome, because there are over a thousand people who have contributed to the repository on GitHub.
Starting point is 01:05:47 So I just want to call out and say that it's super cool that I've been able to get all these people interested in browser development just by sheer force of my enthusiasm for the field in some ways. And even Chris was drawn into it in some way. And I think it's a beautiful thing that GitHub enables. So it's just a nice synergy of things. Yeah. Well, I'll say, Andreas, you have a nice kind of tractor beam effect. I think you just naturally pull people in with your, maybe it's just your relaxed ways,
Starting point is 01:06:24 but also your skills and your applied work and your ability just to continuously show up and toil away at minor things that build into like? Like, have you defined what an alpha looks like? I know there's test suites that you can, you know, try to get 200% on with the specs and stuff, but is it like X number of websites will render without crashes or do you, or is it just like the time is up? We said 2026, we have to ship something like what's that alpha going to be defined as? So we have a giant document with things that we want the alpha to be able to do. And the document is too large at the moment, we have to whittle it down a little bit. But a large part of the document is a list of websites
Starting point is 01:07:17 that we want to work and sort of what we want these websites to be able to do. So you have things like, I want to be able to go on Facebook and make a post and like somebody else's post. And then you also have things like, I want this benchmark to have this score at least. And it's just a mix of things that we kind of believe will together form a useful browser. But it's a really hard problem to decide what makes a useful browser because everybody out there uses like a slightly different set of websites every day. You know,
Starting point is 01:07:55 I'm sure that we all check a couple of ones that we all have in common, right? But then, you know, one of us goes to aese basket weaving forum that nobody else goes to and then that's that has to work for that one person and for the alpha we are focusing on the things we have in common i'll say that but it is probably the case that our own developers will just naturally test with their own favorite websites so a lot of random things will be in there as well in terms of performance that's probably the area where we are going to do the worst what we are primarily focused on at the moment is compatibility we want to be compatible with a large number of websites and use cases right where you can do your daily tasks and if we we are slow at that, but it works,
Starting point is 01:08:47 we're gonna probably still go ahead. Because compatibility right now is the name of the game. There are just so many features that we have to figure out how to implement. Getting them to go fast is not going to be terribly complicated once we have everything in place. It used to be my main responsibility when I worked on Safari for six years was make it go fast. And I know most of the tricks that you do to make a browser go fast, and we haven't done any of them yet. So that's just a task for the future.
Starting point is 01:09:23 So compatibility and stability. And then there's also an issue that I know is sensitive for a lot of people, which is automatic crash reports or telemetry, which is something that we want to be extremely careful with because not everybody wants to have their browser send usage statistics and whatnot to other people over the internet so it's something that we're going to be taking very seriously and not not mislead anybody about a browser our browser like being completely private if if it does indeed send some kind of usage statistics that's one of the main things i've heard from people about that they're worried about, that the browser would phone home. I think that's, yeah, it's a sensitive issue for a lot of people.
Starting point is 01:10:11 And I know from working at Apple that telemetry can be tremendously useful because Apple gathers a lot of telemetry about how Safari is used. And then that is used then to prioritize work and learn about which websites might not be working right, and then that is used then to like prioritize work and learn about which websites might not be working right, things like that. But they have the advantage of scale, which we don't have. So they can do this thing called differential privacy, where they sort of use the sheer number of users to anonymize using statistics. And then Apple actually never learns which websites you looked at, and they're still able to, to gather actionable data. We're not going to have that. But I think that we will be able to find something and then we will be honest about how that works and give
Starting point is 01:10:58 people the option to enable it or not. Well, friends, I'm here in the breaks with one of my new friends over at 1Password, Martin Shosh, software developer at 1Password on the SDK team. 1Password now has SDKs as well as their CLI that allows you to build secrets management integrations using Go, JavaScript, or Python, and they're available right now. So Martin, how can developers use
Starting point is 01:11:31 these SDKs today? Give me some examples. Yeah, so the CLI was built more for managing your one password account and accessing it from the terminal and writing various scripts for local automations. But the SDKs really go a step beyond that, where you can build these automations into other pieces of software. You can run them in cloud functions. You can build them into your natively running desktop apps, which now are also able to leverage functionality such as loading data from 1Password, rotating secrets in 1Password, creating new items, and more. Yeah, so in addition to this awesome new functionality you're going to give developers
Starting point is 01:12:11 to leverage 1Password in such unique ways, I think it's also worth noting how you built these SDKs. You have a core Rust library that generates these various SDKs. What's the backstory? When we started the SDK project, one of our goals was to really build the SDKs in a scalable way where a relatively small team can maintain multiple SDKs at the same time. And we can add support for more languages and also add more functionality to them as time goes on. To achieve that level of scalability, we designed the SDKs in a way that they all leverage a shared Rust library that's written once and it has all the features of all the SDKs inside of it. Now to make this library accessible in each language, we generated a wrapper for that library in each of the
Starting point is 01:13:06 supported languages. This wrapper code is automatically generated. So this gives us even more speed agility when adding new features to the SDKs because we just add the feature to the SDK core library and each of the SDKs automatically gets updated to expose the new functionality in all of the languages. That's so cool. Okay. The next step is to go to 1password.com slash changelogpod. They've given our listeners an exclusive extended free trial to all the developers out there to use 1password for 28 days.
Starting point is 01:13:39 That's not 14 days, but 28 days. They doubled it. Make sure you go to 1password.com slash changelogpod to get that exclusive signup bonus or head to developer.1password.com to learn about 1Password's new SDKs available right now. Their amazing developer tooling, their CLI, their SSH and Git integrations, their CICD integrations, and so much more. Again, 1password.com slash changelogpod or developer.1password.com to learn more. Are either of you guys a fan of the movie Click from Adam Sandler? I haven't seen it.
Starting point is 01:14:27 Chris, I know you're a fan. I've seen it no never seen it what no way i've seen it but i don't like it no i haven't seen it either i do know that it's the one where he can change the channel and it changes his world instead of the tv right this is a left field type of way to open it up, but it does land, I promise. Okay. So I'll paint a plot picture for you. Okay. Just briefly to set up the question. So Adam Sandler's character, Michael Newman, he goes into this store. Christopher Walken is the opposing character that shows him this magical universal remote that allows him to control time.
Starting point is 01:15:03 And he essentially gets to fast forward through things, whether they're bad or good. And the question really is, if you had this click remote, and you can fast forward past this daunting next few years, or the hard parts to the five-year mark of Lady Bird being out there, and it's almost a magic wand, And you can wave this magic wand. What would the browser world look like with Lady Bird being available, polished, amazing, all the things, whatever your dreams might be? And why would people choose or care that Lady Bird exists?
Starting point is 01:15:38 So my hope is that we can make something that some people just love to use. It doesn't have to be the best browser or the fastest or the fanciest or any of those things. We don't have to beat Google and Firefox, but it will be something that some people just gravitate towards because they like that indie spirit of it. They like that it's independent. They like that it's user first, let's say,
Starting point is 01:16:06 truly user first. And they just vibe with our mission. And I would love it if the browser is almost like a generic thing that just it's just a browser. You don't even necessarily know that it's Lady Bird that you're using. Like I think at least one of my parents refers to the browser as the internet, not by its name. And I think that's pretty cool. If somebody would refer to Lady Bird as the internet, kind of like how you buy a hammer and you probably don't know what brand of hammer it is. If we can make a browser that allows somebody to access the web without even caring what the browser is, then I would If we can make a browser that allows somebody to access the web without even caring what the browser is, then I would say we've done a good thing. And one thing that
Starting point is 01:16:51 happened with Firefox when that came out was that tech people got super excited about it. And I was one of them. Chris was one of them. He even paid to be in the newspaper promoting it. I was so excited about Firefox 1.0 that i told everyone in my family that we're going to use firefox now yeah that's right same yeah and i would love it if we can do something similar with ladybird where something that tech people get excited about because they understand what we're about they understand the mission they understand the value of an independent totally totally independent browser. There's like independent implementation that doesn't have any loyalties to the advertising industry and all of this good stuff. And then they can go and tell
Starting point is 01:17:33 their families, Hey, we're, we're a Ladybird family now. And then, you know, all those family members will go on the internet with Ladybird. Uh, that's, that's what I would like to achieve. Uh, Chris, how about you? I'm most looking forward to the blockchain integration and the AI powered features, I think. That's what I'm looking forward to. Right, you forgot to talk about those. Yeah, no, it's going to be a huge part of it. And then the in-browser monetization scheme. Look, I'm not a browser power user. I just use the browser that seems the fastest and the most
Starting point is 01:18:04 stable on my machine. I don't have a ton of plugins. The only plugin I swear by is the one that prevents websites from disabling paste because I have to use a lot of like bank and HR software websites, and they always try to make you type in numbers by hand and it drives me nuts. I hate those things. My gosh. So for me, if it's lightweight, if it's stable, if it's fast, I'm switching to it immediately. And I just haven't really found that in a browser today. And I think the privacy concerns are real. I think they're getting worse. And so if I can use a browser where I trust the code and what the vendor is doing with my information, that's really appealing to me. But personally, like my needs,
Starting point is 01:18:41 my needs are very simple. And it would be very easy for me to switch from what I'm using today to something new. What's your daily driver right now? The internet. Actually, let me are very simple, and it would be very easy for me to switch from what I'm using today to something new. What's your daily driver right now? The internet. Actually, let me check. Yeah, I just use Chrome. Surprising. That is a good base, really. Just a browser that works, that cares about your privacy, that is independent, that has this nonprofit aspect to it. And I think the nonprofit aspect means that you don't have, you know, ties like you had said to the advertising world
Starting point is 01:19:10 or these loyalties that are in basically every other browser world. I think being called the internet is kind of cool. You know, I think we all got behind GetFirefox when it was GetFirefox.com. I think that was the domain for Firefox for the longest time, right? That's pretty cool. I think that's really admirable. There's things I think people care about too beyond that.
Starting point is 01:19:33 Like I'm a Pilehole fan, a network level DNS blocker. I think there's new services out that you can tap into that we have a Slack community. There's like 7,000 people on our main channel. There's always conversations about home labbing and TV shows and sci-fi books and coding, obviously. But one thing that was mentioned there was like different DNS privacy services. Is there room in this world or care in this world for Lady Bird to kind of at
Starting point is 01:20:02 the browser level, maybe not like local DNS level, but like browser level, like to protect people's privacy? Because I feel like every browser out there somehow violates this, this privacy. I think there's room for a lot of interesting privacy features. And it's certainly an area where we want to innovate. But at the moment, we don't exactly know what that picture looks like
Starting point is 01:20:23 because we were so caught up in just the compatibility with random websites. So we haven't like we haven't really differentiated in any interesting technical way yet. But I specifically to your question about like DNS privacy, that to me feels like something almost like extensions could provide as long as you give extensions a way to provide that. And I don't know exactly how that would work technically, but we can we can extensions a way to provide that and i don't know exactly how that would work technically but we can we can find a way to make that work i suppose less like how can you do it but more like is it is that part of your motivation too because like the if it is in quotes the internet then people go they're expecting it to be the internet and you've got tech users who will get Firefox installed on their random friend's computer or mother's or whomever's computer because, hey, it's got tabs and it's better,
Starting point is 01:21:10 which is what we said 15 years ago or more when we were all excited about Firefox. If you want that same thing to be transplanted or a version of it, then those people may gravitate towards it if it inherently has privacy-related features like that that protect people from when they use in quotes the internet, they're always protected. Is that a motivation, I suppose, more than just can you implement it? I would say I'm keen on the idea, as long as that doesn't mean that we suddenly get all that information. I want to make sure that we don't become a middleman in any kind of privacy
Starting point is 01:21:46 scheme because I feel like that's not a responsibility that we should have, nor should anybody else. But if there's some sort of decentralized scheme that allows private access to DNS or private access to whatever you need through your browser, I would say that's very interesting for us. It's almost like a built in mesh net. I mean, I have no idea how this works. So I'm literally just throwing buzzwords out. So forgive me. But it's almost like you have this inherent mesh net behind it, almost like tail scale, but it's always pointing at DNS that's safe. And if that DNS, if the logs go to dev null, then hey, you're protected, right? Like to some degree, you could just point,
Starting point is 01:22:25 if you're using this browser, we're pointing you to this DNS. You can opt out of it if you want, and you can go into the settings. But by default, this is how we do it. And it's maybe a feature where you promote that, and you say, this is who we are, and this is what we do. And the logs just go to dev null. But you've got safe DNS that doesn't log you. That's just built into, in quotes, the internet.
Starting point is 01:22:45 Defaults are tricky. Well, features are defaults though, aren't they? Right, but what I'm thinking here is maybe the right thing to do is just offer the user a choice on first startup. We explain as non-techie friendly as we can, please choose your way of accessing DNS. Would you like your things to go via this trusted thing that will throw away all of your requests?
Starting point is 01:23:10 Or would you like to use your home network's default setup or whatever? I'm very wary of choosing anything for the user. I think that's sort of where the browser industry went wrong in many ways, that they discovered that they could monetize certain defaults. And it's a billion dollar industry where people sell browser defaults. And actually just in the last couple of days, it was determined to be an illegal billion dollar industry, but that is a whole other story.
Starting point is 01:23:39 Yeah. So, yeah, I'm a little bit scared of that. And we are trying to be very cautious with, uh, defaults and not, um, promoting any kind of service over any other. I will say though, like right now, you know, a lot of the emphasis and thinking is around the alpha and getting out a browser.
Starting point is 01:23:58 There's a world where when this is released, we are thinking about marketing and we're thinking about positioning and we're thinking about maybe not what the default features are, but like, what's the mode you turn on? Or what's the premier extension? You know, a lot of times, an extension is almost like a killer app, a reason to switch to something. And for me, the privacy stuff is super important. I think it's only going to get worse in the sort of LLM world that we're in right now, and the tracking. And so I think people are going to gravitate towards whatever keeps them private. And selfishly, that's what I want. I'm happy in terms of ads and stuff like that. I pay for YouTube premium. I might be one of the only people
Starting point is 01:24:35 on the planet. I pay for Apple Music. I'm happy to pay to turn off ads. But the general searching of the web and the tracking and the fingerprinting and things like that, it's just awful. So if we can offer a private mode or something different than incognito mode that you could opt into. Apple recently did this with the private relay, where you do want to turn this on. We're going to run all your traffic through our servers and anonymize it and that sort of thing. What you're going to get is a little bit slower browsing experience. I think that in the future, that's definitely a conversation we can have about what to offer, what sort of packages that there are, what sort of extensions we promote, and how we distinguish ourselves in the market towards regular consumers. And like, for me, I'm definitely going to push to at least have privacy extensions developed and like made
Starting point is 01:25:21 premium and kept up to date, because that's what I want. That's why I asked that, because I asked you about the click remote and the, you know, this perfect world, this future five year, I'm assuming five years, like some version of, you know, iterating towards a perfection world where you've got a browser with features that you are marketing, you have a message, you've got features. And like you mentioned, Premiere premium extensions that you want to have, not so much as defaults, but they are promoted as like,
Starting point is 01:25:48 this is what we think is the best to use. Obviously, choose your own, but this is what we like. Or we've developed it native in-house and this is opt-in, as an extension always is, but it's this world where you care. Because if you're this nonprofit
Starting point is 01:26:04 that is independent, that is untethered, unloyal to the privacy tracking, fingerprinting folks, then you have the option and the possibility of being the default simply because people want privacy and they don't want to be quote private. They want to literally be private and have their privacy. And I think there's a lot of quoted privacy out there. I think Apple's main brand really is around privacy, but there's a lot
Starting point is 01:26:28 of things they do as well that doesn't always lead to privacy. And it's the nature of the beast when you're that big, really. And you have different motivations financially or product-wise. It's just how it works. Absolutely. And one of the awesome things about Lady Bird is Andreas is a great leader and has a vision and can make hard decisions. But he also really listens to the people, the contributors, the people that are building it and the community that he, you know, he said he's frustrated that he gets all the limelight. Well, they're not only building it, you know, they're giving advice and opinion and he's
Starting point is 01:27:00 taking that into consideration. And so what this is going to look like post-al alpha in five years, we can't know because it's going to be shaped by people who haven't even sent their first PR yet. And so really a lot of it's going to be like, what do the people building this care about? And that's where we're going to shine the light. And I think that's an awesome thing. And it means like, it's a good thing for the future when the people building it, the people most invested are the ones shaping it. Yeah. Which I think right now is a great time to be talking about it to our listeners specifically, because we are the people who can help shape Lady Bird for the future.
Starting point is 01:27:34 Whereas if you were talking to a more mainstream, like go, you can't say go download it today and give it a try. Obviously two years from now, five years from now, you go on other shows and you maybe have marketing pushes towards the mainstream audience who can just use the browser. But right now, what you all want and what we all want are awesome builders to help Andreas build this thing. Yeah. Next Wednesday, we're going to tap a ton of developers around the globe with this sentiment. Don't let us down, y'all.
Starting point is 01:28:01 Get involved. Andreas, where do we send them? Where do we send them to try it, to talk to you, et cetera? Right. I guess come to ladybird.org and read more about it. And really, if you are a developer, you can go straight to github.com slash ladybird browser. That's where you'll find us. And as Chris is saying, we are a project where everybody has a voice and there is room for
Starting point is 01:28:27 all kinds of developers. We're welcoming new people every day. It is dizzying sometimes. I go look at our Discord server and it has 50 new people since yesterday. And people are just really excited to be working on this. And you could be one of them. If you've never worked on a browser, that's fine. This will be your first browser that you worked on. And with regards to your click remote, I will say that I would never press that button because we are currently
Starting point is 01:28:55 living in the good old days and I wouldn't trade that for anything. Well said. Yeah. So the guy who loves the toil. That's right. I will say that when we were starting GitHub, we were using Braintree. And so now we're in the world of Stripe. I bet someone could have started a new online business during this podcast. But we had to give them a bunch of our business information.
Starting point is 01:29:19 We had to apply in order to accept credit cards. And we launched into beta in January of 2008. And the site was basically ready in March to go live. And for us, that meant charging money. But we weren't approved by Braintree. And we didn't get approved until April, which is why we launched on April 10th. And that gave us some time to do some polish.
Starting point is 01:29:39 And we had three new features that came out, the network graph, commit comments, and services. But we did those because we had time. But the point of the story is from March until April, I wanted that damn clicker every day. I just wanted to fast forward to the launch and go into cryo sleep and be like, is this thing going to work? Have I wasted the past six months or is this going to be what I think it's going to be? Now is the only real time in my life I just wanted to go to sleep and wake up like a month and a half later there you go well you survived it you lived those 45 days and somehow it all worked out anyways and you got
Starting point is 01:30:15 three new features out of it yeah commit comments which um i don't know if people remember the ogs will but before pull requests because pull requests weren't there at the beginning um in the form we know them today, the only way you could do code review on GitHub is you could go to a commit, and then you could comment on a specific line, which was groundbreaking. It was groundbreaking at the time. No one had done it that way, and
Starting point is 01:30:36 I came up with the idea because the Django book, the Django documentation was online, and they let you leave comments on each paragraph. And so I was like, wouldn't that be amazing for a commit to be able to do that on lines of code? So we did that and then that evolved into pull requests. So now you can still do that on pull requests today. But that was, I guess the lesson there is just steal everything. Like in some ways that was an original idea, but many ways
Starting point is 01:31:00 that was not an original idea. There you go. Well, probably somebody else thought of it before the Django folks. They took it from someone else. You took it from them. That's just how the world goes around. Absolutely. That's right. Steal everything. You're in here first.
Starting point is 01:31:14 And I suppose that those are trying to sponsor or donate the same call to action. Ladybird.org. Find a button to donate. Find a button to sponsor. You're keeping all these sponsors unrestricted. They don't get board seats. You can Find a button to donate. Find a button to sponsor. You're keeping all these sponsors unrestricted. They don't get board seats. You can't buy a board seat. There's no direction that you can purchase. You can simply support and be promoted as someone who cares about supporting Ladybird. That's the whole purpose of a sponsorship is not buying a board
Starting point is 01:31:40 seat or getting power and having the clicker. No, your money goes directly to caffeine that goes into a programmer that produces code. That is exactly where the money is going right now. Okay. There you go. All said. What's left unsaid? Anything else left before we call this Lady Bird show a done show?
Starting point is 01:32:02 If you are interested in building video games now or in the future, or if you've tried it before and like many of us have realized it is not as fun as building websites or building browsers or building servers, go to void.dev. That's the website. Put your email in and I will email you either later this year or early next year with something that I think you'll enjoy. A shameless teaser style promotion.
Starting point is 01:32:27 Those are the best kind. Love it. Void Out of Dev, we'll throw that in the show notes as well. Andres, anything from you before we call it a day? I will take this opportunity to promote my wife's music. Okay. She is Katalin Kult on YouTube and Twitter, Spotify, all of these places.
Starting point is 01:32:45 And she makes ambient music in the room next to me. And I'm living in this relaxing, chilling soundscape all day, every day. And it's very, very nice. There you go. Programming music being made live next to me. And now you can listen to it too. Can you send us a soundbite and we can play it as the outro absolutely this is adam here in post stay tuned after the plus plus teaser for cozy lo-fi
Starting point is 01:33:15 from andreas's wife the track is called ghost whiskers i have one more i don't know if people know this you probably covered it last time but andreas also has a youtube channel and i think this is one of the things that makes him a good community leader, a good open source leader is he's not just in the in the comments in the issues. You can hear his thoughts, you can watch him program, you know, you can watch him do the most boring thing sometimes when I've watched so much of him converting, adding JIT to the lib JS, and just like emitting assembly with the C++ API. And it's really cool. It's really awesome to watch. I don't think you do anymore, but he used to have this commuting car series where he would be in his car and just share thoughts, answer questions. And so for me, coming from the world of blogs and everything being texted on Twitter, and then you saw people at a conference, it's really awesome now to see programmers talking and over video and watch them code, but also hear their thoughts.
Starting point is 01:34:08 And it's definitely one of the things that drew me to the Serenity Project was getting to get the context around it and hear the way he was thinking about it. So check out his YouTube channel. Thanks, Chris. That's interesting to share. Definitely had the YouTube link pulled up. It's Awesome Kling on YouTube. So same as anywhere else. Awesome Kling. We'll link it up it's Awesome Kling on YouTube so same as
Starting point is 01:34:25 anywhere else Awesome Kling we'll link it up in the show notes for sure alright guys thank you so much this has been a blast
Starting point is 01:34:31 we are very excited and we're counting the days give me that clicker I'd skip I'd skip ahead and see what Lady Bird looks like
Starting point is 01:34:40 in 26 come right back I don't want to steal that from Andreas I want to let him have his moment but we appreciate you guys coming on and what you're working on. Yeah. Thanks guys. Thanks indeed. Thank you. Yeah. We'll see you in two years. I guess so.
Starting point is 01:34:58 Mark your calendars two years from now, summer of 2026, Lady Bird will be in alpha and the world will officially have a new browser that is for the people. I'm excited about that. If you haven't been there yet, go to ladybird.org, the truly independent web browser. Get involved or support it. And for our plus plus subscribers, there is a bonus for you. If you're not a plus plus subscriber, go to changelog.com slash plus plus. It's better. It's so better.
Starting point is 01:35:28 Directly support us. Drop the ads. Get bonus content. A free sticker pack sent to your inbox. Your mailing inbox, that is. What more could you want? changelog.com slash plus plus. Later this week on Change Logging Friends,
Starting point is 01:35:44 Jared and I go back into the rabbit hole, the deep rabbit hole of Winamp, Webamp, and the work Jordan Eldridge has done with this project is just astounding. You're going to love it. And a big thank you to our friends and sponsors at Sentry. Use the code CHANGELOG to get $100 off the team plan. Our friends over at Paragon. Use Paragon.com. Ship every SaaS integrations your users need.
Starting point is 01:36:10 And to our friends over at 1Password. 1Password.com slash changelopod. And of course, to our partners, our friends over at Fly.io, the home of changelog.com. Global anycast load balancing, zero configuration private networking, hardware isolation, instant wireguard VPN connections, push button deployments, scale to thousands of instances. We love Fly and you will too. Learn more, fly.io. And to the beat freak in residence, Breakmaster Zylinder bringing those beats.
Starting point is 01:36:42 We love them. That's it. The show's done. We'll see you on Friday. GitHub.com land on a repo page, right? Uh, P jacks, uh, probably beloved by you to this day, right? Pjax, was that your creation? I believe it was.
Starting point is 01:37:13 That was me. That was you. So this is the way that you can navigate pages without actually reloading the full page. DHH and Rails ended up pulling it off as Turbolinks. The concept, obviously, I don't know if they took the code or not, but this was how GitHub worked for a very long time. You would click on a file in the repo,
Starting point is 01:37:31 and it would slide in from the side, and it would not reload the page. And it was like pseudo single-page app, but it was not a single-page app. It was like a multi-page app, is what they're calling them nowadays. We just called it a website back then. But now they're called MPAs.
Starting point is 01:37:46 Recently, they're rewriting. I don't know if you've noticed or if you pay attention, but they're rewriting the front end and React. They're changing the way things work. And I'm just wondering if you have feelings about that. I think that it's kind of sucky right now. Like it's buggy and I don't know if the PJAX stuff is gone gone or just feels like it's gone because I haven't i don't know if the pjack stuff is gone gone or just feels like
Starting point is 01:38:05 it's gone because i haven't paid that close attention or inspected elements or anything but i do know that the react rewrite is underway and i do myself feel like it's got some issues but i wonder if you're if you pay attention to those details now as just a user or if you try to ignore that kind of stuff your thoughts so like if we were at a conference i would repeat the question so the question is do i think github sucks now no that's not the question specifically the part of the front end innovation of mine that they rewrote um i will say this. Thank you. Terima kasih telah menonton! Thank you. Terima kasih telah menonton! Thank you. Thank you.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.