Languages and applications development frameworks continue to get more capable, more dependable, and help us build applications faster than every before. But building good applications fast usually draws attention to what we all know is the toughest part of software development: figuring out what to build. The good news is that while tools we use to build software have been improving, the tools we use to figure out what to build have been improving too. This short talk focuses on the techniques we use outside the software to collaborate and plan with our customers and users. You’ll learn about concepts and techniques for effectively talking about and representing your product ideas, for understanding the people who use your software, and how to leverage iterative and incremental development to learn faster and reduce risk.