Wednesday, September 24, 2014


ATTENTION RECRUITERS : Your company's cumbersome application process does not weed out the untalented, only the ones who hate your system.

Making your application process difficult doesn't stop unqualified people from applying, it only increases the number of desperate applicants. If you have a tedious job application process it only eliminates the people that are not desperate, not the untalented. Brilliant people look at your laborious process as a sign that you are behind the times and you haven't yet figured out how to glean the users job history from their .doc, .pdf, .txt. Making them fill out field after field of their job history is no measure of how good they are, it's only a barometer of how much free time they have. What you get are only the most desperate people, who are willing to put up with your shenanigans long enough to pay their rent. If you want to really recruit great talent make it easy for them to apply and let a human decide whether or not they are right for the job.

Sunday, September 14, 2014

I made a game.

The details behind making the game are not intersting.  The interesting part is the game submission process.  I thought it would be easy.  Just sign in, click a button, and you're done.  HA!

The final 10%

When you're done programming the app, all you want to do is get it into the various mobile stores so people can start using it.  You can't wait to post to all your social media platforms that you have done it.  You want to scream from the mountain tops that you have completed your Herculean task, and have something to show for it.  Unfortunately you are a staff of one.  Before you even think about clicking the submit button, you have to do all of the little things to get it ready for submission.  I realize that taking screen shots and making icons in 20 different sizes is important, but that doesn't make it fun.

Google Play

Getting your game into the Google Play store is relatively easy.  The trick is the XML manifest.  The manifest is like a short description of your game in XML format and is required when compiling the game.  Trying to figure out what needs to be in the manifest, and in what format, was an endless back and forth of error messages and googling.  Once I got a working manifest I paid my $25 submission fee and uploaded my game into the store.  An hour later it was available for download.

iTunes Store

Submitting my game to the iTunes store was insanely frustrating, and if they weren't 50% of the gaming market I would have skipped it completely. When you make an app for the iTunes store, you need certificates and provisioning profiles for both developement and distribution.  The upload process is controlled through the XCode application*. Once your profiles are loaded into XCode, the profiles need to be associated with either distribution or development. If you're lucky, when you submit your app, everything just works.  If you're not you get this error...
Apple has always been amazingly vague with their error messages, and this is no better.  I remember in the OS 7 days, people would buy the "Macintosh for Dummies," book, just so they could get the list of error code numbers with some explanation.

After searching the internet I found just as many different solutions as there were questions submitted about this error.  Fortunately, when you pay your $99 yearly application developer subscription fee you get two incident tickets.  So I decided to use one on this problem.  After a month and a half of back and forth** with the Apple Support person, let's call him 'Bob'***, I was able to solve the problem on my own.  You'll have to hang in until the end to find out what the solution was.  Here's the crazy part.  The Apple Support reps don't know anything more than you.  Maybe that's a little harsh, but there's nothing that my rep told me that I didn't also see online. Even though he works for Apple, Bob has no access to any log files or additional error information to help solve the problem. Those error messages are as cryptic to him as they are to you.  Maybe Apple doesn't want to reveal to the end user all the ins and outs of their process, but someone at some point should be able to look at a log file and say, "It is looking for [this] and you gave it [this].

Five days after I submitted my app, I find out that my app was denied.

"Improper Advertising Identifier [IDFA] Usage - Your app contains the Advertising Identifier [IDFA] API but you have not indicated its usage on the Prepare for Upload page in iTunes Connect."

If your app has any kind of advertising in it and you didn't check the box when you submitted your app, you'll get this error.  I went back and checked the box.  Two days later I got an email that I was missing a screen shot.  I faked a screen shot.  Two days later my game was approved.  You can find it here.

The Moral of the Story

The moral of the story is, never make any assumptions about an unknown process.  What should have taken an afternoon took six weeks.  Just remember, the thing that you guessed would be simple might be the piece that causes you to miss your deadline.

What made it work?

So here was the trick that allowed me to upload my app.  When you create the environment for your app in Apple's Developer center, you have to give it an Application ID.  If I was creating an app called, "myApp," it would look something like com.alanhome.myApp.  You also have the option for the developer center to create a unique identifier in front of that. That might look like  When I was downloading my provisioning profiles I had three options,,, and com.alanhome.myApp.  I'm not sure why the first one had TG9624758 twice. I created provisioning profiles many times to solve the problem, but I never picked the first option.  As strange as it looked, the first one was the one I was supposed to pick.  Once I revoked the other provisioning profiles and used the one for it worked.

* XCode is Apple OS X only.  If you want to publish an app, you'll need a Mac to get it into the store.
** This back and forth was not an everyday affair.  Because this is purely a hobby my submission debugging was confined to the weekends.
*** The names have been changed to protect the unhelpful

Helpful links :
How to Publish from Xcode 5 to the App Store.

Wednesday, August 27, 2014

The Thankful Project


Every year my friends and I get together the weekend before Thanksgiving and we have our own pre-Thanksgiving party. We all take turns talking about what we are thankful for. I leave the party feeling great. It's not just because I've reconnected with friends, but I've taken stock of my life and realized that I'm doing OK. I decided to try to create that experience all year long by starting the Thankful Project.


The premise is simple. I find something I'm thankful for and tweet about it. It's harder than it sounds. I guess if I wanted to call my Twitter account, "I Love My Cat," it would be easy to tweet about his antics on a daily basis, but I wanted more from the experience. I want to find new things all the time, rather than recycle old thoughts. I want to find mundane things that make me happy. The fact that I'm making it harder on myself makes the project better. It forces me to actively look for things that make me happy, rather than letting the mundanity wash over me.


I chose Twitter for the home of my Thankful Project because I wanted it to be open to everyone, but also to post automatically to my Facebook page so I didn't have to double post it myself. I wanted it public because I wanted people to share it with others I had never met, in the hopes that it might make them happy. My Twitter account is dedicated to the thankful project which gave it a hidden benefit. Anytime I'm feeling down I have a resource that is 100% positive. I like Facebook, but it has a lot of negativity. My Twitter account is a warehouse of positivity waiting for me to once again relive my happy memories.


I'm not interested in followers. I'm writing this post to inspire everyone else to do what I have done. Make a place for your happy thoughts that is only happy thoughts. Put it on the web, write it in a book, or scribble it on your shoe. It should be a place that you can update at any time and is always top of mind. Trust me. It will make your life better.

Do it.

If you want to see what I've done, you can see it here : @thankproj