<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Possibility and Probability &#187; Apple</title>
	<atom:link href="http://ironboundsoftware.com/blog/category/apple/feed/" rel="self" type="application/rss+xml" />
	<link>http://ironboundsoftware.com/blog</link>
	<description>Droplets of Yes and No</description>
	<lastBuildDate>Wed, 28 Dec 2011 01:37:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="http://superfeedr.com/hubbub"/>		<item>
		<title>Are tweets the new .plan?</title>
		<link>http://ironboundsoftware.com/blog/2010/08/18/are-tweets-the-new-plan/</link>
		<comments>http://ironboundsoftware.com/blog/2010/08/18/are-tweets-the-new-plan/#comments</comments>
		<pubDate>Thu, 19 Aug 2010 02:29:03 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://ironboundsoftware.com/blog/?p=368</guid>
		<description><![CDATA[Back in the good old days, there was the .plan file. You could use the finger command to ping a server and it would return the contents of the .plan file. The awesome folks at id Software were big users of this service. It was so very cool to get a behind the scenes peek [...]]]></description>
			<content:encoded><![CDATA[<p>Back in the good old days, there was the .plan file. You could use the finger command to ping a server and it would return the contents of the .plan file. The awesome folks at <a href="http://www.idsoftware.com/">id Software</a> were big users of this service.</p>
<p>It was so very cool to get a behind the scenes peek at what was going on with a group of people making a top notch game. Other developers began doing this also, and soon there was a nice little ecosystem of plan updates flying around. This was all pre-RSS.</p>
<p>Over time the .plan file fad kinda fizzled out and died. But now with the rise of twitter, it seems like it could see a come back. True, 140 characters is not a lot of room to explain certain technical issues, but <a href="http://twitter.com/ID_AA_Carmack">John Carmack&#8217;s tweets</a> are a step in the right direction. I&#8217;m glad he&#8217;s back.</p>
]]></content:encoded>
			<wfw:commentRss>http://ironboundsoftware.com/blog/2010/08/18/are-tweets-the-new-plan/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>The iPad and the German Tank Problem</title>
		<link>http://ironboundsoftware.com/blog/2010/03/15/the-ipad-and-the-german-tank-problem/</link>
		<comments>http://ironboundsoftware.com/blog/2010/03/15/the-ipad-and-the-german-tank-problem/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 02:06:21 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Math]]></category>
		<category><![CDATA[Probability]]></category>
		<category><![CDATA[Statistics]]></category>

		<guid isPermaLink="false">http://www.ironboundsoftware.com/blog/?p=337</guid>
		<description><![CDATA[Based on order numbers the day the iPad was made available for pre-order, several sites were speculating that Apple was selling about 50,000 iPads per hour. This reminded me of something I heard about back when the iPhone was just getting started: The German Tank Problem. Its basically a way of statistically estimating the maximum [...]]]></description>
			<content:encoded><![CDATA[<p>Based on order numbers the day the iPad was made available for pre-order, several sites were speculating that Apple was selling about 50,000 iPads per hour.</p>
<p>This reminded me of something I heard about back when the iPhone was just getting started: The <a href="http://en.wikipedia.org/wiki/German_tank_problem">German Tank Problem</a>.</p>
<p>Its basically a way of statistically estimating the maximum number of &#8220;items&#8221; that have been produced based on the serial numbers of the item. This method works when the serial numbers are in sequential order, and basically allows you to produce a somewhat realistic estimation (as opposed to a wild-ass guess).</p>
<p>Estimation is one of those skills that most people (myself included) could stand to improve a little bit. In the wikipedia link above, this is shown by the intelligence estimates the Allies had for the number of tanks the Germans were producing in the middle of WWII. The initial estimates were really high (1,000 per month), but using statistics based on the serial numbers of crankcases from captured or destroyed German tanks showed that the number might be lower (around 200 per month, or 1/5th of the original. After the war when the factory records were looked at, the true number was a lot closer to 200 than 1,000.</p>
<h2>Math FTW</h2>
<p>The formula is pretty easy:</p>
<p style="padding-left: 30px;">N=m + (m/k) -1</p>
<p>Where <strong>m</strong> is the largest serial number observed, and <strong>k</strong> is the number of serial numbers seen. The <a href="http://en.wikipedia.org/wiki/Variance">variance</a> is roughly equal to:</p>
<p style="padding-left: 30px;">(N^2)/(k^2)</p>
<p>Which means that the <a href="http://en.wikipedia.org/wiki/Standard_deviation">standard deviation</a> is roughly:</p>
<p style="padding-left: 30px;">N/k</p>
<p>So, how does this apply to the iPad&#8217;s initial orders? Based on the data points of 2 known orders spaced 50,000 numbers apart (keeping in mind these order numbers also probably included orders for items other than iPads). So plugging those two numbers into the equation we get N=</p>
<blockquote><p>
&gt;&gt;&gt; m=50000<br />
&gt;&gt;&gt; k=2<br />
&gt;&gt;&gt; N = m + (m/k)-1<br />
&gt;&gt;&gt; N<br />
74999<br />
&gt;&gt;&gt;</p></blockquote>
<p>Wow, almost 75,000&#8230; That seems like a really big number. The question we should then ask ourselves is &#8220;How realistic is this number?&#8221; Using the standard deviation and variance we could find out how spread out our numbers are:</p>
<blockquote><p>&gt;&gt;&gt; (N**2)/(k**2)<br />
1406212500L<br />
&gt;&gt;&gt; N/k<br />
37499<br />
&gt;&gt;&gt;</p></blockquote>
<p>Wow. Those numbers huge. And that is a very bad thing. The bigger the standard deviation and variance, the more less accurate the estimation. Another way to approach this analysis is to look at the confidence interval and see how big it is. The wikipedia article has a handy formula for finding the <a href="http://en.wikipedia.org/wiki/German_tank_problem#Confidence_intervals">confidence interval</a> which leads us to the estimation that there are (based on <strong>k</strong>=2 and <strong>m</strong>=50,000) between 50,000 and 225,000 iPads ordered!</p>
<h2>Those numbers are lying</h2>
<p>Why? There&#8217;s two reasons: The main one is that our sample size (of 2 orders) is waaaaaaaay too small. Its like trying to guess how big your grocery bill is by averaging the price of two items, and then multiplying it times the number of things you bought. That estimation will be way off.</p>
<p>As an example, if there were 20 orders to work with (<strong>k</strong>=20), the high end of the confidence interval would shrink to 58,000. But that leads to the second reason why we can&#8217;t trust these numbers:</p>
<p>We don&#8217;t know the lower bound.</p>
<p>In other words, yes, there could have been 50,000 orders between the first and last data points. But what if only half of them were for iPads? That would mean that <strong>m</strong> is actually 25,000 which would drastically skew the numbers down. Remember that <strong>N</strong> that was almost 75,000? With <strong>m</strong> at 25,000 (and keeping <strong>k </strong>= 2) <strong>N</strong> drops to 37,499 which is half the original estimate!</p>
<h2>So how many were sold?</h2>
<p>That&#8217;s a really good question. Knowing Apple and how people love their products, I bet they sold a TON of iPads. But based off these rough numbers we see in the news, we can&#8217;t really draw a good conclusion. We can get a couple of estimates which are better than nothing, but they are so numerically shaky (huge standard deviation and enormously questionable confidence interval) that they strain believability. More data points will help establish a upper bound (i.e. the estimated maximum number sold), but without a lower bound to keep us grounded the numbers will still look really huge.</p>
]]></content:encoded>
			<wfw:commentRss>http://ironboundsoftware.com/blog/2010/03/15/the-ipad-and-the-german-tank-problem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tab vs. Space, part XIV</title>
		<link>http://ironboundsoftware.com/blog/2008/07/20/tab-vs-space-part-xiv/</link>
		<comments>http://ironboundsoftware.com/blog/2008/07/20/tab-vs-space-part-xiv/#comments</comments>
		<pubDate>Sun, 20 Jul 2008 20:51:50 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.ironboundsoftware.com/blog/2008/07/20/tab-vs-space-part-xiv/</guid>
		<description><![CDATA[So, lets say you are working in XCode 3, and you are trying to build a PyObjC app but for some reason the python code you wrote isn&#8217;t getting called. If you are seeing weird errors in the console when you run the application (specifically &#8220;Could not connect the action &#60;your_action&#62; to target of class [...]]]></description>
			<content:encoded><![CDATA[<p>So, lets say you are working in XCode 3, and you are trying to build a PyObjC app but for some reason the python code you wrote isn&#8217;t getting called.</p>
<p>If you are seeing weird errors in the console when you run the application (specifically &#8220;Could not connect the action &lt;your_action&gt; to target of class &lt;your_AppDelgate_class&gt;&#8221;), here&#8217;s what it probably is: In the AppDelegate python file that XCode creates it uses spaces to do the indentation of the methods.</p>
<p>I hail from a land where tabs are used for such tasks, and the use of spaces is look down upon in much the same way that pick ones nose in public is.</p>
<p>At any rate, what&#8217;s happening is when the code is compiled/run the python interpreter is not recognizing the new methods that I put in (using tabs to indent) and instead of giving me a warning about inconsistent indention, it fails somewhat silently in that it groans it can&#8217;t hook the action up to the class and that&#8217;s it. It wasn&#8217;t until I turned on the invisible characters that this occurred to me that it might be the root cause of my problems.</p>
<p>Once setting all of the indentions to be the same, I chose tabs, everything worked like a champ.</p>
<p>By the way, if you are looking for some tutorials for PyObjC in XCode 3 (there are a ton of XCode 2 tutorials out there, but things have changed ever so slightly in 3), be sure to check out these links:</p>
<ul>
<li><a href="http://orestis.gr/en/blog/2008/05/17/pyobjc-hello-world/">PyObjC Hello world for XCode 3</a></li>
<li><a href="http://vstock.free.fr/pyobjc.html">PyObjC Resources</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://ironboundsoftware.com/blog/2008/07/20/tab-vs-space-part-xiv/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>XCode 3&#8242;s SCM makes me sad.</title>
		<link>http://ironboundsoftware.com/blog/2008/07/07/xcode-3s-scm-makes-me-sad/</link>
		<comments>http://ironboundsoftware.com/blog/2008/07/07/xcode-3s-scm-makes-me-sad/#comments</comments>
		<pubDate>Mon, 07 Jul 2008 20:41:47 +0000</pubDate>
		<dc:creator>Nick</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.ironboundsoftware.com/blog/2008/07/07/xcode-3s-scm-makes-me-sad/</guid>
		<description><![CDATA[I just finished trying to use XCode 3&#8242;s built in support for Subversion. It did not end well. For starters I created a new XCode project, ran it to make sure it could build, and then decided to check it in to svn so that I would have a &#8220;clean&#8221; starting point in case I [...]]]></description>
			<content:encoded><![CDATA[<p>I just finished trying to use XCode 3&#8242;s built in support for Subversion. It did not end well.</p>
<p>For starters I created a new XCode project, ran it to make sure it could build, and then decided to check it in to svn so that I would have a &#8220;clean&#8221; starting point in case I ran into problems. This is how I normally work in other IDE&#8217;s, and I&#8217;ve never had a problem. Until today.</p>
<p>After setting up the repository in XCode I couldn&#8217;t find how to set the project so that XCode would &#8220;know&#8221; it was under version control (or SCM as XCode refers to it). If you look at the project&#8217;s properties, there is a drop down list the lists the available repositories (or it offers to let you set up a new one, which is a nice shortcut). However, the repository I just added is grayed out. After a half hour of trying various &#8220;obvious&#8221; things I gave up and googled around.</p>
<p><iframe align="right" src="http://rcm.amazon.com/e/cm?lt1=_blank&#038;bc1=000000&#038;IS2=1&#038;bg1=5E5C5C&#038;fc1=FFFFFF&#038;lc1=FFCD00&#038;t=katieandnicks-20&#038;o=1&#038;p=8&#038;l=as1&#038;m=amazon&#038;f=ifr&#038;asins=1590597532" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p>It turns out that XCode can&#8217;t create and then check in. The project has to be put into the repository, then checked out before XCode will recognize that it is under source control. Very unusual, but what ever, I decided to play along.  I used XCode&#8217;s svn browser (which isn&#8217;t half bad) to upload the code, then deleted the project and checked it out.</p>
<p>And right about then is when it became obvious that I was traveling the wrong way on a one way street. Here&#8217;s an executive summary of what I found so very, very, very wrong with XCode&#8217;s SCM integration:</p>
<ol>
<li>I had to create the project, check it in, then check it out for XCode to realize that it was under version control.</li>
<li>Although XCode has an svn repository browser that allows me check in and out the code, it doesn&#8217;t seem to know anything about XCode projects as it checked in the build directory without asking. For me (and a lot of developers I know) the last thing I want in version control are files that are going to change constantly (i.e. object files). Checking in a finished version, fine. Checking in a ba-jillion intermediate files: fail.</li>
<li>After checking out the project, XCode began complaining about there not being a lock on a file in the build directory. The error message actually said &#8220;This might be a bug, please report it.&#8221; Sorry Apple, I&#8217;m a nice guy, but I&#8217;ve got limits. This seems like something that shouldn&#8217;t happen on a fresh project (i.e. all boilerplate code, I haven&#8217;t done a thing to the project yet).</li>
<li>Deciding that I might be slightly smarter than the computer, I decided to delete the build directory in the repository. I tried to refresh the project to let it know there was a change it might need to be aware of. Instead I was made aware of the fact that there doesn&#8217;t seem to be one central view of what&#8217;s changed for the project. The near-useless SCM menu item in the project reported that one file had change, and I could not seem to get it to even look at the project as a whole. Maybe I&#8217;m spoiled by the way Eclipse handles this situation (which provides a bunch of clues in different areas, but all of which lead to a pretty straightforward GUI for dealing with changes). Even TextMate handles this decently (just not as good looking as Eclipse).</li>
</ol>
<p>By this time I just gave up. I removed the repository connection from the project settings, and decided to just go Command-line for doing my updates/commits. Life&#8217;s too short to be chasing my tail on stuff like this.</p>
]]></content:encoded>
			<wfw:commentRss>http://ironboundsoftware.com/blog/2008/07/07/xcode-3s-scm-makes-me-sad/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple graphics on a Mac. Why is that so hard to do?</title>
		<link>http://ironboundsoftware.com/blog/2007/04/28/simple-graphics-on-a-mac-why-is-that-so-hard-to-do/</link>
		<comments>http://ironboundsoftware.com/blog/2007/04/28/simple-graphics-on-a-mac-why-is-that-so-hard-to-do/#comments</comments>
		<pubDate>Sat, 28 Apr 2007 21:09:49 +0000</pubDate>
		<dc:creator>Nick Loadholtes</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.ironboundsoftware.com/blog/?p=275</guid>
		<description><![CDATA[I don&#8217;t want a copy of Photoshop. Its not that I&#8217;m cheap (that&#8217;s a whole other story!), its just that I don&#8217;t like using sledgehammers to kill mosquitoes. I&#8217;m trying to do some simple bitmap editing and it has turned into a big headache because it is hard to find a simple graphics editing program. [...]]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t want a copy of Photoshop. Its not that I&#8217;m cheap (that&#8217;s a whole other story!), its just that I don&#8217;t like using sledgehammers to kill mosquitoes. I&#8217;m trying to do some simple bitmap editing and it has turned into a big headache because it is hard to find a simple graphics editing program.</p>
<p>I was using Pixen which is highly regarded and does just what I need it too. Buuuuuut&#8230; I can&#8217;t get the program to run more than a few minutes without a crash. And that just really bums me out because it seems like the perfect program. Sadly, I&#8217;m not the only one having this problem, posting around the net seem to indicate that this is a common issue.</p>
<p>And unlike Windows, the Mac doesn&#8217;t seem to come with any simple programs a-la Paintbrush. What&#8217;s up with that? I realize Apple is all about minimal cruft and what-not, but this really takes it to an extreme.</p>
<p>For the moment I&#8217;m trying out <a href="http://www.imitationpickles.org/pgu/docs/tileedit.html">tileeditor</a> which is a pretty minimal editor, but at the same time seems to work pretty well. (Although as a side note I would like to point out that you need to start the editor in the same directory as your artwork, otherwise it seems to try and save to the wrong directory. Every time I did this is put _tmp and the front of the path, which of course doesn&#8217;t exist. I&#8217;m not sure if this is a Mac specific thing, but just starting the program in the art directory seemed to get around this issue.)</p>
]]></content:encoded>
			<wfw:commentRss>http://ironboundsoftware.com/blog/2007/04/28/simple-graphics-on-a-mac-why-is-that-so-hard-to-do/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Programming made simple: Quartz Composer</title>
		<link>http://ironboundsoftware.com/blog/2007/01/29/programming-made-simple-quartz-composer/</link>
		<comments>http://ironboundsoftware.com/blog/2007/01/29/programming-made-simple-quartz-composer/#comments</comments>
		<pubDate>Mon, 29 Jan 2007 19:56:37 +0000</pubDate>
		<dc:creator>Nick Loadholtes</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.ironboundsoftware.com/blog/?p=268</guid>
		<description><![CDATA[I&#8217;ve been messing around with Cocoa for a few weeks now, mostly trying to make an OpenGL program. I&#8217;ve been making good progress, but man, it does get tedious. I&#8217;m not an OpenGL expert, so I&#8217;m constantly needing to look things up to make sure I&#8217;m on the right track. Last week at an Apple [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been messing around with <a href="http://developer.apple.com/cocoa/">Cocoa</a> for a few weeks now, mostly trying to make an <a href="http://www.opengl.org/">OpenGL</a> program. I&#8217;ve been making good progress, but man, it does get tedious. I&#8217;m not an OpenGL expert, so I&#8217;m constantly needing to look things up to make sure I&#8217;m on the right track.</p>
<p>Last week at an Apple ADC Tech Talk I saw an example of Quartz Composer.Â  I had only vaguely heard of Quartz Composer before and hadn&#8217;t really looked into it. It turns out that it is a very useful tool for building a neat GUI quickly, and is available as part of the Xcode tools. After getting home from the talk I played around with it and was able to build lots of cool demo-type apps very quickly.</p>
<p>And then&#8230; I discovered that it can be integrated into Cocoa apps <strong>very</strong> easily. I mean, I found this <a href="http://gemma.apple.com/documentation/GraphicsImaging/Conceptual/QuartzComposer/qc_intro/chapter_1_section_1.html">great tutorial on the Apple Dev site,</a> and within 5 minutes I had a Quartz Composer (QC) window running in my test app along side my OpenGL test window. And not a line of code was written. The absolute bets news is that you can expose the internals of the QC window to the Cocoa framework and then manipulate the QC object from your program!</p>
<p>That just rocks so hard. Now I can focus on the mechanics of my program instead of worrying about the mechanics of OpenGL. Of course, the QC isn&#8217;t 100% efficient as hand tuned code, but for most of what I want to do with it, its perfect! Thank you Apple!</p>
<p>As a side note, if you are interested in doing Mac development and you aren&#8217;t a member of the ADC (<a href="http://developer.apple.com/">Apple Developer Connection</a>), you really owe it to yourself to go sign up for one of their free accounts and check it out. Its a great resource for all things Mac and OS X.</p>
]]></content:encoded>
			<wfw:commentRss>http://ironboundsoftware.com/blog/2007/01/29/programming-made-simple-quartz-composer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My visit to the Apple Genius Bar</title>
		<link>http://ironboundsoftware.com/blog/2007/01/21/my-visit-to-the-apple-genius-bar/</link>
		<comments>http://ironboundsoftware.com/blog/2007/01/21/my-visit-to-the-apple-genius-bar/#comments</comments>
		<pubDate>Mon, 22 Jan 2007 01:32:21 +0000</pubDate>
		<dc:creator>Nick Loadholtes</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Blogging]]></category>

		<guid isPermaLink="false">http://www.ironboundsoftware.com/blog/?p=266</guid>
		<description><![CDATA[My MacBook had a boo-boo. The battery wouldn&#8217;t charge, all it would do is show a battery icon with and X in it on the status bar at the top of the screen. I tried all of the tips on the Apple support pages, but nothing worked. So I decided to try my luck at [...]]]></description>
			<content:encoded><![CDATA[<p>My MacBook had a boo-boo. The battery wouldn&#8217;t charge, all it would do is show a battery icon with and X in it on the status bar at the top of the screen. I tried all of the tips on the Apple support pages, but nothing worked. So I decided to try my luck at the Genius bar at the local Apple store.</p>
<p>I don&#8217;t really know what I was expecting, probably a hard time as that&#8217;s what I usually get at stores when I try to get something fixed, but this visit was as smooth as silk. I had to wait a little bit past my appointment time, there was a ton of people in there and a couple of the problems looked bad, but once I was called up I was done in less than 10 minutes!</p>
<p>I explained to the &#8220;genius&#8221; (sorry, I didn&#8217;t catch his name) what was going on, and what I had tried to fix it. He booted up the Mac, confirmed the problem and then brought out a new battery. He plugged it in, booted the Mac and then it showed there was a battery and it was charging. I was so happy (I was afraid it was the logic board) and when I asked what was the problem with the battery, I was told that the chip in the battery was probably dead.</p>
<p>The best part about the whole experience was that the battery was covered under the warranty, so there was no money out of my pocket! Woo-Hoo!</p>
<p>As a side note, after the iPhone announcement the other day I heard that Apple would be providing the customer support for the phone, not Cingular. Customer support is a major undertaking, and I was really wondering how Apple would handle this. Granted, phone support is different from one-on-one support, but everyone I saw at the Apple store today was really nice. Granted most of the customers were nice also, but a few seemed on edge (since their equipment was going to have to go into the shop to get fixed). But no one was steamed or looking unhappy with how they were being treated. Contrast that with most cell phone stores, and you&#8217;ll see a big difference. Hopefully Apple will be able to maintain that level of customer satisfaction and service when the iPhone rolls out&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://ironboundsoftware.com/blog/2007/01/21/my-visit-to-the-apple-genius-bar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Your Cocoa/XCode tip of the day</title>
		<link>http://ironboundsoftware.com/blog/2006/12/02/your-cocoaxcode-tip-of-the-day/</link>
		<comments>http://ironboundsoftware.com/blog/2006/12/02/your-cocoaxcode-tip-of-the-day/#comments</comments>
		<pubDate>Sun, 03 Dec 2006 04:23:13 +0000</pubDate>
		<dc:creator>Nick Loadholtes</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.ironboundsoftware.com/blog/?p=259</guid>
		<description><![CDATA[When working with a Cocoa project (in XCode), if you decide to add a .cpp file (and it&#8217;s .h file) to the project you might notice a problem when building. I banged my head into this for about an hour before figuring it out. When I added the file(s), I did so by clicking on [...]]]></description>
			<content:encoded><![CDATA[<p>When working with a Cocoa project (in XCode), if you decide to add a .cpp file (and it&#8217;s .h file) to the project you might notice a problem when building. I banged my head into this for about an hour before figuring it out.</p>
<p>When I added the file(s), I did so by clicking on &#8220;New&#8221; and selecting a C++ file under &#8220;BSD&#8221; because it was the first option that I saw. It turns out when you do this, the Cocoa project settings will attempt to compile the files as Objective-C files (which they are not). This results in cryptic messages about a &#8220;parse error before&#8221; in you .h file.</p>
<p>The solution is to right click on the .cpp file, select info, then change the file type to &#8220;sourcecode.cpp.objcpp&#8221;. This tells XCode to use the Objective-C++ compiler to build the files, and from then on everything *seemed* to work ok. I&#8217;ve never worked with Objective-C (or Obj-C++), so I&#8217;m figuring this out as I go. If something bad seems to happen, I&#8217;ll post a follow up to let everyone know.</p>
]]></content:encoded>
			<wfw:commentRss>http://ironboundsoftware.com/blog/2006/12/02/your-cocoaxcode-tip-of-the-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>wxPython</title>
		<link>http://ironboundsoftware.com/blog/2006/09/21/wxpython/</link>
		<comments>http://ironboundsoftware.com/blog/2006/09/21/wxpython/#comments</comments>
		<pubDate>Fri, 22 Sep 2006 01:49:44 +0000</pubDate>
		<dc:creator>Nick Loadholtes</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.ironboundsoftware.com/blog/?p=236</guid>
		<description><![CDATA[&#8230;Or, I love it when a plan comes together. A while ago I wrote a small GUI app in python using Tk (Tkinter to be specific). It worked pretty good on Windows machines, which is where I was running it at the time. About a year later I tried to run it on a Mac, [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230;Or, I love it when a plan comes together. <img src='http://ironboundsoftware.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>A while ago I wrote a small GUI app in <a href="http://python.org">python</a> using Tk (<a href="http://wiki.python.org/moin/TkInter">Tkinter</a> to be specific). It worked pretty good on Windows machines, which is where I was running it at the time. About a year later I tried to run it on a <a href="http://apple.com/mac">Mac</a>, and the results were a little surprising. It did not look good. It seems that there are some differences between the Tk stuff on different platforms.</p>
<p>Every since then I&#8217;ve been wondering if there was a more platform independent way of making Python GUI apps. I&#8217;d heard a lot about <a href="http://www.wxpython.org/">wxPython</a>, so I decided to give it a shot. The documentation is pretty good and the demos that come with it helped me get up to speed pretty quickly. (Plus the API reminded me of some work I did in the Win32 world a few years ago, and surprisingly, that helped me get things &#8220;working&#8221; faster than I think I would have otherwise.)</p>
<p>Anyways, I built a little app to visualize an idea I&#8217;ve been having for a few weeks ago. Again, on Windows machines it looks great. Today I remembered that I hadn&#8217;t run it on a Mac yet. With a little bit of trepidation, I grabbed the code and hit run. Lo-and-behold it runs great on the Mac. A little bit slow on the re-draw, which probably has more to do with how I wrote the event handlers, but it ran and looked just like it does on the Windows machines.</p>
<p>Thus I have concluded: <a href="http://www.wxpython.org/">wxPython</a> rocks.</p>
]]></content:encoded>
			<wfw:commentRss>http://ironboundsoftware.com/blog/2006/09/21/wxpython/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>I got a MacBook</title>
		<link>http://ironboundsoftware.com/blog/2006/07/02/i-got-a-macbook/</link>
		<comments>http://ironboundsoftware.com/blog/2006/07/02/i-got-a-macbook/#comments</comments>
		<pubDate>Sun, 02 Jul 2006 18:17:05 +0000</pubDate>
		<dc:creator>Nick Loadholtes</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.ironboundsoftware.com/blog/?p=222</guid>
		<description><![CDATA[A few weeks ago I went and got a MacBook. I&#8217;m really digging it, it feels so much faster than the MacMini. Plus I&#8217;m loving the widescreen on the MacBook, I&#8217;ve been wanting a widescreen monitor for a while, but have never had the opportunity to get one. In case anyone out there is wondering [...]]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago I went and got a <a href="http://www.apple.com/macbook/">MacBook</a>. I&#8217;m really digging it, it feels so much faster than the <a href="http://www.apple.com/macmini/">MacMini</a>. Plus I&#8217;m loving the widescreen on the MacBook, I&#8217;ve been wanting a widescreen monitor for a while, but have never had the opportunity to get one.</p>
<p>In case anyone out there is wondering about the pro&#8217;s and con&#8217;s of getting an ICBM (Intel Chip Based Mac), I thought I would toss out my thoughts on the topic:</p>
<ul>
<li><strong>Speed</strong>- It is sooooo much faster than the old PPC machines. Don&#8217;t get me wrong, the PPC machines are fast, but the duo core aspect of the MacBook makes everything that much faster.</li>
<li><strong>Ease of Upgrade</strong>- I bought 2GB of RAM and dropped it in the machine after I got it all set up. That has made all the difference in the world. The Mini only had 512MB, and I think that really holds it back. Being able to get 2GB for less than $200 was a no brainer, and the performance is phenomenal.</li>
<li><strong>Heat</strong> &#8211; The MacBook gets hot. Real hot in some spots. The Mini is one of the best combinations of speed and coolness that I have ever seen. Most of the time I don&#8217;t have the MacBook on my lap, but I&#8217;m still concerned about heat.</li>
<li><strong>Compatibility</strong> &#8211; The Intel based machines are supposed to support the old PPC binaries, and for the most part I have found this to be good. However, I did find two glaring problems right off the bat: <a href="http://www.eclipse.org/">Eclipse</a> and <a href="http://www.neooffice.org/">NeoOffice</a>. Both of these programs would not start up. It turns out that Universal Binaries are right around the corner for both. I thought it was odd though that both apps (which are Java based) wouldn&#8217;t run. It turns out there is some JNI in the background and that&#8217;s where the problems were. Once the Universal builds are released (I think Eclipse is already out with its 3.2 release) that should solve those problems. Also, I&#8217;ve found that PyGame isn&#8217;t 100% functional on the MacBook, but I&#8217;m thinking I might have done something to cause that. (More on that later)</li>
<li><strong>Form Factor</strong> &#8211; Both the Mini and the MacBook are just slick looking machines. Thin, compact, yet packed with power. Its great! I recently took the MacBook on a trip and it was a breeze to bust it out and knock out some code. The built in Wi-Fi is great, though sometimes I wish I could get a little more detail out of it (Windows machines have a really good interface for its WiFi stuff, its great for users who want more advanced information).
</li>
</ul>
<p>Overall I&#8217;ve got to say the MacBook just rocks. <img src='http://ironboundsoftware.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://ironboundsoftware.com/blog/2006/07/02/i-got-a-macbook/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

