From Documents to Dialogues: Programming Technology for the Conversational Web
A paradigm shift is taking place on the Web. Users spend less and less time using browsers and more and more time using instant messaging applications. While originally designed to facilitate communication among humans, these platforms now position themselves as "next-generation browsers" to interact with services and businesses. They do this by offering the ability to extend their platforms with chatbots: applications that interact with the user through chat. This shift toward a dialoge-based mode of interaction will have a profound impact on the programming technologies that will be needed to effectively develop applications for the Conversational Web. While existing Web technology will continue to play an important role, new frameworks are emerging that facilitate dialogue-based interactions. There is also a growing need to extend explicitly programmed scripts with AI toolkits to bridge the gap between ambiguous humans and rigid APIs. We will discuss these trends, review today's state-of-the-art bot SDKs and AI toolkits, and highlight new opportunities where programming abstractions and program analyses can help developers in this rapidly evolving domain.