Autolayout, Adaptive Layout, Debugging in Xcode, iOS design patterns, and more

tools of the trade

As an iOS / Swift mentor for, every week I give my students a list of resources as a follow up to our mentoring session.  Typically this consists of a short email listing the resources, which can include podcasts, videos, blog posts, etc.  I have a ton of resources I like to share over the duration of the course, but I try not to give too many at once so as not to overwhelm.  This week, however, most of my students hit a transition point in their learning, as they started working on building their own apps, and we covered a lot of ground in our discussions.  So much so, I decided it would be easier to write this blog post covering the related resources.

This week’s resources relate to putting together your UI in Interface Builder – Auto Layout, Adaptive Layout, Size Classes, Dynamic Text, and mastering the Interface Builder IDE.  Additionally, we touched on architectural design patterns (MVC, MVVM, etc.).  Finally, most of my students are starting to struggle with networking via the AFNetworking library, and using Objective-C libraries (although none of them know any Objective-C) in their Swift apps using bridge headers.  So without further ado, here are the resources for this week:

Mastering Auto Layout in iOS (plus adaptive layout, size classes, dynamic text)

written tutorials:
Beginning Auto Layout Tutorial in iOS 7: Part 1
Beginning Auto Layout Tutorial in iOS 7: Part 2

Video: (downloading the PDF of the presentation for reference can be helpful in addition to the video)

WWDC 2014

  • What’s New in Interface Builder
  • Designing Intuitive User Experiences
  • Building Adaptive Apps with UIKit

iOS 7 Tech Talks

  • Architecting Modern Apps, Part 1
  • Architecting Modern Apps, Part 2
  • User Interface Design for iOS 7 Apps

WWDC 2013

  • Interface Builder Core Concepts
  • Taking Control of Auto Layout in Xcode 5
  • Building User Interfaces for iOS 7
  • Introducing Text Kit
  • Advanced Text Layouts and Effects with Text Kit
  • Using Fonts with Text Kit

Adaptive Layout

written Tutorials:
Beginning Adaptive Layout Tutorial (includes quick intro to Auto Layout, too!)

Supercharging Your Xcode Efficiency – keyboard commands, customizing Xcode, and beyond

blurred backgrounds in iOS…

About Table Views in iOS Apps


Debugging in Xcode

WWDC 2014

  • Debugging in Xcode 6
  • Fix Bugs Faster using Activity Tracing
  • Advanced Swift Debugging in LLDB
  • Improving Your App with Instruments

WWDC 2013

  • Debugging with Xcode
  • Advanced Debugging with LLDB

Architectural & Design Patterns

WWDC 2014

  • Core iOS Application Architectural Patterns
    • Get the most out of iOS’s frameworks by understanding their core idioms and expectations. Learn about pervasive design patterns like “Model, View, Controller”, Target/Action, Delegation and others used throughout Cocoa Touch. Gain practical knowledge of architectural idioms to organize your code for flexibility, clarity and reliability. See how to structure your app to take full advantage of Apple’s frameworks.
  • Advanced iOS Application Architecture and Patterns

360iDev Min

Jay Thrash: Good Intentions: A Path to Building Better View Controllers
Interview with Jay Thrash by Saul Mora (NSBrief Podcast) – follow up on the View Controllers Talk

Reactive Cocoa
Ash Furrow’s write up on Eidolon
Swift Development Branch of Reactive Cocoa on GitHub

Networking Libraries

Alamofire – Swift alternative to AFNetworking

Tools for wireframing, mock ups, templates…



Balsamiq Mockups

Photoshop Templates, Action Sets, Etc.

Teehan Lax
Michael Flarup’s App Icon Template

Using Swift With Cocoa and Objective-C


free book by Tower – Learn Git (I recommend starting here, it starts with a gentle introduction).  Also Tower is my git client of choice, but you can access git directly from Xcode.

intro to git

bit bucket git tutorials

Six Revisions – top 10 git tutorials


Fuad Kamal

With a background in biotechnology, Fuad began his career developing assays and cutting edge technologies around HIV research. From there he shifted into the bioinformatics arena, where he developed innovative information systems in Perl. He started playing with the Flash platform around the time Flash 4 was released, and later developed the flash interface for the Flight Information Display System (FIDS) that you see at pretty much every major airport around the world today. Fuad loves delving into new technologies and pushing technologies in novel directions. Currently he is focused on providing mobile strategy & development for the Health & Fitness markets. He is an iOS developer, teaches an Android & Kotlin college course, and is currently writing The Kotlin Book Fuad has often applied principals he learned from his study of the martial arts to mentoring others as well as taking a unique approach to problem solving. He has found that quite often, the barriers we set before us are more mental than anything else, and the key to overcoming them lies in understanding this concept.

Click Here to Leave a Comment Below

Leave a Reply: