Easy Auto Layout constraint groups

If you’ve been making apps for a little while, there’s a good chance you’ve had to design a view with two different states. Say, an “expanded” state and a “compact” state. Here’s a simple example: Doing this with Auto Layout (we all use Auto Layout now right?) can mean setting up a bunch of constraints […]

Xcode and Regex

The Problem Have you ever wanted to do a find-and-replace in Xcode like this? FIND: Created by Alpha on 150301. REPLACE: Created by Alpha on 150301. Updated by Beta (2017). The tricky thing here is that the date (150301) probably isn’t going to be consistent throughout your Xcode project, which makes a straightforward find-and-replace impossible. […]

9 tips for setting up a new Xcode project

There’s a development podcast called Mobile Couch I’ve been listening to more and more lately. They cover everything from git to ReactiveCocoa to working remotely, and they approach each topic with a great combination of experience, open-mindedness, and humour (and they’re from Australia). Anyways, just as I was really getting into the episodes, they recently […]

The many colours of “no tax”

After a great question from @gregheo and another call to the CRA, I’ve made a change to the “Filing HST for an App Company in Canada” article from a few months ago. The confusion came from the fact that there are two distinct ways to sell something with no tax: zero-rated sales (i.e., “taxable at […]

Basic array calculations in Excel

Array calculations are a great way to clean up your Excel worksheets, replacing columns and columns of “calculation” data with the same logic encased in one tidy little cell. This quick tutorial takes you through a basic example to show you how array calculations are done! The problem In the app I’m currently working on […]

For x in 1..3..10 ? Yes, please.

There’s some syntax in MATLAB I always really liked. If you type 1:10, you get an array (or “vector”) of [1,2,3,4,5,6,7,8,9,10]. If you want to increment the values by something other than 1, that’s easy. Type 1:3:10 and you get [1,4,7,10]. When I first learned of Swift’s Range syntax, I was happy to see that […]

Five Types of App Features

Yesterday, I came across this article¬†by Henrik Kniberg that does a fantastic job of summarizing and refreshing the now-famous “MVP” approach, made popular in Lean Startup. The article tells some great stories from places like Lego and the Swedish Police force showing how user-focussed design works in practice. It’s a great read, and a great […]