Building Bots for Journalism:

Software You Talk With

Instructor: John Keefe

February 12 to March 11, 2018






Registering in the platform is easy. Please follow these steps:

  • 1. Create an account in the JournalismCourses.org system. Even if you’ve taken a course with us before, you may need to create a new account. Check to see if your previous username and password work before creating a new account.
  • 2. Wait for a confirmation in your email indicating that your account has been created. If you do not receive this, please check your spam folder.
  • 3. Log into the platform, scroll down until you see the course listings, and click on the “Building Bots for Journalism: Software You Talk With” course.
  • 4. A button will appear, click “Enroll” to enroll yourself into the course. You will be able to access the course from the “My Courses” menu at the top of the page.
  • 5. You will receive an email confirming your enrollment.

Please add the email addresses knightcenter@austin.utexas.edu and filipa.rodrigues@utexas.edu to your address book to ensure you receive emails about the course.

For these next four weeks I will be guiding you through the basics of building conversational interfaces -- bots people can talk with -- and deploying them on several platforms, including SMS, Amazon Alexa, and Facebook Messenger.

You will learn the basics of writing a bot -- a software program that responds to humans like a human, either through text or speech. You'll then learn how to make that program accessible to others, including the general public, via several popular platforms, including SMS, Amazon Alexa, and Facebook Messenger.

Most of our work will be done inside a bot-building system called Dexter. Using Dexter, and a very human-like programming language called RiveScript, we'll actually write out the interactions between bot and human. Then we'll work on ways to use technology to make the bot part even more human-like.

This course is open to anyone interested in building conversational interfaces for pretty much any purpose, though I'm focused primarily on the news and information industry, so I'll draw my examples and my experiences from there.

This course requires that you have a computer with an Internet browser. All work is done online, using a variety of free services. You'll need an account on all of these services:

  • Dexter, a bot platform we'll be using to build our bots: https://rundexter.com
  • Dialogflow, a natural language processor. The service is at https://dialogflow.com, but you log in using a Google account. If you don't have a Google account, sign up for one at https://accounts.google.com/
  • Twilio, for SMS texting. Sign up for a free trial account at http://twilio.com (don't enter any credit card info; you don't need to pay for anything). Also you will need access to a mobile phone where you can get and send text messages.
  • Airtable, an online spreadsheet service Sign up at https://airtable.com
  • Amazon Developer Account, for building a voice with Amazon Alexa. Sign up for free at https://developer.amazon.com/. You don't need an Alexa-enabled device for the class; you can hear what Alexa would say in your web browser. But is definitely more fun if you have one or purchase one before the third week in class. If you do, sign up for the developer account with the same email you use to set up your Alexa device.
  • Facebook account, for building a Facebook messenger bot. https://facebook.com

First of all, note that this is an asynchronous course. That means there are no live events scheduled at specific times. You can log in to the course and complete activities throughout the week at your own pace, at the times and on the days that are most convenient for you.

The material is organized into four weekly modules. Each module will be taught by John Keefe and will cover a different topic through videos, presentations, readings and discussion forums. There will be a quiz each week to test the knowledge you've gained through the course materials. The weekly quizzes, and weekly participation in the discussion forums, are the basic requirements for earning a certificate of participation at the end of the course.Despite its asynchronous nature, there are still structures in place for the duration of the course.

The material is organized into four weekly modules. Each module will be taught by John Keefe and will cover a different topic through videos, presentations, readings and discussion forums. There will be a quiz each week to test the knowledge you've gained through the course materials. The weekly quizzes, and weekly participation in the discussion forums, are the basic requirements for earning a certificate of participation at the end of the course.

This course is very flexible, and if you are behind with the materials, you have the entire length of the course to complete them. We do recommend you complete each of the following before the end of each week so you don’t fall behind:

  • Video lectures
  • Readings and handouts/exercises
  • Participation in the discussion forums
  • Quizzes covering concepts from video lectures and/or readings

Introduction Module - Getting Started

  • Signing up for accounts (as described above)
  • Reviewing reading materials and special video on bots

Module 1 - Introduction to conversational interfaces

  • Examples of conversational bots
  • Introduction to Dexter, the bot-writing platform
  • Build a basic chat bot inside Dexter
  • Careful walkthrough of RiveScript, the language Dexter uses
  • Make a "button" bot

Module 2 - Improve your bot’s conversational game

  • Build a question-and-answer bot: The dog-cat bot
  • Using Dialogflow Natural Language Processing (NLP)
  • Detecting other ways people may say "yes," "no," or "help."
  • Answering random chitchat, such as "How are you?"
  • Training your own intents in Dialogflow
  • Writing for good voice and flow, tailoring with variables

Module 3 - Texting and talking to bots

  • Building an SMS bot you can text with
  • Using SMS to create surveys that are logged with Airtable
  • Building an Alexa fact bot
  • Building an Alexa conversational bot: The dog-cat bot speaks!

Module 4 - Messenger bots

  • Put your bot on Messenger Part 1: Facebook pages and apps
  • Put your bot on Messenger Part 2: Linking Facebook & Dexter
  • Enhancing the experience with Facebook-specific features such as templates and menu items


John Keefe works at Quartz as a developer in the Quartz Bot Studio and product manager of Quartz's mobile apps. He also teaches about bots and rapid prototyping at the CUNY Graduate School of Journalism and is author of "Family Projects for Smart Objects: Tabletop Projects That Respond to Your World." Previously Keefe was Senior Editor for Data News at public radio station WNYC and taught as an adjunct lecturer at Columbia University and the New School University, and as an Innovator in Residence at West Virginia University's Reed College of Media. Keefe blogs at johnkeefe.net, writes about bots at bots.qz.com, and tweets as @jkeefe.

To communicate with the instructor please post your question(s) in the "questions for instructors” forum.

The instructor will answer questions in this forum, but due to the size of the class, the instructor may not be able to respond to all questions. He will try to answer as many questions as possible, trying to group them and identifying common topics or threads.

We expect you to behave professionally and be respectful when participating in the discussion Forums. Cheating cannot be controlled in a class like this, but it really goes against your best interest: if you turn in a work that is not yours (or if you turn in something meaningless), you will hurt your learning experience.

VERY IMPORTANT: The instructors and the Knight Center reserve the right to warn, or even remove from the course, students that do not respect ethical rules regarding exercises and quizzes. This includes respectful communication in the discussion forums with your peers and colleagues.

A certificate of completion will be available for those who meet all of the course requirements. You will have until to complete the class criteria. After March 11, the Knight Center will review your record. After confirmation, of course requirements, the Knight Center will send a message through the course platform with confirmation that you fulfilled the course requirements and you qualify for the certificate. In this message, we will also send you instructions to download a PDF copy of your certificate through the course platform. You will be able to then download your certificate sometime after March 11, before the course closes down. No formal course credit of any kind is associated with the certificate. The certificate is awarded by the Knight Center for Journalism in the Americas to attest to the participation in the online course.

For those that meet all of the course requirements, a certificate of completion will be available to download, in PDF format. No formal course credit of any kind is associated with the certificate. The certificate is awarded by the Knight Center for Journalism in the Americas to attest to the participation in the online course.

For those that want to receive a certificate of completion for the course, you must meet the following requirements:

1) Complete weekly quizzes with a 70% score minimum by the weekly deadline.

2) Watch weekly video lectures and review weekly readings.

3) Participate in at least 1 discussion forum each week by given deadline.

If all requirements are met, an electronic certificate in PDF format will be emailed to the student.

Please add the following email addresses filipa.rodrigues@utexas.edu, knightcenter@austin.utexas.edu to your address book to ensure you receive emails about the course.





Connect With Us:

Facebook Twitter