Monday, January 30, 2012

App Development

Recently we had the opportunity to take part in an Apple iOS App Development workshop organised by Apple with Apple presenters Guy, Tom, Tori, Victor, Sonya

Here is a brief run down of what we covered :

To set the scene we looked at what it means to: 'Design Content for a Mobile World'
Context: There are now 5 billion mobile users and content is the focus.

An App should be:
  • Delightful
  • Innovative (use augmented reality, camera, inbuilt compass etc)
  • Integrated (iphone, ipad, etc)
  • Optimized
  • Connected (Apps that work well with other Apps, connect to the cloud)
  • Localised
  • Designed (If you design your App to take advantage of a new feature available on the iPad it will be quickly up and promoted by the blogosphere)
A suggested resource to look at for App design was the blog : website

Examples of some quality Apps
There are now over 20,000 ipad education Apps.
Discovery education web app ( USA focused)
iTunes U (800 content providers, many courses free, ability to create courses) for example, Stanford University provides an app development course, for free via iTunesU
Khan Academy
Duke University digital collection accessed via the DukeMobile App
Open university open textbooks
Nixonland Rick Perlstein

MyCalculatorPro App
Algebratouch App
Virtual history ROMA
Kana LS touch
Art Authority
Things - organise yourself

iBook examples:
The Voyage of the Dawn Treader CS Lewis
Calculus Volume 2
Nixonland Rick Perlstein

Web App v Native App development

Web Applications
  • Simplified deployment - deployed from website not App store
  • Optimised web page designed for consumption on a smaller form factor mobile device
or for more examples.

A comparison table explaining the different uses features of the two types of Apps can be found at: When is it best to create a Web App v a Native App

Web App Development
All versions of Safari—Safari on the desktop and Safari on iOS—use the same WebKit engine.
Look at the iOS developer Library documentation for more information.

Dashcode helps you create mobile Safari web applications. Apple provides a comprehensive suite of developer tools (including Dashcode) for creating Apps. Dashcode is part of the Xcode suite which include applications to help you design, create, debug, and optimize your software. You can download the Xcode tools from the Apple Developer Connection (ADC) website ( Registration is required, but free.
A useful workflow for developing Apps is at: Tools Workflow Guide for iOS

An alternative to Dashcode is to use web app frameworks that provides web app tools to help developers build HTML5 apps the look and feel native and run on any device. Available from

Tools needed
* A Mac - with Lion (for Xcode)
* Test devices (can use simulator but better to have some devices to test on)
* iOS developer program
By being a paid up developer can distribute your Apps directly to 100 devices to test without having to publish to App store. Paid up developer costs Australia $129.
Enterprise program developer is for the entire organisation US $299/year but only for in-house app distribution not to App store.

Native App Distribution
* App store (you pick the price, you get 70% of sales revenue, goes through a submission process, receive revenue checks monthly, no charge for free Apps)
* Ad hoc deployment to 100 devices
* Enterprise deployment (manifest to tell if we want wireless app distribution, host, notify, you provide access via a web portal and they install, update internal apps

Resources for App development
iTunes U Stanford course for App development(CS193P) - have great books on OS10 development - forum to help you

Create your own iBooks with iBook Author App (from your Mac)
With the new iBooks Author App you can create your own ibooks
Examples of great interactive iBooks:
The Voyage of the Dawn Treader CS Lewis
Calculus Volume 2

The iBook Author App is only available from your computer not your iPad. However it is free and has templates for easy iBook creation and widgets to create quizzes, incorporate keynotes, video, images etc. (Note you do need Mac OS version 10.7 or later to download)

Feedback from the day
We had a mixture of participants at the workshop with differing backgrounds and skills. We also had a few students attending. For some developing an App was not as simple as many of us had envisaged. While for others they were in their element. Participants feedback was that more understanding of programming code with a lead up workshop might be useful and more hands on activities early in the day. Alternatively start creating Apps using a template design then progress to full creation.

All the participants were grateful to the Apple presenters who obviously knew their stuff and came prepared on the day to give us a comprehensive introduction to App development. At least one participant is now doing the iTunes U Stanford course on programming as a lead up to app writing.