App-o-Mat Blog
The Swift Programming Language Companion: Section 1
In my last article I explained that aspiring iOS App Developers should start by learning swift and not jump in to app tutorials.
To help, I’ve been working on a series of articles that go through the book chapter by chapter, and offer some exercises that you should try after reading the corresponding chapter
Want to make an iOS App? Start with Swift
The biggest obstacle I see in new app developers is that they struggle with the basics.
Before you learn about UIViewController
, UITableViewDataSource
, and NSManagedObject
, you need to fully understand let
. var
, enum
, struct
, if
, for
in
, case let
, and guard let
.
The iOS/Android Job Market: 2019 Update
Last year I wrote about the native mobile app developer job market to answer the question: Should you know iOS-only, Android-only, or both.
Does Objective-C Block Syntax Make F'n Sense?
You know the feeling. You're refactoring that old ViewController that’s still in Objective-C, and you get to that part where you need to extract an async call to a new class. And you’ve gotten so used to closures in Swift that you're using them to solve problems instead of delegates, even in Objective-C. And you say to yourself, “I know—I’ll use a block.”
Case Study: Contributing to Fastlane
I came into work Monday to see our builds failing with a problem that was unconnected to anything we merged recently. Reading the logs, I could see that fastlane's gym
was claiming that our scheme was not found in the workspace, but I knew that it was definitely there.
A snapshot of the iOS and/xor Android Developer Market
When I wrote about whether iOS developers needed to know Android to be successful, I had an instinct that the answer was no, and I did a spot-check of job-boards to make sure I wasn’t way off. Here’s a more in-depth look with links so you can check to make sure it still holds at a later date (my numbers are as of February 2018).
Why Why Why Why Your iOS App Might Act Weird around New Year's
There's a bug that happens around New Years in a few apps (including Apple's). It's simple to avoid, but you need to submit a fix soon to beat the App Store holiday.
Getting the Most out of WTF Auto Layout
The next time you see an Unable to simultaneously satisfy constraints error, copy it into WTF Auto Layout and use these tips to make it even easier to resolve.
How to Learn what Auto Layout Errors Mean
You’ve done the Stanford iOS course and all of the Wenderlich Auto Layout tutorials, but your app is still dumping
Unable to simultaneously satisfy constraints. Probably at least one of the constraints in the following list is one you don't want
to the console.
An iOS Developer’s To Do List for Getting Ready for the iPhone X
On Tuesday, Apple announced the iPhone X, described as “an iPhone that is entirely screen.” On closer inspection, though, the screen does appear to missing a little something.
One Way to Avoid an App Rejection (And Not Miss Your Marketing Launch)
Sometimes you really care that your app is in the App Store on a specific date. You might think that submitting a week before is enough time, but it’s not if you get rejected. You can’t prepare for every eventuality, but there is one thing you can do that might help
How to Dump the Storyboard but Keep the Visualization
Storyboards get a bad rap. Sure, they are impossible to test and code review, and merges are a real pain. But it takes a second to look at a Storyboard and visualize what the UI is going to look like (or even if you are in the right file). If only there was a way to preserve the visualization but dump the XML.
The Three Web Development Technologies Every iOS Developer Should Know to be Successful
If you are just starting your career and started with iOS and never learned anything about the web, it doesn’t hurt to know something about other platforms.
These are the top three web technologies you should have some familiarity with, even if you are in Xcode 100% of the time making a native app.
How do I pass values from a VC back to the VC that presented it?
Ok, so you have a view controller that brings up another view controller. Let’s call the first one FirstVC
and the second one SecondVC
. FirstVC
either presents SecondVC
or there is some segue that it uses to bring it up.
How do you keep Storyboards from causing merge problems later?
There’s this myth in the iOS community that “professional” iOS developers never use Interface Builder. It’s meant to imply that coding your interfaces is always better, and if you don’t do it, you are somehow less of a programmer. The myth perpetuates the idea that IB is a crutch, a toy, something that only newbies use.
I call BS.
How do you pass values to a VC in a segue
A theme I see a lot on StackOverflow is a developer makes a View Controller that collects some information from a user and wants to use it on a VC that they bring up in a segue.