 Hi there, I'm Sam Dutton, a developer advocate at Google, part of the team that built this course. And we're going to show you how to build great progressive web apps. The format is pretty simple. We show you something, and you build stuff, and then you take a break and repeat. Now, this course is focused on you writing code, but will also help you understand your users and how to give them a great experience. You'll build a simple web app and learn the basics of building offline functionality into your app with ServiceWorker. We'll help you get to grips with the core PWA APIs. You'll get a chance to brush up your skills with Promises, Fetch, and with ServiceWorkers. You'll learn how to cache content to improve performance and work offline, and that means file caching with ServiceWorker and data caching with client-side storage. We'll show you how to work with live data and how to make the best of unreliable connections. And finally, we'll think about BWA's from a business perspective. Reduce development costs and build a better experience for your users. Learn how people use websites, why and how we buy. Find out how to maintain a resilient build process and integrate tooling. And we'll also look at ways to improve engagement and re-engagement with a home screen presence, smart installation prompts, and push notifications. You'll get to grips with web payments and credential management, analytics, discovery, and SEO. You're going to learn a lot, but you can also help us build a better course. So if you find anything that doesn't make sense or code that fails, please let us know. We'll tell you how to file bugs and changes in the notes below. So let's get started.