I was at a Phish concert this October and was amazed at how many little screens I could see – mostly taking pictures or video of the band, but also people checking the set list or texting their friends that they were at the concert. I realized that I could control these screens with an app – and how kewl it would be to synchronize some sort of a light show utilizing each screen as if it was a single pixel on a huge display.
I started work on the app the next day – and quickly realized there were a number of ways to pull it off. Balancing how much time I had between putting the kids to bed and my own head hitting the keyboard vs. when I wanted it to be done drove a lot of decisions. How much money I wanted to put into the project also forced me to build it a specific way. In the end the architecture of the final application is as complex as it needs to be, but no more.
I posted a request on facebook looking for beta testers and had about a dozen friends and family lined up to play with an early version of the app. Distributing it to them without publishing it on the google app market was problematic, but eventually I had them all reporting back that the app worked.
A month after the inception of the idea it was done – but I needed to obfuscate the code, that is: Jumble it up so it couldn’t be downloaded and reverse engineered too easily. This took way longer than I wanted it to because I had to learn a few new technologies I’d never used before.
This final hurdle surmounted, I released the application on Sunday. You can install it on your droid with this link to the market page.
The iPhone version should be done in a few weeks. Yet another set of new technologies to learn, but building the app the same way (with the exact same light show being displayed) will be easy. *UDPATE* The iPhone version has gone live on the App Store.
Here’s a video demonstrating the final product: