Have you ever wanted to create your own mobile app, interactive web application, or video game? This hands-on course will build the foundation for learning these and other skills. All of these are “applications” (rather than e.g. “services” or more generic “systems” or “processes”). The technologies that facilitate application development change rapidly over time, and which are best for a given application can vary. This course will focus on fundamental concepts and skills that are common across different platforms. The course will also introduce a few specific technologies that are currently important and popular, and likely to remain so. The course will also introduce the git version control system, which is widely used in industry and academia.

The required textbook for our class is Daniel and Audrey Roy Greenfeld's A Wedge of Django. The authors of this book have worked in industry building web applications, consulting, and teaching Django for decades.