We've had a number of solid speakers and get-togethers over the past year, and I apologize for not keeping the blog up to date.  Even the meetings without a formal speaker have given us the chance to decompress around our favorite topics and provide a backchannel for some current events.

Here's what we've been talking about since July 2015:

  1. In August, after we had a chance to let WWDC sink in a bit, and caught up on a few talks, we had a lively discussion about some of the new things and things omitted.
  2. October was fresh after the tvOS announcement. We discussed some of the limitations and documentation.
  3. For our November meeting, we got an excellent demo from Bob Clair about the physics app that he'd been working on for CERN.  Eric Panchenko also gave us a walkthrough of his trivia app that he rebuilt for tvOS.
  4. I gave a demo in December of a UITableView that prepends data as the user scrolls up (as Messages does).
  5. Dennis Pilarinos from Buddybuild impressed us thoroughly with a new way to distribute Beta builds in January!
  6. For February, we tried a show-and-tell type of set up with a few demos from around the table.

Looking forward to what 2016 will bring!


July 9th: Jeremy Cohen, Facebook, and Core Data

Howdy folks! Join us this Thursday night for a rabble-rousing talk from Jeremy Cohen about what Facebook is doing for persistent storage. I know I've got a ton of questions and I'm sure you do, too — bring 'em on Thursday and we'll hash it all out.


Also, please note that Jeremy's gotta run right around 7, so we're going to do our best to start right at 6:30 on Thursday. All the details are here. See you then!

May 14th: Job Interview Trivia [UPDATED]

Technical interviews: loved by some, loathed by others, but, universally, a necessary gauntlet to vet possible coworkers to prove their worth.

Join us this Thursday, May 14th, at our usual time and place where we will *gasp* quiz each other on interview questions! Sure, there will be softball questions, certainly some hardball questions, maybe a curveball or brain teaser or two BUT there WILL BE PRIZES.

Since I'll be running this open-ended and interactive edition of CocoaHeads, this will be part trivia, and part discussion of which questions make Good Technical Interview Questions for different levels of people.

If you have any interview questions you'd like to contribute, please pass them my way before Thursday!

Post-Meeting Update

Thanks to all who made it out and suffered through 15 iOS interview questions. The good news is that I didn't grade your answers because (a) that'd be creepy and (b) I couldn't read most people's handwriting. But I could make out integers in some of their scrawl!

Here are the slides that I gave for the talk:

…and here's how each question fared. For each question, everybody rated how difficult the question was, where a 1 was for a Junior iOS Dev, 3 was Intermediate, and 5 was Expert. Here's the list sorted by the number of votes a question received to grade its expected difficulty (Junior -> Senior):

Question 1 2 3 4 5 Average
Name some of the UIApplicationDelegate protocol methods and how to use them. 6 2 0 0 0 1.25
What’s a delegate? Give an example. 6 2 0 0 0 1.25
NSArray *foo = @[@“alpha”, @“beta”, @“gamma”]; How would you add another element (@“delta”) to the foo array? 5 2 1 0 0 1.5
What are some ways that you can persist data in an app? 4 2 2 0 0 1.75
Describe what happens behind the scenes when you tap an app’s icon, you see the app open, and you press the home button. 2 5 1 0 0 1.875
How can you add a method to a class that you don’t have the code for? 3 3 2 0 0 1.875
What is a hash? 3 3 2 0 0 1.875
How do you use NSNotificationCenter? 1 5 2 0 0 2.125
What are the differences between an array and a linked list? What do you think an NSArray is? 2 4 1 1 0 2.125
When you create an object (in a running app, not while you’re writing code), where are the bytes located in memory? 2 3 3 0 0 2.125
You have a method call. By using the debugger or a print statement you determine that the method is never called even though it seems plain that it should be. What is a very likely cause? 0 4 4 0 0 2.5
Have you worked with NSOperationQueue? How does it work? 0 4 3 1 0 2.625
When responding to an NSNotification, what will happen if the notification handler executes for a long time? What can you do about it? 1 3 3 1 0 2.625
Why shouldn’t you reference self in a block? 0 1 6 1 0 3
What is an NSZombie? 0 1 3 3 1 3.5

And this is not to say that all the questions were acceptable — some of them I put strikethroughs because our group more or less voted them down to be too algorithmic or pure computer-sciency, which does not equate to a good iOS developer. This is a tricky subject: some startups will want a versatile engineer well-versed in the basics of CS, and, frankly, some excellent iOS devs have had no need to study up for those questions. Additionally, some questions are absolutely harder or simpler if the interviewer is or is not a pure jerk and doesn't lead the interviewee on without any affirmation that they're on the right track. All points taken.


p>This was a very fun and engaging talk! I think we all learned something about each other. My personal favorite was the entire room's reaction to the adding things to an NSArray question: "You can't.", which, as the person with the slides, I said "Oh really, Junior Developer, you're telling me you can't add an element to this array?"

Thanks to all that attended! We'll meet again on 6/18.

Our Next Meeting: April 9th, featuring Orta Therox

Welcome to Spring of 2015!

Thanks very much to Andy Lee for last month's presentation of developing snippet extensions in Swift.  Andy is the best. (Sorry, all other members and future presenters!)

At our next meeting, we'll have Ørta talking about making a mobile team run like an open source team.  Sounds pretty neat, eh?  Join us at the usual place and time, and don't forget about pie afterwards!