Update: This project is not currently in development. I may decide to pick it up again at some point in the future. Leave a comment if you’re interested …

As one of my projects for IT521 – Computer Applications in Education, I’ve decided to build a simple Student Response System optimized for the iPhone. I’ve experimented with a few similar systems over the past few years and have been excited about the level of interactivity they can bring to the classroom, but feel that the required setup time and unintuitive user interface of most of these systems make them difficult to use in a traditional classroom setting. Some problems I’ve found with the systems I tested include:

  • The initial cost for deploying in a classroom is extremely high for both faculty and students – hardware, software, and licensing fees can really add up quickly!
  • Registering the devices takes too much time.The systems that use radio frequency to send student responses require that the students all be in the same location.Setting up the actual polls typically take too long which can kill any sense of spontaneity in the classroom.
  • Students pay a lot of money for a device that does nothing except allow them to participate in classroom polls.

Taking these items into consideration, I’ve started developing a system that I hope will help eliminate some of the pitfalls of many student response systems. My approach is comprised of two different parts – a web application for creating, deploying, and viewing the results of polls and a downloadable iPhone application that the students use to participate. Although the alpha version of my solution is a native iPhone app (for students), it would be relatively easy to build client applications for Android, Blackberry, Adobe Air, or even a regular website using the API for the web service. The project is currently a very early alpha, but much of the basic functionality is already there. Please feel free to leave your comments or feature requests in the comments – I’ll incorporate as many ideas as I can into the Beta release!

Let’s take a look at how the system works!

The Instructor Interface

Once an instructor has created an account on the site (email me if you’d like an invite), the system can be easily accessed by opening the iPhone’s internet browser (or any browser, actually) and navigating to the login page.

If you’re using an iPhone, I would suggest saving a shortcut to the site on the home screen.

iPhone screenshot showing instructor and student icons

Below you’ll see a sample screenshot of the application’s home page. From here, you’ll need to choose to access either the administrator tool or the instructor tool.

App screenshot

You’ll next be asked for your username and password. Once you’re successfully authenticated, you will be redirected to the main Instructor page.


On the Instructor’s page, you have a few options – start a poll, stop a poll, reset a poll, and view the results of a poll. I’ve noticed that the tools I use most are the simple ones that do one thing really well. In that spirit, I’ve taken away as many features/options as possible. You’ll notice that there are no choices to setup the type of poll question or type in the options. You’ll also notice that there is only one poll per user. While you’re certainly welcome to provide the question details elsewhere (whiteboard, PPT, etc.), the system doesn’t really care what the options are. My goal is to create a system that allows instructors to create a poll in a few seconds versus several minutes, so I’ve taken away as many hurdles as possible!


To launch a poll, an instructor only needs to do 2 things:

  1. Click on the Start Poll button.
  2. Share the Poll ID with the students in the class. They will enter this ID into their response app in order to participate. In the future, I may also have an option to require a poll password, but I haven’t decided if that would detract too much from the simplicity of the solution.

When the poll is complete, the instructor can stop accepting responses by clicking the Stop Poll button. Responses can currently only be viewed as a pie chart, but I plan on adding additional ways of viewing the data later on. Here’s an example –


Before moving onto another poll, an instructor would probably want to clear all of the current results from the poll, which can easily be done by pressing the Reset Poll button.

Well, that’s about if for the instructor view. Students have an even easier time participating than instructors!

Student Application

After downloading the application for free from the iTunes App Store, students need only to launch the application and enter the Poll ID in order to participate. In addition, the poll ID is stored in the application’s preferences so that they do not need to re-enter the information every time they launch the application.

App screenshot

A student would need to update the Poll ID only if they were participating in a poll offered by another user. In that case, students would simply type in the new Poll ID in the textfield at the top of the screen and click on the Update Poll ID button.


That’s it for the student application!

The Administrator Interface

I’ve also created a simple Admin screen that allows me (and other future system administrators) to quickly add, delete, or modify Instructor accounts. The screenshot below shows what that tool currently looks like.


App screenshotPlanning for the future …

As I mentioned at the beginning of this post, the project is still very much in a pre-release status, however, I plan on launching a beta program sometime before the end of the year. Some things I’ve built into the service but not implemented yet include:

An API that would allow schools and other organizations to create their own student app to go along with the service.

Currently, the system stores the time at which each response is entered into the system, but I do not display that information anywhere yet.

The system also stores the Unique Device Identifier (UDID) for each response. The UDID is a 45-digit string that is unique to each iPod/iPhone. This number could be used to identify students within a class and offer additional functions such as taking attendance or grading. Although the number is collected for each response, the system does not currently use that information.

If you have any ideas or suggestions for features, please feel free to leave a comment below!

Posted by Brandon Ballentine

My name is Brandon and I'm an iOS developer and instructional technology consultant based in Los Angeles, California.

Leave a Reply

Your email address will not be published. Required fields are marked *