One of my favourite blog topics is poking fun at Xcode and all of the bizzare problems I encounter with it. The most recent one was a compiler error that looked like this:
fatal error: file '/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform
/Developer/SDKs/iPhoneSimulator6.0.sdk/usr/include/Availability.h' has been modified since the precompiled header was built
Strange, right? Fortunately, it was an easy fix – all I had to do was a Clean. After that, it compiled correctly.
What boggles my mind is that Xcode knew exactly what was wrong, but wasn’t smart enough to fix the problem itself. Maybe I am being unrealistic here, but it seems to me that a file included in the precompiled header has changed, the correct behavior would be to, you know, recompile the precompiled header?
Then again, it’s Xcode. So I guess not.
My current project relies heavily on Core Data. Since writing queries with Core Data really sucks, I have thrown together a little helper project called ios-queryable to ease the pain.
From the readme:
ios-queryable is an Objective-C category that provides IQueryable and IEnumerable-like functionality to Core Data.
It supports query composition and deferred execution, and implements a subset of IEnumerable’s methods, such as where, take, skip, and orderBy.
It lets you write code like this:
NSArray* widgets = [[[[[self.managedObjectContext ofType:@"Widget"]
where:@"Type == 'abc'"]
instead of like this:
NSFetchRequest* fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription* entity = [NSEntityDescription
NSPredicate* predicate = [NSPredicate predicateWithFormat: @"type == 'abc'"];
NSSortDescriptor* sortDescriptor = [[NSSortDescriptor alloc]
NSArray* sortDescriptors = [[NSArray alloc] initWithObjects: sortDescriptor, nil];
NSArray* widgets = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error];
Please send me your feedback, and keep in mind that ios-queryable is still a work in progress!
I recently attempted to purchase an app from the app store on my iPhone, and I must say, the experience was quite hilarious. Here is a rough overview of the process (from memory, so apologies if a few details are off):
- Tap the price
- Tap buy
- Enter my password
- Get prompted to enter in three security questions
- Tap not now
- Wait a while, notice that nothing is happening
- Tap buy
- Tap OK when prompted to enter in my security questions
- Select my questions and answers
- Tap ok
- Tap buy
- Get prompted to verify my credit card into
- Tap continue
- Enter in my credit card info
- Tap done
And there you have it – buying apps in only 15 easy steps!
I was going to make a snarky comment about how Apple should license Amazon’s one-click buying patent, but apparently they already have. Joke’s on me.