Using Core Data on Multiple Threads
Threading is great, it’s what keeps iPhone app’s snappy and responsive because the main thread which handles UI interactions isn’t being blocked by tasks like loading Core Data. The only problem is though using Core Data on multiple threads can cause some major headaches. This great article takes you through a technique which will save you a lot of hair pulling and accelerated ageing if your dealing with Core Data on multiple threads.
Error from Debugger: Error launching remote program: Security policy Error
There are few things in this world that i hate, tourists in Oxford Circus, White van drivers and Provisioning Profiles.
I recently had an upset with one of my applications failing to launch on my device because of:
Error from Debugger: Error launching remote program: Security policy Error
Showing up in the console when the application was about to launch. Luckily for me this problem was pretty easy to fix after some googling.
Simply delete all the expired provisioning profiles from the device, for some reason Apple doesn’t take too kindly to expired profiles hanging around on the device, even if they are completely unrelated to the app your trying to load into the debugger.
To do this simply go to Settings>General>Profiles and delete anything with red writing pointing out the profile has expired.
List of App Store Categories
I’m constantly searching the internet for somewhere that simply lists out all of the categories available in the app store, so here it is:
- Book
- Business
- Education
- Entertainment
- Finance
- Games
- Healthcare & Fitness
- Lifestyle
- Medical
- Music
- Navigation
- News
- Photography
- Productivity
- Reference
- Social Networking
- Sports
- Travel
- Utilities
- Weather
Here is the new Surface 2.0 from Microsoft and Samsung. I really love this tech and see so much scope for how it can be integrated into all manner of experiences.
Core Data Class Overview
Great article to get your started with Core Data.
Math Question of the Week
So i may have lied about posting a question every week, turns out i don’t post regulary enough so my entire blog would have turned into a question of the week. But do not fear, it’s more of a math question of the month, but we’ll stick with the name because it sounds better.
Here is another question to get your teeth into, again use any language you like:
Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:
1, 2, 3, 5, 8, 13, 21, 34, 55, 89, …
By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.
A wife asks her husband, a software engineer…
“Could you please go shopping for me and buy one carton of milk, and if they have eggs, get 6!” A short time later the husband comes back with 6 cartons of milk. The wife asks him, “Why the hell did you buy 6 cartons of milk?” He replied, “They had eggs.”
(via chrisburnor)
Catching Over Released Objects With NSZombie
Sometimes crashes in iOS can be very cryptic, if an object is being over released nine times out of ten, the debugger will die a silent death. Luckily for us, Apple thought of this problem and built a nice little flesh eating minion to spit some information out everytime an object is over released. Here are the very simple steps needed to enable NSZombie and start catching these silent errors in your debugger:
- Double-click an executable in the Executables group of your Xcode project.
- Click the Arguments tab.
- In the “Variables to be set in the environment:” section, make a variable called “NSZombieEnabled” and set its value to “YES”.
Here’s a screengrab from one of my projects of NSZombieEnabled, enabled:

Debugging is quite far down the list of things to learn for new iOS developers, but it’s defiantly worth finding the time to sit down and read through the iOS Development Guide on Debugging Applications. The 30mins you invest in reading it will save you countless hours of hair pulling and Apple bashing, go do it, do it now.
GrokFu: Battling the Lizard Brain (saying "I don't know") in the High Performance Workplace
I am lucky enough to have landed my dream job. The work is rewarding and challenging, the food and foosball are free and the people are smart, incredibly smart, and as such everybody is a high performer.
When you combine this sort of high performance culture with human nature you get some strange…