If you're trying to use the Google Place Search API with an iOS public API key and you get the error message, "This IP, site or mobile application is not authorized to use this API key.", this might help.
Read more…
Swift properties aren't sacred.
Read more…
Swift beta 5 introduces some new rules that effect view controller subclasses and initializers.
Read more…
Posting to Notification Center center from a shell script is a great way to let yourself know that a potentially long process has completed. Luckily, it takes just one line.
Read more…
Jabra could be working on a new version, getting out of the headphone market entirely or retailers are just clearing out excess stock. Whatever the reason, it's a buyers market for these Bluetooth headphones.
Read more…
Getting a clean install of OS X 10.10 Yosemite is possible, if not straightforward.
Read more…
WWDC starts tomorrow and from what I've heard it's going to be a big one. Unfortunately, I didn't get a ticket this year so I'll be following along from home.
Read more…
Learning is a lot like exercising. It has to become a habit, it's easier with a buddy and you know you're making progress when it hurts. Understudy is a great new app for iOS that pairs people up to study and discuss subjects of mutual interest.
Read more…
Event-based XML parsers, like NSXMLParser, have great performance but they can be difficult to work with because the parser itself discards nearly all state while parsing the document. This leaves all that state handling up to you, the programmer. Even a moderately complicated XML document can easily result in a mess of conditionals, state flags, and temporary variables. So while it's probably not applicable to every XML scenario, I've found the following object-mapper pattern to be an effective way to map XML data to arbitrary objects such as Core Data models.
Read more…
It's actually quite easy to replace your Core Data backing store even while your application is in use. For example, you may want to replace all the data on the device when a user restores from a backup. In this scenario you could perform the import operation using a separate store, quickly replacing the current store when the data has been restored.
Read more…