←back to thread

Web Browser Engineering (2021)

(browser.engineering)
770 points MrVandemar | 1 comments | | HN request time: 0.213s | source
Show context
mannyv ◴[] No.41848587[source]
One great thing about this book is the 'stuff I didn't do' part.

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.

replies(11): >>41848643 #>>41848664 #>>41848729 #>>41848784 #>>41848785 #>>41849444 #>>41849487 #>>41849657 #>>41851786 #>>41852399 #>>41854447 #
pstrateman ◴[] No.41848643[source]
> As an aside, video decoding is offloaded onto hardware, so it's not as battery intensive as it used to be.

This is technically but not usefully true with most videos on the web today.

The video decode itself is accelerated, but each frame passes through JavaScript to be composited.

The only time video is fully hardware decoded is when it's a simple video element to a static video file.

replies(4): >>41848766 #>>41848790 #>>41848852 #>>41849217 #
afavour ◴[] No.41848852[source]
> not usefully true with most videos on the web today

> The only time video is fully hardware decoded is when it's a simple video element to a static video file.

These seem in disagreement to me. The vast majority of videos on the web are simple video elements going to static video files. It is not usual for each frame to pass through JavaScript before being displayed.

replies(2): >>41852079 #>>41857848 #
1. Sesse__ ◴[] No.41857848[source]
The decoded frames do not pass through JavaScript. The compressed data may (e.g. if you are using the Media Source API).