I’m speaking at two conferences in early 2010, as indicated by the badges in the right side column.
First is CodeMash in Sandusky, OH, January 13-15. I’m doing one four-hour “precompiler” tutorial on iPhone programming, and two sessions.
No, of course they’re not done yet. But here’s a bit of what I’m planning:
- Introduction to iPhone SDK – I’ve decided that rather than put up some slides to walk through the basics, I’m going to teach the entire tutorial in Xcode and Interface Builder. This means I need to not only write my examples in advance (duh), but to pull together a bit more of a script so I know where to stop and explain things: “Objective-C uses square braces for method calls, which are really better thought of as message dispatches”, “
IBActionis synonymous with
void, but tells Interface Builder it’s OK to accept a connection to this method”, etc. I’m also thinking about how to cover the most truly useful material in four hours. I think I’d like to do the trivial browser in the first hour to do basic project building, IB, coding, etc., a tabbed app in the second hour to play with multiple view controllers, and a navigation app in hours 3 and 4, since those are so bread-and-butter. The nav app might use the webservice of the conference’s session list… if I think we can really pull off tables, networking, and XML parsing in two hours. Gonna have to rehearse to convince myself it can be done in a group setting in that kind of time.
- How Do You Do That on iPhone? – This is just going to be a grab-bag of non-obvious techniques that you can’t get from the docs and instead have to learn from forums, programming guides, word-of-mouth, etc. Things like custom table cells and building the “full” and “lite” versions of your app with one Xcode project (hint: understand how “targets” work).
- Oh Crap! I Forgot (or Never Learned) C! – In a way, this is the last gasp of a book that I wrote 100 pages of before it just ended up not happening. My thesis was that for all the developers who never learned C, or did but forgot, it’s a real bitch to be thrown into the world of pointers and
mallocand life without objects, especially when the premier guide to the language was last updated during the Reagan administration, and contains no-longer-helpful analogies to Fortran and Pascal. The idea of the book was to be a C primer that you’d work through with the iPhone SDK, not in order to learn the iPhone APIs right away (we already wrote that book), but so that there would be a specific workbench, freely and easily available, for learning the C language (this is where K&R basically says “use
ccon the command-line and if that doesn’t work, go ask a sysadmin.”). The session is going to survey the language from the point of view of scripters and other modern-day programmers, with particular attention to memory-management concerns, and idioms that are unique to C (things like setting up “context objects” for callbacks, because you don’t have closures).
Then, in April, I’ll be at 360iDev in San Jose (register with my special link), speaking on the topic of Core Audio. The talk, Core Audio: Don’t Be Afraid To Play It LOUD is one where I’m going to try to play up the fun factor a little more, and embrace the fact that Core Audio is a goddamned hard API to master. If you can do anything in Core Audio, you should feel awesome, and I’ve found that small successes in this API make you want to learn more. Oh, and bonus points if you catch the reference in the session title.
BTW, more news on the Core Audio front in an upcoming post…