Web Development for the iPhone

I am now attending a session on developing Web applications for the iPhone and iPod Touch. The presenter is Steve VanBrackle. Unfortunately, I have already discovered that this session is going to be completely dependent upon a Mac program called DashCode, for which there appears to be no Windows alternative. The interface for DashCode appears insanely easy to use, though.

To begin, VanBrackle simply created a new project. A working shell app was immediately created for him to edit and customize. All of the buttons, bars, etc. are automatically generated as part of the app.

He is now demonstrating how simple it is to click and drag information from a data store into the app. For the most part, it’s creating a JSON file to generate the data that’s being displayed in the application. Because of this format, it is easy to create the app a single time and then replace the data without having to redo everything.

At this point, he’s showing us how to add new buttons to the application, once again using click and drag interfaces. Once he places the button, a dialog appears presenting him with the choice of various event handlers that are available on the iPhone with buttons. By clicking one of the event handlers and typing the name of a function, a new, empty function is automatically created in the code window, allowing him to insert his custom code into the function.

To me, this portion of the DashCode interface looks extremely similar to the visual portions of Microsoft’s Visual Basic editor (creating and modifying macros within Office programs).

An audience member just asked how to insert custom imagery and graphics as opposed to using the stock graphics that come with DashCode. He explained that it’s the same principle.

Within DashCode, you can also set page attributes (obviously), such as the page title (and, presumably, meta elements).

Opening the “Design Web Clip Icon” dialog will allow you to create your own icon to be displayed on the iPhone/iPod Touch menu screen.

Throughout the process, he’s used an iPhone emulator to display exactly how the app will be displayed and used on the device.

Someone in the audience also asked if the code generated by DashCode will display at all properly on other mobile devices, such as the Blackberry. He said that some items will not work or display properly, as this is tailored specifically for the iPhone. However, he also showed us the MIT Mobile site that has been developed to query the browser to determine which mobile device is being used, and arranges the site appropriately for that device. He explained that the source code for MIT Mobile has actually been opened so that other groups can use the backend to create their own mobile sites. A story ran a few weeks ago showing that WVU had used the MIT Mobile source code to implement their own mobile Web site. However, I was not able to find a location where the source code is actually available. I’m assuming that you actually have to contact MIT for a copy of it.

DashCode can also create a standard version (for desktop Safari) of your Web site using the same data source. As an aside, he also explained that the silver circle around the camera lens on the iPhone is the external antenna for the GPS system.

The battery on my laptop is getting very low, so I am, unfortunately, going to have to end my live-blogging at this point. I hope that some of the information I’ve blogged has been helpful. I will try to post a summary of the conference itself and my reactions to it later this evening. Thank you.

I am currently attending a conference targeted at Web professionals at colleges and universities. The conference is known as edUi 2009 and is being hosted at the University of Virginia in Charlottesville. I am attempting to live-blog from the sessions I am attending today. This is one of those posts.