<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>bencoffman.com/blog - Objective C</title>
    <link>http://bencoffman.com/blog/</link>
    <description>News about Tech and a few other things.</description>
    <language>en-us</language>
    <copyright>Ben Coffman</copyright>
    <lastBuildDate>Sat, 04 Sep 2010 21:29:55 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 2.1.8102.813</generator>
    <managingEditor>coffmanben@gmail.com</managingEditor>
    <webMaster>coffmanben@gmail.com</webMaster>
    <item>
      <trackback:ping>http://bencoffman.com/blog/Trackback.aspx?guid=d3c31a47-2190-4c00-a3eb-f7febfa398aa</trackback:ping>
      <pingback:server>http://bencoffman.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://bencoffman.com/blog/PermaLink,guid,d3c31a47-2190-4c00-a3eb-f7febfa398aa.aspx</pingback:target>
      <dc:creator>Ben Coffman</dc:creator>
      <wfw:comment>http://bencoffman.com/blog/CommentView,guid,d3c31a47-2190-4c00-a3eb-f7febfa398aa.aspx</wfw:comment>
      <wfw:commentRss>http://bencoffman.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=d3c31a47-2190-4c00-a3eb-f7febfa398aa</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202010-09-04%20at%204.28.38%20PM.png" border="0" />
        <br />
        <br />
        <br />
I'm done! After a summer of surprises, swings, and roadblocks I finally finished this
book, a few months behind schedule, but it's done. The last objective-C book I read
was by the de facto in Mac OS X development <a href="http://www.bignerdranch.com/">Mr.
Hillegass</a>, (<a href="http://bencoffman.com/blog/2010/04/14/CocoaProgrammingForMacOSXObjectiveC.aspx">my
post</a>) I embarked on the journey of reading a book on iPhone development with <i>the
man</i> in iPhone teaching <a href="http://iphonedevelopment.blogspot.com/">Jeff LaMarche</a>.
Jeff is every bit as good at breaking down complex topics and making them seem easy
as my .Net home skillet <a href="http://www.hanselman.com/blog/">Scott Hanselman</a>.
In short these dudes are just smart, but they'll never tell you that and they write
some good books.<br /><br />
This book is an easy read and provides hands on examples on how to use many of the
tools provided with the iPhone SDK 3. The book is spot on with it's examples, but
I'm betting new Objective-C users might have trouble following along when  xCode
4 comes out. xCode 4 is quite a bit different graphically than 3 and may render the
step by step instructions in this book out of date.<br /><br />
Overall if you are into programming on the iPhone, this is a great book to start,
given you have a base working knowledge of Objective-C and an advanced understanding
of programming in general.<br /><br />
  
<br /><p></p><img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=d3c31a47-2190-4c00-a3eb-f7febfa398aa" /></body>
      <title>Beginning iPhone 3 Development Exploring the iPhone SDK</title>
      <guid isPermaLink="false">http://bencoffman.com/blog/PermaLink,guid,d3c31a47-2190-4c00-a3eb-f7febfa398aa.aspx</guid>
      <link>http://bencoffman.com/blog/2010/09/04/BeginningIPhone3DevelopmentExploringTheIPhoneSDK.aspx</link>
      <pubDate>Sat, 04 Sep 2010 21:29:55 GMT</pubDate>
      <description>&lt;img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202010-09-04%20at%204.28.38%20PM.png" border="0"&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
I'm done! After a summer of surprises, swings, and roadblocks I finally finished this
book, a few months behind schedule, but it's done. The last objective-C book I read
was by the de facto in Mac OS X development &lt;a href="http://www.bignerdranch.com/"&gt;Mr.
Hillegass&lt;/a&gt;, (&lt;a href="http://bencoffman.com/blog/2010/04/14/CocoaProgrammingForMacOSXObjectiveC.aspx"&gt;my
post&lt;/a&gt;) I embarked on the journey of reading a book on iPhone development with &lt;i&gt;the
man&lt;/i&gt; in iPhone teaching &lt;a href="http://iphonedevelopment.blogspot.com/"&gt;Jeff LaMarche&lt;/a&gt;.
Jeff is every bit as good at breaking down complex topics and making them seem easy
as my .Net home skillet &lt;a href="http://www.hanselman.com/blog/"&gt;Scott Hanselman&lt;/a&gt;.
In short these dudes are just smart, but they'll never tell you that and they write
some good books.&lt;br&gt;
&lt;br&gt;
This book is an easy read and provides hands on examples on how to use many of the
tools provided with the iPhone SDK 3. The book is spot on with it's examples, but
I'm betting new Objective-C users might have trouble following along when&amp;nbsp; xCode
4 comes out. xCode 4 is quite a bit different graphically than 3 and may render the
step by step instructions in this book out of date.&lt;br&gt;
&lt;br&gt;
Overall if you are into programming on the iPhone, this is a great book to start,
given you have a base working knowledge of Objective-C and an advanced understanding
of programming in general.&lt;br&gt;
&lt;br&gt;
&amp;nbsp; 
&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=d3c31a47-2190-4c00-a3eb-f7febfa398aa" /&gt;</description>
      <comments>http://bencoffman.com/blog/CommentView,guid,d3c31a47-2190-4c00-a3eb-f7febfa398aa.aspx</comments>
      <category>iphone</category>
      <category>iPhone</category>
      <category>Objective C</category>
      <category>readings</category>
      <category>xCode</category>
    </item>
    <item>
      <trackback:ping>http://bencoffman.com/blog/Trackback.aspx?guid=57132fff-5b66-4ef0-bbcd-b6dc79ec3655</trackback:ping>
      <pingback:server>http://bencoffman.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://bencoffman.com/blog/PermaLink,guid,57132fff-5b66-4ef0-bbcd-b6dc79ec3655.aspx</pingback:target>
      <dc:creator>Ben Coffman</dc:creator>
      <wfw:comment>http://bencoffman.com/blog/CommentView,guid,57132fff-5b66-4ef0-bbcd-b6dc79ec3655.aspx</wfw:comment>
      <wfw:commentRss>http://bencoffman.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=57132fff-5b66-4ef0-bbcd-b6dc79ec3655</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <b>
          <img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png" />
          <br />
          <br />
Error Readout:</b>
        <br />
error: expected '=', ',', ';', 'asm' or '__attribute__' before 'interface'<br /><br /><b>Fix:</b><br />
Added a semicolon.<br /><br /><b>Explanation:</b><br /><i><b>It's important to remember</b></i> that this was occurring before the <i>interface</i> tag,
which meant it was happening in a file I was importing. In this case it was a header
file with some enumerations in it that were not showing an error with a missing semi
colon.<br /><br /><br /><p></p><img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=57132fff-5b66-4ef0-bbcd-b6dc79ec3655" /></body>
      <title>error: expected '=', ',', ';', 'asm' or '__attribute__' before 'interface'</title>
      <guid isPermaLink="false">http://bencoffman.com/blog/PermaLink,guid,57132fff-5b66-4ef0-bbcd-b6dc79ec3655.aspx</guid>
      <link>http://bencoffman.com/blog/2010/09/01/errorExpectedAsmOrAttributeBeforeInterface.aspx</link>
      <pubDate>Wed, 01 Sep 2010 21:54:31 GMT</pubDate>
      <description>&lt;b&gt;&lt;img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png"&gt;
&lt;br&gt;
&lt;br&gt;
Error Readout:&lt;/b&gt;
&lt;br&gt;
error: expected '=', ',', ';', 'asm' or '__attribute__' before 'interface'&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Fix:&lt;/b&gt;
&lt;br&gt;
Added a semicolon.&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Explanation:&lt;/b&gt;
&lt;br&gt;
&lt;i&gt;&lt;b&gt;It's important to remember&lt;/b&gt;&lt;/i&gt; that this was occurring before the &lt;i&gt;interface&lt;/i&gt; tag,
which meant it was happening in a file I was importing. In this case it was a header
file with some enumerations in it that were not showing an error with a missing semi
colon.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=57132fff-5b66-4ef0-bbcd-b6dc79ec3655" /&gt;</description>
      <comments>http://bencoffman.com/blog/CommentView,guid,57132fff-5b66-4ef0-bbcd-b6dc79ec3655.aspx</comments>
      <category>iphone</category>
      <category>Objective C</category>
      <category>xCode</category>
    </item>
    <item>
      <trackback:ping>http://bencoffman.com/blog/Trackback.aspx?guid=aa6568ba-48f1-4b14-bfed-332818037c31</trackback:ping>
      <pingback:server>http://bencoffman.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://bencoffman.com/blog/PermaLink,guid,aa6568ba-48f1-4b14-bfed-332818037c31.aspx</pingback:target>
      <dc:creator>Ben Coffman</dc:creator>
      <wfw:comment>http://bencoffman.com/blog/CommentView,guid,aa6568ba-48f1-4b14-bfed-332818037c31.aspx</wfw:comment>
      <wfw:commentRss>http://bencoffman.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=aa6568ba-48f1-4b14-bfed-332818037c31</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png" />
        <br />
        <br />
It's a good question. 
<br /><br />
There are some types that are not derived from NSObject, these types are called "Primitive
Types." Some examples of these types are 
<br /><ol><li>
int</li><li>
bool</li><li>
short</li><li>
long</li><li>
double</li><li>
char</li></ol>
Sooooo basically any type that is not derived from the NSObject class is a Primitive
type and does not require a "*".<br /><br />
Now I bet you are wondering how do I figure out if it's a primitive type or not. 
<br /><ol><li>
An easy way is to look at the color of the syntax in xCode, is it deep blue or a sky
blue? Deep blue = primitive type, but this is not entirely reliable as the standards
for coloring syntax can fluctuate or change.<br /></li></ol><br /><img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202010-06-12%20at%2011.44.07%20AM.png" border="0" /><br /><br /><li>
You can option-click on the object after you have typed it in xCode, click the little
book in the upper right hand corner, when the class reference viewer comes up, look
and see if it inherits from NSObject. If it doesn't it's Primitive and you don't need
a "*".<br /><br /><img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202010-06-12%20at%2011.49.43%20AM.png" border="0" /><br /><br /><br /><img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202010-06-12%20at%2011.55.21%20AM.png" border="0" /></li><br /><br /><b>Note:</b><br />
There are some alternatives to using the primitive type <i>int</i>, such as the reference
type <i>NSInteger,</i> which has some nice baked in functionality of distinguishing
between 32 bit and 64 bit, but not all primitive types have an alternative reference
type in Objective C.<br /><br /><br /><b>Just for fun:</b><br />
In .Net they have primitive types too(I believe they call them <i>value types</i>),
kinda. The compiler recognizes traditional primitive types and therefore lets you
use the syntax<br /><br /><i>int i = 5;</i><br /><br />
But despite the compiler letting you do this, this type still maps back to System.Int32.
All things in .Net are mapped back to System.Object. Everything is a reference type,
but .Net lets you keep the traditional syntax instead of writing:<br /><br /><i>System.Int32 i = new System.Int32(5);</i><br /><code><br /><br /><br /></code><br /><p></p><br /><img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=aa6568ba-48f1-4b14-bfed-332818037c31" /></body>
      <title>When to use the * (star) with Objective C</title>
      <guid isPermaLink="false">http://bencoffman.com/blog/PermaLink,guid,aa6568ba-48f1-4b14-bfed-332818037c31.aspx</guid>
      <link>http://bencoffman.com/blog/2010/06/12/WhenToUseTheStarWithObjectiveC.aspx</link>
      <pubDate>Sat, 12 Jun 2010 15:59:04 GMT</pubDate>
      <description>&lt;img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png"&gt;
&lt;br&gt;
&lt;br&gt;
It's a good question. 
&lt;br&gt;
&lt;br&gt;
There are some types that are not derived from NSObject, these types are called "Primitive
Types." Some examples of these types are 
&lt;br&gt;
&lt;ol&gt;
&lt;li&gt;
int&lt;/li&gt;
&lt;li&gt;
bool&lt;/li&gt;
&lt;li&gt;
short&lt;/li&gt;
&lt;li&gt;
long&lt;/li&gt;
&lt;li&gt;
double&lt;/li&gt;
&lt;li&gt;
char&lt;/li&gt;
&lt;/ol&gt;
Sooooo basically any type that is not derived from the NSObject class is a Primitive
type and does not require a "*".&lt;br&gt;
&lt;br&gt;
Now I bet you are wondering how do I figure out if it's a primitive type or not. 
&lt;br&gt;
&lt;ol&gt;
&lt;li&gt;
An easy way is to look at the color of the syntax in xCode, is it deep blue or a sky
blue? Deep blue = primitive type, but this is not entirely reliable as the standards
for coloring syntax can fluctuate or change.&lt;br&gt;
&lt;/li&gt;
&lt;br&gt;
&lt;img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202010-06-12%20at%2011.44.07%20AM.png" border="0"&gt;
&lt;br&gt;
&lt;br&gt;
&lt;li&gt;
You can option-click on the object after you have typed it in xCode, click the little
book in the upper right hand corner, when the class reference viewer comes up, look
and see if it inherits from NSObject. If it doesn't it's Primitive and you don't need
a "*".&lt;br&gt;
&lt;br&gt;
&lt;img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202010-06-12%20at%2011.49.43%20AM.png" border="0"&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202010-06-12%20at%2011.55.21%20AM.png" border="0"&gt;
&lt;/li&gt;&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Note:&lt;/b&gt;
&lt;br&gt;
There are some alternatives to using the primitive type &lt;i&gt;int&lt;/i&gt;, such as the reference
type &lt;i&gt;NSInteger,&lt;/i&gt; which has some nice baked in functionality of distinguishing
between 32 bit and 64 bit, but not all primitive types have an alternative reference
type in Objective C.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Just for fun:&lt;/b&gt;
&lt;br&gt;
In .Net they have primitive types too(I believe they call them &lt;i&gt;value types&lt;/i&gt;),
kinda. The compiler recognizes traditional primitive types and therefore lets you
use the syntax&lt;br&gt;
&lt;br&gt;
&lt;i&gt;int i = 5;&lt;/i&gt;
&lt;br&gt;
&lt;br&gt;
But despite the compiler letting you do this, this type still maps back to System.Int32.
All things in .Net are mapped back to System.Object. Everything is a reference type,
but .Net lets you keep the traditional syntax instead of writing:&lt;br&gt;
&lt;br&gt;
&lt;i&gt;System.Int32 i = new System.Int32(5);&lt;/i&gt;
&lt;br&gt;
&lt;code&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;/code&gt;
&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;br&gt;
&lt;img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=aa6568ba-48f1-4b14-bfed-332818037c31" /&gt;</description>
      <comments>http://bencoffman.com/blog/CommentView,guid,aa6568ba-48f1-4b14-bfed-332818037c31.aspx</comments>
      <category>.Net</category>
      <category>Mac</category>
      <category>Mac OS X</category>
      <category>Objective C</category>
      <category>Windows</category>
    </item>
    <item>
      <trackback:ping>http://bencoffman.com/blog/Trackback.aspx?guid=23858b2f-27e7-41b3-9d4d-6453a521ac19</trackback:ping>
      <pingback:server>http://bencoffman.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://bencoffman.com/blog/PermaLink,guid,23858b2f-27e7-41b3-9d4d-6453a521ac19.aspx</pingback:target>
      <dc:creator>Ben Coffman</dc:creator>
      <wfw:comment>http://bencoffman.com/blog/CommentView,guid,23858b2f-27e7-41b3-9d4d-6453a521ac19.aspx</wfw:comment>
      <wfw:commentRss>http://bencoffman.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=23858b2f-27e7-41b3-9d4d-6453a521ac19</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png" border="0" />
        <p>
        </p>
When starting a new project you have the ability to  select a template of premade
projects. Two examples of this are<br />
    1. Navigation Based Application<br />
    2. View Based application<br /><br />
When these templates are selected xCode will create the appropriate base controller
for you in interface builder, such as "Navigation Controller" or a "View Controller"
it will also create the appropriate classes for you with some of the most commonly
used delegate and datasource methods along with the appropriate methods to override.<br /><br />
With a new project and selecting Window-based application, you are simply creating
a blank slate in which you have to create nearly everything. It's rarely advantageous
to use this unless, you are creating something outside the templates offered or you
are learning how all the pieces fit together.<p></p><img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=23858b2f-27e7-41b3-9d4d-6453a521ac19" /></body>
      <title>Why you need to create a controller in some projects in interface builder and not in others.</title>
      <guid isPermaLink="false">http://bencoffman.com/blog/PermaLink,guid,23858b2f-27e7-41b3-9d4d-6453a521ac19.aspx</guid>
      <link>http://bencoffman.com/blog/2010/06/07/WhyYouNeedToCreateAControllerInSomeProjectsInInterfaceBuilderAndNotInOthers.aspx</link>
      <pubDate>Mon, 07 Jun 2010 01:05:58 GMT</pubDate>
      <description>&lt;img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png" border="0"&gt; 
&lt;p&gt;
&lt;/p&gt;
When starting a new project you have the ability to&amp;nbsp; select a template of premade
projects. Two examples of this are&lt;br&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;1. Navigation Based Application&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 2. View Based application&lt;br&gt;
&lt;br&gt;
When these templates are selected xCode will create the appropriate base controller
for you in interface builder, such as "Navigation Controller" or a "View Controller"
it will also create the appropriate classes for you with some of the most commonly
used delegate and datasource methods along with the appropriate methods to override.&lt;br&gt;
&lt;br&gt;
With a new project and selecting Window-based application, you are simply creating
a blank slate in which you have to create nearly everything. It's rarely advantageous
to use this unless, you are creating something outside the templates offered or you
are learning how all the pieces fit together.&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=23858b2f-27e7-41b3-9d4d-6453a521ac19" /&gt;</description>
      <comments>http://bencoffman.com/blog/CommentView,guid,23858b2f-27e7-41b3-9d4d-6453a521ac19.aspx</comments>
      <category>Objective C</category>
      <category>xCode</category>
    </item>
    <item>
      <trackback:ping>http://bencoffman.com/blog/Trackback.aspx?guid=60d38687-6c10-4c11-b9c9-2594afd9018c</trackback:ping>
      <pingback:server>http://bencoffman.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://bencoffman.com/blog/PermaLink,guid,60d38687-6c10-4c11-b9c9-2594afd9018c.aspx</pingback:target>
      <dc:creator>Ben Coffman</dc:creator>
      <wfw:comment>http://bencoffman.com/blog/CommentView,guid,60d38687-6c10-4c11-b9c9-2594afd9018c.aspx</wfw:comment>
      <wfw:commentRss>http://bencoffman.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=60d38687-6c10-4c11-b9c9-2594afd9018c</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png" />
        <br />
        <b>The Problem:</b>
        <br />
I was getting a white screen with no data in a <i>UITableView</i> on it in the iPhone
simulator.<br /><br /><b>The Solution:</b><br />
I had my initialization code for the array in the the "loadView" method and not the
"viewDidLoad" method<br /><br /><b>Explanation:</b><br />
Don't read self.view in -loadView. Only set it, don't get it. The self.view property
accessor calls -loadView if the view isn't currently loaded. There's your infinite
recursion. I'm guessing UITableView calls a View [pretty good guess since "view" is
in the name. :)] which in turn caused my recursion.<br /><br />
This was a stupid little error that caused me about 30 minutes of my life due to the
fact I didn't get any build errors. A simple copy and paste moved me forward.<br /><br /><p><b>Update:</b> I think it might be important to distinguish the differece between
loadView and viewDidLoad. (below)<br /><br />
loadView is the method in UIViewController that will actually load up the view and
assign it to the "view" property. This is also the location that a subclass of UIViewController
would override if you wanted to programatically set up the "view" property. viewDidLoad
is the method that is called once the view has been loaded. This is called after loadView
is called. It is a place where you can override and insert code that does further
initial setup of the view once it has been loaded. 
</p><img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=60d38687-6c10-4c11-b9c9-2594afd9018c" /></body>
      <title>loadView vs viewDidLoad</title>
      <guid isPermaLink="false">http://bencoffman.com/blog/PermaLink,guid,60d38687-6c10-4c11-b9c9-2594afd9018c.aspx</guid>
      <link>http://bencoffman.com/blog/2010/05/09/loadViewVsViewDidLoad.aspx</link>
      <pubDate>Sun, 09 May 2010 23:55:43 GMT</pubDate>
      <description>&lt;img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png"&gt;
&lt;br&gt;
&lt;b&gt;The Problem:&lt;/b&gt;
&lt;br&gt;
I was getting a white screen with no data in a &lt;i&gt;UITableView&lt;/i&gt; on it in the iPhone
simulator.&lt;br&gt;
&lt;br&gt;
&lt;b&gt;The Solution:&lt;/b&gt;
&lt;br&gt;
I had my initialization code for the array in the the "loadView" method and not the
"viewDidLoad" method&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Explanation:&lt;/b&gt;
&lt;br&gt;
Don't read self.view in -loadView. Only set it, don't get it. The self.view property
accessor calls -loadView if the view isn't currently loaded. There's your infinite
recursion. I'm guessing UITableView calls a View [pretty good guess since "view" is
in the name. :)] which in turn caused my recursion.&lt;br /&gt;
&lt;br /&gt;
This was a stupid little error that caused me about 30 minutes of my life due to the
fact I didn't get any build errors. A simple copy and paste moved me forward.&lt;br&gt;
&lt;br /&gt;
&lt;p&gt;
&lt;b&gt;Update:&lt;/b&gt; I think it might be important to distinguish the differece between
loadView and viewDidLoad. (below)&lt;br /&gt;
&lt;br /&gt;
loadView is the method in UIViewController that will actually load up the view and
assign it to the "view" property. This is also the location that a subclass of UIViewController
would override if you wanted to programatically set up the "view" property. viewDidLoad
is the method that is called once the view has been loaded. This is called after loadView
is called. It is a place where you can override and insert code that does further
initial setup of the view once it has been loaded. 
&lt;/p&gt;
&lt;img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=60d38687-6c10-4c11-b9c9-2594afd9018c" /&gt;</description>
      <comments>http://bencoffman.com/blog/CommentView,guid,60d38687-6c10-4c11-b9c9-2594afd9018c.aspx</comments>
      <category>iPhone</category>
      <category>Objective C</category>
      <category>xCode</category>
    </item>
    <item>
      <trackback:ping>http://bencoffman.com/blog/Trackback.aspx?guid=2da74c67-1ee4-47f8-9bdc-8f5472d2f731</trackback:ping>
      <pingback:server>http://bencoffman.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://bencoffman.com/blog/PermaLink,guid,2da74c67-1ee4-47f8-9bdc-8f5472d2f731.aspx</pingback:target>
      <dc:creator>Ben Coffman</dc:creator>
      <wfw:comment>http://bencoffman.com/blog/CommentView,guid,2da74c67-1ee4-47f8-9bdc-8f5472d2f731.aspx</wfw:comment>
      <wfw:commentRss>http://bencoffman.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=2da74c67-1ee4-47f8-9bdc-8f5472d2f731</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png" />
        <br />
When is the right time to use dot notation vs bracket notation in objective C, or
should I not use dot notation at all? I searched around for information on this, read
quite a few opinions, but this <a href="http://eschatologist.net/blog/?p=160">blog
post</a> seems to give an answer of <i>why</i>.  I quote the most important part;
I suggest you don't read the blog post. The post is very technical and what you really
want to know is right below here. If you need to know the details, eschatology does
a great job at giving them. 
<br /><br />
Most important parts of blog post:<br /><ul><li>
Use dot notation to get and set objects’ state.</li><li>
Use bracket notation to invoke objects’ behavior.</li></ul><br />
Eschatology -- <a href="http://eschatologist.net/blog/?p=160">http://eschatologist.net/blog/?p=160</a><br /><br />
A bit of a dark name for a blog, but the name doesn't affect the quality of the post.<br /><p></p><img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=2da74c67-1ee4-47f8-9bdc-8f5472d2f731" /></body>
      <title>Objective C -- When to use dot notation vs bracket notation</title>
      <guid isPermaLink="false">http://bencoffman.com/blog/PermaLink,guid,2da74c67-1ee4-47f8-9bdc-8f5472d2f731.aspx</guid>
      <link>http://bencoffman.com/blog/2010/04/22/ObjectiveCWhenToUseDotNotationVsBracketNotation.aspx</link>
      <pubDate>Thu, 22 Apr 2010 00:50:48 GMT</pubDate>
      <description>&lt;img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png"&gt;
&lt;br&gt;
When is the right time to use dot notation vs bracket notation in objective C, or
should I not use dot notation at all? I searched around for information on this, read
quite a few opinions, but this &lt;a href="http://eschatologist.net/blog/?p=160"&gt;blog
post&lt;/a&gt; seems to give an answer of &lt;i&gt;why&lt;/i&gt;.&amp;nbsp; I quote the most important part;
I suggest you don't read the blog post. The post is very technical and what you really
want to know is right below here. If you need to know the details, eschatology does
a great job at giving them. 
&lt;br&gt;
&lt;br&gt;
Most important parts of blog post:&lt;br&gt;
&lt;ul&gt;
&lt;li&gt;
Use dot notation to get and set objects’ state.&lt;/li&gt;
&lt;li&gt;
Use bracket notation to invoke objects’ behavior.&lt;/li&gt;
&lt;/ul&gt;
&lt;br&gt;
Eschatology -- &lt;a href="http://eschatologist.net/blog/?p=160"&gt;http://eschatologist.net/blog/?p=160&lt;/a&gt;
&lt;br&gt;
&lt;br&gt;
A bit of a dark name for a blog, but the name doesn't affect the quality of the post.&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=2da74c67-1ee4-47f8-9bdc-8f5472d2f731" /&gt;</description>
      <comments>http://bencoffman.com/blog/CommentView,guid,2da74c67-1ee4-47f8-9bdc-8f5472d2f731.aspx</comments>
      <category>Mac</category>
      <category>Objective C</category>
    </item>
    <item>
      <trackback:ping>http://bencoffman.com/blog/Trackback.aspx?guid=72b6a8b0-94c4-4d60-a737-9538502ab645</trackback:ping>
      <pingback:server>http://bencoffman.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://bencoffman.com/blog/PermaLink,guid,72b6a8b0-94c4-4d60-a737-9538502ab645.aspx</pingback:target>
      <dc:creator>Ben Coffman</dc:creator>
      <wfw:comment>http://bencoffman.com/blog/CommentView,guid,72b6a8b0-94c4-4d60-a737-9538502ab645.aspx</wfw:comment>
      <wfw:commentRss>http://bencoffman.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=72b6a8b0-94c4-4d60-a737-9538502ab645</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <br />
        <img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202010-04-13%20at%209.56.36%20PM.png" style="float: left; height: 265px; margin-left: 0px; margin-right: 1em; width: 202px;" />
        <div>I'll keep this post short. I read this book to prepare myself for iPhone development
and give me a deeper understanding of Objective C. This book is probably the best
book to start learning Cocoa Programming currently on the market. It gives chapter
by chapter examples with exercises to follow along with. The only shortcoming of the
book is that it's a bit dated to what the current xCode version is. A few of the examples
might take the novice for a spin <i>(which means it took me for a spin, sometimes
a quite frustrating spin)</i> because the step by step instructions are not exactly
correct due to the fact some of the menu items have changed or been rearranged. Outside
of a few minor issues, like the one I mentioned earlier, it's a pretty fun book and
I would recommend it to other <b>experienced </b>programmers. Hopefully Mr. Hillegass
will come out with a newer version.
</div>
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
Things covered in the book 
<br /><br /><div><i>Memory Management</i></div><div><i>Target/Actions</i></div><div><i>Helper Objects</i></div><div><i>Key-Value Coding; Key-Value Observing</i></div><div><i>NSArrayController</i></div><div><i>NSUndoManager</i></div><div><i>Archiving</i></div><div><i>Basic Core Data</i></div><div><i>Nib Files and NSWindowController</i></div><div><i>User Defaults</i></div><div><i>Using Notifications</i></div><div><i>Using Alert Panels</i></div><div><i>Localization</i></div><br /><div>The list keeps going, it really covers all you need to know for having a strong
hold on the basics.
</div><br /><img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=72b6a8b0-94c4-4d60-a737-9538502ab645" /></body>
      <title>Cocoa Programming For Mac OS X -- Objective C</title>
      <guid isPermaLink="false">http://bencoffman.com/blog/PermaLink,guid,72b6a8b0-94c4-4d60-a737-9538502ab645.aspx</guid>
      <link>http://bencoffman.com/blog/2010/04/14/CocoaProgrammingForMacOSXObjectiveC.aspx</link>
      <pubDate>Wed, 14 Apr 2010 03:10:59 GMT</pubDate>
      <description>&lt;br&gt;
&lt;img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202010-04-13%20at%209.56.36%20PM.png" style="float: left; height: 265px; margin-left: 0px; margin-right: 1em; width: 202px;"&gt;
&lt;div&gt;I'll keep this post short. I read this book to prepare myself for iPhone development
and give me a deeper understanding of Objective C. This book is probably the best
book to start learning Cocoa Programming currently on the market. It gives chapter
by chapter examples with exercises to follow along with. The only shortcoming of the
book is that it's a bit dated to what the current xCode version is. A few of the examples
might take the novice for a spin &lt;i&gt;(which means it took me for a spin, sometimes
a quite frustrating spin)&lt;/i&gt; because the step by step instructions are not exactly
correct due to the fact some of the menu items have changed or been rearranged. Outside
of a few minor issues, like the one I mentioned earlier, it's a pretty fun book and
I would recommend it to other &lt;b&gt;experienced &lt;/b&gt;programmers. Hopefully Mr. Hillegass
will come out with a newer version.
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Things covered in the book 
&lt;br&gt;
&lt;br&gt;
&lt;div&gt;&lt;i&gt;Memory Management&lt;/i&gt;
&lt;/div&gt;
&lt;div&gt;&lt;i&gt;Target/Actions&lt;/i&gt;
&lt;/div&gt;
&lt;div&gt;&lt;i&gt;Helper Objects&lt;/i&gt;
&lt;/div&gt;
&lt;div&gt;&lt;i&gt;Key-Value Coding; Key-Value Observing&lt;/i&gt;
&lt;/div&gt;
&lt;div&gt;&lt;i&gt;NSArrayController&lt;/i&gt;
&lt;/div&gt;
&lt;div&gt;&lt;i&gt;NSUndoManager&lt;/i&gt;
&lt;/div&gt;
&lt;div&gt;&lt;i&gt;Archiving&lt;/i&gt;
&lt;/div&gt;
&lt;div&gt;&lt;i&gt;Basic Core Data&lt;/i&gt;
&lt;/div&gt;
&lt;div&gt;&lt;i&gt;Nib Files and NSWindowController&lt;/i&gt;
&lt;/div&gt;
&lt;div&gt;&lt;i&gt;User Defaults&lt;/i&gt;
&lt;/div&gt;
&lt;div&gt;&lt;i&gt;Using Notifications&lt;/i&gt;
&lt;/div&gt;
&lt;div&gt;&lt;i&gt;Using Alert Panels&lt;/i&gt;
&lt;/div&gt;
&lt;div&gt;&lt;i&gt;Localization&lt;/i&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;div&gt;The list keeps going, it really covers all you need to know for having a strong
hold on the basics.
&lt;/div&gt;
&lt;br&gt;
&lt;img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=72b6a8b0-94c4-4d60-a737-9538502ab645" /&gt;</description>
      <comments>http://bencoffman.com/blog/CommentView,guid,72b6a8b0-94c4-4d60-a737-9538502ab645.aspx</comments>
      <category>Mac OS X</category>
      <category>Objective C</category>
      <category>readings</category>
      <category>xCode</category>
    </item>
    <item>
      <trackback:ping>http://bencoffman.com/blog/Trackback.aspx?guid=431e0740-bc17-4b05-b9bb-157fa113fea8</trackback:ping>
      <pingback:server>http://bencoffman.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://bencoffman.com/blog/PermaLink,guid,431e0740-bc17-4b05-b9bb-157fa113fea8.aspx</pingback:target>
      <dc:creator>Ben Coffman</dc:creator>
      <wfw:comment>http://bencoffman.com/blog/CommentView,guid,431e0740-bc17-4b05-b9bb-157fa113fea8.aspx</wfw:comment>
      <wfw:commentRss>http://bencoffman.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=431e0740-bc17-4b05-b9bb-157fa113fea8</wfw:commentRss>
      <title>Comparing Values with Objective C, Alpha Or Numeric</title>
      <guid isPermaLink="false">http://bencoffman.com/blog/PermaLink,guid,431e0740-bc17-4b05-b9bb-157fa113fea8.aspx</guid>
      <link>http://bencoffman.com/blog/2010/01/02/ComparingValuesWithObjectiveCAlphaOrNumeric.aspx</link>
      <pubDate>Sat, 02 Jan 2010 01:51:02 GMT</pubDate>
      <description>&lt;img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png"&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;The Problem:&lt;/b&gt;
&lt;br&gt;
Not being able to do a simple compare in an "if statement" between two alpha or numerical
statements while programing in objective C.&lt;br&gt;
&lt;br&gt;
&lt;b&gt;The Solution:&lt;/b&gt;&lt;span style="color: Black; background-color: Transparent; font-family: Courier New; font-size: 11px;"&gt;&lt;span style="color: Blue; background-color: Transparent; font-family: Courier New; font-size: 11px;"&gt;
&lt;br&gt;
&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;a href="http://developer.apple.com/iphone/library/documentation/Cocoa/Reference/Foundation/Miscellaneous/Foundation_DataTypes/Reference/reference.html#//apple_ref/doc/c_ref/NSOrderedSame"&gt;NSOrderedSame&lt;/a&gt;&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Example Of Use:&lt;/b&gt;
&lt;br&gt;
This compares the value of "key" to the value of "support." If they are equal then
you get a return value of true.&lt;span style="color: Black; background-color: Transparent; font-family: Courier New; font-size: 11px;"&gt;&lt;span style="color: Blue; background-color: Transparent; font-family: Courier New; font-size: 11px;"&gt;
&lt;br&gt;
&lt;/span&gt;&lt;/span&gt;&lt;blockquote&gt;
&lt;div align="left"&gt;&lt;span style="color: Black; background-color: Transparent; font-family: Courier New; font-size: 11px;"&gt;&lt;span style="color: Blue; background-color: Transparent; font-family: Courier New; font-size: 11px;"&gt;if&lt;/span&gt; ([key
compare:Support] == NSOrderedSame) &lt;/span&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;/blockquote&gt;&lt;b&gt;Explanation:&lt;/b&gt;
&lt;br&gt;
For some reason Objective-C decided to make it a little bit harder to compare values.
Instead of just using the traditional way "[key compare:Support]" return a true value
for the if statement OR "([key compare:Support] == 0) OR "([key compare:Support] ==
true)" they decided to make it a little bit more complex. As demonstrated above. I'm
sure the writers of Objective-C have a good reason for this, but one more level of
abstraction could make Objective-C that much friendlier to it's programmers and isn't
that what it's all about in the end...getting more people to develop in your language.&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Some of other comparisons you might want to use are:&lt;br&gt;
&lt;/i&gt;&lt;a href="http://developer.apple.com/iphone/library/documentation/Cocoa/Reference/Foundation/Miscellaneous/Foundation_DataTypes/Reference/reference.html#//apple_ref/doc/c_ref/NSOrderedAscending"&gt;&lt;b&gt;NSOrderedAscending&lt;/b&gt;&lt;/a&gt; --
The left operand is smaller than the right operand. 
&lt;br&gt;&lt;" in most languages.&lt;br&gt;
This is equivalent to using "&lt;br&gt;
&lt;a href="http://developer.apple.com/iphone/library/documentation/Cocoa/Reference/Foundation/Miscellaneous/Foundation_DataTypes/Reference/reference.html#//apple_ref/doc/c_ref/NSOrderedDescending"&gt;&lt;b&gt;NSOrderedDescending&lt;/b&gt;&lt;/a&gt; --
The left operand is greater than the right operand.&lt;br&gt;
This is equivalent to using "&gt;" in most languages.&lt;img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=431e0740-bc17-4b05-b9bb-157fa113fea8" /&gt;</description>
      <comments>http://bencoffman.com/blog/CommentView,guid,431e0740-bc17-4b05-b9bb-157fa113fea8.aspx</comments>
      <category>Mac</category>
      <category>Mac OS X</category>
      <category>Objective C</category>
    </item>
    <item>
      <trackback:ping>http://bencoffman.com/blog/Trackback.aspx?guid=054403bc-fa5b-44b0-9dd2-e8150e71c9ed</trackback:ping>
      <pingback:server>http://bencoffman.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://bencoffman.com/blog/PermaLink,guid,054403bc-fa5b-44b0-9dd2-e8150e71c9ed.aspx</pingback:target>
      <dc:creator>Ben Coffman</dc:creator>
      <wfw:comment>http://bencoffman.com/blog/CommentView,guid,054403bc-fa5b-44b0-9dd2-e8150e71c9ed.aspx</wfw:comment>
      <wfw:commentRss>http://bencoffman.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=054403bc-fa5b-44b0-9dd2-e8150e71c9ed</wfw:commentRss>
      <slash:comments>5</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <b>Error Readout:</b>
        <br />
        <i>1st Error:</i>
        <br />
this class is not key value coding-compliant for the key managedObjectContext<br /><br /><i>2nd Error:</i><br />
NSImageCell's object value must be an NSImage<br /><br /><b>Fix:</b><br />
1st Error:<br />
There is one prominent reason you could get this answer. You didn't spell your property
correctly when you were binding it to....well....whatever you want to bind it to,
in my case it was an <i>Array Controller</i>.<br /><br />
My problem however had nothing to do with this. When I created a new project after
I upgraded to xCode 3.2 I forgot to check one very import checkbox, <i>Create document-based
application (</i><i>Note: it was not a check box in older version of xCode it was
a full icon selection upon creating a project)</i>. By not checking this I created
a big variety of problems for myself. One of the errors occurring when I didn't check
the <i>Create document-based application, </i>was the error <i>this class is not key
value coding-compliant for the key managedObjectContext. </i><br /><br />
2nd Error:<br />
This error is very clear in it's issue. I was creating an entity with a property of
native type binary and the compiler wanted NSImage. Grrr but I should be able to pass
an image as a binary object, I would say to myself as I had urges to break my laptop
and anything else in reach over my knee. My fix again was to simply create a project
and remember to click <i>Create document-based application. </i>I know this is not
your typical fix, but in case someone else runs into this issue the same way I did
I hope they find this and it will be a quick and easy resolution.<br /><br /><b>Explanation:<br /></b>All of this pain could have been resolved from the very beginning had I known
to click <i>Create document-based application. </i>It was a silly little mistake that
cost me a few hours. In my defense however I was under the impression of not checking <i>Create
document-based</i> because in Hillegass's book he states that for this exercise we
will not be using NSDocument, but NSPersistentDocument instead. It turns out this
still means you have to check <i>Create document-based application.</i><br /><br />
I will state that I should have known something was wrong when I didn't have a MyDocument.xib
in the <i>Resource</i> folder after I created the project.<br /><br />
I've attached an image, mainly because blog posts are more fun when there is an image,
but also because it shows where this one simple little check box changed my life for
a hot minute.<br /><br /><img src="http://www.bencoffman.com/xcode3.2.png" /><br /><br /><p></p><img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=054403bc-fa5b-44b0-9dd2-e8150e71c9ed" /></body>
      <title>this class is not key value coding-compliant for the key managedObjectContext</title>
      <guid isPermaLink="false">http://bencoffman.com/blog/PermaLink,guid,054403bc-fa5b-44b0-9dd2-e8150e71c9ed.aspx</guid>
      <link>http://bencoffman.com/blog/2009/09/28/thisClassIsNotKeyValueCodingcompliantForTheKeyManagedObjectContext.aspx</link>
      <pubDate>Mon, 28 Sep 2009 16:55:19 GMT</pubDate>
      <description>&lt;b&gt;Error Readout:&lt;/b&gt;
&lt;br&gt;
&lt;i&gt;1st Error:&lt;/i&gt;
&lt;br&gt;
this class is not key value coding-compliant for the key managedObjectContext&lt;br&gt;
&lt;br&gt;
&lt;i&gt;2nd Error:&lt;/i&gt;
&lt;br&gt;
NSImageCell's object value must be an NSImage&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Fix:&lt;/b&gt;
&lt;br&gt;
1st Error:&lt;br&gt;
There is one prominent reason you could get this answer. You didn't spell your property
correctly when you were binding it to....well....whatever you want to bind it to,
in my case it was an &lt;i&gt;Array Controller&lt;/i&gt;.&lt;br&gt;
&lt;br&gt;
My problem however had nothing to do with this. When I created a new project after
I upgraded to xCode 3.2 I forgot to check one very import checkbox, &lt;i&gt;Create document-based
application (&lt;/i&gt;&lt;i&gt;Note: it was not a check box in older version of xCode it was
a full icon selection upon creating a project)&lt;/i&gt;. By not checking this I created
a big variety of problems for myself. One of the errors occurring when I didn't check
the &lt;i&gt;Create document-based application, &lt;/i&gt;was the error &lt;i&gt;this class is not key
value coding-compliant for the key managedObjectContext. &lt;/i&gt;
&lt;br&gt;
&lt;br&gt;
2nd Error:&lt;br&gt;
This error is very clear in it's issue. I was creating an entity with a property of
native type binary and the compiler wanted NSImage. Grrr but I should be able to pass
an image as a binary object, I would say to myself as I had urges to break my laptop
and anything else in reach over my knee. My fix again was to simply create a project
and remember to click &lt;i&gt;Create document-based application. &lt;/i&gt;I know this is not
your typical fix, but in case someone else runs into this issue the same way I did
I hope they find this and it will be a quick and easy resolution.&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Explanation:&lt;br&gt;
&lt;/b&gt;All of this pain could have been resolved from the very beginning had I known
to click &lt;i&gt;Create document-based application. &lt;/i&gt;It was a silly little mistake that
cost me a few hours. In my defense however I was under the impression of not checking &lt;i&gt;Create
document-based&lt;/i&gt; because in Hillegass's book he states that for this exercise we
will not be using NSDocument, but NSPersistentDocument instead. It turns out this
still means you have to check &lt;i&gt;Create document-based application.&lt;/i&gt;
&lt;br&gt;
&lt;br&gt;
I will state that I should have known something was wrong when I didn't have a MyDocument.xib
in the &lt;i&gt;Resource&lt;/i&gt; folder after I created the project.&lt;br&gt;
&lt;br&gt;
I've attached an image, mainly because blog posts are more fun when there is an image,
but also because it shows where this one simple little check box changed my life for
a hot minute.&lt;br&gt;
&lt;br&gt;
&lt;img src="http://www.bencoffman.com/xcode3.2.png"&gt;
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=054403bc-fa5b-44b0-9dd2-e8150e71c9ed" /&gt;</description>
      <comments>http://bencoffman.com/blog/CommentView,guid,054403bc-fa5b-44b0-9dd2-e8150e71c9ed.aspx</comments>
      <category>Mac OS X</category>
      <category>Objective C</category>
      <category>Snow Leopard</category>
    </item>
    <item>
      <trackback:ping>http://bencoffman.com/blog/Trackback.aspx?guid=eb945d61-1ed0-4b34-aab0-b711813b9b60</trackback:ping>
      <pingback:server>http://bencoffman.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://bencoffman.com/blog/PermaLink,guid,eb945d61-1ed0-4b34-aab0-b711813b9b60.aspx</pingback:target>
      <dc:creator>Ben Coffman</dc:creator>
      <wfw:comment>http://bencoffman.com/blog/CommentView,guid,eb945d61-1ed0-4b34-aab0-b711813b9b60.aspx</wfw:comment>
      <wfw:commentRss>http://bencoffman.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=eb945d61-1ed0-4b34-aab0-b711813b9b60</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <div style="text-align: left;">
          <img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png" style="width: 151px; height: 145px;" />
        </div>
        <b>
          <br />
Error Readout:</b>
        <br />
unable to read unknown load command 0x80000022<br /><br /><b>Fix:</b><br />
Upgrade to xCode 3.2 with the 10.6 libraries.<br /><br /><b>Explanation:</b><br />
This error doesn't do anything to your application except provide some really annoying
output to your <i>Debugger Console</i>. File under annoying. You can get xCode 3.2 <b><a href="https://connect.apple.com/cgi-bin/WebObjects/MemberSite.woa/wa/getSoftware?bundleID=20481">DOWNLOAD
HERE</a></b> for free at the apple website. It will require you to create a login. 
<br /><img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=eb945d61-1ed0-4b34-aab0-b711813b9b60" /></body>
      <title>unable to read unknown load command 0x80000022</title>
      <guid isPermaLink="false">http://bencoffman.com/blog/PermaLink,guid,eb945d61-1ed0-4b34-aab0-b711813b9b60.aspx</guid>
      <link>http://bencoffman.com/blog/2009/09/18/unableToReadUnknownLoadCommand0x80000022.aspx</link>
      <pubDate>Fri, 18 Sep 2009 02:01:43 GMT</pubDate>
      <description>&lt;div style="text-align: left;"&gt;&lt;img src="http://bencoffman.com/blog/content/binary/Screen%20shot%202009-09-17%20at%208.55.44%20PM.png" style="width: 151px; height: 145px;"&gt;
&lt;/div&gt;
&lt;b&gt;
&lt;br&gt;
Error Readout:&lt;/b&gt;
&lt;br&gt;
unable to read unknown load command 0x80000022&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Fix:&lt;/b&gt;
&lt;br&gt;
Upgrade to xCode 3.2 with the 10.6 libraries.&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Explanation:&lt;/b&gt;
&lt;br&gt;
This error doesn't do anything to your application except provide some really annoying
output to your &lt;i&gt;Debugger Console&lt;/i&gt;. File under annoying. You can get xCode 3.2 &lt;b&gt;&lt;a href="https://connect.apple.com/cgi-bin/WebObjects/MemberSite.woa/wa/getSoftware?bundleID=20481"&gt;DOWNLOAD
HERE&lt;/a&gt;&lt;/b&gt; for free at the apple website. It will require you to create a login. 
&lt;br&gt;
&lt;img width="0" height="0" src="http://bencoffman.com/blog/aggbug.ashx?id=eb945d61-1ed0-4b34-aab0-b711813b9b60" /&gt;</description>
      <comments>http://bencoffman.com/blog/CommentView,guid,eb945d61-1ed0-4b34-aab0-b711813b9b60.aspx</comments>
      <category>Mac</category>
      <category>Mac OS X</category>
      <category>Objective C</category>
    </item>
  </channel>
</rss>