Web Browser Engineering
Web Browser Engineering, by Pavel Panchekha and Chris Harrelson, teaches readers to build a web browser using Python, covering page loading, document viewing, application running, and modern features.
Read original articleWeb Browser Engineering is a forthcoming book by Pavel Panchekha and Chris Harrelson, set to be published by Oxford University Press. The book aims to demystify the workings of web browsers by guiding readers through the process of building a basic web browser using Python. It covers essential topics such as loading web pages, viewing documents, and running applications, while also addressing modern browser functionalities. The content is divided into four main parts: the first part focuses on loading pages, including downloading web pages and rendering them on the screen; the second part discusses document viewing, including HTML parsing and CSS application; the third part covers running applications, emphasizing server communication and interactive scripts; and the final part explores modern browser features like visual effects, task scheduling, and accessibility. The authors encourage readers to pre-order the book and engage with updates through their blog and social media.
- The book explains how to build a web browser using Python.
- It covers topics from loading pages to modern browser functionalities.
- The content is structured into four main parts for clarity.
- Readers can pre-order the book and follow updates online.
- The authors invite discussions and support through various platforms.
Related
From the Transistor to the Web Browser
A GitHub course titled "From the Transistor to the Web Browser" covers topics like transistors, hardware coding, processors, compilers, operating systems, and web browsers. It explores computing evolution from basics to complexities.
From the Transistor to the Web Browser, a rough outline for a 12 week course
A GitHub course titled "From the Transistor to the Web Browser" covers topics like transistors, hardware coding, processors, compilers, operating systems, browsers, and real hardware execution. It provides a comprehensive understanding of the computer stack.
Show HN: Free e-book about WebGPU Programming
"WebGPU Unleashed" is a tutorial for beginners in graphics programming using the WebGPU API, covering foundational concepts, basic tasks, and advanced techniques like Gaussian splatting in an interactive format.
Ask HN: Struggle with project ideas? Heres some novel ideas you can build now
The author proposes innovative browser extensions and web applications to enhance user experience, including a natural language command tool and a peer-to-peer whiteboard, while inviting community collaboration and feedback.
How Chrome Accessibility Works
The document details Chrome's accessibility features, emphasizing platform-specific APIs, the automatic provision of accessibility in standard UI toolkits, and challenges with custom controls and multi-process browser adaptations.
- Readers appreciate the engaging writing and practical approach of the book, with many expressing excitement to start their own projects.
- There is a recognition of the complexity of web technologies like CSS and JavaScript, with some commenters sharing their past experiences in browser development.
- Several users express a desire for more independent browser engines and a broader ecosystem beyond the major players like Google and Mozilla.
- Some commenters suggest improvements to the book's structure and content, while others inquire about formats and promotional offers.
- Overall, there is a sense of gratitude towards the authors for their contributions to the field of browser engineering.
Layout is really hard. Just tables by themselves are hard, even without any css around them. CSS makes layout impossibly difficult. I challenge anyone to keep the whole CSS spec and its associated behaviors in their head.
At this point css + html + javascript have become a dynamic PDL, and probably is one of the most complex pieces of software today.
As an aside, video decoding is offloaded onto hardware, so it's not as battery intensive as it used to be.
I'm definitely interested in going through this book.
Apparently some of it now runs in the browser ("in the book itself") by compiling Python to JS?
This comic book about how Chrome works is also a great place to get started: https://www.google.com/googlebooks/chrome/med_00.html
Browsers seem like mysterious, undecipherable black boxes, which is very likely how G wants them to be perceived, but that is cracking by seeing the efforts/results of such projects like ladybird and others!
I hope to one day be able to jump in and contribute to break that moat! And this books looks like an amazing start!
I had an opportunity to run a tutorial on basic command line usage for newer software engineers. It's always fun to see people's expressions or read their reactions to seeing me telnet to port 25 and 80.
https://news.ycombinator.com/item?id=28898157 (409 points | Oct 19, 2021 | 63 comments)
Are web browsers, not considered to be "system software"
Related
From the Transistor to the Web Browser
A GitHub course titled "From the Transistor to the Web Browser" covers topics like transistors, hardware coding, processors, compilers, operating systems, and web browsers. It explores computing evolution from basics to complexities.
From the Transistor to the Web Browser, a rough outline for a 12 week course
A GitHub course titled "From the Transistor to the Web Browser" covers topics like transistors, hardware coding, processors, compilers, operating systems, browsers, and real hardware execution. It provides a comprehensive understanding of the computer stack.
Show HN: Free e-book about WebGPU Programming
"WebGPU Unleashed" is a tutorial for beginners in graphics programming using the WebGPU API, covering foundational concepts, basic tasks, and advanced techniques like Gaussian splatting in an interactive format.
Ask HN: Struggle with project ideas? Heres some novel ideas you can build now
The author proposes innovative browser extensions and web applications to enhance user experience, including a natural language command tool and a peer-to-peer whiteboard, while inviting community collaboration and feedback.
How Chrome Accessibility Works
The document details Chrome's accessibility features, emphasizing platform-specific APIs, the automatic provision of accessibility in standard UI toolkits, and challenges with custom controls and multi-process browser adaptations.