Archive for the ‘Development’ Tag

Objective-C Tutorial Videos

I was in Dallas last week teaching iOS (iPhone/iPad) development at Neiman Marcus, and due to the wonderful, wintry weather (hm, nice alliteration), the second day of the class had to be cancelled. So I pushed out some homework assignments and PDFs of the course material via Dropbox, and put these videos together for some of the trickier bits on Objective-C.


About Objects Student’s iPhone App Featured on the App Store

Craig McLeod, a developer at Resort Technology Partners who attended the About Objects Objective-C for Beginners and iPhone Programming Workshop classes back in October, sent me an email last week to let me know that his team’s very cool REALSI app is now available on Apple’s App Store. Here’s what he wrote:

January 26, 2010

Hey all,

My company started on a complex iPhone app, REALSKI, an Augmented Reality iPhone app, weeks before I went to my About Objects class. When I came back, I was able to jump into development become a key member of the project!

Apple has featured REALSKI under New & Noteworthy apps in iTunes as of yesterday. I don’t know how long it will stay there, but there is a possibility of Apple featuring it more prominently later on. They contacted us about promoting it last week.

It’s kind of a big deal to have a featured app so I’m telling people. The app requires an iPhone 3Gs and it is free. It comes with 5 ski resort maps included and there are over 80 more ski resorts available for download at $0.99 each.

What is augmented reality?
With the iPhone it is data/information layered over your iPhone camera’s current live view. We have taken ski run GPS data so that when you are at a ski resort you can hold up your iPhone and see the runs/lifts/buildings around you labeled accurately to what you are looking at through your iPhone’s camera.

The web page:

This is me showing an early demo to Olympic and X-Games gold medalist Shaun White here in Vail this season. All the Olympic hopefuls are training down the road at Copper Ski Mountain and the Burton (original snowboard company) Team came over to Vail.

Here is a pic of it being used a the World Cup ski race at Beaver Creek this season.

The direct link to the app in iTunes

Craig McLeod demoing his team's (apparently jaw-dropping) REALSKI augmented reality iPhone app for Olympic medalist Shaun White and unidentified friend.

The picture of Craig demoing the app to Shaun White is too cool to leave as just a tweetphoto link (see above), so I just had to include it inline here.

Needless to say, I’m thrilled that Craig feels our training helped get him up to speed on iPhone development quickly enough to be a key contributor to a cool app that shipped just a few months later, though ultimately the credit goes to Craig. Nothing makes a teacher look so good as a great student. Way to go, Craig!

Formatting Code for Printing in Xcode

If you have ever found yourself wanting to print out nicely formatted source code from an Xcode project, here are some very easy to follow directions from Richard Milewski for integrating the enscript utility. Note that although the article doesn’t mention it, you can use the same utility to write the formatted output to a postscript file should the urge ever arise.

Man, that’s a blast from the past. I don’t think I’ve used enscript since back in the NeXT days. I guess that’s because I never print code out anymore, but every once in a while a student in class will ask to print out some of the files they’re working on so they can stare at them back in their hotel room. Which is not a bad approach, because sometimes it can really help to scribble on pages of code, especially when you’re first learning Objective-C.

Getting Started with iPhone Development

We recently released a new set of iPhone 3.0 developer examples as free, downloadable Xcode projects. If you’re new to the iPhone SDK, or you’re trying to learn the basics of Core Animation, or the details of how to work with UITableView and UINavigationController, these are a great place to start. (You can download the examples here.)

These projects are designed as a progressive series that start with the rudiments of iPhone programming and gradually work their way up through the development of a fairly sophisticated productivity app. The examples concentrate on showing how to do things programatically — there are no .nib files in the projects.

We’re planning to release a corresponding set of .nib-based examples later this summer that will demonstrate how to develop the same apps using Interface Builder. It’s going to take a little longer to get them ready because of the extra writing required to adequately explain how things are connected, and exactly what Interface Builder is doing. IB is pretty mystical for developers who aren’t familiar with it, and there’s just too much of that magic going on for the examples to make sense with just code comments (which is primarily how the current set is documented).

Anyway, here’s an overview of the initial set of examples:

First App demonstrates the basic steps to configuring an iPhone app’s user interface programatically, without requiring an Interface Builder (.nib) file.

Editable Detail View demonstrates the use of controls such as text fields and buttons, including how to connect controls to the code that implements their behavior.

Animating a View introduces developers to the fundamentals of using Core Animation to animate view transformations.

Simple TableView demonstrates how to configure a table view programatically to present a list of values.

TableView with Navigation builds on the Simple TableView app to show how to use a navigation controller to manage navigating from a list to a detail view by tapping on a table row.

Editable TableView demonstrates how to add, remove, and reorder rows in a list view, and how to edit model object property values in a detail view.

TableView File Persistence shows how to create and populate a list of model objects from a property list (plist) file, and how to persist changes to the list.