TweetFollow Us on Twitter

My Sojourn Through Cocoa Boot Camp

Volume Number: 23 (2007)
Issue Number: 09
Column Tag: Training

My Sojourn Through Cocoa BootCamp

Or What It's Like Getting Back Into The Trenches...

By Kok-Yong Tan

Why? When You Could Bootstrap Yourself...

This past March, I decided to put aside my pride (programmers, even ex-programmers, can do their own bootstrapping, right? Well, not this creaky, old fart; not any more anyway...) and just take the Cocoa BootCamp course taught by the Big Nerd Ranch at their Atlanta location. For those of you who have not heard of them, the Big Nerd Ranch, founded by Aaron Hillegass, currently runs developer training courses at two locations: A converted farmhouse outside Atlanta, Georgia and a converted monastery in Frankfurt, Germany. Since the curriculum is quite plainly laid out in the Big Nerd Ranch's website, <http://www.bignerdranch.com>, I will refrain from repeating what is already on it since we can all RTFM quite well and offer in this article my personal impressions of the course as a whole including the non-technical aspects of it. That said, let us proceed to something completely different...

The Flight From Hell and Other Musings...

As the plane descended into Atlanta's Hartsfield Airport, I was wondering if signing up for the Big Nerd Ranch's Cocoa BootCamp was such a great idea. So far, it had been a royal disaster just getting to Atlanta (my original flight was cancelled due to mechanical problems and the airline did not bother telling me despite having my cellphone number until I'd wasted one and a half hours waiting in line to rebook my flight and was number one in the queue; plus it looked like I was going to miss my shuttle out to the site and have to spend three hours cooling my heels at Hartsfield Airport until the next one. Bummer.) I figured that the Cocoa BootCamp would be populated with young Turks and here I was, a creaky geriatric-soon-to-be who had not programmed anything more complicated than simple Bash scripts under ten lines in the last fifteen years. Yes, I used to be a C++ programmer on SunOS (just before it got rebranded as Solaris) who could hold his own in the trenches but that was a decade and a half ago. Things that I had learned and had to build from the ground up were outdated and already known as Standard Libraries, respectively. And very little of my prior knowledge and experience was transferable to Objective-C, the lingua franca of Cocoa. Or so I thought...

Hmmm... Maybe Not So Bad After All

The first pleasant surprise was that I had not missed my shuttle. Emily Herman of the Big Nerd Ranch graciously delayed the departure slightly even though the airline took their own sweet time to deliver my luggage to the carousel (Note to self: Never, ever, fly that airline again on pain of self-defenestration!). I met my first group of classmates in that shuttle and they were an interesting bunch: A professional Swing dance instructor who had a Computer Science degree but was only now beginning to use it professionally; a British ex-cop with a Ph.D. in physics whose specialty was in cavitation physics (something I had only heard about after reading Tom Clancy's "The Hunt for Red October") but was now working for a major international consulting firm as a member of their Tiger team (penetration specialists); and another physicist who worked for a major chemical company in their labs. Meeting them certainly changed my initial cynical expectations: None of them was the gunslinger type of programmer/hacker that I'd met earlier in my career – the type who forever was out to challenge others just to prove their geek supremacy. The hour's drive south-west of Atlanta, out to the Serenbe Southern Country Inn, where the course was to be held, proved to be a great way to get to know one's classmates-to-be. I was later told that the Big Nerd Ranch had moved their training site to the Serenbe Southern Country Inn because their last site had suffered a catastrophic fire and had burned down.

The Lay of the Land

Serenbe Southern Country Inn was the next pleasant surprise. It was a converted and spread out farm with many of the outlying buildings turned into cottage-like dwellings but relatively updated under the hood with central air-conditioning, excellent conference facilities and what was looking to be a highly skilled kitchen staff from the boxed lunch provided on the first day (something that would be of great interest to me). Even though I had asked for accommodations in the main building (after having had my fill of the great outdoors from a previous stint in the ground pounding branch of the military), it was not as bad as I had envisioned. No untamed flora or fauna nor their unwelcome deposits to deal with–I am a city boy after all! The furnishings and peaceful quiet reminded me of a completely different era where nobody rushed anywhere. And settling in for a nap before dinner on the covered porch outside my assigned room with a glass of sweet Southern iced tea within easy reach almost resulted in my missing the first dinner with the entire class–it was THAT relaxing!

At dinner, I met the rest of the class. While there were the requisite number of programmers (a.k.a. "the usual suspects"), the more exotic enrollees were an ex-Apple high level executive who wanted to return to a more contributory role in development where the codebase was concerned; a retired Cray hardware engineer who wanted to explore software; and a programmer for a radio astronomy observatory. The cast of characters was getting more interesting by the minute...


Figure 1 - The reception and administration building in the left foreground and the restaurant in the right background.


Figure 2 - One of the residential cottages at Serenbe Inn.

Expectations Along With Our Daily Bread

Classes began every day in a conference room on the edge of a verdant field at 9:00 a.m. after delicious breakfasts; ran up till a break for healthy lunches at 12:30 p.m.; resumed at 1:00 p.m. until 6:00 p.m.; followed by sumptuous dinners. I certainly had nothing to complain about gastronomically and I am very picky about my food. In between lunch and dinner, Aaron would take everybody interested in an hour-long "nature walk" (shudder) to "clear the mind" while the rest could do as they pleased for the duration that the adventurous were romping through the great outdoors. The course resumed when they returned and continued until dinnertime. As was advertised, Aaron would stay around the conference room after dinner until about 10:00 p.m. to work with those students who had questions about their own, non-course-related projects. And he gave unstintingly of his time. A pity that I just did not have my magnum opus with me nor even a clue of what it would be at that stage of the game. However, if one does get inspiration within the next three months, one could still ask the questions of the Big Nerd Ranch. Failing that, all alumni have access to the alumni mailing list, which continues to be pretty active along with archives of past emails that can be easily downloaded.

Into the Lion's Den

As I attended the first day of classes, I waited for the other shoe to drop. Surely, it could not be this pleasant (remember: I live in New York City and have absorbed the cynicism native to the region)? But yes, it could. Aaron Hillegass taught the class himself and we could not have had a better and more patient instructor. There were times I asked questions that even I cringed inwardly at after the words had left my mouth but he patiently answered every one, even if only to say that the question would be more clearly and apparently answered later.

We basically used his book, "Cocoa Programming for Mac OS X, 2nd Edition," as the text and he provided another bound volume with extra chapters that took into account the since-updated Cocoa libraries (it should be noted that he tries to keep everybody as up to date as possible, given the constantly improving versions of the Cocoa platform that Apple publishes). It was no "talking head" course. It was a totally "hands on, fingers on the keyboard or mouse" course. Naturally, it helped if you were a good typist! After finishing the basic requirements for each segment, students were free to try to expand on the code and tweak it in any way they saw fit, with some guidelines for those who were imagination-deficient (such as myself. It could have been the yummy cookies along with the fresh lemonade and sweet Southern iced tea they served daily in the afternoons that distracted me but I think it was just me).

Support Services

Accommodations were more than comfortable. The central air-conditioning certainly did help, as the afternoons could be muggy, even in the March week that I was there. My room was furnished in a way that reminded me of a guest room in someone's home rather than the cookie-cutter furnishing style that you would find in a chain hotel. Despite the rather dispersed layout and seemingly rustic decor of Serenbe Inn that was reminiscent of a Depression-era dwelling, creature comforts were not neglected underneath the hood.

For those of us who did not bring our own laptops and who had advised the Big Nerd Ranch prior to our arrival, iMacs were provided and there was a T1-level data line that allowed those of us anxious about being away from the office for the week to get our daily email "fixes" via wireless router. For those of us who were limited by the lack of coverage by our cellular telephone providers, this was a necessary lifeline (for instance, I could only get a weak signal while standing in the field outside the conference room–no fun when the weather was less than ideal–although others could get strong signals anywhere on the property).

The cuisine was well-executed with a Southern slant. Even the vegetarians amongst us did not find themselves left out (at least from the perspective of an affirmed carnivore such as I). From the hearty breakfasts (which varied every day–who knew breakfasts could be so enjoyably different in a mere week's stay? I even discovered I liked that oft-heard about Southern food: grits) to the lunches and dinners of fried chicken, catfish, etc., and the snacks in between, it was like staying with friends who just happened to have chefs and master programming instructors around so both our minds and bellies were equally well-sated.

La Raison d'etre

After attending the Cocoa BootCamp course, what I found intriguing about the language was that unlike a strongly-typed language like C++ where the compiler caught the little things like typographical errors in programs (basically doing the nit-picky grunt work for the programmer), the compiler for the dynamically-typed Objective-C language let such things through with mere warnings instead of outright errors. While this made sense for a dynamically-typed language, it taught me that inattention to such details was likely to result in a coredump in code that seemed to compile and produce an executable. This was so different from C++ where the process would either fail at either the compile or link stage and not producing an executable at all. Moreover, the warnings could be extremely cryptic (it would not be something obvious like "No such variable" as I was accustomed to with C++). Also, after a fifteen-year hiatus from programming, I found Aaron's teaching style made re-learning old skills and introduction to new ones quite an easy transition to make. Furthermore, with Apple's Integrated Development Environment (IDE) comprised of Xcode, Interface Builder and other tools, it made rapid prototyping very easy.

Gone are the days when just trying to get a single window and a couple of buttons to show up in X windows required massive amounts of coding. With Interface Builder, it's child's play to create the window(s) you want, complete with little blue guide markers that allow programmers to follow Apple's Human Interface Guidelines with no effort whatsoever and then just link the actions for each button or field to the code in Xcode. It even put little prompts such as "Insert your code here" in the source code files, for heaven's sake! Programmers have to make a conscious effort to deviate from the recommended formats (although it is still possible for you ultimate rebels out there) so I give Apple great kudos for subtly changing "Build it insanely great and they will come" to "Make it easy, throw in the 'insanely great' part as a by-product and they will come"!

Although it was primarily a Cocoa course and not an Xcode nor Interface Builder course (both of which deserve mini-courses unto themselves), Aaron took pains to show us some of the various options available in the IDE. Yes, it would be possible to just read Aaron's book (and some of us did that prior to arriving) but sometimes, you need to be able to ask the author why he did something a particular way (and, like Shakespeare said, "There is method to the madness.")

On the other hand, while Apple's tools made Aaron's job much easier, the course is really structured for those with at least a passing familiarity with object-oriented coding concepts and also some prior experience in coding. In other words, the course would be best appreciated by "coding switchers," to purloin a phrase from Apple's advertising campaign. In my experience, I believe it would be a stretch for someone with absolutely no coding experience whatsoever to gain the optimal benefit from this course. Due to the rather extensive amount of information that has to be covered in the four and a half days of the course (we started on Monday morning, finished by noon on Friday and left by 1 p.m.), Aaron had to move along quite rapidly. For those with zero or little coding experience, it might be a better bet to take the Objective-C/Cocoa BootCamp combination courses that the Big Nerd Ranch offers as it is highly likely that the student would find himself/herself so far up a certain type of creek that even a paddle would be insufficient to get themselves out if they were just to take the Cocoa BootCamp course without sufficient background.

Life's A Box of Chocolates...

You are no doubt wondering what the bottom line is after that long rambling discourse that resembles someone with acute ADHD who missed his daily dose of Ritalin (or Yoda in full combat mode, take your pick) so here it is: I heartily and highly recommend the Big Nerd Ranch's Cocoa BootCamp if you have the necessary experience behind you because it will bootstrap you via the fastest means possible, feed and house you so well that you would swear you were on a luxury vacation and, last but not least, if you are taught by Aaron himself, you will feel guilty about having gotten the better part of the deal. To quote someone short and green (no, not Kermit), "Do or do not. There is no 'try'."


Kok-Yong Tan hails from Singapore but has spent the last 23 years living in New York City. After graduating with a Computer Science degree from Columbia University and initially working for Merrill Lynch as a programmer in its Fixed Income Analytics Group, he now runs his own consulting firm, Reality Artisans, Inc. He likes the city because there are already so many other weirdos that nobody seems to notice his "costume" of solar-powered pith helmet and heavily-laden photojournalists' vest. He ended up in systems and network administration because he was ordered by his ex-boss at Merrill Lynch into the abyssal pit as part of the "team player" creed and he has yet to find his way back out. He is now contemplating clawing his way back into programming as a means of avoiding the PEBKAC crowd.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Latest Forum Discussions

See All

Aether Gazer unveils Chapter 16 of its m...
After a bit of maintenance, Aether Gazer has released Chapter 16 of its main storyline, titled Night Parade of the Beasts. This big update brings a new character, a special outfit, some special limited-time events, and, of course, an engaging... | Read more »
Challenge those pesky wyverns to a dance...
After recently having you do battle against your foes by wildly flailing Hello Kitty and friends at them, GungHo Online has whipped out another surprising collaboration for Puzzle & Dragons. It is now time to beat your opponents by cha-cha... | Read more »
Pack a magnifying glass and practice you...
Somehow it has already been a year since Torchlight: Infinite launched, and XD Games is celebrating by blending in what sounds like a truly fantastic new update. Fans of Cthulhu rejoice, as Whispering Mist brings some horror elements, and tests... | Read more »
Summon your guild and prepare for war in...
Netmarble is making some pretty big moves with their latest update for Seven Knights Idle Adventure, with a bunch of interesting additions. Two new heroes enter the battle, there are events and bosses abound, and perhaps most interesting, a huge... | Read more »
Make the passage of time your plaything...
While some of us are still waiting for a chance to get our hands on Ash Prime - yes, don’t remind me I could currently buy him this month I’m barely hanging on - Digital Extremes has announced its next anticipated Prime Form for Warframe. Starting... | Read more »
If you can find it and fit through the d...
The holy trinity of amazing company names have come together, to release their equally amazing and adorable mobile game, Hamster Inn. Published by HyperBeard Games, and co-developed by Mum Not Proud and Little Sasquatch Studios, it's time to... | Read more »
Amikin Survival opens for pre-orders on...
Join me on the wonderful trip down the inspiration rabbit hole; much as Palworld seemingly “borrowed” many aspects from the hit Pokemon franchise, it is time for the heavily armed animal survival to also spawn some illegitimate children as Helio... | Read more »
PUBG Mobile teams up with global phenome...
Since launching in 2019, SpyxFamily has exploded to damn near catastrophic popularity, so it was only a matter of time before a mobile game snapped up a collaboration. Enter PUBG Mobile. Until May 12th, players will be able to collect a host of... | Read more »
Embark into the frozen tundra of certain...
Chucklefish, developers of hit action-adventure sandbox game Starbound and owner of one of the cutest logos in gaming, has released their roguelike deck-builder Wildfrost. Created alongside developers Gaziter and Deadpan Games, Wildfrost will... | Read more »
MoreFun Studios has announced Season 4,...
Tension has escalated in the ever-volatile world of Arena Breakout, as your old pal Randall Fisher and bosses Fred and Perrero continue to lob insults and explosives at each other, bringing us to a new phase of warfare. Season 4, Into The Fog of... | Read more »

Price Scanner via MacPrices.net

Boost Mobile will sell you an iPhone 11 for $...
Boost Mobile, an MVNO using AT&T and T-Mobile’s networks, is offering an iPhone 11 for $149.99 when purchased with their $40 Unlimited service plan (12GB of premium data). No trade-in is required... Read more
Free iPhone 15 plus Unlimited service for $60...
Boost Infinite, part of MVNO Boost Mobile using AT&T and T-Mobile’s networks, is offering a free 128GB iPhone 15 for $60 per month including their Unlimited service plan (30GB of premium data).... Read more
$300 off any new iPhone with service at Red P...
Red Pocket Mobile has new Apple iPhones on sale for $300 off MSRP when you switch and open up a new line of service. Red Pocket Mobile is a nationwide MVNO using all the major wireless carrier... Read more
Clearance 13-inch M1 MacBook Airs available a...
Apple has clearance 13″ M1 MacBook Airs, Certified Refurbished, available for $759 for 8-Core CPU/7-Core GPU/256GB models and $929 for 8-Core CPU/8-Core GPU/512GB models. Apple’s one-year warranty is... Read more
Updated Apple MacBook Price Trackers
Our Apple award-winning MacBook Price Trackers are continually updated with the latest information on prices, bundles, and availability for 16″ and 14″ MacBook Pros along with 13″ and 15″ MacBook... Read more
Every model of Apple’s 13-inch M3 MacBook Air...
Best Buy has Apple 13″ MacBook Airs with M3 CPUs in stock and on sale today for $100 off MSRP. Prices start at $999. Their prices are the lowest currently available for new 13″ M3 MacBook Airs among... Read more
Sunday Sale: Apple iPad Magic Keyboards for 1...
Walmart has Apple Magic Keyboards for 12.9″ iPad Pros, in Black, on sale for $150 off MSRP on their online store. Sale price for online orders only, in-store price may vary. Order online and choose... Read more
Apple Watch Ultra 2 now available at Apple fo...
Apple has, for the first time, begun offering Certified Refurbished Apple Watch Ultra 2 models in their online store for $679, or $120 off MSRP. Each Watch includes Apple’s standard one-year warranty... Read more
AT&T has the iPhone 14 on sale for only $...
AT&T has the 128GB Apple iPhone 14 available for only $5.99 per month for new and existing customers when you activate unlimited service and use AT&T’s 36 month installment plan. The fine... Read more
Amazon is offering a $100 discount on every M...
Amazon is offering a $100 instant discount on each configuration of Apple’s new 13″ M3 MacBook Air, in Midnight, this weekend. These are the lowest prices currently available for new 13″ M3 MacBook... Read more

Jobs Board

Omnichannel Associate - *Apple* Blossom Mal...
Omnichannel Associate - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Read more
Operations Associate - *Apple* Blossom Mall...
Operations Associate - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Read more
Cashier - *Apple* Blossom Mall - JCPenney (...
Cashier - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Blossom Mall Read more
IT Systems Engineer ( *Apple* Platforms) - S...
IT Systems Engineer ( Apple Platforms) at SpaceX Hawthorne, CA SpaceX was founded under the belief that a future where humanity is out exploring the stars is Read more
*Apple* Systems Administrator - JAMF - Activ...
…**Public Trust/Other Required:** None **Job Family:** Systems Administration **Skills:** Apple Platforms,Computer Servers,Jamf Pro **Experience:** 3 + years of Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.