On Concurrency

Think of a common task across the iOS ecosystem: a network call. The user launches your app and you want to show them the current weather. The following is a naïve, linear implementation. This code is linear and it’s easy to follow. For example, in order to get to line 25 (the print statement) all […]

On joining a new team and coding as a group

In the Game of Code… As an iOS lead, I had plenty of responsibilities: writing stories, helping design with iOS guidelines, mentoring other devs. However, I always tried to be very aware of code reviews that were submitted by the more junior members. When you start your first job, code reviews may leave the junior […]

Your happiness should not come from your code

It’s exciting to learn One of my best students is going through college. He’s innovative, smart and amazing. However, the opportunities for him are scarce because of a stupid prejudice: being young. I have been mentoring him for two years and he’s gotten full-time jobs while going through college, but very few companies will believe […]

What’s the going rate for an iOS developer?

The Context One of my students came to me and asked me about taking on a contract for a non-trivial app. We’re talking complex navigation, account creation, and animations everywhere. The client was willing to pay a few thousand dollars on the condition that the student sign an NDA and forego taking credit of creating […]

iOS developers, what is your code hiding from you?

I will usually keep the mailing list exercises separate than the blog, since the blog is more mentor-y in nature. Technical skills are easier to practice in your own time after reading an email than after you’re reading a blog post. However, some readers have emailed me with their answers and I just have to […]

How do you keep up to date with WWDC videos?

WWDC is basically Christmas for developers in the Apple ecosystem. Not only do we get to enjoy the marketing side of it (Hello, ARM Macs!) but we also get a peek at the amazing tech advancements that are going to be enjoyed by users of your app (or the app you work on). It’s been […]

Improve at work with (almost) every ticket

You’re at work and you’ve been assigned a ticket to make a table view with cells of varying heights. During estimation, the team decided that this was worth only a few points or only a few hours and they’re more than likely right. This is not a complex task. However, you’re still not an expert. […]