About this Course

Performance matters to users. Web developers need to build apps that react quickly and render smoothly.

Google performance guru Paul Lewis is here to help you destroy jank and create web apps that maintain 60 frames per second performance.

You'll leave this course with the tools you need to profile apps and identify the causes of jank. You'll explore the browser's rendering pipeline and uncover patterns that make it easy to build performant apps.

Play Trailer Play Trailer
Course Cost
Free
Timeline
Approx. 1 month
Skill Level
Advanced
Included in Course
  • Rich Learning Content

  • Interactive Quizzes

  • Taught by Industry Pros

  • Self-Paced Learning

  • Student Support Community

Join the Path to Greatness

This free course is your first step towards a new career with the Front-End Web Developer Nanodegree Program.

Free Course

Browser Rendering Optimization

by Google

Enhance your skill set and boost your hirability through innovative, independent learning.

Icon steps

Course Leads

  • Cameron Pittman
    Cameron Pittman

    Instructor

  • Paul Lewis
    Paul Lewis

    Instructor

What You Will Learn

Lesson 1

The Critical Rendering Path

  • Introduction to the course with Paul Lewis.
  • Learn how the browser turns HTML into pixels on the page
  • See how different CSS styles affect the rendering pipeline differently.
Lesson 1

The Critical Rendering Path

  • Introduction to the course with Paul Lewis.
  • Learn how the browser turns HTML into pixels on the page
  • See how different CSS styles affect the rendering pipeline differently.
Lesson 2

App Lifecycles

  • How to recognize the four distinct phases in an app's lifecycle: Response, Animation, Idle and Load (RAIL).
  • How your frame budget changes depending on where the user is in RAIL.
  • Practice thinking through app workloads at different stages in RAIL.
Lesson 2

App Lifecycles

  • How to recognize the four distinct phases in an app's lifecycle: Response, Animation, Idle and Load (RAIL).
  • How your frame budget changes depending on where the user is in RAIL.
  • Practice thinking through app workloads at different stages in RAIL.
Lesson 3

Weapons of Jank Destruction

  • How to make sense of the Timeline panel in Chrome DevTools.
  • Practice profiling a few different apps to find the source of jank.
Lesson 3

Weapons of Jank Destruction

  • How to make sense of the Timeline panel in Chrome DevTools.
  • Practice profiling a few different apps to find the source of jank.
Lesson 4

JavaScript

  • How to optimize JavaScript to hit 60fps during animations.
  • How to move expensive JavaScript operations off the main thread and into Web Workers.
  • How to debug a janky copy of a production quality app - the QR Snapper.
Lesson 4

JavaScript

  • How to optimize JavaScript to hit 60fps during animations.
  • How to move expensive JavaScript operations off the main thread and into Web Workers.
  • How to debug a janky copy of a production quality app - the QR Snapper.
Lesson 5

Styles and Layout

  • Learn how accessing the wrong CSS properties can create loads of extra work for the browser.
  • Learn how to debug multiple instances of Forced Synchronous Layout.
Lesson 5

Styles and Layout

  • Learn how accessing the wrong CSS properties can create loads of extra work for the browser.
  • Learn how to debug multiple instances of Forced Synchronous Layout.
Lesson 6

Compositing and Painting

  • Practice profiling layer and paint performance with the paint profiler tool in the DevTools Timeline.
  • Learn how to optimize layers to reduce the number of steps the browser needs to take to render each frame.
  • Demonstrate everything you've learned about performance as you de-jankify the News Aggregator App!
Lesson 6

Compositing and Painting

  • Practice profiling layer and paint performance with the paint profiler tool in the DevTools Timeline.
  • Learn how to optimize layers to reduce the number of steps the browser needs to take to render each frame.
  • Demonstrate everything you've learned about performance as you de-jankify the News Aggregator App!

Prerequisites and Requirements

See the Technology Requirements for using Udacity.

Why Take This Course

Demystifying the browser's rendering pipeline will make it easy for you to build high performance web apps. By following a few simple principles, you'll be capable of drastically reducing the browser's workload and time needed to render each frame.

You'll start by getting introduce to the individual steps of the rendering pipeline, beginning with parsing HTML and ending with painting pixels on the screen. Then you'll quickly dive into tooling with ample opportunities to practice profiling and debugging apps with Chrome Developer Tools.

The final project uses the Hacker News API and gives you an opportunity to show off everything you've learned as you turn an awful experience into a high performance web app!

What do I get?
  • Instructor videos
  • Learn by doing exercises
  • Taught by industry professionals
Icon globe

Udacity 现已提供中文版本! A Udacity tem uma página em português para você! There's a local version of Udacity for you! Sprechen Sie Deutsch?

Besuchen Sie de.udacity.com und entdecken Sie lokale Angebote, unsere Partnerunternehmen und Udacitys deutschsprachigen Blog.

前往优达学城中文网站 Ir para a página brasileira Go to Indian Site Icon flag de Zu de.udacity.com continue in English