We just finished another weekend class of Beginning iOS Programming, part of the FocalShift iOS Weekend training course schedule. This time we were at the Residence Inn, in Los Altos right near the corner of El Camino and San Antonio roads, as it turns, a place very convenient for walking to lunch and dinner.

The facility was nice, better than our last location in Fremont, with a bigger room, a projector screen (so we only had to take one of ours), plenty of room for as many tables and chairs as we needed; all provided by a very helpful staff who brought us water and ice, coffee and tea; and locked and unlocked the room to protect our Apple gear during lunches and dinner.

As usual, this class had a wide variety of skill levels, from zero programming experience to professional programmers. We had several students, including a couple of UI designers, who had iPhone app ideas they wanted to try implementing themselves (if only they knew objective-c and iOS!) We had a manager who had not programmed for many years and wanted to be in better touch with the programmers in his group. A few were being transitioned to iOS programming at work so they needed a crash course, and others had solid programming experience but had become bored with things and wanted to freshen up their coding life with the hottest API for the hottest platform in the world! Can’t argue with that.

Lots of folks with different strokes, so we started this one with a Friday evening introduction to the “C” language. Very simple in scope, but once you start learning the details and pitfalls of memory management and malloc() and free() you don’t know it, but you are yearning for Automatic Reference Counting, which we cover the next day.

This is a very hands on class, so everyone worked on a laptop as the instructor, Bennett Smith, walked us through the basics of the Xcode IDE. This learning by doing part keeps us awake after watching the whiteboard session explain the dry vagaries of objective-c syntax and the iOS framework. Yogi Berra once said, “You can observe a lot just by watching”, but he also said “Ninety percent of this game is half mental”, so I’m going to disregard his baseball-wisdom and stick with my belief that doing works better than watching – at least it feels better.


After a long day, Saturday, we were back at it Sunday morning; this time to get on with more advanced concepts that included gesture recognizers, Key/Value Observing, Table Views, and more work with Interface Builder. Everyone loves to see a concept take life as an interactive application and Sunday didn’t disappoint, as we built the counter page of the Count ‘em Up! app, complete with tap gestures, image buttons, and your own choice of background color or, if you like the challenge, a background image. The designer guys loved this.

Sunday was Mothers’ Day, so various people stepped out of the room to make phone calls, and several left early to make it in time for dinner with Mom. One sat at his desk filling out his Mothers’ Day card. But it was a good day for Mothers; 18 of their children sacrificed a weekend to learn something new that can enrich their lives, both creatively and financially. iOS Weekend was good.