Posted on 02.02.12 by Jaymes |

UIAutomation and Pusher

UIAutomation is Apple’s answer to integration tests. It allows you to drive and run assertions against your application using a javascript library that interacts with user interface elements. It’s great to have such a powerful tool, but what if you have an application that depends on external triggers, such as Pusher events?

Let me introduce you to UIAHost. More specifically, it’s method performTaskWithPathArgumentsTimeout. What this allows you to do is execute a script in the flow of your tests.

Say we want to execute the ruby script:

All we have to do in our UIAutomation script is this:

That’s a …continue reading


Posted on 01.31.12 by Jaymes |

Our first iOS app

We just launched our first iOS app: TravisCI! It lets you browse and view live updates of builds submitted to

We chose to build a native front end to Travis CI in order to hone our iOS skills while working with a RESTful API. During development, we came across many neat libraries and tools we’d like to share with you:


The first library we used is RestKit. RestKit enables any iOS/OSX application to interact seamlessly with a restful web-service’s resources. Once the appropriate object mappings are defined, a simple call, such as the one below, asynchronously fetches the repository object …continue reading


Posted on 02.22.11 by Brad |

From 0 to 1 Million in 6 Hours

Having an office less than a block away from a protest that’s making international headlines gave us a unique opportunity: use our technology prowess to experience live events in a new way. So what did we do? We wrote a site using Rails, WebSockets, Heroku, MongoDB, and the Twitter Streaming API. In 6 hours.

The Pieces

We’re using heroku to host the site, although (with a few changes) it could be hosted as a static site on S3. The nice thing about heroku is the dead-simple deployment:

$ git push heroku

The next step was determining the persistence engine. We chose MongoDB …continue reading


Posted on 11.04.10 by Brad |

AtaconApp, Facilitating Conference Participation

Over the course of 48 hours, Stephen, Brad, Nick and Jaymes cranked out one of the 180 web applications to hit the Internet thanks to the Rails Rumble. The result of their efforts is AtaconApp, an app to facilitate conference participation.

Starting with a Linode Stack Script written by Brad Grzesiak and Levi Cook, the team aggressively ignored the typical, shiny web 2.0 style and instead went for substance, Bendyworks’ core strength. Heavily using external libraries and services such as Twitter, Google Maps, and Pusher, the guys developed the following features: