People once bought just-on-the-market gadgets because they wanted the innovative functionality those gadgets provided. Now, it’s common to buy a device and then immediately try to figure out how to change or enhance its capabilities.
It only took a week after Apple released the iPhone for its new owners to need to get together and share all they’d learned about hacking their phones. At iPhone DevCamp, held in San Francisco this past weekend, iPhone owners (and interested non-owners) got together to share their knowledge, brainstorm about future ideas, eat a lot of pizza, and agree that while the iPhone that Apple shipped was an amazing device, the combined brainpower of the attendees could bring it to a whole new level.
For those who aren’t familiar with “camp”-style conferences, they’re no-cost events that anyone can start, anyone can attend, and where anyone can volunteer to speak. iPhone DevCamp was conceived in mid-June by Raven Zachary, Chris Messina, and William Hurley. They saw a tremendous amount of pre-release publicity for the iPhone, figured the device would be a hit, and hoped to get a hundred or so people to attend a camp to hack on iPhone. More than 300 people showed up to Adobe’s offices in San Francisco last weekend, ready to push the iPhone’s limits.
The closest the Mac world has had to a camp-style conference was MacHack, the annual developer’s conference that took place from 1986 to 2003. The DevCamp organizers borrowed one of MacHack’s signature events: a hacking contest, which meant that instead of attending conference sessions, attendees would instead spend their time coming up with cool apps and tricks, which would then be demonstrated at the end of the conference. It’s no coincidence that one of DevCamp’s organizers, Christopher Allen, was the 1993 MacHack chair.
Despite the similarities, there was one large difference—MacHack was always aimed at the accomplished wizards of Mac development. No one attending iPhone DevCamp had more than a week of iPhone developer experience. The solution to this problem? Have people team up—the organizers created a colored-dot system so that participants could tag themselves as developers, designers, or testers. The most common question as things kicked off on Friday evening was “How are we going to form project teams?,” and despite worries about trusting the process, when it came time for Sunday’s demos, it appeared that everyone who had wanted to work on a project had found one.
Partly because of the newness of the iPhone, and partly because of the lack of developer documentation (everyone agreed that Apple’s single Web page generated more questions that it answered), everyone helped each other out even when the question was from another team. There were frequent shouts of “Could someone help us debug some JavaScript?,” “Does anyone know how to tell when a phone is rotated?,” and most commonly of all, “Can we borrow an iPhone for just a moment?” While nominally an iPhone developer’s conference, only about half the attendees had iPhones—if you didn’t, you had to borrow one of the precious objects in order to see if what you’d created actually worked.
It wasn’t three days of perfect peace and love, however. A free conference can’t have everything that the expensive ones do, and it showed in a few places. When anyone can volunteer to give a class, the results can be uneven; for instance, some of the designer-types seemed thrown by a “Fear of JavaScript” class that should have been more accurately named “JavaScript for Java Geeks.” Another issue involved finding a way to show the iPhone’s display to the hundreds in attendance when the projector turned out to have focal-length problems. The spirit of ingenuity pulled through in this case, and an iSight camera was able to handle the job.
The organizers tried to find a few sponsors to help out with expenses, and by the time they were done, sponsors covered all the meals from Friday’s dinner and reception to Sunday’s lunch—including wine and beer in the evenings, bagels in the mornings, and pizza at all hours. They also donated t-shirts and handouts for everyone and a variety of prizes for those who worked on hacks.
The conference climax was Sunday afternoon with the 48 demos showing the results of the hack contest. Applications ranged from the useful (such as gOffice, a word processor, and TeleMoose, a low-bandwidth way to shop Amazon) to the fun ( PickleView, a way to combine baseball play-by-play information from mlb.com with twitters from friends, and Tilt, a “game in 1.5 dimensions”) to the merely silly ( WinPhoney, an attempt to make a Windows iPhone emulator). Prizes included three iPhones, one of which was awarded as a thank you to Joe Hewitt, the creator of Firebug, the Firefox JavaScript debugger. In the week since iPhone shipped, Joe has created a version of Firebug for iPhone and started an open source project, iUI, to ease and standardize iPhone UI creation.
There are no set plans to hold another iPhone DevCamp yet, but given the excitement at the event and the popularity of the phone, expect to see this become a regular event.
[ Dori Smith is co-author of JavaScript & Ajax for the Web: Visual QuickStart Guide (Peachpit Press, 2007) and Dreamweaver CS3: Visual QuickStart Guide (Peachpit Press, 2007). ]
Sidebar: Developers roll out first iPhone apps
If the goal of last weekend’s iPhoneDevCamp was to produce applications for the iPhone, the event can be considered a success. As of this writing, 58 applications are listed on the event’s Web site.
Of course, a developer-built iPhone application is different from the programs software makers create for the Mac. In the case of the iPhone, these are Web 2.0-applications written for Safari with programming tools like Ajax. That’s the access Apple offered at last month’s Worldwide Developer Conference as opposed to a more-traditional Software Development Kit (SDK).
Still, the Web-based apps developed over the weekend cover a wide array of tasks, from Web site launchers to a Web page that counts all of the iPhones on Earth. To use any of the programs, just type in their URL to the Safari Web browser on your iPhone—the browser will access the app, which will then run on your phone.—JIM DALRYMPLE