I attended the first App School some weeks back and, as a staunch critic of week-long training courses, I’ve come to be convinced of the opposite.
If you’re a developer, no matter how experienced, interested in iPhone development, read on!
I’m a developer first, with Java being my first language. I’ve programmed in Objective-C for about 6 months (and didn’t like it all that much at the time!). As most practical developers, I was convinced that training courses weren’t all that useful, and that online material was more than an adequate substitute. I still hold that opinion about certain types of courses, but certainly App School was an eye-opener, and I’d heartily recommend you check it out, if you’re considering starting iPhone development (and have some development experience).
The App School course covered Objective C in enough detail to get started, but in short enough time to not get bored. That’s quite a hard thing to do. Yeah, sure, most of us were having difficulties with memory management concepts, but those difficulties were easily turned in to “oh yeah” light bulb moments by referring back to the notes. After some theory, we were quickly immersed in creating applications on the SDK. Always a crowd pleaser (to be actually doing something), and I think the mix of theory versus getting knee-deep in practical application is something that is both tricky and important to get right (so your audience is not bored/tuned out, but is equipment with the necessary knowledge to not get lost).
You can see, for yourself, what the course covers, but we were definitely in a position to author decent iPhone applications by the end of the week. We covered using all the standard UI layouts and components, managing content, retrieving content and using the iPhone built-in features. This, within a week? Yes, really!
Why my opinion on training courses changed
So, my main criticism of training courses, up to this point, was that they were a doddle. Certainly any course I’ve been on (including development-related ones) was considered a holiday with some completely meaningless certificate that you got at the end (whether or not you excelled at the course). Most were geared to too wide an audience, so everyone on the course was either completely lost, or completely bored at various stages of the course.
App School was different in that regard. They’d already set out the minimum requirements, and with Objective-C not being one of them, you might be concerned that it’d be too wide an audience. As above, this was handled brilliantly.
My other main criticism of training courses is that they’re too theoretical. On programming courses, we didn’t touch an IDE or SDK, on source management courses we didn’t do a single check-in, on DBA courses there was no database server to connect to. You get the idea.
App School was completely different. The course was almost entirely practical exercise based. I can’t stress how valuable a way of learning this is. We were never bored (except maybe for 1 or 2 slides of Objective-C memory management!!), because we were seeing the results of our learning in real time. As 1 of us had run in to a problem, it was quickly resolved and the rest of us all learnt from that experience. That’s something no book, or online material will help with. The week was full of incidents of “what the hell does that mean” responses to generic, non-helpful SDK errors. All of us came away knowing some of the causes.
Was the course well presented?
The content was rockin’, the learning was good. How well was the course run? Don’t be fooled by the relative inexperience of the presenter, Daniel! We built up a good rapport with him from early on, and he was well able to answer the various questions thrown at him. It’s easy present some slides in a clear manner, the skill is being able to back that up with subject knowledge, and Daniel had that in abounds. He was able to spot the weaknesses (did I mention memory management?!) and deal with them 1-to-1, with everyone learning from that process.
We got great entertainment from the staff at the hotel, including the bravery of one student, John, who asked the chef if a particular dish (mince-meat looking) was beef. Even after the chef paused, muttered “Uhh”, paused again, and said “I think so”, John chose that dish. Kudos! The hotel is hard to get to, there’s no denying! I got lost only living 10 minutes down the road, armed with Google Maps. It’s a bit out of public transport’s way (though there are nearby buses). However, the facilities were top notch (the air-con actually worked, for example; bonus marks for a working projector). We were well looked after.
Was I convinced?
Absolutely! No longer do I hold the opinion that all training courses are a waste of time. I experienced a very valuable way of learning, and learnt lots. I’m still processing a lot of what I learnt! I came away with the ability to develop for the iPhone, and (more importantly, in my opinion) the ability to troubleshoot when things go wrong.
I’d heartily recommend App School, based on my experience. If you have a reasonable experience with any sort of OO programming, you’ll be an ideal candidate. You won’t be bored, and you most likely won’t be overwhelmed (not always anyway!). It’s a tough course, in that you need to be there to learn, not on a junket. But, learn you will; of that I can assure you!
My thanks to Daniel, and those involved behind the scenes at App School; who said you can’t teach an old dog new tricks?
Finally, as a disclaimer, I was given a subsidised place on the course. I’m a transparent person, if you know me at all, so while it might be easy for me to be so positive on a subsidised place, I was under no pressure to post any of the above, and certainly wasn’t paid for it.