January 16, 2015

› Functional View Controllers - Wrapping View Controllers in a Functional Way

Chris Eidhof:

When working with UIKit, view controllers are the opposite of isolated: they are connected to everything. The view controller often pulls network or database data, populates and interacts with views, and finally, it pushes other view controllers onto the navigation stack (or presents them in a different way). In this article, we'll look at view controllers that do only one thing: they populate the views and interact with them. They don't load any data themselves, nor do they present other view controllers.

Great approach to reducing View Controllers complexity using functional paradigms.

Also, check out objc.io #1 'Lighter View Controllers' if you haven't already.


January 15, 2015

› Why We Banished the Hamburger Menu From Our iPhone App

This neat article from the team at Redbooth describes how they came to a conclusion that has been catching up with the community lately: slide-out menus are not functional.

Sure, they were once very popular thanks to high-profile players such as Facebook incorporating them into their apps. But with a cost: usability issues.

Facebook has since then removed the slide-out navigation from its main iOS app, leaving only a slide-out panel for Messenger, which I think is okay for that purpose.

Redbooth decided to investigate the issue of their apps losing traction amongst their users. Turns out, a simpler approach is better in most cases, including this one.

Personally here's why I've decided to not use a hamburger menu again in any of my personal projects:

  • Why hide something two taps away when it would be perfectly possible to access it with just one tap?
  • Keep the design simple, and intuitive.
  • The tab-bar interface is already built into iOS.