Exploring New Frontiers in Web Performance
With chapters selected by Barry Pollard
  • March 2020
  • ISBN 9781617297793
  • 160 pages
Beautiful design, cool functionality, and optimized content won’t provide value if your visitors don’t stick around to enjoy it! Every extra second your web pages take to load or respond costs you visitors and sales. That’s why web performance is key to increasing engagement and conversions. Fortunately, as bandwidth-challenging functions proliferate, new tools are emerging to help developers fight the web performance battle.

About the book

In Exploring New Frontiers in Web Performance, author Barry Pollard has selected chapters from four Manning books to lay out the basics of modern performance-improving web tools and technologies. First, you’ll get an introduction to tools for assessing performance and identifying problems. Then you’ll take a look at HTTP/2—the first major revision of the web’s network protocol—and explore the advantages of running it as well as how it affects development practices. You’ll also delve into the game-changing impact of Progressive Web Apps, including what they are, the benefits they bring to the table, and the first steps to building them. In the final chapter, you’ll explore WebAssembly, a binary language that compiles to bytecode and can run at lightning-fast speed on all browsers, and discover the problems it solves. With this guide, you’ll have a firm grasp on the technologies available today to developers who want feature-rich websites that still have awesome performance, better sales, and higher conversion rates!
Table of Contents detailed table of contents

Introduction

Using assessment tools

Using assessment tools

2.1 Exploring New Frontiers in Web Performance

2.1.1 Appraising website performance

2.1.2 Using Google Analytics for bulk reporting

2.2 Using browser-based assessment tools

2.3 Inspecting network requests

2.3.1 Viewing timing information

2.3.2 Viewing HTTP request and response headers

2.4 Rendering performance-auditing tools

2.4.1 Understanding how browsers render web pages

2.4.2 Using Google Chrome’s Timeline tool

2.4.3 Identifying problem events: thy enemy is jank

2.4.4 Marking points in the timeline with JavaScript

2.4.5 Rendering profilers in other browsers

2.5 Benchmarking JavaScript in Chrome

2.6 Simulating and monitoring devices

2.6.1 Simulating devices in the desktop web browser

2.6.2 Debugging websites remotely on Android devices

2.6.3 Debugging websites remotely on iOS devices

2.7 Creating custom network throttling profiles

Summary

The road to HTTP/2

The road to HTTP/2

2.1 HTTP/1.1 and the current World Wide Web

2.1.1 HTTP/1.1’s fundamental performance problem

2.1.2 Pipelining for HTTP/1.1

2.1.3 Waterfall diagrams for web performance measurement

2.2 Workarounds for HTTP/1.1 performance issues

2.2.1 Use multiple HTTP connections

2.2.2 Make fewer requests

2.2.3 HTTP/1 performance optimizations summary

2.3 Other issues with HTTP/1.1

2.4 Real-world examples

2.4.1 Example website 1: amazon.com

2.4.2 Example website 2: imgur.com

2.4.3 How much of a problem is this really?

2.5 Moving from HTTP/1.1 to HTTP/2

2.5.1 SPDY

2.5.2 HTTP/2

2.6 What HTTP/2 means for web performance

Summary

Optimizing for HTTP/2

6.1 What HTTP/2 means for web developers

6.2 Are some HTTP/1.1 optimizations now antipatterns?

6.3 Web performance techniques still relevant under HTTP/2

6.4 Optimizing for both HTTP/1.1 and HTTP/2

Summary

Understanding Progressive Web Apps

Understanding Progressive Web Apps

1.1 What’s the big deal with Progressive Web Apps?

1.2 PWA basics

1.2.1 Building a business case for Progressive Web Apps

1.3 Service Workers: The key to PWAs

1.3.1 Understanding Service Workers

1.3.2 The Service Worker lifecycle

1.3.3 A basic Service Worker example

1.3.4 Security considerations

1.4 Performance insight: Flipkart

Summary

First steps to building a Progressive Web App

2.1 Build on what you already have

2.2 Front-end architectural approaches to building PWAs

2.2.1 The Application Shell Architecture

2.2.2 Performance benefits

2.2.3 The Application Shell Architecture in action

2.3 Dissecting an existing PWA step by step

2.3.1 Front-end architecture

2.3.2 Caching

2.3.3 Offline browsing

2.3.4 Look and feel

2.3.5 The final product

Summary

Meet WebAssembly

Meet WebAssembly

1.1 What is WebAssembly?

1.1.1 Asm.js, the forerunner to WebAssembly

1.2 What problems does it solve?

1.2.1 Performance improvements

1.2.2 Faster startup times compared with JavaScript

1.2.3 Ability to use languages other than JavaScript in the browser

1.2.4 Opportunity for code reuse

1.3 How does it work?

1.3.1 Overview of how compilers work

1.3.2 Loading, compiling, and instantiating a module

1.4 Structure of a WebAssembly module

1.4.1 Preamble

1.4.2 Known sections

1.4.3 Custom sections

1.5 WebAssembly text format

1.6 How is WebAssembly secure?

1.7 What languages can I use to create a WebAssembly module?

1.8 Where can I use my module?

Summary

What's inside

  • “Using assessment tools” – Chapter 2 from Web Performance in Action by Jeremy L. Wagner
  • “The road to HTTP/2” – Chapter 2 from HTTP/2 in Action by Barry Pollard
  • “Optimizing for HTTP/2” – Chapter 6 from HTTP/2 in Action by Barry Pollard
  • “Understanding Progressive Web Apps” – Chapter 1 from Progressive Web Apps by Dean Alan Hume
  • “First steps to building a Progressive Web App” – Chapter 2 from Progressive Web Apps by Dean Alan Hume
  • “Meet WebAssembly” – Chapter 1 from Web Assembly in Action by Gerard Gallant

About the author

Barry Pollard is a professional developer with two decades of experience developing, supporting, and tuning software and infrastructure.

placing your order...

Don't refresh or navigate away from the page.
eBook $0.00 PDF only + liveBook
Exploring New Frontiers in Web Performance (eBook) added to cart
continue shopping
go to cart

Prices displayed in rupees will be charged in USD when you check out.

FREE domestic shipping on three or more pBooks