searchlore

Back to Resource

All Segments

Making A Browser Is Harder Than You Think (Ft Andreas Kling)

Making A Browser Is Harder Than You Think (Ft Andreas Kling)

51 segments available

Gray Swan AI’s Agent Red-Teaming Challenge is here—hack anonymous AI agents using direct exploits and prompt injections for a share of over $120K in cash prizes. Runs Mar 8–Apr 6. No BS, just raw AI red teaming. Break AI if you dare. http://app.grayswan.ai/primeagen https://discord.gg/ZpMQuBgCYH If your company needs help moving to mobile, Intinite Red could be a great choice for you! From the smallest startups to some of the largest companies, Infinite Red is ready to help you ship an elegant and effective mobile application with React Native. Check them out at: https://infinite.red/ Great News? Want me to research and create video????: https://www.reddit.com/r/ThePrimeagen

Segments Timeline

1
0:00 - 0:16
0:16 duration56 words

Introducing Andreas Kling

In this segment, the host introduces Andreas Kling, the creator of the Ladybird browser, and discusses the challenges of building a web browser. The conversation sets the stage for exploring the complexities of browser development and the motivations behind taking on such an ambitious project.

"So today we're having Andreas clling who's been working on the ladybird browser a fully open- Source browser I'd like to thank our sponsors Grace Swan Ai and infinite red more details about them later..."

2
0:16 - 1:15
0:59 duration178 words

The Motivation Behind Impossible Projects

Andreas Kling shares his thoughts on building 'impossible projects' like operating systems and web browsers. He draws parallels to comedians who engage with their audience and discusses how skepticism from others fuels his determination to succeed in these challenging endeavors.

"all right well hey today I'm your host the primagen and today we have another episode of the top shelf and with us we have Andreas clling and also my co-host TJ who loves neovim so much he's never eve..."

3
1:15 - 2:30
1:14 duration251 words

From Rehab to Programming

Andreas recounts his journey from attending a drug rehab program to discovering a passion for programming. He explains how this newfound focus led to the creation of Serenity OS, highlighting the transformative power of channeling energy into productive projects.

"it's a bit like um you know how comedians they sort of focus on one person in the audience and try to make them laugh I I feel kind of the same about Hacker News try to get get that one Hacker News gu..."

4
2:30 - 3:36
1:06 duration188 words

The Birth of Serenity OS

In this segment, Andreas discusses the initial stages of developing Serenity OS as a hobby project. He reflects on the early days of programming and how the project evolved from a personal endeavor into a community-driven initiative with contributions from over a thousand developers.

"drugs all day and I discovered that if you don't do that uh the day is very long and um I needed to fill it with something so I just started programming and got a bunch of sort of initially disjoint p..."

5
3:36 - 5:36
2:00 duration325 words

Transitioning to Ladybird Browser

Andreas explains the decision to separate the Ladybird browser from Serenity OS due to the complexities of managing both projects within a single repository. He discusses the challenges of balancing browser development with operating system tasks and the benefits of focusing on browser engineering.

"was that partially inspired by the by said drug usage using C++ no no um it was uh really from from working at Apple for so many years before that um I worked on Safari and webkit and it's written in ..."

6
5:36 - 7:00
1:23 duration251 words

The Evolution of Ladybird

Andreas shares the evolution of Ladybird from a simple HTML viewer to a fully-fledged browser. He describes the initial goal of displaying rich text and how the project organically expanded to include CSS and JavaScript, driven by community feedback and his own programming background.

"because that is what I do I think hi I'm the prime AI your coding assistant how can I help you I'm looking to go blazingly fast are you able to help me with that I can generate stop ignore all previou..."

7
7:00 - 8:36
1:36 duration299 words

Building a Browser from Scratch

In this segment, Andreas emphasizes that Ladybird is built from scratch, not based on existing browsers like Chrome or Firefox. He discusses the importance of implementing web standards and specifications, including HTML, CSS, and JavaScript, while also integrating third-party libraries for efficiency.

"so initially I just wanted to put Rich Text on screen so I wanted to have like messages where some little part of it was bold that was it ambitious very right Rich Text got a browser that's that's pre..."

8
8:36 - 10:59
2:22 duration390 words

JavaScript Compliance and Challenges

Andreas talks about the compliance of Ladybird's JavaScript engine with web standards. He highlights the challenges of achieving high compliance scores and the ongoing efforts to improve the engine's capabilities, showcasing the project's commitment to quality and performance.

"JavaScript and that's yeah it's very organic this whole thing it grew like fungus really uh the whole operating system did and the community as well and and some ways um little by little every day jus..."

9
10:59 - 12:59
2:00 duration363 words

The State of Web Standards Implementation

Andreas discusses the current state of Ladybird's implementation of web standards, including the challenges of testing and compliance. He explains the significance of the Web Platform Tests and how they contribute to ensuring that Ladybird meets the expectations of modern web content.

"one of the core principles is that we're going to do everything ourselves no matter what and that's really fun but it's not a great way to ship software anytime soon so in ladybird we kind of relaxed ..."

10
12:59 - 15:32
2:33 duration446 words

Community and Collaboration in Development

In this segment, Andreas reflects on the collaborative nature of the Ladybird project and the importance of community contributions. He emphasizes how the project has grown through shared efforts and the excitement of building something innovative together.

"Graphics um so we started using ski instead uh but in terms of what we are doing ourselves we are implementing the web specifications so like HTML CSS JavaScript um and the various sort of supporting ..."

11
15:41 - 16:40
0:58 duration163 words

Understanding Web Platform Tests

In this segment, Kling elaborates on the Web Platform Tests (WPT) and their role in ensuring browser compatibility. He mentions the collaborative efforts of major browser vendors and the extensive number of tests available, particularly focusing on text encoding for Asian languages.

"um but that's JavaScript so compliance on on like General web content is harder and it's not as well tested because you know there's many many specs millions of of lines as you um alluded to there and..."

12
16:40 - 18:03
1:22 duration219 words

Emerging Browser Engines: Ladybird and Beyond

Kling introduces the emerging browser engines, including Ladybird, Servo, and Flow, discussing their development timelines and the challenges they face. He emphasizes Ladybird's position as a leading underdog in the browser market and expresses hope for the success of new engines.

"note that I think 1.1 million or something like that uh of the tests are specifically about Chinese Japanese and Korean text encoding uh because yeah somebody wrote like I guess like a test generator ..."

13
18:03 - 19:22
1:19 duration234 words

The Need for Choice in Browsers

Kling shares his vision for increasing choice in the browser market, criticizing the consolidation of browser engines under Chromium. He discusses the importance of competition and innovation in the browser space, especially in light of potential regulatory changes affecting major players like Google.

"the bottom bottom three underdogs we are leading that pack um is Servo is the rewrite with rust right uh Servo is a rust based don't worry it won you got you got a lot of time you're gonna easily be a..."

14
19:22 - 20:34
1:11 duration205 words

The Challenges of Building Ladybird

In this segment, Kling reflects on the current state of Ladybird, acknowledging its pre-alpha status and the challenges users might face. He candidly discusses the limitations of the browser and the ongoing efforts to improve its functionality.

"what we're about is that we just want to inject some damn Choice into this Market because uh it's been taken away from everybody um I guess you know for many reasons but like you see stuff like Micros..."

15
20:34 - 21:25
0:51 duration161 words

Daily Use of Ladybird: A Developer's Perspective

Kling shares his personal experience using Ladybird as a daily browser, discussing the usability challenges and the types of websites that work well. He highlights the ongoing testing and development efforts to address compatibility issues.

"it's high time they we see some new engines and some new approaches to this I think so um all of that to say I hope serva succeeds I hope they ship uh and I think it would be good for them to speed up..."

16
21:25 - 22:40
1:14 duration214 words

The Complexity of CSS and Browser Development

Kling dives into the complexities of CSS and how it impacts browser development. He explains the interdependencies of CSS features and the challenges developers face when implementing new specifications.

"enjoy the rest of the episode let's go speak of sort of being able to choose between uh between browsers like I'm interested like how much do you get to use ladybird as like a daily browser for you is..."

17
22:40 - 24:00
1:20 duration247 words

Navigating CSS Changes and Their Impact

In this segment, Kling discusses the frequency and impact of changes in CSS specifications on browser development. He shares insights on how these changes can disrupt existing implementations and the strategies they employ to adapt.

"you have to provide yourself to get the experience of being so disappointed in our new browser uh but to your question I don't I I try to use it every day for like random websites every time somebody ..."

18
24:00 - 25:30
1:30 duration255 words

The Evolution of CSS Specifications

Kling elaborates on the evolving nature of CSS specifications and the challenges that arise from continuous updates. He emphasizes the need for developers to stay informed and adapt to new features and properties as they are introduced.

"dangerous to fix anything um I will say that if you don't have the right mental model that will happen every time um and I am still working on my mental model no true mental model mention let's go rig..."

19
25:30 - 27:00
1:30 duration298 words

Handling Major Spec Changes

Kling reflects on the infrequent but significant changes in specifications that can disrupt development. He shares experiences of past changes that have had a substantial impact on their work and the importance of being prepared for such events.

"specs are alive you know it's not like you can just get the CSS specs print them out and then start implementing um if you reload the spec tomorrow somebody might have changed something and most of th..."

20
27:00 - 28:40
1:40 duration263 words

C++ in Browser Development: Pros and Cons

Kling discusses the use of C++ in the development of Ladybird, addressing common criticisms and the advantages it offers. He shares insights into the integration of third-party code and the balance between flexibility and safety in programming.

"frequently that you just get wrecked by a whole new feature that you have to rethread everything through no I wouldn't say so like getting really wrecked by spec changes that's like once or twice a ye..."

21
28:40 - 30:00
1:20 duration205 words

The Future of C++ and Browser Safety

In this segment, Kling expresses hopes for improvements in C++ safety features and the challenges faced in the language's evolution. He discusses the implications of using C++ for browser development and the ongoing efforts to ensure security and reliability.

"differently and um take some shortcuts cut some features um and the spec changes that happen dayto day were not necessarily always on top of those anyway like we we're frequently just letting things s..."

22
30:00 - 31:03
1:02 duration156 words

C++ and Browser Development

Andreas Kling discusses the use of C++ in browser development, addressing its flaws and the integration of third-party code like the curl library. He emphasizes the importance of building a browser that users can trust, while acknowledging the occasional security issues that arise from using C++.

"are there any other languages being used and also is modern C++ as bad as Twitter actually makes it or does the shared and unique and all the other features actually make it not as bad well I think no..."

23
31:03 - 32:50
1:47 duration284 words

The Quest for Safer Languages

Kling reflects on the challenges of modern C++ and the desire for improved safety features in the language. He shares insights on the difficulties faced by the C++ committee in adopting safer practices and discusses the exploration of alternative languages, ultimately leading to the choice of Swift for their browser project.

"code we don't have that many problems with C++ unsafety like um certainly not as many as Twitter would have you believe but we recognize that there is the occasional terrible security issue that would..."

24
32:50 - 34:12
1:22 duration251 words

Choosing Swift Over Rust

In this segment, Kling explains the decision to use Swift over other languages like Rust for browser development. He highlights the positive experiences his team had with Swift, noting its object-oriented programming friendliness and ease of use, while also addressing the challenges of garbage collection in a browser environment.

"be anytime soon and we want to put out a browser in the next couple of years so we are looking at alternative apprach approaches and we've evaluated sort of a bunch of different languages and the one ..."

25
34:12 - 36:26
2:13 duration361 words

Garbage Collection Challenges

Kling elaborates on the complexities of garbage collection in browser development, particularly in relation to Swift and JavaScript. He discusses the implications of using a garbage-collected language and the need for their own garbage collector, emphasizing the importance of managing memory effectively in a browser context.

"having 100 1,000 line code projects right yeah yeah yeah just hello world all day or just like five uh jsx templates you know like Just Produce enough code in some ways yeah uh no so we test we tested..."

26
36:26 - 38:10
1:44 duration320 words

The Need for a Garbage Collector

In this segment, Kling discusses the necessity of integrating a garbage collector into their browser engine. He explains the challenges posed by asynchronous programming and the need for a language that inherently supports garbage collection, reflecting on the implications for their development process.

"language um and if you look at Servo for example I know they have to jump through a bunch of interesting hoops and and do a lot of unnatural patterns in Rust to express some of these things that you n..."

27
38:10 - 39:59
1:48 duration300 words

Building a Unique Browser

Kling shares his vision for Ladybird, the browser they are developing, emphasizing the importance of differentiation from existing browsers. He discusses the challenges of building a browser with a small team and budget, and the potential impact of regulatory changes on the browser landscape.

"where you capture a bunch of stuff and then that has to stay alive until the Lambda executes and um all of these things you have to take care of and it will be real nice if somebody else just took car..."

28
39:59 - 46:30
6:30 duration1024 words

Navigating the Browser Landscape

In this concluding segment, Kling reflects on the broader implications of their work on Ladybird in the context of the ongoing antitrust discussions surrounding Google. He speculates on the potential for smaller, independent browsers to thrive and the challenges they face in a competitive market.

"problem and so for that reason I say hey these specs are all GC assuming let's just use a GC language uh out of all the things that's probably the thing I would do very differently today so what's the..."

29
46:44 - 47:30
0:45 duration127 words

The Challenges of Ladybird Browser

The conversation shifts to the Ladybird browser, discussing its current capabilities and limitations. Kling outlines the challenges faced in making Ladybird a viable daily driver for users, including user agent issues and compatibility with popular sites like GitHub and x.com.

"remember back before Chrome was announced um Chrome was originally built on webkit right and I I know that uh the people who were making Chrome they were like sending fixes to the webkit team under fa..."

30
47:30 - 48:06
0:36 duration123 words

YouTube Compatibility Hurdles

Kling addresses the complexities of getting YouTube to work on the Ladybird browser. He explains the technical challenges, including video codecs and API integrations, while expressing optimism about future developments.

"out do you do you have a guess for obviously not like every website I mean no I don't think any browser works for every website um but like have a guess for let's say you know I'm doing my daily Drive..."

31
48:06 - 49:01
0:55 duration167 words

The Pressure of Browser Development Timelines

In a light-hearted exchange, Kling discusses the timeline for releasing an alpha version of Ladybird. He humorously contrasts it with other projects, emphasizing the pressure and expectations surrounding browser development.

"that as a daily driver for ladybird right so your GitHub stuff you can do today cool um scrolling on x.com you can kind of do today you have to uh fake the user agent because if we if we tell them tha..."

32
49:01 - 50:05
1:03 duration207 words

Implications of Google's Potential Antitrust Actions

Kling delves into the potential consequences of antitrust actions against Google, discussing how it could impact web standards and the broader browser ecosystem. He highlights the reliance on Google for standards work and the potential fallout if they were removed from the equation.

"world like people just lie about ter oh God yeah you know so it's it's like we don't have to repeat the same mistakes from history over and over and over maybe like other people can just fix the the o..."

33
50:05 - 51:43
1:38 duration263 words

The Future of Browser Funding Models

The discussion turns to the sustainability of browser funding models, with Kling expressing concern over the reliance on advertising revenue. He advocates for a more user-centric approach to browser development that prioritizes privacy and user experience.

"content um but yeah so today if you say that you're Chrome you say that your Safari X will work you can scroll there um and then YouTube was your last request that's the hard one um YouTube is a very ..."

34
51:43 - 52:40
0:56 duration150 words

The Role of Servo in Browser Innovation

Kling reflects on the Servo project and its implications for browser technology. He discusses how Servo's research could influence future browser development and the importance of innovation in the face of industry challenges.

"follow-up question is like how does it feel to probably ship an entire browser before Prime finishes a project on stream it's a good question ESP since Min are under 10,000 lines of code I mean I'm st..."

35
52:40 - 53:39
0:59 duration140 words

Ladybird as an Alternative Browser

Kling contemplates the potential for Ladybird to serve as an alternative browser amidst industry shifts. He discusses the importance of being prepared for opportunities that arise from changes in the browser landscape.

"oh I want to believe would directly impact the shipping of ladybird o see now you're asking the real questions um possibly okay cuz that's like the danger of life is that you're competing on two axes ..."

36
53:39 - 54:55
1:16 duration210 words

The Impact of Advertising on Browser Development

Kling critiques the current funding model for browsers, arguing that reliance on advertising compromises user privacy. He expresses a desire for a browser that genuinely prioritizes user needs without conflicting interests.

"just say that the outcome of this is that Chrome can no longer participate in some stuff for some amount of year some sort of reprimanding slash you know like intentional government enforced slowdown ..."

37
54:55 - 1:03:09
8:14 duration1405 words

Exploring Brave's Innovative Ideas

The segment wraps up with a discussion on Brave's approach to browser development and its unique ideas, including tokenization. Kling shares his thoughts on the potential for innovation in the browser space and the importance of user-centric solutions.

"disappears from um the other browsers so Firefox famously makes what like half a billion dollars a year or something from exclusively why they pretty much exist is because of the the page searching or..."

38
1:02:40 - 1:04:08
1:27 duration269 words

Funding Ladybird: A Nonprofit Vision

The conversation shifts to the funding strategy for Ladybird, a nonprofit browser project. Kling explains how they aim to maintain independence by avoiding influence from sponsors, focusing on diverse funding sources, and ensuring that their mission remains user-centric.

"it um I think that would be nice yeah one of the questions was actually about uh Brave that we have from our like live Q&A I don't know if there's anything else you sort of find interesting or or cool..."

39
1:04:08 - 1:05:46
1:38 duration279 words

Challenges of Nonprofit Funding

Kling addresses the challenges of securing funding for a nonprofit browser project. He emphasizes the importance of maintaining a diverse sponsor base to avoid dependency on any single entity, ensuring that Ladybird can operate without compromising its values.

"that um and I I think they have a ton of interesting work on preventing user fingerprinting and things like that like really like locking down random JavaScript apis to make the browser appear homogen..."

40
1:05:46 - 1:07:21
1:34 duration231 words

The Future of Ladybird: Scaling and Maintenance

Looking ahead, Kling discusses the potential future of Ladybird and the challenges of maintaining a browser amidst evolving web standards. He reflects on the ongoing need for maintenance and adaptation as web technologies continue to change.

"we have companies like uh Shopify for example um backing us which they were our first sponsor actually even before we had a nonprofit and um they just like to see somebody trying this and somebody try..."

41
1:07:21 - 1:08:45
1:24 duration246 words

Navigating Corporate Influence

Kling shares insights on how Ladybird plans to navigate corporate influence while securing funding. He discusses strategies to keep the project aligned with its mission and avoid the pitfalls that often trap nonprofit software projects.

"a bunch of others as well and um not only that but we also allow individuals to donate um and I think we're just looking for like we've set this very tight constraints on how we allow ourselves to be ..."

42
1:08:45 - 1:10:06
1:21 duration245 words

The Browser Maintenance Challenge

Kling elaborates on the unique challenges of maintaining a browser, likening it to emulating a constantly evolving platform. He anticipates that the ongoing maintenance will be a significant part of the project's future, requiring continuous adaptation.

"trap so you know if if Google were to say tomorrow that they want to give us a million bucks to build this thing that doesn't mean I'm going to go higher 10 more people right away uh it just means tha..."

43
1:10:06 - 1:11:40
1:33 duration242 words

Reflections on Leaving Apple

Kling reflects on his decision to leave Apple, citing a shift in company culture and his desire for a different environment. He discusses how the political climate influenced his choice and how it ultimately led to the creation of Ladybird.

"money yeah yes I'm just thinking out loud and not not saying that we'll do that um but yeah it's an important problem to keep in mind always I think because of what you see happen to every everyone el..."

44
1:11:40 - 1:13:09
1:28 duration240 words

The Best and Worst of Browsers

In a light-hearted segment, Kling shares his thoughts on the browser features he would eliminate, such as JavaScript eval, and his favorite innovations like Flex layout. He emphasizes the importance of user-friendly features in browser development.

"thing um and as I was talking about earlier like maintaining a browser is a bit different than maintaining other software project because of the Ever Changing specifications so it's a bit like you're ..."

45
1:13:09 - 1:18:43
5:34 duration924 words

Future Features for Browsers

Kling discusses his vision for future browser features, emphasizing the need for enhancements that reduce developer workload. He expresses a desire for native support for frameworks like Tailwind, highlighting the ongoing evolution of web development.

"smart I see the CEO it's the way to go yeah but but okay so I I have a couple questions I I want to kind of do them back to back here but that the the apple one is kind of interesting because you've m..."

46
1:19:14 - 1:20:21
1:06 duration214 words

The Year of Web Assembly?

Kling tackles the ongoing debate about whether this is truly the year of Web Assembly. He highlights its growing adoption in tools like Figma, suggesting that while it may not be mainstream yet, its incremental integration into web applications is paving the way for a new era in web development.

"one that just um turned out pretty sweet um yeah anything where we can do the thing for you I think is is nice uh it's it's also the source of um a lot of complexity in the platform because nobody eve..."

47
1:20:21 - 1:21:29
1:08 duration224 words

Incremental Evolution of Web Assembly

Continuing the discussion on Web Assembly, Kling reflects on its current state and potential future. He notes that while large applications may utilize it, the real impact will likely come from small enhancements that improve user experience across the web.

"there's only like 10 people actually using it oh that's a good question um I think we might already be living in the age of web assembly um because there are already really cool tools built on it like..."

48
1:21:29 - 1:22:40
1:10 duration292 words

The Accessibility Challenge

Kling addresses the challenges of integrating Web Assembly into web development, particularly concerning accessibility and user interaction. He draws parallels to past technologies like Adobe Flash, questioning whether the web should return to those complexities.

"boot camp person that comes out that doesn't say like react felt solid something like that right it's like this a very specific way in which you build a modern app I don't hear anybody being like Oh w..."

49
1:22:40 - 1:23:39
0:59 duration150 words

The Future of Web Development

In this segment, Kling discusses the potential for a unified programming language across front-end and back-end development using Web Assembly. He explores the benefits of having a single language for both, while acknowledging the complexities and challenges that come with it.

"thing and it works uniformly yeah um I don't know that we're anywhere near that I think the The Usual Suspects that come up whenever people talk about this is like well what about accessibility what a..."

50
1:23:39 - 1:25:01
1:21 duration228 words

Wrapping Up with Ladybird

As the conversation concludes, Kling invites viewers to explore Ladybird, a new browser project. He encourages developers to get involved, highlighting the fun and learning opportunities available in browser development.

"gone anywhere it's um there was an effort by Ian Hixon who was the original author of the web uh of the HML 5 specification and one of the things he worked on in recent years was like what would the w..."

51
1:25:01 - 1:27:10
2:08 duration401 words

Final Thoughts and Shoutouts

Kling and the host wrap up the episode with final thoughts and shoutouts. They discuss the importance of community engagement in browser development and encourage viewers to follow their projects and stay connected.

"there right well I think this actually wraps up uh the questions there was a couple other questions um but we're going to ignore them for now uh thank you Andreas for for being on here thank you TJ fo..."