What makes browsers performant Christian Stockwell Microsoft Corporation.

Slides:



Advertisements
Similar presentations
Broadband Session Michael Byrne. Broadband Map Technical Details Data Integration Map Presentation Since Launch.
Advertisements

JavaScript & jQuery JavaScript and jQuery introduction.
Learn the techniques to create a SharePoint 2010 web site from an existing branded web site.
JQuery CS 380: Web Programming. What is jQuery? jQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling,
Rowan County Public Library. What Is a Web Browser? A web browser is a software application that allows you to browse the internet, provided that you.
We all know the world is changing… Upgrades may break apps We need sufficient time to test Our key software vendors need time to test & issue statements.
Working with JavaScript. 2 Objectives Introducing JavaScript Inserting JavaScript into a Web Page File Writing Output to the Web Page Working with Variables.
T.N.C.Venkata Rangan CMD, Vishwak Solutions Pvt. Ltd. Microsoft (MSDN) Regional Director, Chennai Microsoft MVP – Windows Live Platform Living with Heterogeneity.
2 Internet Explorer 8: Pushing the Web Forward Travis Leithead Program Manager, IE Team.
XP 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties Tutorial 10.
V1.00 © 2009 Research In Motion Limited Introduction to Mobile Device Web Development Trainer name Date.
Web Privacy Topics Andy Zeigler Senior Program Manager, Internet Explorer Microsoft.
JavaScript Debugging, Diagnostic Web Tools and Firefox Add-ons By Gennady Feldman March 12, 2008 April 9, 2008 At The WebTechNY.com User Group.
Enhanced Collaboration and other benefits of Sharepoint Technologies Kern Sutton Business Productivity Group Microsoft Corporation.
Mobile App Support Jacob Poirier Geri Hengesbach Andrea Menke Erin Rossell.
SCHOOL OF LIBRARY, ARCHIVE AND INFORMATION STUDIES Andy Dawson LIS1510 Library and Archives Automation Issues Website management Andy Dawson School of.
Windows Store apps with HTML + Facebook integration
Securing Web Applications. IE 7 significantly reduced attack surface against the browser and local machine…
JQuery Write less, do more…. Lecture Plan jQuery – what and why The ready function Creating Content Changing Elements Applying CSS Applying functions.
SEAN WALLBRIDGE ITGROOVE AND SECTOR LEARNING SOLUTIONS SharePoint Users Group – March 12, 2009.
HTML | DOM. Objectives  HTML – Hypertext Markup Language  Sematic markup  Common tags/elements  Document Object Model (DOM)  Work on page | HTML.
Objective Understand concepts used to web-based digital media. Course Weight : 5%
XP Tutorial 10New Perspectives on Creating Web Pages with HTML, XHTML, and XML 1 Working with JavaScript Creating a Programmable Web Page for North Pole.
Everything in it’s right place Revisiting website accessibility Jeff Coburn Senior Web Specialist Institute for Community Inclusion.
Javascript II DOM & JSON. In an effort to create increasingly interactive experiences on the web, programmers wanted access to the functionality of browsers.
2 Web Standards and IE7 Embracing the Future, Managing the Past.
Optimizing Web Sites Lee Sutherland. The Key Point In IA, ‘optimization’ refers to minimizing complexity to achieve faster download times Speed is an.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
John Lawrimore, 2014 JavaScript Performance Presenter JOHN - Principal Consultant at.
OPTIMISING USER INTERFACES FOR MOBILE COMPUTER ASSISTED INTERVIEWING DEVICES Prepared By Otyek Ronald James Uganda Bureau of Statistics Presented at the.
Giorgio Sardo Technical Evangelist, Microsoft Corp blogs.msdn.com/Giorgio Session Code: WIA 403.
The World Wide Web. What is the worldwide web? The content of the worldwide web is held on individual pages which are gathered together to form websites.
Next generation localization testing Taras Tovstyak, ELEKS.
Creating Animations, Working with Graphics, and Accessing Data Lesson 9.
Introduction to Programming the WWW I CMSC Summer 2003 Lecture 13.
Lesson 5 MULTIMEDIA. Multimedia on the Web has expanded rapidly as broadband connections have allowed users to connect at faster speeds. Almost all Web.
IE Developer Tools Jonathan Seitel Program Manager.
XP Tutorial 10New Perspectives on HTML, XHTML, and DHTML, Comprehensive 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties.
Google Web Toolkit for Mobile Applications Development INGENUITY AT ITS BEST……………….
1 Using jQuery JavaScript & jQuery the missing manual (Second Edition)
MICROSOFT AJAX CDN (CONTENT DELIVERY NETWORK) Make Your ASP.NET site faster to retrieve.
The richest experience on the web Web Slices Accelerators Visual Search InPrivate Users Develop, test and debug without leaving the browser Built-in developer.
Javascript Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
 Sameer Chabungbam Program Manager Microsoft Corporation PC53.
ASP.NET 2.0 Mohammed Abdelhadi Developer.NET Evangelist Microsoft Corporation.
50 Performance Tricks to Make your HTML5 apps and sites Faster
Applying CSS to Tables Stylish Tables.
Stable and reliable Web Automation
3 Best Website Speed and Performance Checking Tools
Lesson 14: Web Scraping Topic: Web Scraping.
Project 1 Introduction to HTML.
Windows Summit /4/2018 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
Web Programming– UFCFB Lecture 9
9/21/ :03 PM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Cascading Style Sheets 2
5 things you didn’t know you can BUILD with Microsoft Edge
Build /2/2018 © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Flight prices.
Windows Summit /4/2018 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
Building responsive apps and sites with HTML5 web workers
Anatomy of HTML5 sites and Metro style apps using HTML5
What’s Coming in IE8 Christian Stockwell Microsoft Corporation.
3.4 Internet – Use of Internet
That detail is only sort of important That detail is only sort of important. What is important is that you have all of these HTML elements floating.
Computer communications
Web Programming– UFCFB Lecture 9
Intro to SharePoint 2010 Branding
Web Programming and Design
Introduction to ASP.NET Parts 1 & 2
Andreas Rosen QKom GmbH
Presentation transcript:

What makes browsers performant Christian Stockwell Microsoft Corporation

Topics covered in this talk  How the IE team thinks about platform* performance  How that philosophy has translated into IE8  Specific performance examples  5 minutes of Q & A  Important note: San Francisco is not San Jose. Many thanks to Marla from Fairmont SF and Perla from Fairmont SJ!

A related example  Consider a flight from San Francisco to Los Angeles

A related example  One approach:  Optimize your planes

A related example  One approach:  Double the power of each engine

A related example  What if flying time is only a small part of the total?  1 hour driving to SFO  1.5 hours security  1 hour waiting at the gate  1 hour flying to LAX  ½ hour waiting for luggage  1 hour driving to destination

Browsing examples

Back to the browser  Let’s expand that to a large number of sites:

Back to the browser  Should we double the size of our engines?  Which engines?

Internet Explorer 8  IE8 delivers broad improvements across the browser  IE8 balances improvements to existing APIs with new, faster APIs  Let’s talk about how our approach has lead to improvements to layout, jscript, networking.

Internet Explorer 8 - Layout  Complexity and workarounds are performance killers  IE8 delivers the most complete CSS2.1 platform  Optimized common scenarios:  Complex selectors  Expressions  Tips for even faster sites:  Use class or ID-based selectors  Use child instead of descendent selectors  Minimize layout calculations

Internet Explorer 8 – Layout Simplying complex selectors with ID selectors:  table tr td ul li { color: green; }  li#pass { color: green; } Using child selectors instead of descendent selectors:  ul li {color: purple; }  ul > li {color: purple; }

Internet Explorer 8 - Layout Examples: Batch layout changes Two layouts: document.myDIVid.width += 20; document.myDIVid.height += 20; One layout: var w = document.myDIVid.width + 20; var h = document.myDIVid.height + 20; document.myDIVid.width = w; document.myDIVid.height = h;

Internet Explorer 8 – JScript  IE8 is faster than IE7 overall, particularly for common string and array operations (both >100x faster!)  Built-in JavaScript profiler  Selectors API  querySelectorAll alternative to getElementByID  Faster multi-element retrievals

Internet Explorer 8 – JScript function Validate() { // Retrieve required elements var reqs = document.querySelectorAll(“.required”); // Validate form data for(var i=0; i<reqs.length; i++) { if(reqs[i].value == “”) ReportError(); }

Internet Explorer 8 – JScript  JSON  With eval?  With custom library?  Native JSON in IE8!  No tradeoff between performance and security  JSON.parse(), JSON.stringify()  toJSON on Date, Number, String, and Boolean prototypes

Internet Explorer 8 – Network  Network costs still dominate for many sites  IE8 raises connection limit from 2 to 6  Parallelized script downloads  Data URLs  YSlow, VRTA, Page Speed: Still very valuable tools for building fast sites

Bringing it all together  Making real sites faster means improving browser subsystems and also how they connect together  We’ve invested broadly to improve real sites for real users  Our philosophy has made IE8 the fastest browser for many of today’s sites

IE8 Performance at RTM

Q & A  Next up: Mike Belshe, Chrome  UI Performance: Designing and Engineering Time: The Psychology of Time Perception in Software by Steve Seow