Jonathan Gottfried and Adam Purkiss Are The Latest Twilio Developer Contest Winners

Here are the winners for our recently-completed holiday and Salesforce developer contests. Congratulations to both Jonathan Gottfried and Adam Purkiss for their great entries!

Holiday Contest Winner: The Snowman of Babel by Jonathan Gottfried

JonGottfriedThe Snowman of Babel melts away language barriers in the happy-go-lucky holiday season and informs people about holidays they may know nothing about. To use the app, call (845) 367-9979 and enter one of the options on the list to hear a translated holiday greeting and holiday fact. You can also text ‘?‘ to (845) 367-9979 to see a list of options. Jonathan blogged about his entry and you can find the source on GitHub.

What’s the story behind The Snowman of Babel?

JG: My school, Stony Brook University, has a very diverse campus and I am constantly seeing flyers for various holiday events in non-English languages. I realized that I could neither understand what they said, nor would I know how to give a holiday greeting to someone from another country or even tell them about it if they didn’t know what it was. This gave me the idea for a holiday-themed translation app. In the future, I will likely expand it beyond the small subset of holiday greetings that I gathered to be a more fully featured SMS/voice translation program utilizing voice transcription.

What technologies did you use?

JG: The application is built purely in PHP and uses both the Twilio API and the Google Translate API. I love the idea of mashups and when I saw the holiday contest I knew that I wanted to incorporate external APIs, using Google with Twilio was an obvious choice for me due to my familiarities with both.

Having used Twilio before for a variety of projects, I found it ridiculously easy to integrate it into my translation app and even discovered some cool new features like foreign language support for voice.

How did you get started developing with Twilio?

hvzJG: I started using Twilio in a serious capacity for my school’s game of Humans vs. Zombies. It is essentially a 1000-person tag game played around our campus over the course of a week. Since people are running around tagging each other, it has always been a challenge to record a player’s status in real-time, as most people don’t run back to a computer after every tag. This is where Twilio came in, providing an easy way for me to let players text in their tags to be updated on our website in real time. The game is available online and the source will soon be on GitHub.

Salesforce Contest Winner: Surveilio Force by Adam Purkiss

Adam PurkissSurveilio Force extends the normal web based survey of Force.com and permits survey takers to complete their surveys via phone instead of online. This is accomplished by combining the Twilio APIs with a Visualforce/Apex application on the Force.com platform.  All Twilio calls and response management are custom coded in Apex.  The source is included in the installable package and you are free to use it as you wish. Surveilio Force was built at the Cloudstock hackathon.

What is the story behind Surveilio Force?

AP: I decided to use Twilio before I had an idea for an application since I’ve never used the APIs and was inspired by a presentation given by Evan Cooke many months ago at an Open API meetup.  His passion for leveraging Amazon’s EC2 – proving that high call quality can be achieved with a cloud architecture and doesn’t necessarily require a proprietary, high cost, in house server strategy – made a lasting impression.

So while driving and thinking about what I might hack to life with the TwiML verbs, I remembered a complicated Force.com integration I was involved with a few years back.  The project was to integrate an external survey tool with an external IVR tool on Force.com such that an educational institution could issue surveys to students via email and over the phone.  So hoping the Twilio APIs were as easy to use as the documentation promised, I set out to deliver a simplified web-based/IVR survey application.

In the future I intend to submit an upgrade with easier (perhaps well documented) installation instructions along with transcribe functionality.  This will allow a caller to answer memo or comment questions that can be stored in text form, as well as providing a link to the audio recording of their answer.

What technologies are you using?

AP: Surveilio Force runs on Force.com using Sites to expose TwiML pages to Twilio.  Code from Survey Force was used as a starting point for the web-based surveys which includes CSS that makes the survey’s and survey creation look better, though this styling is not necessary to use the application.  Otherwise it’s all custom Apex/Visualforce code I wrote for the contest, deployed in an unmanaged package for others to read and reuse if desired.

How was your experience integrating Twilio with Salesforce?

AP: Exciting at first and then I hit what seemed like a brick wall.  In order to collect and save survey answers you need to be able to save the results of the previous <Gather> call upon instantiation of an Apex controller.  Since no DML (saving to Force.com) is permitted in the constructer I was unsure how I would manage this.  A force.com expert at Cloudstock gave me the tip that solved it.  The action parameter in the page, like this:

Then it was exciting again.


Congratulations again to both Jon and Adam! We’re capping off a great year of contests with one last “Anything Goes” hurrah for 2010. If you’ve integrated Twilio voice or SMS into your application you could win a Google Nexus S. Head over to the contests page to learn more. The submission deadline for this contest is January 2nd at 11:59pm PT.