Xcode Search: the Hidden Gems

As software developers, we spend a surprisingly large amount of time reading code. Robert C. Martin points this out in Clean Code:

Indeed, the ratio of time spent reading versus writing is well over 10 to 1. We are constantly reading old code as part of the effort to write new code.

Reading through the whole codebase is just not practical. When you join a new project, browse through some open source library or just work on a large codebase, search becomes an immensely useful part of your toolkit. So, let's dive in into some hidden πŸ’Ž of Xcode's Find Navigator.

Read more β†’

Improve Your Self-Improvement

There's a good chance you work a 40-hour job. That leaves you with roughly 70 hours (excluding sleep) of free time a week. But does it, really?

Can you do absolutely nothing outside of 9-5 and expect to have a good job 1, 5 or 20 years from now? I don't think so. The question is then, how to best approach long-term self-improvement?

Read more β†’

Storyboards and Their (Better) Alternatives β†’

It seems that in almost every iOS project, one of the first questions developers ask themselves is:

Should we use storyboards, XIBs or write the whole UI in code?

It’s always hard to answer it because preferences tend to vary even among members of the most closely-knit teams. However, enforcing a consistent approach to the way UI flow is handled within an app almost always results in higher quality of the project.

Read the whole thing on Macoscope's Blog.

A Case Against // MARK: Comments

MARK comments are often recommended as a way to divide a construct (class, enumeration, struct, etc.) into sections of related methods and properties. Here's how such annotated class may look like:

Read more β†’

Enhancing UIViews Using Extensions

There are two common ways of adding new features to UIViews: composition and subclassing. Today I'd like to focus on a third, less known, but often a more fitting approach: extensions (or categories in Objective-C).

Read more β†’