Ad

Our DNA is written in Swift
Jump

Geolocated Distributed iPhone Developer Database

Tonight I fore-went (is this a legal word?) my Cocoa coding time to write this very article about a topic that has begun to burn in my heart and I just have to get it out into cyberspace to get a diskussion going.

You and me and lots of other iPhone developers have strenghts and weeknesses. Some of us can code really well, others are great at design and there are also some people who excel at marketing iPhone apps. There are some commonalities amongst us as well, besides of 99% having a physical iPhone and 66% using twitter to build their network. We all have Internet, as benign as this may sound. We all have websites that have some information on the apps we have in the app store. We are advertising ourselves to the world. Hoping to get noticed. Looking for help. Or simply looking to make as much money as possible with the jewels they have polished in endless hours.

Static, non-machine-readable HTML. Sometimes even worse: Flash! Looking great, but achieving nothing except a good feeling for the person who created it. But that’s just Web 1.0

A few of us took the next evolutionary step and started to write in forums (the official one as well as the largest non-official one) and get business-centric profiles on facebook or Xing. That’s Web 2.0.

But still those are information silos, you don’t own your posts, you don’t own your content on “social networks”. I say “That’s passé!” Here I am proposing Web 3.0 and all participating iPhone developers will benefit.

Read more

Shuffling an NSArray

For a project I am working on I needed to shuffle the contents of an NSArray without harming the items themselves. NSArray is a convenient container because it does not care about what you put inside. This is because you don’t (put objects into arrays), you only pretend.

You cannot add an object itself into an array but instead you always insert pointers to class instances. NSArray and its bigger cousin NSMutableArray will keep track of the pointers and memory management of the items so you don’t have to. This is a custom category for NSArray that is useful for shuffling the contents, regardless of their class type.

Read more

Learn to Say No

This request of MKureth is so totally crazy that I just had to share it with you:

Hi, I am currently working 60+ hours a week on highly advanced interactive development which mainly consists of Flash (AS3), XML, JavaScript, PHP, and MySQL. I was asked to learn and develop a working iPhone application using the frameworks of Cocoa, Objective-C, and OpenGL within two weeks. Given my current work schedule and skill sets, how should I proceed with this request and deadline (of two weeks) keeping in mind that I have no prior experience with Mac development?

As impressive as your resumé sounds you lack a couple of essential skills.

Read more

The Best Way to Save Data

BebopSong asks:

Can anyone tell me the best way to create and store data on the iPhone so that the app can read the data but also write to it?

Having tried out all the possibilities that the iPhone platform holds in stock, here’s my opinion.

Read more

LuckyWheel 1.0.4

I finally got my Frenchy to translate the UI strings for LuckyWheel. Also we put in some Dutch “modernizations” because a Dutch review site had complained about the style.

  • Added French UI and cleaned up French proverbs
  • Dutch language improvements

Since there where no code changes Apple should be fairly quick to approve this update.

Apple Owes Me Millions, or Lucky Women on Top

When you are trying to be successful with something you think a lot. You are researching methods that worked for other people. You are pondering, designing, sweating. You are emulating what caused success in others. And it does not get you anywhere where you would already call yourself successful.

But then comes a long a new aquaintence, a little tool called AppRanking for FREE, that turns your world upside down and with this external help you suddenly realize that you are already many times more successful that you thought you are. You just looked in the wrong direction.

Read more

NSString Category for Compressing Whitespace

Anonymous users keep asking:

How do I remove whitespace characters from a string?

A quick way to do that is to first split the words in the string by whitespace characters and then join them back together without seperator. But there is a more elegant way to achieve this, that’s reusable at the same time: extend NSString by adding a category to compress whitespace to an arbitrary seperator.

Read more

OpenStreetMap in a UIWebView

Nicholas asks:

I’ve made an attempt recently to incorporate OpenStreetMap into my app. I’ve failed miserably. The result is a blank webpage. Any help/hints would be appreciated.

I immediately suspected that there was wrong with how he constructed the URL for the UIWebView, because I did run into a similar problem before.

Read more

Transfer App Data Back to Your Mac

If you are saving data in your apps then you are saving them to your app’s sandboxed documents directory. In simulator files you can easily inspect the contents of the directory if you just browse there with finder or cd there in terminal. Note that there is a space in the path, so you need to put exclamation marks around it if you use it with cd in terminal.

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSLog(documentsDirectory);  // output documents directory to debug console

Copy this path, open terminal and go:

MacDrops:~ Oliver$ cd "/Users/Oliver/Library/Application Support/iPhone Simulator/User/Applications/AAC8D0E8-C134-4A94-ACA9-88C7A58DCE1C/Documents"

Or if you prefer Finder then use the handy option “Go To Folder …” and paste the path there. Bear in mind that with every new build the documents directory gets moved to a new application ID. The contents will persist, but the path changes. If you navigate to the ../User/Applications folder you will find that the newest directory is the one that belongs to your just-built app.

There are some rare cases though when you find that Simulator behaves differently than a device. How can you inspect the files there?

Read more

Excursion: Follow 900 Twittering iPhone Developers

After having started this blog a trainee of mine recommended I get started with twitter because I was trying to get connected to other iphone developers. I figured it would probably be useful if you had a network of, say, a thousand guys who are also interested in coding iPhone apps.

Read more