The majority of applications we interact with daily could not function in isolation. For these applications, communicating with other programs and services via the internet is critical and enables them to provide richer, more engaging experiences. Twitter, texting, Facebook, online games, Spotify, Netflix, Google Maps, and YouTube are just a few of the most popular examples. Yet most educational programming environments restrict students to programming a single, isolated device, with very limited support for connecting to the internet from one’s...