iOSDevCampDC wrap-up

Last Saturday I had the privilege of speaking at and attending iOSDevCamp DC (which actually took place in Reston, VA).  iOSDevCamp DC is a single day, single track conference that is now in its 4th year.  This was my 2nd year attending.  Unlike most conferences, this one groups all the attendees in a single (large) room for the day (stocked of course with plenty of beverages and snacks as well as breakfast and lunch).  This aspect really helps facilitate the mingling and conversations that make attending conferences so valuable.

I was the 4th of 6 speakers and I gave my matrix transformations talk for the 3rd time in 5 months.  This time I deliberately cut the introductory material somewhat and spent more time on folding and flipping animations plus touched on some general graphics tips like anti-aliasing, rendering retina bitmaps, and avoiding off-screen render passes.  I think it went well.  I forgot to sacrifice to the demo gods beforehand though and got the dreaded bootstrap server error that prevented me from running my demo app in the iOS Simulator.  Fortunately, I had it on my iPad and with the help of the HDMI adapter was able to run Instruments while projecting the iPad screen.

I enjoyed the other 5 talks, but especially Ken Yarmosh‘s talk on gestures and Jonathan Blocksom‘s iOS concurrency talk.  I think I picked up about 3 different nuggets from Jonathan’s talk alone that made attending worthwhile.

Slides from my “Enter The Matrix: Reloaded” talk can be found here (latest version here), and the code can be found on GitHub.

(Presenter tip: If you use a retina MacBook Pro or a new 2012 MacBook Air to present, remember to pack a MagSafe to MagSafe 2 converter so that you can charge your laptop using the power adapter that’s hopefully installed on the podium.)

CocoaConf DC wrap-up

Last weekend I had a great time at CocoaConf DC on my home turf of northern Virginia.  In many ways CocoaConf is the antithesis of WWDC.  Capped at 100 attendees, it’s small where WWDC is enormous, and intimate where WWDC can be impersonal.  It’s a conference where you can meet (and spend time chatting with) every speaker and every attendee, if you put your mind to it.  And really, although the sessions are the ostensible reason to attend conferences (the way we justify them to our bosses or to ourselves), for me at least it’s the personal connections you make that are the real value.  As developers we tend to spend most of our time isolated in our cubicles (and in some cases our homes), so it’s doubly important to take the time to reach out to the like-minded individuals we encounter at conferences.  CocoaConf is a great venue for that.  And with 3 tracks of 30 sessions over 2 days (preceded by an optional full-day intensive tutorial), there’s plenty of knowledge to be gained as well.  A common theme I heard throughout last weekend was the “which of these sessions should I attend next?  They all sound great” dilemma (trilemma?).

This time I presented two talks.  I debuted a talk on custom container view controllers (using the iOS 5 containment API), which in addition to containment covered the iterative process of designing and refining the UI and API for a page-flipping control (demo app shown above).  The slides are available here and the code (open source and attribution-only licensed) is up on GitHub.

My other talk, “Enter The Matrix”, I gave for the second time.  It’s about using matrix transformations in Quartz drawing, UIKit animations, and CoreAnimation (with obligatory, gratuitous references to the Matrix movies).  Since Chicago in March, I’ve significantly improved the accompanying sample app, completely revised the slides for fold and flip animations, and introduced a section on skew and perspective.  The slides are available here (latest version here) and the code is on GitHub.

I think one new talk is the most I can manage per conference.  A great deal of work goes into each presentation (code, slides, and speech).  I like this picture of Saul Mora, Scott McAlister and me all preparing for our talks on the first day of the conference.  We work on our presentations up until the last minute not because we’re ill-prepared, but rather because we care.

One little touch that I really appreciated as a speaker: a MacBook power adapter installed on the presenter’s table in each of the rooms.  Sometimes, it’s the attention to little details that really stand out.

I hear that CocoaConf may be back in DC next March.  If so, I hope I can be a part of it again, either as speaker or attendee.

CocoaConf Chicago wrap-up

I really enjoyed CocoaConf last weekend in Chicago,.  Dave Klein and his family really know how to put on a great conference: the sessions were informative, diverse, and entertaining, the venue was amenable and the hotel reasonably priced, the attendees were friendly, passionate, and eager to learn, and the whole atmosphere was one of community.  In addition to the technical learning, it was great to meet up with old developer friends and make new ones.

I debuted a new talk, “Enter The Matrix”, on using matrix transformations in drawing and animations (with obligatory, gratuitous references to the Matrix movies).  Based on the feedback, people seemed to enjoy it and find it helpful.  The talk includes a comprehensive sample app that contains 7 different demos.  My favorites are the Flip and Fold demos that involve rendering faux 3D animations in 2D courtesy of CATransform3D.  Slides can be downloaded here (latest version here), and you can follow the project on GitHub.