 How do you start thinking about building an app or a website? The first step to building a great progressive web app is to think about your audience. Let's break that down a bit. Who is my target audience? How might that change? Do they have the same requirements? And how can I work that out? You can think about different types of users and prioritize that based on data. And there is no single answer for this. You'll need to adapt. You need to think about platforms, what browsers, operating systems, and hardware do my users have? And what should I support? How can I find out? Think about connectivity. What types of connectivity are available to my users? And what about offline? Is that something I need to support? If you want to compete with native mobile apps, you need to think about that. And what about data costs? The price your users pay per megabyte of data? For many users, data cost is the major constraint for usage. And I know this is true for me when I'm on a roaming data plan, when I'm traveling in a country away from home. In fact, you'll find that some people don't want to use the web at all because they know that some websites can eat up all their data. And of course, to build a great web app, you need to understand where and how your users will consume your content. Where are they? What are they doing? What's their state of mind? This really affects everything from content to interactions to layout and graphic design. You need to think about what you're building. You need to think about performance. What is performance for your users? And what does that mean for them? What is acceptable performance given your target audience or different audiences? And what about usage contexts, connectivity and data cost constraints? How can I quantify that? You need to build a performance budget. Thinking about content. What content do my users want when they visit my site or app? And how can I define that? Text, images, media, comments, about pages, you know, contact information, terms and conditions, all that stuff. And functionality. What are the core functions of my site or app? And what are the nice to have? And how can I prioritize these? Content, navigation, commenting and feedback mechanisms, flaky connectivity handling, offline and so on. Okay, so now I want you to do some work. I want you to find answers for each of these points. Who is the audience? What platforms are they on? What data costs can they handle? And remember, we're thinking about your users and what you are building.