New Tech Talkart 1
Browsers
I posted a new Tech Talk that introduces what goes on inside the typical Browser software. We use browsers so cavalierly that we don't stop to realize what is going on under the hood. To more fully understand how the gears are churning when we write HTML/CSS/JS code, it is nice to have a foundation for this app called a browser.
I find it remarkable that the browser is an Internet communicator that knows the HTTP rules and how to send messages to get webpages from a distant server or to send data to a database or make changes or delete data. Browsers are parsing machines and can construct a hierarchal tree of HTML elements and arrange all the sibling and parent-child relations. The next big task is to render the parsed data into a presentation within the viewport with varying sized screens it does well also. Prior to being instructed by CSS rules supplied by the programmer, an entire set of default parameters must be established to render the HTML elements. There are a wide variety of languages supported and all the symbols common to those languages.
Browsers are a living application in that the world of programmers is constantly making suggestions and submitting changes that drive software modifications. So browsers are embedded into the fabric of the Internet and know how data is rendered on screens.
Then there is JavaScript. Browsers have a built-in JavaScript interpreter to unscramble the various flavors arranged by programmers. There is legacy code. There is brand new code. It all has to play together so programmers can use new and improved features right away. JavaScript's power and complexity have driven web-dev programmers to create whole systems to deal with it like Node, Vue, Angular, React, Next, and support systems like webpack and Babel. Browsers as the toolkit for Internet usage is unmistakable, and therefore, is a subject about which every programmer needs to be fully informed.