Browsers

Table of Contents

1 What is a Web Browser?   slide

1.1 Many things   notes

  • "Thing I type Google into"
  • Loads data from the Internet
  • Displays it
  • Runs Javascript
  • has plugins

2 What is the core?   slide

www-gnu.png

  • WorldWideWeb (confusingly named) the first browser
  • Tim Breners-Lee wrote it to share data with colleagues at CERN
  • Display HTML with Style Sheets from remote servers
  • Editing was built into the first version
  • Support different Protocols: FTP, HTTP, NNTP, local files

2.1 Symmetric usage   notes

  • Belief was that one would be creating as much as consuming information
  • Plus, can't build a browser if there's nothing to browse!
  • Already supported protocols for transferring files, reading newsgroups
  • Images originally displayed in a separate window. Eventually inlined.

3 Features   slide

  • Network access
  • Interpreting the fetched data
    • Possibly fetching and interpreting dependencies like images
  • Rendering HTML with CSS rules
  • Running scripts in the context of the web page
  • Utility functions

3.1 Examples   notes

Network access
HTTP
Fetched Data
HTML, CSS
Rendering
Displaying a table with row and column lines
Scripts
Validating a password before submitting
Utility functions
tabs, bookmarks, plugins

4 Address Bar -> Web Page   slide

  1. Analyze address bar to determine protocol and server
  2. Connect to server, download data and all dependencies
  3. Analyze HTML, generate a Document Object Model (DOM)
  4. Apply CSS to the DOM
  5. Display the DOM
  6. Start executing scripting code and re-render the DOM as required
  7. Continue executing and interpreting user actions

4.1 Definitions   notes

DOM
A way of representing the HTML so that it can be analyzed and modified
scripting
programming language designed to work with web pages, eg. Javascript
Recursive
Each of these steps have at many steps underneath them

5 What is a Browser?   slide center

6 Why Separate the Browser from Websites?   slide

  • Composability!
  • Improve the features around the website without upgrading the website
    • Original browser did not have Forward Back buttons
  • Accessibility
    • Tradeoff is the layouts need to follow rules, designers must design with multiple audiences in mind

6.1 Flexibility   notes

  • Separating the content from the presentation allows you more flexibility with how you want to use it
  • What if you could only view websites like a TV image. No cut+paste, viewing on mobile vs. desktop

7 Browser or Web Page?   slide

  • ie8-logo.png Internet Explorer
  • Google_logo.png

  • nyt-logo.png

  • Firefox firefox-logo.png
  • Others?

8 Browsers, Apps, Operating Systems   slide

  • Traditionally, browsers were applications running in an OS like Windows
  • Scripting enables browsers to run their own code
  • Complex web pages (eg. Gmail) behave almost like an application
  • Browsers could become an OS themselves, ala ChromeOS
  • Some Apps now written entirely in Javascript

9 Market Share   slide

desktopbrowserapril.jpg

9.1 Numbers   notes

  • Significant sampling bias
  • Eg. wikimedia sees 46% Chrome, 11% IE

10 Utilities   slide

  • Firefly for Firefox, Developer Tools for Chrome
  • Enable you to modify the page as you're viewing it
  • Valuable for understanding how HTML and CSS are rendered

11 Questions   slide

  • What is CSS used for?
  • What are some of the utilities you use in your browser?

12 Browsing Information Not a New Idea   slide center

Paul Otlet

13 World Brain   slide

  • Proposals for Encyclopaedia from H.G. Wells 1937
  • Engelbart developed oN-Line System (NLS) that used HyperText 1960s
  • "Notecards" at Xerox PARC 1984

14 Homework   slide

  • Learn git for future homework submissions
  • practice sending a homework
  • reading

Author: Jim Blomo

Created: 2014-08-29 Fri 00:22

Emacs 23.4.1 (Org mode 8.0.6)

Validate XHTML 1.0