ChatBots, TeacherBots, and Pedagogical Agents: Systems and Programs That Teach illuminates the opportunities and challenges of instructional machines and proposes ways to design bots that enhance learning and teaching. These technologies have been used for numerous purposes--from answering student questions to increasing students' motivation, comfort, and problem-solving skills-- but the evidence supporting positive outcomes is ambiguous, and much less is known about the ways that learners and bots interact. This qualitative, ethnographic investigation offers students, faculty, administrators, researchers, developers, and other stakeholders a firm understanding of the emerging bot market.