Hello from the Big Nerd Ranch

IMG_0996-768x1024Howdy partner!

It was a long day of driving but we are here! We left around 9 am and drove straight from Cincinnati to the south-west side of Atlanta only stopping for gas and a short lunch at Fazolis.

The last several miles were just 2 lane roads which seemed to take forever but we had a nice marathon session of audiobooks and NSBrief podcasts to listen to.

After driving deeper into the middle of nowhere we ended up at the red dot on the iPhone GPS – Historic Bannning Mills. When we got here, we weren’t sure we were in the right place. There were a bunch of cabins in the woods and zip-line tree stands all over the place. It looked like a fun place – really not what you’d expect from typical training – though we are not expecting typical training – this is an Advanced iOS bootcamp after all!

IMG_0998-768x1024At the bottom of a hill was the main lodge building which I’ve got to say is really cool inside. I love lodge-style architecture and this one has the essential heavy exposed wood beams, large stone fireplace, cool spiral wood and wrought iron stair case, and the quintessential nice assortment of stuffed animals. Some nice soft bluegrass music is playing here as I type this.

My cabin is pretty nice too! I don’t like cold so I was very pleased to see that I have my own gas fireplace. Actually it looks more like an old wood IMG_0971-1024x768burning stove but it can generate heat! The corner of the room has a big whirlpool tub which I really doubt I will have time to use but it makes the room look nice. The balcony in back has a great view of the stream in the valley below complete with the nice subtle roar of the small waterfalls. If it was warmer, I would leave the door open!

IMG_0987-768x1024Before dinner I took about 15 minutes to quickly explore the nearby trails. From the map, it looks like there are trails everywhere. I love hiking and exploring so this is really cool! There are ruins of old buildings and an old dam.

All kidding aside, this looks like a great place to focus and learn isolated from the hustle of the nearby city. I doubt I am going to have any time for ziplining or much time to hike though I will try to get out for a few minutes if we have breaks!


The syllabus looks broad and intense. It covers a lot of things that I am really looking forward to hearing more about. Class begins tomorrow at 9am sharp!

I am still here!

Hey everyone! It has been a while since I have written anything yet I have been hearing nice comments from many of you regularly for several days. Thanks EVERYONE for stopping by. How you find this site is a serious mystery but somehow you find it. The number of visits and diversity of locations from which you are from is very cool! It is really meaningful to see things have started to take off.

So what have I been doing? I have been working a LOT of hours lately both with my day job and some other side projects. Also my wife had knee surgery so I have been quite busy helping out around the house. Consequently my writing time has been lacking. It hasn’t been bad though. The work has been a lot of fun! I have been learning a lot about core animation and listening to the Stanford University Advanced iPhone classes during my daily commute. These are a great FREE resource if you are interested in learning more about iOS. Apple development is a blast and the tools and API really give us developers a lot of power.

I did take a break a couple weeks ago from the development activities to meet again with the band. We hadn’t practiced in months but wanted to meet and record some demo material in case we do try to play out later this spring. The recording sessions went quite well overall and my buddy and bandmate Steve has been mixing the songs all week. We recorded seven and of those he thinks 3 or 4 sound really good so I am anxious to hear the final mixes and figure out how to share some of them with you.

So what’s coming up? I started writing an article on “A day in the life of my iPhone” that I hope some of you will enjoy. It is close to being done and I am anxious to share it and hear back from you. I am also packing up to head out to the Big Nerd Ranch near Atlanta next week for their Advanced iOS Boot Camp and really can’t wait. I have been looking forward to this class ever since it was announced!

Google Analytics – for web and mobile traffic

For some odd reason, I have always enjoyed tracking certain types of data. I was very happy when I hooked up the Jetpack suite of plugins for WordPress this past weekend and was then able to see basic site traffic information. Tonight (guess I should say this morning) I have also incorporated a second level of tracking – Google Analytics.

Setting up Google Analytics to track your own app or web page is pretty simple. It will tie your analytics access to your Google account – a simple gmail account will be just fine.

Go to http://www.google.com/analytics/ and click the link saying “New to Analytics -sign up now.” If you already have a google account just type in your credentials on the next page.  You will need to put a note in your app that clearly states that users are being tracked.

Like many google pages, there is a gear on the top right.
Click the gear to go to the account administration screen
Click the plus sign to add a new account
Now you will enter the name and URL of the site or app you want to track.
After you have filled out this short form, Google will generate a unique identifier for you to use from your mobile app or web page. This ID in their terms is called a UA code.

Once this is set up you are ready to use their UA code from your app or from your web page.

Since this post is meant to be only a high level introduction, I will keep this short. Excellent documentation is available on the Google Analytics site.

Tracking basic web pages
If you want to track a web page, just cut and paste the javascript they give you when they generate the code.

Tracking WordPress pages
If you want to track your WordPress page, I recommend installing a plugin such as the Google Analytics for WordPress plugin. It will allow you to type this UA Code in and then do page level tracking.

Tracking iOS page views
Grab the latest Analytics SDK directly from Google – http://code.google.com/apis/analytics/docs/mobile/download.html#Google_Analytics_SDK_for_iOS
Extract it and copy the GANTracker.h and libGoogleAnayltics.a into your existing iOS project with Xcode.

Open up your application delegate and in didFinishLaunching add the following snippet

[[GANTracker sharedTracker] startTrackerWithAccountID:yourTrackerId                          dispatchPeriod:10
 Now you can do page tracking with a simple line like this: (note I would put this in viewWillAppear in a view controller)
NSError *error;
if (![[GANTracker sharedTracker] trackPageview:yourPageName withError:&error]) {
        NSLog(@"Analytics logging failed %@", error);


There is a lot more you can do besides page tracking, but this is enough to hopefully perk your interest and set something up. As you can see, it is really minimal effort to get something up and running.   They have an API for Android and other platforms as well.  As I said before, Google’s documentation is great and for free analytics, it is really excellent!    The benefit of data like this is to aid you in creating better experiences for your users to see what features they like and what gets ignored.  Your biggest challenge will be in determining what and how much to track to gain the best insight into their needs.