<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2571931302941479673</id><updated>2011-07-30T07:47:25.849-07:00</updated><category term='Rambling'/><category term='MacBook'/><category term='WWDC'/><category term='Twitter'/><category term='Microsoft'/><category term='Performance'/><category term='Space'/><category term='Game'/><category term='Parenting'/><category term='Newton'/><category term='Palm'/><category term='Fatherhood'/><category term='Apple'/><category term='Wall-E'/><category term='Pathfinder'/><category term='Creativity'/><category term='1984'/><category term='C++'/><category term='Nostalgia'/><category term='Computing'/><category term='Videos'/><category term='Steve Jobs'/><category term='Chipmunk'/><category term='Étoilé'/><category term='Moon'/><category term='Exception'/><category term='Indie'/><category term='Signing'/><category term='iPod'/><category term='NeXT'/><category term='Objective-C'/><category term='Mac'/><category term='App Store'/><category term='Blogs'/><category term='Android'/><category term='Animation'/><category term='Google I/O'/><category term='Coding'/><category term='Darwin'/><category term='Soup'/><category term='Nokia'/><category term='Music'/><category term='Radio'/><category term='Nibless'/><category term='Mars'/><category term='BlackBerry'/><category term='book'/><category term='OSX'/><category term='Symbian'/><category term='SDK'/><category term='Retro'/><category term='Pixar'/><category term='MER'/><category term='iPhone'/><category term='GTA'/><category term='1990'/><category term='Shipley'/><category term='Dune'/><category term='history'/><category term='Cocoa'/><category term='Star Wars'/><category term='Umberto Eco'/><category term='Archiver'/><title type='text'>[self geekingAround:YES];</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>89</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-7781968658470336916</id><published>2009-12-31T08:19:00.000-08:00</published><updated>2009-12-31T08:53:39.109-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Blogs'/><title type='text'>Keep on blogging ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;In my quest for a better blogging output, I've come across &lt;a href="http://www.tumblr.com"&gt;Tumblr&lt;/a&gt;, which to me is somewhat of a cross between &lt;a href="http://www.blogger.com"&gt;Blogger&lt;/a&gt; and &lt;a href="http://www.twitter.com"&gt;Twitter&lt;/a&gt;. And, this is something which I believe is more akin to get me to blog more often especially since Tumblr's got a (free) iPhone app (one of many goodies) which allow to post things (including multimedia stuff) more easily.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Anyway, so I'm sort of moving this blog over to Tumblr, sorry about the inconvenient this may cause :P You can follow me from now on &lt;a href="http://cocoageek.tumblr.com"&gt;there&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-7781968658470336916?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/7781968658470336916/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=7781968658470336916' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7781968658470336916'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7781968658470336916'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/12/keep-on-blogging.html' title='Keep on blogging ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-4367020620025632591</id><published>2009-12-09T07:56:00.000-08:00</published><updated>2009-12-09T07:56:41.442-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Game'/><category scheme='http://www.blogger.com/atom/ns#' term='Retro'/><category scheme='http://www.blogger.com/atom/ns#' term='Indie'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>This is Cocoaaaaaaa!!</title><content type='html'>&lt;div style="text-align: justify;"&gt;Once again, sorry for the extra long delay between posts ... I know how hard it must be for the five of you :P ... The usual excuse apply: Twitter, lack of time &amp;amp; Tiger Woods all came together to create a worm whole in which I vanished for a while ...&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Anyway I finally started, two nights ago, the implementation of that game for iPhone I was talking about a while go ... Except it's not the same game! A couple of weeks ago, I completed the grunt of the work on the game engine (including the audio stuff!) and I was seized by an uncontrollable spur of creativity focused on different concept than the one I had been toying around with. Now, thanks to my paranoia, I'm not going to share much on the game itself for a little while, at least not until it is well advanced. All I can said, is that it'll be &lt;i&gt;&lt;b&gt;retro &lt;/b&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;(graphics, sounds and concept)&lt;/span&gt;&lt;/i&gt; and &lt;i&gt;&lt;b&gt;hopefully fun&lt;/b&gt;&lt;/i&gt; (or so I hope). What I can talk about, however, is some of the design/implementation decisions. So stay tuned :)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-4367020620025632591?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/4367020620025632591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=4367020620025632591' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4367020620025632591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4367020620025632591'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/12/this-is-cocoaaaaaaa.html' title='This is Cocoaaaaaaa!!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-8430460394637953899</id><published>2009-09-11T16:02:00.000-07:00</published><updated>2009-09-11T16:02:16.918-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Game'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>On ur iPhone! Stealin' ur CPU cyclez!</title><content type='html'>&lt;div style="text-align: justify;"&gt;Last night, I finally managed to build and run my &lt;i&gt;engineering test app&lt;/i&gt; for my game engine on my &lt;a href="http://en.wikipedia.org/wiki/Iphone"&gt;iPhone&lt;/a&gt;. Since &lt;a href="http://en.wikipedia.org/wiki/IPhone_OS"&gt;OS 3.0&lt;/a&gt; have come out, what use to be a tricky and error prone process (I'm talking about provisioning and code signing) have been improved vastly (BTW, thanks Apple!). If you have been in the iPhone development business for more than 6 months, you know what I'm talking about.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;In fact, since it had been a while since I had to create an &lt;i&gt;app-id&lt;/i&gt; or a &lt;i&gt;provision profile&lt;/i&gt;, I was pleased to see that Apple had added an assistant to complete such basic (and yet daunting) tasks! And what do you know, it did more or less work as expected! I said more or less 'cause I got a little confused when creating the &lt;i&gt;app-id&lt;/i&gt;, and instead of ending with the id been &lt;code&gt;com.cocoageek.test&lt;/code&gt;, I just ended up with the id &lt;code&gt;test&lt;/code&gt;. Here, I'd like to blame the assistant for this, simply because it fail to giving some example of what each fields expect. Make you think that it will be nice to be able to delete &lt;i&gt;app-id&lt;/i&gt; ... &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Anyway, the test app is running well. The frame rate (with collision between objects happening) seems smooth (I haven't measured it) so far. I'm a bit disappointed, however, by the &lt;a href="http://en.wikipedia.org/wiki/Anti-aliasing"&gt;anti-aliasing&lt;/a&gt; which doesn't seems to be as nice on the device as it is on my laptop (within the emulator). I guess I'll have to dig this a bit more. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-8430460394637953899?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/8430460394637953899/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=8430460394637953899' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/8430460394637953899'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/8430460394637953899'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/09/on-ur-iphone-stealin-ur-cpu-cyclez.html' title='On ur iPhone! Stealin&apos; ur CPU cyclez!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-1064178899799432294</id><published>2009-09-08T12:27:00.000-07:00</published><updated>2009-09-08T12:27:43.830-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Game'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Chipmunk'/><category scheme='http://www.blogger.com/atom/ns#' term='Coding'/><title type='text'>I can haz physicz?</title><content type='html'>&lt;div style="text-align: justify;"&gt;Since these days I am mainly a full-time dad when I get home from the day job, I was somewhat surprised when I completed the integration of &lt;a href="http://code.google.com/p/chipmunk-physics/"&gt;Chipmunk physics&lt;/a&gt; to my game engine over the long weekend (Labor day FTW!). Needless to said, it is pretty exciting when things are starting to come together after weeks of &lt;i&gt;intense&lt;/i&gt; preparations :-)&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Like I was saying in my &lt;a href="http://geeking-around.blogspot.com/2009/09/ping.html"&gt;previous post&lt;/a&gt;, there's various API to chose from when looking to add real world (2D) physics to your game. I picked &lt;i&gt;Chipmunk&lt;/i&gt; mainly because it's in &lt;a href="http://en.wikipedia.org/wiki/C_(programming_language)"&gt;&lt;i&gt;C&lt;/i&gt;&lt;/a&gt; and relatively simple. My main grip with it, is the lack of a complete, and correct, documentation. I found myself having to dive in its source code to understand or clarify some things, and while it's great to be able to do so, &lt;b&gt;I shouldn't have to&lt;/b&gt;. A 3rd party API should be well documented, including comments in the header files! Here's a (lame) example: once you have created a body (&lt;a href="http://code.google.com/p/chipmunk-physics/wiki/cpBody"&gt;&lt;code&gt;cpBody&lt;/code&gt;&lt;/a&gt;) the API provide a set of functions which allow you to physically manipulate it, such as applying a force on it. The thing is, the wording of the purpose on the function &lt;code&gt;cpBodyApplyForce &lt;/code&gt;is a little ambiguous: &lt;i&gt;"Apply (accumulate) the force &lt;/i&gt;&lt;tt&gt;&lt;i&gt;f&lt;/i&gt;&lt;/tt&gt;&lt;i&gt; on &lt;/i&gt;&lt;tt&gt;&lt;i&gt;body&lt;/i&gt;&lt;/tt&gt;&lt;i&gt; at a relative offset &lt;/i&gt;&lt;tt&gt;&lt;i&gt;r&lt;/i&gt;&lt;/tt&gt;&lt;i&gt; from the center of gravity. Both &lt;/i&gt;&lt;tt&gt;&lt;i&gt;r&lt;/i&gt;&lt;/tt&gt;&lt;i&gt; and &lt;/i&gt;&lt;tt&gt;&lt;i&gt;f&lt;/i&gt;&lt;/tt&gt;&lt;i&gt; are in world coordinates."&lt;/i&gt; ... Is the force applied for a single simulation step or permanently? It turns out that it will be applied at each steps, until all forces on the body are reset (using &lt;code&gt;cpBodyResetForces&lt;/code&gt;) ... Maybe it's just me? The mention to &lt;i&gt;"accumulate"&lt;/i&gt; should have been enough? Also, the &lt;tt&gt;r&lt;/tt&gt; and &lt;tt&gt;f&lt;/tt&gt; cited are most definitely NOT in world coordinate, but in offset from the body's center of gravity ...&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Anyhow, overall &lt;i&gt;Chipmunk physics&lt;/i&gt; is a big win, I could have grabbed &lt;i&gt;&lt;a href="http://oreilly.com/catalog/9780596000066/"&gt;Physics for Game Developers&lt;/a&gt;&lt;/i&gt; at my local book store, but this is saving me time and headache so: &lt;i&gt;Yeah&lt;/i&gt;! :-)&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Now that two majors items on my engine's to-do list are done with (the first been the rendering), I'm moving on to handling user inputs, which by it-self isn't that hard, but I'd like to be able to detect the basic gestures that we, as &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; users, are used to: flicking and pinching. I'm not sure if I need them for the first game I have planned, but ... since I'm doing a game framework, mind as well try to be as complete as possible! At least, I'll need to provision for gestures handling even if I leave the detection for a later version of the framework ... That's one of the &lt;a href="http://www.merriam-webster.com/dictionary/malediction"&gt;&lt;i&gt;malediction&lt;/i&gt;&lt;/a&gt; of being a &lt;i&gt;framework kind of guy, &lt;/i&gt;most of your time is spend on the framework rather than the end result ...&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-1064178899799432294?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/1064178899799432294/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=1064178899799432294' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1064178899799432294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1064178899799432294'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/09/i-can-haz-physicz.html' title='I can haz physicz?'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-7631169704621240553</id><published>2009-09-03T10:43:00.000-07:00</published><updated>2009-09-03T10:44:05.633-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Game'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>Ping!</title><content type='html'>&lt;div style="text-align: justify;"&gt;Hello dear readers (yes, the two of you)! Well I'm still around and kicking as you may have seen if you &lt;a href="http://twitter.com/CocoaGeek"&gt;follow me on Twitter&lt;/a&gt;. I'd like to said that I have been über busy with making cool iPhone apps, but it will not be exactly accurate. I'm working on a couple of apps, that is true, but the reason that I haven't posted since June as more to do with the lack of interesting things to said (can't always blame Twitter ...). I'll try to improve this over the coming weeks (year right ...) even though idiotic rambling on this blog have never stopped me before ;-)&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;So, let's talk a bit about one of the project I'm working on: an iPhone game. Yep that's right, a video game. Now, this is my first game (I'll skip the lame ones I wrote in &lt;a href="http://en.wikipedia.org/wiki/BASIC"&gt;BASIC&lt;/a&gt; back in the days or the ones for my pocket calculators) so this is a brand new experience for me and so far I'm loving it :-)&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Since I suffer from the &lt;a href="http://en.wikipedia.org/wiki/Not_Invented_Here"&gt;NIH&lt;/a&gt; syndrome, I'm building my own game framework to support the development of this game (and others to follow hopefully!), when I could have just use one of the existing framework, such as the widely popular &lt;a href="http://code.google.com/p/cocos2d-iphone/"&gt;&lt;i&gt;Cocos2D&lt;/i&gt;&lt;/a&gt;. My needs are pretty simple really as I'm making a 2D &lt;a href="http://en.wikipedia.org/wiki/Retrogaming"&gt;retrogaming&lt;/a&gt; style game (using &lt;a href="http://en.wikipedia.org/wiki/OpenGL"&gt;&lt;i&gt;OpenGL&lt;/i&gt;&lt;/a&gt;). I could have save myself the trouble, but since I thrive for challenges and enjoy learning stuff, I though it'll be more fun that way. And it is! :P&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Yeah now, I'm not totally insane, so I have integrated &lt;i&gt;&lt;a href="http://code.google.com/p/chipmunk-physics/"&gt;Chipmunk physics&lt;/a&gt;&lt;/i&gt; into the engine, instead of spending the next months banging my heads on complex math&amp;amp;physic problems. Here again, there is a lot of physics frameworks to choose from, like &lt;i&gt;&lt;a href="http://www.box2d.org/"&gt;Box2D&lt;/a&gt;,&lt;/i&gt; but I wanted something simple and in &lt;a href="http://en.wikipedia.org/wiki/C_(programming_language)"&gt;&lt;i&gt;C&lt;/i&gt;&lt;/a&gt; (so that it'll be easier to integrate with my &lt;i&gt;&lt;a href="http://en.wikipedia.org/wiki/Objective-c"&gt;Objective-C&lt;/a&gt;&lt;/i&gt; based engine).&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Anyway, things are looking good at this point although I'm mostly working on the game engine, while the game concept is &lt;i&gt;maturing&lt;/i&gt; in my head (with some great inputs from experienced game developer &lt;a href="http://twitter.com/madgarden"&gt;@madgarden&lt;/a&gt;). Unlike many other iPhone developers, like &lt;a href="http://www.streamingcolour.com/blog/"&gt;Owen Goss&lt;/a&gt;, I'm a little hesitant to reveal too much about the game itself, at least until it is well advanced. It's not that I'm working on a revolutionary game (far from it, really!), but the competition is fierce on the &lt;i&gt;&lt;a href="http://en.wikipedia.org/wiki/App_store"&gt;App Store&lt;/a&gt;&lt;/i&gt;! Since I have no idea how long it is going to take me to complete it, I rather not be beaten to the store if you see what I mean (even though there's already similar game in the store) ;-)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-7631169704621240553?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/7631169704621240553/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=7631169704621240553' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7631169704621240553'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7631169704621240553'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/09/ping.html' title='Ping!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5452325257248620749</id><published>2009-06-14T10:28:00.000-07:00</published><updated>2009-06-15T10:29:16.461-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='App Store'/><category scheme='http://www.blogger.com/atom/ns#' term='Twitter'/><title type='text'>It's Twitter's fault!</title><content type='html'>&lt;div style="text-align: justify;"&gt;Alright, alright ... it's not totally &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Twitter's&lt;/span&gt; fault, but yeah my blogging has &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_1"&gt;definitely&lt;/span&gt; taken a serious hit since I joined the&lt;a href="http://www.urbandictionary.com/define.php?term=twitterverse"&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;twitterverse&lt;/span&gt;&lt;/a&gt;, and since nothing really exciting have happened, there was nothing much to report.&lt;br /&gt;&lt;br /&gt;Anyhow, so our first &lt;a href="http://en.wikipedia.org/wiki/Iphone"&gt;iPhone&lt;/a&gt; app have been on the store for over 2 weeks now, and as expected, it is not exactly &lt;span style="font-style: italic;"&gt;flying off the shelves&lt;/span&gt;, but we still made 55 sales in the first 2 weeks. Which is not too bad :-) I'll &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_3"&gt;definitely&lt;/span&gt; won't be quitting the &lt;span style="font-style: italic;"&gt;day job&lt;/span&gt; &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_4"&gt;any times&lt;/span&gt; soon, but it's a nice feeling to know that around the world there is people using our app, and that they are happy about it (hopefully).&lt;br /&gt;&lt;br /&gt;So, what's &lt;a href="http://en.wikipedia.org/wiki/NeXT"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;NeXT&lt;/span&gt;&lt;/a&gt;? Well, it's not set in stone yet, but we have two apps idea which need more preparatory work. I'm also pretty excited about finally getting and iPhone (3GS &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;FTW&lt;/span&gt;!) this coming Friday (if I can get one ...). I'm not overly happy about enslaving myself to &lt;a href="http://en.wikipedia.org/wiki/Rogers_Communications"&gt;Rogers&lt;/a&gt;, but the choice is limited here in Canada ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5452325257248620749?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5452325257248620749/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5452325257248620749' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5452325257248620749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5452325257248620749'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/06/its-twitters-fault.html' title='It&apos;s Twitter&apos;s fault!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-409650544015819881</id><published>2009-05-20T10:35:00.000-07:00</published><updated>2009-05-20T10:36:05.277-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='App Store'/><title type='text'>We're in! ... well almost.</title><content type='html'>&lt;div style="text-align: justify;"&gt;After 17 days in review, our first &lt;a href="http://en.wikipedia.org/wiki/Iphone"&gt;iPhone&lt;/a&gt; app was accepted yesterday afternoon. It took &lt;span style="font-weight: bold; font-style: italic;"&gt;that long&lt;/span&gt; because the first version we submitted on May 2nd was rejected (after 7 days) for &lt;a href="http://en.wikipedia.org/wiki/Human_interface_guidelines"&gt;HIG&lt;/a&gt; &lt;span style="font-style: italic;"&gt;violation&lt;/span&gt;. Apple wasn't happy with us using a &lt;span style="font-style: italic;"&gt;Disclosure Button&lt;/span&gt; to lead to a simple &lt;a href="http://developer.apple.com/iphone/library/documentation/uikit/reference/UIAlertView_Class/UIAlertView/UIAlertView.html"&gt;&lt;code&gt;UIAlertView&lt;/code&gt;&lt;/a&gt;, when this type of button should invoke the display of a new &lt;span style="font-style: italic;"&gt;view&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;To be honest, we though this may be an issue. However, this was the button that made the most sense in the context (we're diclosing extra information) and sliding a new view was just wasteful since we only had 2 lines of info to disclose. Anyhow, their suggestion was to use a custom icon instead, and that's what we did. At first, we considered using the built-in &lt;span style="font-style: italic;"&gt;Information&lt;/span&gt; button (e.g &lt;code&gt;UIButtonTypeInfoDark&lt;/code&gt;), but then we though that since that is associated (incorrectly when you think about it ...) with &lt;span style="font-style: italic;"&gt;Settings&lt;/span&gt;, we were going to get barred entrance to Apple's walled (lush) garden. So instead, &lt;a href="http://mommying-around.blogspot.com/"&gt;Susan&lt;/a&gt; quickly created our own version of an &lt;span style="font-style: italic;"&gt;Information&lt;/span&gt; button, similar to Apple's one, and yet different enough to avoid &lt;span style="font-style: italic;"&gt;confusion&lt;/span&gt; (ahem ...) :&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lQfxdt0YNZA/ShQ8kiyMpGI/AAAAAAAAAIU/XegFlFjo05I/s1600-h/Screenshot-Primary.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 222px; height: 320px;" src="http://1.bp.blogspot.com/_lQfxdt0YNZA/ShQ8kiyMpGI/AAAAAAAAAIU/XegFlFjo05I/s320/Screenshot-Primary.jpg" alt="" id="BLOGGER_PHOTO_ID_5337958056851186786" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Soooo ... where can you get this new revolutionary app? Why in the &lt;a href="http://en.wikipedia.org/wiki/App_store"&gt;&lt;span style="font-style: italic;"&gt;App Store&lt;/span&gt;&lt;/a&gt;, of course! ...  NOT! Unfortunatly, our Sales Contract is still in &lt;span style="font-style: italic;"&gt;process &lt;/span&gt;(+3 weeks and counting ...) so the Application is now pending contract ... When will it be? Who knows ... :-(&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-409650544015819881?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/409650544015819881/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=409650544015819881' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/409650544015819881'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/409650544015819881'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/05/were-in-well-almost.html' title='We&apos;re in! ... well almost.'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lQfxdt0YNZA/ShQ8kiyMpGI/AAAAAAAAAIU/XegFlFjo05I/s72-c/Screenshot-Primary.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-116042913426803251</id><published>2009-05-05T09:36:00.000-07:00</published><updated>2009-05-05T09:38:06.287-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='App Store'/><title type='text'>Better late than never ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;If you happens to be &lt;a href="http://twitter.com/CocoaGeek"&gt;following me&lt;/a&gt; on Twitter (and reading this blog? No way!) you probably already know that we have finally submitted our first &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; application this past Saturday. Yup, that's right, the very same application I have been &lt;span style="font-style: italic;"&gt;talking&lt;/span&gt; about &lt;a href="http://geeking-around.blogspot.com/2008/11/kind-of-done.html"&gt;since November&lt;/a&gt;! &lt;a href="http://en.wikipedia.org/wiki/App_store"&gt; iTunes App Store&lt;/a&gt; here we come! ...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lQfxdt0YNZA/SgBgdF_nkUI/AAAAAAAAAIM/gAvJZMkg1Jg/s1600-h/7462981.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 318px; height: 113px;" src="http://2.bp.blogspot.com/_lQfxdt0YNZA/SgBgdF_nkUI/AAAAAAAAAIM/gAvJZMkg1Jg/s320/7462981.jpg" alt="" id="BLOGGER_PHOTO_ID_5332368011748151618" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.hexazen.com/software-products/contraction-tracker"&gt;&lt;span style="font-style: italic;"&gt;Contraction Tracker&lt;/span&gt;&lt;/a&gt; is, more or less, a basic contraction timer, designed to be used in the days/hours leading to the delivery of a baby. Nothing game changing here, sadly. But it's a start, and it was written mainly for our own use. Back in November, there was only an handful of similar applications on the store (2 to be precise). None were quite what we wanted, so making our own was most definitely a good idea (especially since it allowed us to get acquainted with the platform). Unfortunately, once the baby arrived, the time I could spare to work on the app dropped from 2-3 hours daily to a mere 30 minutes per days, on lucky days. That is the main reason why it took us soooo long to go from &lt;span style="font-style: italic;"&gt;almost finished app&lt;/span&gt; (late November) to &lt;span style="font-style: italic;"&gt;released app&lt;/span&gt; (early May). &lt;span style="font-style: italic;"&gt;Sadly&lt;/span&gt;, today there is much more similar app available (10 including ours), so the competition is going to be fierce ... that's what you get for being slow to deliver! :-|&lt;br /&gt;&lt;br /&gt;Now, of course, the &lt;span style="font-style: italic;"&gt;submission &lt;/span&gt;euphoria is gone, and have been replaced by &lt;span style="font-style: italic;"&gt;anxiety&lt;/span&gt;:  &lt;span style="font-style: italic;"&gt;How long will the review process take? Will we get (paid) customers?&lt;/span&gt; &lt;span style="font-style: italic;"&gt;Have we left any embarrassing bugs behind?&lt;/span&gt; ... and of course the &lt;span style="font-style: italic; font-weight: bold;"&gt;ultimate question&lt;/span&gt; faced by thousands of developers on a daily basis: &lt;span style="font-style: italic;"&gt;Will we be rejected by Apple?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In case you are wondering, allo the application's icons were made for us by &lt;a href="http://all-x.ca/"&gt;Alex Ventpap&lt;/a&gt; (&lt;a href="http://twitter.com/alexventpap"&gt;alexventpap&lt;/a&gt; on Twitter) which we definitely recommend for iPhone artwork, among other things.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-116042913426803251?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/116042913426803251/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=116042913426803251' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/116042913426803251'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/116042913426803251'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/05/better-late-than-never.html' title='Better late than never ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_lQfxdt0YNZA/SgBgdF_nkUI/AAAAAAAAAIM/gAvJZMkg1Jg/s72-c/7462981.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-631141453600358324</id><published>2009-04-15T10:26:00.000-07:00</published><updated>2009-04-15T10:27:19.050-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Coding'/><title type='text'>Release Candidate!</title><content type='html'>&lt;div style="text-align: justify;"&gt;Yay! Finally! [Redacted] is &lt;span style="font-style: italic;"&gt;officially &lt;/span&gt;in its &lt;a href="http://en.wikipedia.org/wiki/Software_release_life_cycle"&gt;&lt;span style="font-style: italic;"&gt;"Release Candidate"&lt;/span&gt;&lt;/a&gt; form. Man, this has been a long road ... I'm planning to do a &lt;span style="font-style: italic;"&gt;Postmortem&lt;/span&gt; post here once it is on the &lt;a href="http://en.wikipedia.org/wiki/App_store"&gt;App Store&lt;/a&gt;. The plan is to submit it this coming week-end, for review. If everything check out and that Apple respect it's advertised delays, the app should be for sale within 7 days. Since it's a relatively simple application, which does not walk on the borderline of the SDK agreement, I'm hoping the acceptance will be swift ... but then again who knows what's going on within the wall of the App Store review office(s).&lt;br /&gt;&lt;br /&gt;Tomorrow is the &lt;a href="http://parveenkaler.com/2009/04/12/april-vancouver-iphone-developers-meetup/"&gt;Vancouver iPhone Developers meetup&lt;/a&gt; downtown. I'm looking forward to it. I'm a bit nervous though. I haven't been to any developer oriented event for years! The last one I attended was a &lt;a href="http://en.wikipedia.org/wiki/BeOS"&gt;BeOS&lt;/a&gt; meeting in Paris back in 2000 (or was it 2001?) ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-631141453600358324?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/631141453600358324/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=631141453600358324' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/631141453600358324'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/631141453600358324'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/04/release-candidate.html' title='Release Candidate!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5496575401079579489</id><published>2009-03-18T08:46:00.000-07:00</published><updated>2009-03-18T08:47:27.588-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>Clueless predictions</title><content type='html'>&lt;div style="text-align: justify;"&gt;Unsurprisingly, all my predictions from yesterday turned out to be just a wishes list. Turns out, I had in mind 3.0 to be matching the &lt;a href="http://en.wikipedia.org/wiki/Palm_Pre"&gt;Pre&lt;/a&gt; offering ... but it just wasn't the case. Either Apple can't, or more likely they just don't care, meaning they don't see Palm as the mobile version of the anti-Christ. As eloquently put in &lt;a href="http://www.salon.com/tech/giga_om/mac_love/2009/03/17/background_apps_theyre_not_just_for_push/"&gt;this article&lt;/a&gt;, Apple's fixation on avoiding background processes, is causing us, the users, some usabilities &lt;span style="font-style: italic;"&gt;PITA&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Anyway, I still think we will see some application switching support in OS 3.0 .... but only on the new version of the &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt;, rumored for this summer. As often, &lt;a href="http://en.wikipedia.org/wiki/Steve_Jobs"&gt;Steve Jobs&lt;/a&gt; will casually announce it with some smug comments about some power (but clueless) users wanting it very bad, so &lt;span style="font-style: italic;"&gt;here it is but we don't like it much&lt;/span&gt; ... (e.g MacBook Pro 17" with mate display option).&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5496575401079579489?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5496575401079579489/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5496575401079579489' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5496575401079579489'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5496575401079579489'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/03/clueless-predictions.html' title='Clueless predictions'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5790905482625394747</id><published>2009-03-17T08:33:00.000-07:00</published><updated>2009-03-17T08:35:18.936-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>Mandatory predictions</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lQfxdt0YNZA/Sb-7c2kDdxI/AAAAAAAAAHc/fzdU0uNuZNk/s1600-h/iphone-3-new-1.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 165px; height: 128px;" src="http://4.bp.blogspot.com/_lQfxdt0YNZA/Sb-7c2kDdxI/AAAAAAAAAHc/fzdU0uNuZNk/s200/iphone-3-new-1.jpg" alt="" id="BLOGGER_PHOTO_ID_5314172189677942546" border="0" /&gt;&lt;/a&gt;With now less than two hours to go before the &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; OS 3.0 event, I think it is time for me to join the &lt;span style="font-style: italic;"&gt;geek creed&lt;/span&gt; and make a couple of (clueless) predictions. Still I don't have &lt;a href="http://daringfireball.net/"&gt;John Gruber&lt;/a&gt;'s writing style, nor insight, I'll keep these shorts and to the point.&lt;br /&gt;&lt;br /&gt;So what to expect? Well since there is now a real challenger to the iPhone (that'll be the &lt;a href="http://en.wikipedia.org/wiki/Palm_Pre"&gt;Palm Pre&lt;/a&gt;), Apple has to play catch-up and show that 3.0 will have all the goodies (and more, hopefully) than the Pre. Sounds pretty obvious isn' it? Well yeah it is. &lt;a href="http://money.cnn.com/"&gt;CNNMoney&lt;/a&gt; has a little write-up of the details of what to expect, &lt;a href="http://apple20.blogs.fortune.cnn.com/2009/03/17/what-to-expect-from-iphone-30/"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;So then, what is/are my prediction(s)? Well here they are:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The &lt;span style="font-style: italic;"&gt;multitasking&lt;/span&gt; (don't really like to use that term, 'cause technically the iPhone OS is already &lt;a href="http://en.wikipedia.org/wiki/Computer_multitasking"&gt;&lt;span style="font-style: italic;"&gt;multitasking&lt;/span&gt;&lt;/a&gt;) will not be available unless you are using the new iPhone to come out in June (or it will be available on older HW, but with a limitation of said 2 users launched applications and you will have to enable it via some hidden setting). The reason for this isn't much about hardware limitation, but giving you reason to upgrade to the new iPhone, which will come with a faster CPU/GPU (just stating the obvious here) and 256Mb of RAM (instead of 128Mb currently).&lt;/li&gt;&lt;li&gt;Background application will be supported, but wont be based on UIApplication (let's call it UITask) and will have limitations on what they can do.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The OS will allow applications to exchange data (by using files in a common area and/or IPC&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The new SDK will support building app with web technologies (a la &lt;a href="http://en.wikipedia.org/wiki/Palm_webOS"&gt;&lt;span style="font-style: italic;"&gt;Mojo&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;Wishes list or predictions? Only 90 minutes to go before we found out!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5790905482625394747?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5790905482625394747/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5790905482625394747' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5790905482625394747'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5790905482625394747'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/03/mandatory-predictions.html' title='Mandatory predictions'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lQfxdt0YNZA/Sb-7c2kDdxI/AAAAAAAAAHc/fzdU0uNuZNk/s72-c/iphone-3-new-1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-4505492662034771997</id><published>2009-03-06T09:00:00.000-08:00</published><updated>2009-03-06T09:01:21.443-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Twitter'/><title type='text'>Tweeting!</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lQfxdt0YNZA/SbFTepUN2pI/AAAAAAAAAHU/Ps3-Ukyn1Uw/s1600-h/twitter_fail_whale_01.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 180px; height: 135px;" src="http://3.bp.blogspot.com/_lQfxdt0YNZA/SbFTepUN2pI/AAAAAAAAAHU/Ps3-Ukyn1Uw/s200/twitter_fail_whale_01.png" alt="" id="BLOGGER_PHOTO_ID_5310117221598354066" border="0" /&gt;&lt;/a&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;@All&lt;/span&gt; I finally succumbed to the &lt;a href="http://twitter.com"&gt;Twitter&lt;/a&gt; temptation and created an account for myself (please &lt;a href="http://twitter.com/CocoaGeek"&gt;follow me&lt;/a&gt;! ... please, pretty please?). Originaly, my motivation for doing so, was to follow some of the blog authors I read and some of the Cocoa/iPhone world celebrities (e.g &lt;a href="http://twitter.com/wilshipley"&gt;Wil Shipley&lt;/a&gt;), but then I caught the &lt;span style="font-style: italic;"&gt;tweeting bug&lt;/span&gt; and I have been tweeting (mostly non-sense and everyday stuff) &lt;span style="font-style: italic;"&gt;furiously&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;So what can you expect from following me? Pretty much the same kind of stuff that I blog about here: &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Iphone"&gt;iPhone&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Space"&gt;Space&lt;/a&gt;, (weird) Music, books etc ... but in a more condenced form (for obvious reasons).&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-4505492662034771997?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/4505492662034771997/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=4505492662034771997' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4505492662034771997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4505492662034771997'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/03/tweeting.html' title='Tweeting!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_lQfxdt0YNZA/SbFTepUN2pI/AAAAAAAAAHU/Ps3-Ukyn1Uw/s72-c/twitter_fail_whale_01.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-6612648508490232475</id><published>2009-03-03T10:56:00.000-08:00</published><updated>2009-03-03T10:56:43.200-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Parenting'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>Time fly</title><content type='html'>&lt;div style="text-align: justify;"&gt;Well, March has arrived, and I'm back at (my day) work (since yesterday). Our &lt;a href="http://en.wikipedia.org/wiki/Iphone"&gt;iPhone&lt;/a&gt; app is not yet finished (hard to believe I know ... and yet here we are), so the month have gone without any submission to the &lt;a href="http://en.wikipedia.org/wiki/App_Store"&gt;app store&lt;/a&gt;, contrary to what we were hoping for. Maybe in a couple of weeks? Two things have &lt;span style="font-style: italic;"&gt;colluded&lt;/span&gt; to cause this schedule slip: &lt;a href="http://en.wikipedia.org/wiki/Creeping_featurism"&gt;&lt;span style="font-style: italic;"&gt;feature creep&lt;/span&gt;&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Usability"&gt;&lt;span style="font-style: italic;"&gt;usability&lt;/span&gt;&lt;/a&gt; concerns. &lt;span style="font-style: italic;"&gt;Concerns&lt;/span&gt; is maybe a bit too strong of a word, really. Let said that the UI wasn't as good as it could be.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-6612648508490232475?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/6612648508490232475/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=6612648508490232475' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6612648508490232475'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6612648508490232475'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/03/time-fly.html' title='Time fly'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-4960768902620178008</id><published>2009-02-17T10:36:00.000-08:00</published><updated>2009-02-17T10:37:10.429-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Signing'/><category scheme='http://www.blogger.com/atom/ns#' term='iPod'/><category scheme='http://www.blogger.com/atom/ns#' term='SDK'/><title type='text'>Late CodeSigning</title><content type='html'>&lt;div style="text-align: justify;"&gt;Just for fun, I decided last night after 9:30PM to install the latest &lt;span style="font-style: italic;"&gt;WIP&lt;/span&gt; of our &lt;a href="http://en.wikipedia.org/wiki/Iphone"&gt;iPhone&lt;/a&gt; app on my wife's 2G &lt;a href="http://en.wikipedia.org/wiki/IPod_Touch"&gt;iPod touch&lt;/a&gt;. In order to that, I first tried to modify the provisioning profile so to include the new device in it, but that didn't work too well. Even after having removed completely (or so I though) the said profile from her device and mine (and from the IDE's &lt;span style="font-style: italic;"&gt;organizer&lt;/span&gt;) and created a new one (following the &lt;span style="font-style: italic;"&gt;how-to&lt;/span&gt; instructions from the &lt;a href="http://developer.apple.com/iphone/"&gt;SDK developer portal&lt;/a&gt;), I could still not recompile the application. The error reported (in red, mind you) by &lt;a href="http://en.wikipedia.org/wiki/Xcode"&gt;Xcode&lt;/a&gt; being:&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;code&gt;CodeSign error: a valid provisioning profile is required for product type 'Application' in SDK 'Device - iPhone OS 2.2'&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;By then, since it was well after 10pm, way past the baby bed time (and ours ...) , I had to close shop for the night. Problem is that closing the lid of the laptop doesn't mean one's mind isn't going to keep thinking about the problem ... well into the wee hours of the night. Hopefully, when I woke-up this morning (I'm gonna need a nap this afternoon!), I had an idea: &lt;span style="font-style: italic;"&gt;Maybe, somewhere inside the project files, references to the old profile were still present?&lt;/span&gt; This turned out to be a correct theory (!), for when I &lt;a href="http://en.wikipedia.org/wiki/Grep"&gt;grep&lt;/a&gt;-ed the &lt;code&gt;project.pbxproj&lt;/code&gt; file for &lt;code&gt;PROVISIONING_PROFILE&lt;/code&gt;, I found some references to the old profile. A simple copy&amp;amp;paste (BTW I use &lt;a href="http://tuppis.com/smultron/"&gt;Smultron&lt;/a&gt; for such text editing tasks) of the &lt;span style="font-style: italic;"&gt;profile identifier&lt;/span&gt; fixed the issue and shortly after, &lt;a href="http://mommying-around.blogspot.com/"&gt;Susan&lt;/a&gt;'s iPod was running our app :-)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-4960768902620178008?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/4960768902620178008/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=4960768902620178008' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4960768902620178008'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4960768902620178008'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/02/late-codesigning.html' title='Late CodeSigning'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-3772649041395310823</id><published>2009-02-14T12:15:00.000-08:00</published><updated>2009-02-14T12:15:43.258-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Music'/><category scheme='http://www.blogger.com/atom/ns#' term='Fatherhood'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Space'/><category scheme='http://www.blogger.com/atom/ns#' term='Coding'/><title type='text'>2Busy2Blog!</title><content type='html'>&lt;div style="text-align: justify;"&gt;Since I'm now half-way trough my &lt;a href="http://en.wikipedia.org/wiki/Parental_leave"&gt;parental leave&lt;/a&gt;, it is time to review a bit what I have been up to, which is mostly &lt;span style="font-style: italic;"&gt;coding&lt;/span&gt; and &lt;span style="font-style: italic;"&gt;parenting&lt;/span&gt; ... but mainly the latter. Nevertheless, our iPhone app is getting closer and closer to be &lt;span style="font-style: italic;"&gt;ready&lt;/span&gt;. I swapped successfully the old data management stuff for the &lt;span style="font-style: italic;"&gt;soup thing&lt;/span&gt; I was talking about &lt;a href="http://geeking-around.blogspot.com/2009/02/parental-leave.html"&gt;in my previous post&lt;/a&gt;, and so far it's working pretty well. I also, followed &lt;a href="http://blog.atebits.com/2008/12/fast-scrolling-in-tweetie-with-uitableview/"&gt;the advice&lt;/a&gt; of &lt;a href="http://www.atebits.com/software/tweetie/"&gt;Tweetie&lt;/a&gt;'s author (&lt;a href="http://blog.atebits.com/"&gt;Loren Brichter&lt;/a&gt;) and replaced the five &lt;a href="http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UITextView_Class/Reference/UITextView.html"&gt;UITextView&lt;/a&gt; objects I was using in my &lt;a href="http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UITableView_Class/Reference/Reference.html"&gt;UITableView&lt;/a&gt; cell by a single &lt;a href="http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIView_Class/UIView/UIView.html#//apple_ref/occ/cl/UIView"&gt;UIView&lt;/a&gt; (drawing by hand the content). The speed-up is great, there is no longer that &lt;span style="font-style: italic;"&gt;impression of &lt;a href="http://en.wikipedia.org/wiki/Lag"&gt;lag&lt;/a&gt;&lt;/span&gt; when flicking up or down, it is amazingly &lt;span style="font-style: italic;"&gt;cunning&lt;/span&gt; :-)&lt;br /&gt;&lt;br /&gt;There is two videos (&lt;a href="http://www.youtube.com/"&gt;youtube&lt;/a&gt;) I'd like to share with you today. The first one is from a concert of &lt;a href="http://en.wikipedia.org/wiki/Terje_Isungset"&gt;Terje Isungset&lt;/a&gt;, who use ice to make (somewhat &lt;span style="font-style: italic;"&gt;weird&lt;/span&gt;, but &lt;span style="font-style: italic;"&gt;oh so lovely&lt;/span&gt;!) music (courtesy of &lt;a href="http://www.cbc.ca/radio2/thesignal/"&gt;The Signal's blog&lt;/a&gt;):&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/RiArPlWODmk&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/RiArPlWODmk&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" height="344" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;The second video shows a simulated depiction of the &lt;a href="http://en.wikipedia.org/wiki/Phobos-Grunt"&gt;Phobos -Grunt Russian mission&lt;/a&gt;. Pretty cool (and bold) mission I must said. Let's hope it'll get to fly:&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/W0cUvK0Dgy8&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/W0cUvK0Dgy8&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" height="344" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Anyway, gotta go change diaper now. So long for now.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-3772649041395310823?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/3772649041395310823/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=3772649041395310823' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3772649041395310823'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3772649041395310823'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/02/2busy2blog.html' title='2Busy2Blog!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-819672766307522675</id><published>2009-02-03T08:54:00.000-08:00</published><updated>2009-02-03T08:55:08.736-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Fatherhood'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Soup'/><category scheme='http://www.blogger.com/atom/ns#' term='Newton'/><category scheme='http://www.blogger.com/atom/ns#' term='Coding'/><title type='text'>Parental Leave</title><content type='html'>&lt;div style="text-align: justify;"&gt;Yesterday was the first day of my month long &lt;a href="http://en.wikipedia.org/wiki/Parental_leave"&gt;parental leave&lt;/a&gt;. While the main purpose of it is to gives me and the baby time for some more &lt;span style="font-style: italic;"&gt;quality bounding&lt;/span&gt;, the &lt;span style="font-style: italic;"&gt;hidden agenda&lt;/span&gt; is to try to finish-up that &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; application which we had been working on &lt;a href="http://geeking-around.blogspot.com/2008/12/ber-fiasco.html"&gt;a while ago&lt;/a&gt; ... Parental duties and paid job, have so far &lt;a href="http://en.wikipedia.org/wiki/Colluded"&gt;colluded&lt;/a&gt; into putting that project on the back (waaaay back) burner. Or so it looks like. &lt;a href="http://www.yourdictionary.com/non-obstante"&gt;&lt;span style="font-style: italic;"&gt;Non-obstante&lt;/span&gt;&lt;/a&gt; the fact that indeed, my (precious) &lt;span style="font-style: italic;"&gt;geeking time&lt;/span&gt; had been slashed ten-fold by the arrival of the Baby, I also &lt;span style="font-style: italic;"&gt;wasted&lt;/span&gt; the few minutes I could saves here and there, on trying to come up with a better way to save my application data. Since we were in a rush to get the app usable by the time we needed it, I had &lt;a href="http://en.wikipedia.org/wiki/Hack_%28technology%29"&gt;hacked&lt;/a&gt; my model so that the data (in a form of 3 arrays plus some metadata) were been stored using a &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSKeyedArchiver_Class/Reference/Reference.html"&gt;NSKeyedArchiver&lt;/a&gt;, and fetched from it when the application was launched. That &lt;span style="font-style: italic;"&gt;naive&lt;/span&gt; solution had two major issues: it was keeping in memory data that were not used, and it was putting the newly entered data at risk, since a crash of the application will (and did ...) prevent its data to be written to the &lt;a href="http://en.wikipedia.org/wiki/Flash_disk"&gt;&lt;span style="font-style: italic;"&gt;disk&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;To store permanent data on the device, there is 3 common possibilities: &lt;span style="text-decoration: underline;"&gt;f&lt;/span&gt;&lt;a href="http://encyclopedia.farlex.com/Flat+binary+file"&gt;lat binary file&lt;/a&gt;, &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSKeyedArchiver_Class/Reference/Reference.html"&gt;NSKeyedArchiver&lt;/a&gt; and &lt;a href="http://www.sqlite.org/"&gt;SQLLite3&lt;/a&gt;. To store a limited amount of data, I personally found &lt;a href="http://en.wikipedia.org/wiki/SQL"&gt;SQL&lt;/a&gt; (even Lite!) to be &lt;span style="font-style: italic;"&gt;overkill&lt;/span&gt; and not that practical when dealing with objects (yes, I do know about &lt;a href="http://iphonedevelopment.blogspot.com/"&gt;Jeff Lamarche&lt;/a&gt;'s &lt;a href="http://code.google.com/p/sqlitepersistentobjects/"&gt;project&lt;/a&gt; and the &lt;a href="http://wiki.github.com/decodeideas/iphonelite3"&gt;iPhoneLite3&lt;/a&gt; project), thus I have been working on my own &lt;span style="font-style: italic;"&gt;object persistence framework&lt;/span&gt;, which won't be as efficient as using SQLLite for backend (well I'm not that good!) , but will serve its purpose for this app and the others to come (hopefully!). Since I'm an ex-&lt;a href="http://en.wikipedia.org/wiki/Apple_Newton"&gt;Newton&lt;/a&gt; user and developer, I couldn't help but inspire myself, rather heavily, off the &lt;a href="http://en.wikipedia.org/wiki/Soup_%28Apple_Newton%29"&gt;Newton's Soup&lt;/a&gt; ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-819672766307522675?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/819672766307522675/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=819672766307522675' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/819672766307522675'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/819672766307522675'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/02/parental-leave.html' title='Parental Leave'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-8280367612069626352</id><published>2009-01-28T13:00:00.000-08:00</published><updated>2009-01-28T15:42:10.898-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Palm'/><category scheme='http://www.blogger.com/atom/ns#' term='Newton'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>Plamwashed?</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lQfxdt0YNZA/SYDC2lSvNtI/AAAAAAAAAHM/9Yeb5U_9oM8/s1600-h/Apple_Newton_MP100.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 110px; height: 165px;" src="http://4.bp.blogspot.com/_lQfxdt0YNZA/SYDC2lSvNtI/AAAAAAAAAHM/9Yeb5U_9oM8/s200/Apple_Newton_MP100.jpg" alt="" id="BLOGGER_PHOTO_ID_5296447404767131346" border="0" /&gt;&lt;/a&gt;Couple of days ago, I was hanging out on the #&lt;a href="http://en.wikipedia.org/wiki/Palm_webOS"&gt;webOS&lt;/a&gt; channel (&lt;a href="http://en.wikipedia.org/wiki/IRC"&gt;IRC&lt;/a&gt;), when the conversation moved onto &lt;a href="http://www.macrumors.com/2009/01/22/tim-cook-apple-will-aggressively-protect-iphone-intellectual-property/"&gt;Apple's IP threats&lt;/a&gt;. Now, I mostly hang-out there because I know some folks that now work for &lt;a href="http://en.wikipedia.org/wiki/Palm,_Inc."&gt;Palm&lt;/a&gt; (and on the &lt;a href="http://en.wikipedia.org/wiki/Palm_Pre"&gt;Pre&lt;/a&gt;), and not because I'm a Palm user or developer (in fact quite the opposite). Anyhow, during the &lt;span style="font-style: italic;"&gt;conversation&lt;/span&gt;, I had to (kindly) correct one of the participant (clearly &lt;a style="font-style: italic;" href="http://en.wikipedia.org/wiki/Brainwashing"&gt;re-educated&lt;/a&gt; by Palm's political police) who believed the &lt;a href="http://en.wikipedia.org/wiki/Palm_pilot"&gt;Palm Pilot&lt;/a&gt; to have come before the &lt;a href="http://en.wikipedia.org/wiki/Apple_Inc."&gt;Apple&lt;/a&gt;'s &lt;a href="http://en.wikipedia.org/wiki/Apple_Newton"&gt;Newton&lt;/a&gt; ... Not only was the first Newton (&lt;a href="http://en.wikipedia.org/wiki/Apple_MessagePad"&gt;OMP100&lt;/a&gt;)  introduced close to 3 years before the first Pilot (&lt;a href="http://en.wikipedia.org/wiki/Pilot_1000"&gt;Pilot 1000&lt;/a&gt;), but also the term &lt;a href="http://en.wikipedia.org/wiki/Personal_digital_assistant"&gt;PDA&lt;/a&gt; (Personal Digital Assistant) itself, was coined by &lt;a href="http://en.wikipedia.org/wiki/John_Sculley"&gt;John Sculley&lt;/a&gt;, then CEO of Apple.&lt;br /&gt;&lt;br /&gt;To be fair to the Pilot, I just don't think both devices are comparable. The Original MessagePad, even with its laughable &lt;a href="http://en.wikipedia.org/wiki/Handwriting_recognition"&gt;handwriting recognition&lt;/a&gt;, packed much more punch and capabilities than what Palm could delivers 3 years later! The same extends to the late MessagePads, which more than 10 years after its introduction, still &lt;span style="font-style: italic;"&gt;simply rocks&lt;/span&gt; and is still been used by thousands. around the worlds (including yours truly up to June 2008). How many &lt;a href="http://en.wikipedia.org/wiki/PalmPilot"&gt;PalmPilot Personal&lt;/a&gt; are still been used in 2009? ....&lt;br /&gt;&lt;br /&gt;Don't believe the Newton can still be useful? Check &lt;a href="http://digitalliving.cnet.co.uk/specials/0,39030785,49282099-1,00.htm"&gt;this article&lt;/a&gt; made by &lt;a href="http://www.cnet.co.uk/"&gt;cnet.co.uk&lt;/a&gt; back in 2006, in which the Newton came out as the winner when compared to an &lt;a href="http://en.wikipedia.org/wiki/UMPC"&gt;UMPC&lt;/a&gt;!!&lt;br /&gt;&lt;br /&gt;(&lt;span style="font-weight: bold;"&gt;Edit&lt;/span&gt;: the &lt;a href="http://en.wikipedia.org/wiki/Casio"&gt;Casio&lt;/a&gt;/&lt;a href="http://en.wikipedia.org/wiki/Tandy_Corporation"&gt;Tandy&lt;/a&gt; &lt;a href="http://pencomputing.com/images/Tandy_Zoomer.jpg"&gt;Zoomer&lt;/a&gt; did beat the OMP release by 2 months, and thus it is considered the first PDA. Palm Computing contribution to it was the Personal Information Management (&lt;a href="http://en.wikipedia.org/wiki/Personal_information_manager"&gt;PIM&lt;/a&gt;) software). &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-8280367612069626352?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/8280367612069626352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=8280367612069626352' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/8280367612069626352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/8280367612069626352'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/01/plamwashed.html' title='Plamwashed?'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lQfxdt0YNZA/SYDC2lSvNtI/AAAAAAAAAHM/9Yeb5U_9oM8/s72-c/Apple_Newton_MP100.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-8264100191148841821</id><published>2009-01-24T07:25:00.000-08:00</published><updated>2009-01-24T07:26:09.113-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='1984'/><category scheme='http://www.blogger.com/atom/ns#' term='Mac'/><category scheme='http://www.blogger.com/atom/ns#' term='Steve Jobs'/><title type='text'>Insanely Great!</title><content type='html'>&lt;div style="text-align: justify;"&gt;What better way to celebrate the first &lt;a href="http://en.wikipedia.org/wiki/List_of_Apple_Inc._slogans"&gt;&lt;span style="font-style: italic;"&gt;computer for the rest of us&lt;/span&gt;&lt;/a&gt;, than doing so by watching a part of &lt;a href="http://en.wikipedia.org/wiki/Steve_Jobs"&gt;Steve Jobs&lt;/a&gt;' &lt;span style="font-style: italic;"&gt;keynote&lt;/span&gt;?&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/4KkENSYkMgs&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/4KkENSYkMgs&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-8264100191148841821?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/8264100191148841821/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=8264100191148841821' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/8264100191148841821'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/8264100191148841821'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/01/insanely-great.html' title='Insanely Great!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-1465723337127819884</id><published>2009-01-23T09:00:00.000-08:00</published><updated>2009-01-23T14:00:50.581-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Nostalgia'/><category scheme='http://www.blogger.com/atom/ns#' term='1984'/><category scheme='http://www.blogger.com/atom/ns#' term='Mac'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>1984</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lQfxdt0YNZA/SXnjrfYl-vI/AAAAAAAAAGc/sF013CaPXEg/s1600-h/Macintosh_128k_transparency.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 160px; height: 189px;" src="http://2.bp.blogspot.com/_lQfxdt0YNZA/SXnjrfYl-vI/AAAAAAAAAGc/sF013CaPXEg/s200/Macintosh_128k_transparency.png" alt="" id="BLOGGER_PHOTO_ID_5294513173249260274" border="0" /&gt;&lt;/a&gt;Since we are only 1 day away of the 25th anniversary of the &lt;a href="http://en.wikipedia.org/wiki/Apple_Inc."&gt;Apple&lt;/a&gt;'s &lt;a href="http://en.wikipedia.org/wiki/Macintosh"&gt;Macintosh&lt;/a&gt; release, it is time for me to indulge into a little bit of nostalgia and go back to &lt;a href="http://en.wikipedia.org/wiki/January_1984"&gt;January 1984&lt;/a&gt; ... Back then, I was only 2 weeks shy of been 10 years old, and the personal computer revolution was in full swing (yes, even in France!). I probably wasn't aware of the new Macintosh and its game changing &lt;a href="http://en.wikipedia.org/wiki/Graphical_user_interface"&gt;Graphical User Interface&lt;/a&gt;, but I was already been titillated by computers and programming, thanks to my dad whom was very much into it, albeit in &lt;a href="http://en.wikipedia.org/wiki/Mobile_computing"&gt;mobile computing&lt;/a&gt;. &lt;span style="font-style: italic;"&gt;Mobile computing? In 1984?&lt;/span&gt; Well back then it was called &lt;a href="http://en.wikipedia.org/wiki/Pocket_computer"&gt;pocket computing&lt;/a&gt;, and my dad's favorite toy was his trusty &lt;a href="http://en.wikipedia.org/wiki/Casio"&gt;Casio&lt;/a&gt; &lt;a href="http://www.rskey.org/detail.asp?manufacturer=Casio&amp;amp;model=FX-702P"&gt;FX-702P&lt;/a&gt; (which he was using also for work) and he was fully equipped with tape recorder and the tiny thermal printer with its funky metallic like paper. The 702 was indeed great, and I myself falled in love with it in the following years when it was handed down to me. To the point that I used to carry it around (in its little pouch) with me everywhere. Not contempt to just being geeking on his calculator, my dad was also a member of the local computer club, where I had my first encounters with top of the line computers such as the &lt;a href="http://en.wikipedia.org/wiki/Sinclair_ZX_Spectrum"&gt;ZX Spectrum&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Oric_Atmos#Oric_Atmos"&gt;Oric Atmos&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Apple_IIc"&gt;Apple IIc&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Matra_Alice"&gt;Matra Alice&lt;/a&gt; and &lt;a href="http://www.system-cfg.com/detailcollection.php?ident=29"&gt;VG 5000&lt;/a&gt;. The later eventually became my very first &lt;span style="font-style: italic;"&gt;personal&lt;/span&gt; computer (for christmas '84 I guess) for countless hours of gaming and &lt;a href="http://en.wikipedia.org/wiki/BASIC"&gt;BASIC&lt;/a&gt; programming. My dad, back then, had subscription to two french computer magazines (both long gone) which had tons of little programs to be typed in (yep, that's right typed in, not loaded!), so it was possible to spend lots of time on the computer without actually doing much of anything except entering the code. Trying to run it was always a bit of a frustrating experience since there was very often errors in the code which were making it un-workable (that and/or typing mistakes made by little fingers ...).  Anyhow, my first encounter with what I'll call a modern computer didn't occurs until late &lt;a href="http://en.wikipedia.org/wiki/1986"&gt;'86&lt;/a&gt;, when a school friend got a &lt;a href="http://en.wikipedia.org/wiki/Macintosh_Plus"&gt;Macintosh Plus&lt;/a&gt;, which we used to do the school newspaper on.&lt;br /&gt;&lt;br /&gt;Did I knew back then that computer was what I wanted to do when I grew up? I like to said &lt;span style="font-style: italic;"&gt;yes&lt;/span&gt; (of course) but unfortunatly it's not the case. I didn't really get into computers until the late 80s, and only decided to make it my profession in 92. Up to that point, all I really wanted to be was either a &lt;a href="http://en.wikipedia.org/wiki/Naval_officer"&gt;Naval officer&lt;/a&gt; or an &lt;a href="http://en.wikipedia.org/wiki/Archeologist"&gt;Archeologist&lt;/a&gt; (the later was likely due to that romatic image of archeology imprinted in my mind by waaaay too much of &lt;a href="http://en.wikipedia.org/wiki/Indiana_jones"&gt;Indiana Jones&lt;/a&gt;) ...&lt;br /&gt;&lt;br /&gt;As for the very famous &lt;a href="http://folklore.org/StoryView.py?project=Macintosh&amp;amp;story=1984.txt&amp;amp;sortOrder=Sort%20by%20Date&amp;amp;detail=medium&amp;amp;search=1984"&gt;1984 commercial&lt;/a&gt;, well I never saw it until years after the event. To be honest I don't think it was ever aired in France (I could be wrong though) ...&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/OYecfV3ubP8&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/OYecfV3ubP8&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-1465723337127819884?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/1465723337127819884/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=1465723337127819884' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1465723337127819884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1465723337127819884'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/01/1984.html' title='1984'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_lQfxdt0YNZA/SXnjrfYl-vI/AAAAAAAAAGc/sF013CaPXEg/s72-c/Macintosh_128k_transparency.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-7647933132365940190</id><published>2009-01-14T15:22:00.000-08:00</published><updated>2009-01-19T15:26:01.025-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Umberto Eco'/><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>Book worming!</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lQfxdt0YNZA/SXUFaAfmkFI/AAAAAAAAAGU/1YfL4zvXKes/s1600-h/51Y3YV21HXL._SS500_.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 132px; height: 200px;" src="http://2.bp.blogspot.com/_lQfxdt0YNZA/SXUFaAfmkFI/AAAAAAAAAGU/1YfL4zvXKes/s200/51Y3YV21HXL._SS500_.jpg" alt="" id="BLOGGER_PHOTO_ID_5293142881411174482" border="0" /&gt;&lt;/a&gt;When people asks me who is my favorite author (like once every 5 years or so), I'm usually very quick in replying: &lt;span style="font-style: italic;"&gt;"Well, &lt;a href="http://en.wikipedia.org/wiki/Umberto_Eco"&gt;Umberto Eco&lt;/a&gt; of course!"&lt;/span&gt;. Then, I  get a blank stare from my questioner, at least until I mention that he's the author of &lt;a style="font-style: italic;" href="http://en.wikipedia.org/wiki/The_Name_of_the_Rose"&gt;The Name of the Rose&lt;/a&gt;, which movie version had &lt;a href="http://en.wikipedia.org/wiki/Sean_Connery"&gt;Sean Connery&lt;/a&gt; on the cast ... As far as I can tell, his popularity in North America isn't as good as it is in Europe ... or maybe I just happen to know about him because I was introduced to his novels by my dad ... With only 5 novels on track record, it is no real surprise (really) that most people will have not heard of him, unless you are an &lt;a href="http://en.wikipedia.org/wiki/Italy" title="Italy"&gt;Italian&lt;/a&gt; &lt;a href="http://en.wikipedia.org/wiki/Medievalist" title="Medievalist" class="mw-redirect"&gt;medievalist&lt;/a&gt;, a &lt;a href="http://en.wikipedia.org/wiki/Semiotics" title="Semiotics"&gt;semiotician&lt;/a&gt;, or a &lt;a href="http://en.wikipedia.org/wiki/Philosopher" title="Philosopher" class="mw-redirect"&gt;philosopher&lt;/a&gt;. Anyhow, I finished his last (really his &lt;span style="font-weight: bold;"&gt;last&lt;/span&gt; apparently)  novel &lt;a href="http://en.wikipedia.org/wiki/The_Mysterious_Flame_of_Queen_Loana"&gt;&lt;span style="font-style: italic;"&gt;The Mysterious Flame of Queen Loana&lt;/span&gt;&lt;/a&gt; Saturday night with mixed feelings. I did enjoy the usual display of &lt;a href="http://en.wikipedia.org/wiki/Erudition"&gt;erudition&lt;/a&gt;, which is so typical of Mr Eco work (&lt;a href="http://en.wikipedia.org/wiki/Dan_Brown"&gt;Dan Brown&lt;/a&gt;'s an amateur in comparison!) ... but I failed to really found myself spellbound by the story as I had in past readings (e.g &lt;a href="http://en.wikipedia.org/wiki/Foucault%27s_Pendulum"&gt;Foucault's Pendulum&lt;/a&gt;). Yet, it was a welcome change of scenery in this times of interrupted sleep and diaper changing duties ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-7647933132365940190?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/7647933132365940190/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=7647933132365940190' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7647933132365940190'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7647933132365940190'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/01/book-worming.html' title='Book worming!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_lQfxdt0YNZA/SXUFaAfmkFI/AAAAAAAAAGU/1YfL4zvXKes/s72-c/51Y3YV21HXL._SS500_.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5280882164789236264</id><published>2009-01-14T12:50:00.000-08:00</published><updated>2009-01-14T12:51:56.393-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Music'/><category scheme='http://www.blogger.com/atom/ns#' term='Moon'/><title type='text'>Spacecraft get artsy ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lQfxdt0YNZA/SW5NdPluqNI/AAAAAAAAAGE/QDL5RaOn0B8/s1600-h/img_profile_001.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 150px; height: 112px;" src="http://3.bp.blogspot.com/_lQfxdt0YNZA/SW5NdPluqNI/AAAAAAAAAGE/QDL5RaOn0B8/s200/img_profile_001.jpg" alt="" id="BLOGGER_PHOTO_ID_5291251777003235538" border="0" /&gt;&lt;/a&gt;What does the &lt;a href="http://en.wikipedia.org/wiki/SELENE"&gt;Kaguya lunar orbiter&lt;/a&gt; and the &lt;a href="http://www.cbc.ca/radio2/"&gt;CBC Radio 2&lt;/a&gt;'s show &lt;a href="http://www.cbc.ca/radio2/thesignal/"&gt;&lt;span style="font-style: italic;"&gt;The Signal&lt;/span&gt;&lt;/a&gt; have in common? They both play weird and yet (sometimes) tantalizing "music"!  Some &lt;span style="font-style: italic;"&gt;crazy folks &lt;/span&gt;over at &lt;a href="http://en.wikipedia.org/wiki/Japan_Aerospace_Exploration_Agency"&gt;JAXA&lt;/a&gt; are using the laser altimeter's data from the spacecraft to generate music based on the relief of the moon: &lt;a href="http://wms.selene.jaxa.jp/selene_sok/moonbell.html"&gt;Moonbell&lt;/a&gt;. Isn't it cool?&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5280882164789236264?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5280882164789236264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5280882164789236264' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5280882164789236264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5280882164789236264'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/01/spacecraft-get-artsy.html' title='Spacecraft get artsy ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_lQfxdt0YNZA/SW5NdPluqNI/AAAAAAAAAGE/QDL5RaOn0B8/s72-c/img_profile_001.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-9170298825275114063</id><published>2009-01-12T09:45:00.000-08:00</published><updated>2009-01-12T10:07:01.189-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Palm'/><title type='text'>Palm and its Mojo ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;When I first saw that &lt;a href="http://www.palm.com/ca/products/smartphones/pre/"&gt;Palm's Pre&lt;/a&gt; SDK was called &lt;a href="http://developer.palm.com/"&gt;&lt;span style="font-style: italic;"&gt;Mojo&lt;/span&gt;&lt;/a&gt;, I couldn't beleive that will pick such a &lt;span style="font-style: italic;"&gt;ridiculous&lt;/span&gt; name for their brand new platform. I mean come-on Palm, Mojo!?! Yeah we get it, like &lt;a href="http://en.wikipedia.org/wiki/Austin_Powers:_International_Man_of_Mystery"&gt;Austin Powers&lt;/a&gt; you got your &lt;span style="font-style: italic;"&gt;Mojo&lt;/span&gt; back ... It will be more than fine for an internal codename, but for a public name? Not very classy ... Then, there is the whole thing about the framework been based on &lt;a href="http://en.wikipedia.org/wiki/HTML5"&gt;HTML5&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/CSS"&gt;CSS&lt;/a&gt;, and &lt;a href="http://en.wikipedia.org/wiki/JavaScript"&gt;JavaScript&lt;/a&gt;. How many mobile developers knows theses, or have time and &lt;span style="font-style: italic;"&gt;will&lt;/span&gt; to learn them? &lt;a href="http://en.wikipedia.org/wiki/Apple_Computer"&gt;Apple&lt;/a&gt; got a a lot of flak from the developers community from using &lt;a href="http://en.wikipedia.org/wiki/Objective-C"&gt;Objective-C&lt;/a&gt; on its mobile platform, which only a small (tiny?) fraction of the developers (most of which live in the Mac platform ghetto) knows ... and it's a &lt;a href="http://en.wikipedia.org/wiki/C_%28programming_language%29"&gt;C&lt;/a&gt; &lt;a href="http://en.wikipedia.org/wiki/Superset"&gt;superset&lt;/a&gt;!!! At the risk of sounding like an &lt;span style="font-style: italic;"&gt;a$$&lt;/span&gt;, I'll like to said that &lt;span style="font-style: italic;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Web_developer"&gt;web developer&lt;/a&gt;&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;!=&lt;/span&gt; &lt;a href="http://en.wikipedia.org/wiki/Software_developer"&gt;&lt;span style="font-style: italic;"&gt;software developer&lt;/span&gt;&lt;/a&gt; ... experience, education and skills are usualy &lt;span style="font-weight: bold;"&gt;very different&lt;/span&gt;.  But maybe, that's what Palm is after? A platform where applications are quick and easy to hack and release?&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-9170298825275114063?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/9170298825275114063/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=9170298825275114063' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/9170298825275114063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/9170298825275114063'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/01/palm-and-its-mojo.html' title='Palm and its Mojo ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-830549935174407739</id><published>2009-01-08T11:55:00.000-08:00</published><updated>2009-01-08T14:18:03.896-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Palm'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>Palm's Nova ... #2</title><content type='html'>&lt;div style="text-align: justify;"&gt;It's out and in the open, and it's called &lt;span style="font-style: italic; font-weight: bold;"&gt;webOS&lt;/span&gt;! &lt;a href="http://gdgt.com/"&gt;gdgt.com&lt;/a&gt; has a &lt;a href="http://live.gdgt.com/2009/01/08/live-palm-keynote-coverage-from-ces-2009/"&gt;live feed of the keynote&lt;/a&gt;. Looks good, rather iPhone-ish but with some nice features (e.g app switching) ... but &lt;span class="update"&gt;HTML, CSS, and javascript for dev tools? Surely there will be some sort of C API ...&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-830549935174407739?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/830549935174407739/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=830549935174407739' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/830549935174407739'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/830549935174407739'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/01/palms-nova-2.html' title='Palm&apos;s Nova ... #2'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-8826072860835445542</id><published>2009-01-08T08:25:00.000-08:00</published><updated>2009-01-08T11:57:41.101-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Palm'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Newton'/><title type='text'>Palm's Nova ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;Well today is the day where &lt;a href="http://en.wikipedia.org/wiki/Palm,_Inc."&gt;Palm&lt;/a&gt; is supposed to announce, at the &lt;a href="http://www.cesweb.org/"&gt;CES&lt;/a&gt;, its new OS (&lt;a href="http://en.wikipedia.org/wiki/Linux"&gt;Linux&lt;/a&gt; based apparently) which &lt;span style="font-style: italic;"&gt;should&lt;/span&gt; compete with the &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt;. &lt;a href="http://www.moconews.net/entry/419-palms-survival-lies-in-new-os-details-leakk-out-on-new-nova-phone-launc/"&gt;Not much have leaked so far&lt;/a&gt; on what to expect (somehow this sounds like an Apple's operation), so there is not much to said for now. I'm not very &lt;span style="font-style: italic;"&gt;warm&lt;/span&gt; to Palm, mainly because the &lt;a href="http://en.wikipedia.org/wiki/Palm_%28PDA%29"&gt;Palm Pilot&lt;/a&gt; is somewhat responsible for the (inevitable?) demise of my beloved &lt;a href="http://en.wikipedia.org/wiki/Apple_Newton"&gt;Newton&lt;/a&gt; (&lt;span style="font-style: italic;"&gt;smaller &lt;/span&gt;&amp;amp; &lt;span style="font-style: italic;"&gt;cheaper&lt;/span&gt; devices which didn't do a quarter of what the &lt;span style="font-style: italic;"&gt;Newt'&lt;/span&gt; could do). It's not that I didn't try to like them, since I got myself (I know! What was I thinking!) a &lt;a href="http://en.wikipedia.org/wiki/Tungsten_T2#Tungsten_T3"&gt;Palm Tungsten T3&lt;/a&gt; back in 2004. Unfortunately (or fortunately?), there was no spark between us. The device it-self was alright I guess, but the OS left me &lt;span style="font-style: italic;"&gt;cold&lt;/span&gt;, &lt;span style="font-style: italic;"&gt;uninterested&lt;/span&gt; and the unit ended-up collecting dust on my desk for years, unused.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-8826072860835445542?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/8826072860835445542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=8826072860835445542' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/8826072860835445542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/8826072860835445542'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/01/plams-nova.html' title='Palm&apos;s Nova ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-9060055814130821985</id><published>2009-01-06T13:25:00.000-08:00</published><updated>2009-01-06T13:38:03.130-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Mac'/><title type='text'>10 years of OS X (sort of)</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lQfxdt0YNZA/SWPHDHIPOzI/AAAAAAAAAF8/zo6ycyBg7kc/s1600-h/stepboxes.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 130px; height: 135px;" src="http://1.bp.blogspot.com/_lQfxdt0YNZA/SWPHDHIPOzI/AAAAAAAAAF8/zo6ycyBg7kc/s200/stepboxes.jpg" alt="" id="BLOGGER_PHOTO_ID_5288289243730230066" border="0" /&gt;&lt;/a&gt;Well, this beginning of year is sure full of anniversaries. Few days ago it was the &lt;a href="http://en.wikipedia.org/wiki/Mars_Exploration_Rover"&gt;Mars Rover&lt;/a&gt;, and yesterday it was the release of &lt;a href="http://en.wikipedia.org/wiki/Mac_OS_X_Server"&gt;Mac OS X Server&lt;/a&gt; which occurred 10 years ago. Oops ... did I wrote &lt;span style="font-style: italic;"&gt;release&lt;/span&gt;? I meant &lt;span style="font-style: italic;"&gt;announce&lt;/span&gt; ... &lt;a href="http://www.storiesofapple.net/"&gt;Stories of Apple.net&lt;/a&gt; has a bit &lt;a href="http://www.storiesofapple.net/here-comes-mac-os-x-server.html"&gt;more detail on it&lt;/a&gt; (including a &lt;a href="http://www.nicoladagostino.net/altro/ndaosxserv12-12.jpg"&gt;link to a screenshot&lt;/a&gt;, sure did look like &lt;a href="http://en.wikipedia.org/wiki/Mac_OS_9"&gt;OS9&lt;/a&gt; ...). The very same &lt;a href="http://en.wikipedia.org/wiki/Macworld_Conference_%26_Expo"&gt;Macworld&lt;/a&gt; keynote was also used to introduce the &lt;a href="http://en.wikipedia.org/wiki/Power_Macintosh_G3_%28Blue_%26_White%29"&gt;Blue&amp;amp;White PowerMac G3&lt;/a&gt; with that &lt;span style="font-style: italic;"&gt;funky look&lt;/span&gt; which at that time looks pretty &lt;span style="font-style: italic;"&gt;darn cool&lt;/span&gt; but now look, well ... very late 90s ...&lt;br /&gt;&lt;br /&gt;While I'm still talking (a bit) about the MER, &lt;span style="font-weight: bold;"&gt;I must&lt;/span&gt; mention that one of Spirit's drivers (&lt;span style="font-style: italic;"&gt;Scott Maxwell&lt;/span&gt;) have started (to celebrate the anniversary) a &lt;a href="http://marsandme.blogspot.com/"&gt;very interesting (and well written) blog&lt;/a&gt; on the first 3 years on Mars of the rovers. Each daily post will be covering a &lt;span style="font-style: italic;"&gt;martian day&lt;/span&gt; (&lt;span style="font-style: italic;"&gt;sol&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;Scott participated in August to some sort of conference, which is now on Youtube&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/9T1JsWq9PnI&amp;hl=en&amp;fs=1&amp;rel=0"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/9T1JsWq9PnI&amp;hl=en&amp;fs=1&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-9060055814130821985?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/9060055814130821985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=9060055814130821985' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/9060055814130821985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/9060055814130821985'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/01/10-years-of-os-x-sort-of.html' title='10 years of OS X (sort of)'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lQfxdt0YNZA/SWPHDHIPOzI/AAAAAAAAAF8/zo6ycyBg7kc/s72-c/stepboxes.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5358050588078571625</id><published>2009-01-03T10:45:00.000-08:00</published><updated>2009-01-03T10:47:21.330-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MER'/><category scheme='http://www.blogger.com/atom/ns#' term='Mars'/><category scheme='http://www.blogger.com/atom/ns#' term='Space'/><title type='text'>5 years on Mars!</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lQfxdt0YNZA/SV-kegoMGpI/AAAAAAAAAF0/UGkkW4JtPCo/s1600-h/Rocket_assisted_descent-1.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 186px; height: 149px;" src="http://4.bp.blogspot.com/_lQfxdt0YNZA/SV-kegoMGpI/AAAAAAAAAF0/UGkkW4JtPCo/s200/Rocket_assisted_descent-1.jpg" alt="" id="BLOGGER_PHOTO_ID_5287125331617782418" border="0" /&gt;&lt;/a&gt;Well here we are, January 2009. 5 years ago, the first of the two &lt;a href="http://en.wikipedia.org/wiki/Mars_Exploration_Rover"&gt;MER&lt;/a&gt;, &lt;span style="font-style: italic;"&gt;Spirit&lt;/span&gt;, was landing on Mars. I still recall, although it's getting a little fuzzy in my memory, watching the event LIVE on NASA TV. It was great in  a nerdy sort of way :-) 5 years after, what was suppose to last only 90 Martian days, have lasted +1773 days, quite the endurance.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.maasdigital.com/"&gt;Mass Digital&lt;/a&gt; which was behind a video of the &lt;span style="font-style: italic;"&gt;EDL&lt;/span&gt; (Entry, Descent and Landing) have released some time ago a video on YouTube showing the whole mission (well not the ALL mission) :&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/-_9BYSDtwRc&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/-_9BYSDtwRc&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" height="344" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;It sure looks a little dated now, especially if you compare with the HD video of &lt;a href="http://en.wikipedia.org/wiki/Mars_Science_Laboratory"&gt;MSL&lt;/a&gt;'s EDL, but it is still pretty fun to watch. Speaking of fun, &lt;span style="font-style: italic;"&gt;Emily&lt;/span&gt;, of the &lt;a href="http://www.planetary.org/home/"&gt;Planetary Society&lt;/a&gt;, have written up a &lt;a href="http://www.planetary.org/blog/article/00001796/"&gt;little article&lt;/a&gt; on the excellent adventure of Spirit, worth reading. I'm sure there will be lot of articles to come out this week on the subject.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5358050588078571625?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5358050588078571625/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5358050588078571625' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5358050588078571625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5358050588078571625'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2009/01/5-years-on-mars.html' title='5 years on Mars!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lQfxdt0YNZA/SV-kegoMGpI/AAAAAAAAAF0/UGkkW4JtPCo/s72-c/Rocket_assisted_descent-1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5072094888045423443</id><published>2008-12-18T07:51:00.000-08:00</published><updated>2008-12-18T08:40:22.014-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='Cocoa'/><title type='text'>When too much is too much ... #2</title><content type='html'>&lt;div style="text-align: justify;"&gt;I'm finally putting the final touches to my &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSKeyedArchiver_Class/Reference/Reference.html"&gt;&lt;code&gt;NSKeyedArchiver&lt;/code&gt;&lt;/a&gt;/&lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSKeyedUnarchiver_Class/Reference/Reference.html#//apple_ref/occ/cl/NSKeyedUnarchiver"&gt;&lt;code&gt;NSKeyedUnarchiver&lt;/code&gt;&lt;/a&gt; replacement. It's not that it's a complex things to do really, it's just that finding the time to do it with a &lt;a href="http://mommying-around.blogspot.com/"&gt;4 weeks old baby around&lt;/a&gt; is I found, a &lt;span style="font-weight: bold; font-style: italic;"&gt;major challenge&lt;/span&gt;. Overall, I'm satisfied by how my &lt;span style="font-style: italic;"&gt;archiver&lt;/span&gt; is doing since it's packing that simple object (1 uint + 1 float) I was talking about in &lt;a href="http://geeking-around.blogspot.com/2008/12/when-too-much-is-too-much.html"&gt;my previous post&lt;/a&gt; into &lt;span style="font-weight: bold;"&gt;44 bytes&lt;/span&gt; instead of the &lt;span style="font-style: italic;"&gt;wasteful&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;232 bytes&lt;/span&gt; of &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSKeyedArchiver_Class/Reference/Reference.html"&gt;&lt;code&gt;NSKeyedArchiver&lt;/code&gt;&lt;/a&gt; (while still supporting keyed encoding, of course). That 44 bytes include a &lt;a href="http://en.wikipedia.org/wiki/Preamble"&gt;preamble&lt;/a&gt; which ,when needed, could be skipped, for example when storing a collection of objects into a same file, so the archived object really only take &lt;span style="font-weight: bold;"&gt;35 bytes&lt;/span&gt;, which isn't bad all considered :-)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5072094888045423443?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5072094888045423443/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5072094888045423443' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5072094888045423443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5072094888045423443'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/12/when-too-much-is-too-much-2.html' title='When too much is too much ... #2'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-2420193764338652765</id><published>2008-12-15T15:27:00.000-08:00</published><updated>2008-12-15T15:29:06.375-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mars'/><category scheme='http://www.blogger.com/atom/ns#' term='Space'/><category scheme='http://www.blogger.com/atom/ns#' term='Pathfinder'/><title type='text'>Mars Pathfinder</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lQfxdt0YNZA/SUbkzVpZTJI/AAAAAAAAAFs/r1LC2HJHzzo/s1600-h/014-mars-pathfinder.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 151px; height: 138px;" src="http://3.bp.blogspot.com/_lQfxdt0YNZA/SUbkzVpZTJI/AAAAAAAAAFs/r1LC2HJHzzo/s200/014-mars-pathfinder.jpg" alt="" id="BLOGGER_PHOTO_ID_5280159183773715602" border="0" /&gt;&lt;/a&gt;11 years ago, like many other space geeks, I was captivated by the &lt;a href="http://en.wikipedia.org/wiki/Mars_Pathfinder"&gt;&lt;span style="font-style: italic;"&gt;Mars Pathfinder&lt;/span&gt;&lt;/a&gt; mission. It was the very first mission to have an &lt;span style="font-weight: bold; font-style: italic;"&gt;Internet coverage&lt;/span&gt; (If I'm not mistaken), and it was also (of course) the first mission to feature a &lt;span style="font-weight: bold;"&gt;rover&lt;/span&gt; (only 10kg, compare this to MSL's 900kg!). Looking back at the&lt;a href="http://mpfwww.jpl.nasa.gov/MPF/index1.html"&gt; mission pictures&lt;/a&gt;, it's amazing how we have grown accustomed to high-res imagery from the twin &lt;a href="http://en.wikipedia.org/wiki/Mars_Exploration_Rover"&gt;MER&lt;/a&gt;, to the point that pictures from their older cousin seems &lt;span style="font-style: italic;"&gt;amateurish&lt;/span&gt; (likely your cell phone, an &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; hopefully, as now a better resolution than Pathfinder's cameras had).&lt;br /&gt;&lt;br /&gt;Anyhow, I'm talking about this today, 'cause I stumbled on a couple of &lt;a href="http://www.youtube.com/"&gt;YouTube&lt;/a&gt; videos, which are part of a 35 minutes documentary on the mission, which I though was good enough to share. So here are, in order, the 4 segments:&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/QJ3EP6W6W9Y&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/QJ3EP6W6W9Y&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/K98e6v3Ort0&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/K98e6v3Ort0&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/PPRz2zGHa5M&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/PPRz2zGHa5M&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Mr2cCy7tkek&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/Mr2cCy7tkek&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-2420193764338652765?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/2420193764338652765/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=2420193764338652765' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2420193764338652765'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2420193764338652765'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/12/mars-pathfinder.html' title='Mars Pathfinder'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_lQfxdt0YNZA/SUbkzVpZTJI/AAAAAAAAAFs/r1LC2HJHzzo/s72-c/014-mars-pathfinder.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-4500534150851082868</id><published>2008-12-11T08:43:00.000-08:00</published><updated>2008-12-11T08:44:03.403-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Newton'/><title type='text'>From Newton to iPhone ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lQfxdt0YNZA/SUE31L0FzwI/AAAAAAAAAFk/UBZTsNK60Vo/s1600-h/play4.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 130px; height: 147px;" src="http://1.bp.blogspot.com/_lQfxdt0YNZA/SUE31L0FzwI/AAAAAAAAAFk/UBZTsNK60Vo/s200/play4.gif" alt="" id="BLOGGER_PHOTO_ID_5278561625098800898" border="0" /&gt;&lt;/a&gt;As &lt;a href="http://daringfireball.net/2008/12/deep_green"&gt;nicely pointed out&lt;/a&gt; by &lt;a href="http://en.wikipedia.org/wiki/John_Gruber"&gt;John Gruber&lt;/a&gt; on his blog,  &lt;a href="http://cocoastuff.com/deepgreen/"&gt;&lt;span style="font-style: italic;"&gt;Deep Green&lt;/span&gt;&lt;/a&gt; is back (&lt;a href="http://bondo.net/newton/deepgreen.html"&gt;from the dead&lt;/a&gt;)! As soon as I saw that, I rushed to the &lt;a href="http://en.wikipedia.org/wiki/App_Store"&gt;&lt;span style="font-style: italic;"&gt;App store&lt;/span&gt;&lt;/a&gt; and grabbed it (for it's introductory price of $4.99) mostly for &lt;span style="font-style: italic;"&gt;pure nostalgia&lt;/span&gt; reason since I had it on my trusty &lt;a href="http://en.wikipedia.org/wiki/Apple_Newton"&gt;Newton&lt;/a&gt;, even though I'm not a big &lt;a href="http://en.wikipedia.org/wiki/Chess"&gt;Chess&lt;/a&gt; player (I do play occasionally). The &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt;'s version, which is coming out 10 years after the Newton's version, is &lt;span style="font-style: italic; font-weight: bold;"&gt;seriously beautiful&lt;/span&gt; and sports a &lt;span style="font-style: italic; font-weight: bold;"&gt;nice minimalist UI&lt;/span&gt;. Well done &lt;i&gt;Joachim Bondo! &lt;/i&gt;I'v got to said that it is nice to see a Newton old-timer transitionning to the platform :-)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-4500534150851082868?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/4500534150851082868/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=4500534150851082868' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4500534150851082868'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4500534150851082868'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/12/from-newton-to-iphone.html' title='From Newton to iPhone ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lQfxdt0YNZA/SUE31L0FzwI/AAAAAAAAAFk/UBZTsNK60Vo/s72-c/play4.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5692125749446371972</id><published>2008-12-10T12:15:00.000-08:00</published><updated>2008-12-10T12:15:40.910-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Archiver'/><category scheme='http://www.blogger.com/atom/ns#' term='Cocoa'/><title type='text'>When too much is too much ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;To store the data generated with my &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; application, I have been using the facilities provided by the &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Protocols/NSCoding_Protocol/Reference/Reference.html"&gt;&lt;code&gt;NSCoding&lt;/code&gt;&lt;/a&gt; protocol in cooperation with a &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSKeyedArchiver_Class/Reference/Reference.html"&gt;&lt;code&gt;NSKeyedArchiver&lt;/code&gt;&lt;/a&gt;, and it works quiet well even if it is likely not what I should be using since it force all my data to be saved or loaded all at once. Nevertheless at this stage in the development process, this is a &lt;span style="font-style: italic; font-weight: bold;"&gt;good enough&lt;/span&gt; solution since my data-set is relatively small (less than 30 &lt;span style="font-style: italic;"&gt;items&lt;/span&gt;). The whole concept of &lt;span style="font-style: italic;"&gt;archiving object&lt;/span&gt; isn't new to me since I was using it back in my &lt;a href="http://en.wikipedia.org/wiki/BeOS"&gt;BeOS&lt;/a&gt; days (&lt;a href="http://www.acm.uiuc.edu/bug/Be%20Book/The%20Application%20Kit/Message.html"&gt;&lt;code&gt;BMessage&lt;/code&gt;&lt;/a&gt; with the &lt;a href="http://www.acm.uiuc.edu/bug/Be%20Book/The%20Support%20Kit/Archivable.html"&gt;&lt;code&gt;BArchivable&lt;/code&gt;&lt;/a&gt; class), however the &lt;a href="http://en.wikipedia.org/wiki/NeXT"&gt;NeXT&lt;/a&gt;'s take on this old favorite is a little  much more handy to use, thanks to &lt;a href="http://en.wikipedia.org/wiki/Objective-C"&gt;Objective-C&lt;/a&gt; dynamic nature (compared to C++ more rigid nature) . Since the name of the class is archived at the same time than the object data, it can be later used to recreate the object &lt;span style="font-style: italic;"&gt;automatically&lt;/span&gt; (granted that the executable unarchiving your object &lt;span style="font-style: italic;"&gt;knows&lt;/span&gt; about that particular class).&lt;br /&gt;&lt;br /&gt;Unfortunately, there is (of course) a price to paid for using &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSKeyedArchiver_Class/Reference/Reference.html"&gt;&lt;code&gt;NSKeyedArchiver&lt;/code&gt;&lt;/a&gt;. The end result bytes consumption is &lt;span style="font-style: italic;"&gt;criminally&lt;/span&gt; high. For example a simple &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSObject_Class/Reference/Reference.html"&gt;&lt;code&gt;NSObject&lt;/code&gt;&lt;/a&gt; derived class, encoding a &lt;span style="font-style: italic;"&gt;uint&lt;/span&gt; and a &lt;span style="font-style: italic;"&gt;float&lt;/span&gt;, requires a &lt;span style="font-weight: bold;"&gt;232 bytes&lt;/span&gt; long buffer. &lt;span style="font-weight: bold;"&gt;8 bytes&lt;/span&gt; of real data (not counting the class name), flattened into 232 bytes ... So obviously, lots of the overhead won't be duplicated if I was encoding more than a single object, but if you want to &lt;span style="font-style: italic;"&gt;archive&lt;/span&gt; a single object for transmission or storage (bytes oriented kind of storage), the cost is a little too high.&lt;br /&gt;&lt;br /&gt;Hopefuly, since the &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Protocols/NSCoding_Protocol/Reference/Reference.html"&gt;&lt;code&gt;NSCoding&lt;/code&gt;&lt;/a&gt; protocol is based on using the abstract class &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSCoder_Class/Reference/NSCoder.html"&gt;&lt;code&gt;NSCoder&lt;/code&gt;&lt;/a&gt;, one could create its own archiver, with hopefully similar capabilities, but lower &lt;span style="font-style: italic;"&gt;memory footprint&lt;/span&gt;. I know, I shouldn't waste my (limited) time making my own, and instead focus on the app, but I can't help ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5692125749446371972?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5692125749446371972/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5692125749446371972' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5692125749446371972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5692125749446371972'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/12/when-too-much-is-too-much.html' title='When too much is too much ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-2680120061290143897</id><published>2008-12-09T08:53:00.000-08:00</published><updated>2008-12-09T08:57:46.600-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='history'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><category scheme='http://www.blogger.com/atom/ns#' term='Computing'/><title type='text'>Happy b-day, Mouse!</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lQfxdt0YNZA/ST6eiQiakwI/AAAAAAAAAFc/EhqmUviEEZU/s1600-h/indexmousebacklarge20070807.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 108px; height: 200px;" src="http://4.bp.blogspot.com/_lQfxdt0YNZA/ST6eiQiakwI/AAAAAAAAAFc/EhqmUviEEZU/s200/indexmousebacklarge20070807.jpg" alt="" id="BLOGGER_PHOTO_ID_5277830124716856066" border="0" /&gt;&lt;/a&gt;Well, the &lt;a href="http://en.wikipedia.org/wiki/Mouse_%28computing%29"&gt;&lt;span style="font-style: italic;"&gt;mouse&lt;/span&gt;&lt;/a&gt; is officially turning 40 years old today. Well, to be exact, it's a little more than 40 years old, since it was first &lt;span style="font-style: italic;"&gt;publicly&lt;/span&gt; demonstrated 40 years ago by &lt;a href="http://en.wikipedia.org/wiki/Douglas_Engelbart" title="Douglas Engelbart"&gt;Douglas Engelbart&lt;/a&gt; during what is now known as the &lt;a href="http://en.wikipedia.org/wiki/The_Mother_of_All_Demos"&gt;&lt;span style="font-style: italic;"&gt;Mother of all Demos&lt;/span&gt;&lt;/a&gt;. If you have 74 minutes to spare, make sure to watch the video of that demo from some pretty cool stuff ... that is if you are digging &lt;a href="http://www.linuxjournal.com/article/7373"&gt;&lt;span style="font-style: italic;"&gt;computing archeology&lt;/span&gt;&lt;/a&gt; ;-)&lt;br /&gt;&lt;br /&gt;While, I'm on the subject, I'd like to point out also, an &lt;a href="http://www.storiesofapple.net/captain-crunch-on-apple-an-interview-with-john-draper.html"&gt;interesting interview&lt;/a&gt; of the &lt;span style="font-style: italic;"&gt;legendary &lt;/span&gt;&lt;a href="http://en.wikipedia.org/wiki/John_Draper"&gt;John Draper&lt;/a&gt;, which was recently published on &lt;a href="http://www.storiesofapple.net/"&gt;Stories of Apple&lt;/a&gt;. The interview mainly focus on the early days of &lt;a href="http://en.wikipedia.org/wiki/Phreaking"&gt;Phreaking&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Apple_Inc."&gt;Apple&lt;/a&gt;, but here's an excerpt related to the main preoccupation of this blog (no, it's just not about weird music!):&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic;"&gt;"Yeah, it’s wired up, man. Fuckin’ wired up man. [...] It was borrowed from NeXT. Jobs owned all the code from NeXT, he brought it in to Apple. It’s part of Xcode, part of Cocoa."&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-2680120061290143897?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/2680120061290143897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=2680120061290143897' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2680120061290143897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2680120061290143897'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/12/happy-b-day-mouse.html' title='Happy b-day, Mouse!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lQfxdt0YNZA/ST6eiQiakwI/AAAAAAAAAFc/EhqmUviEEZU/s72-c/indexmousebacklarge20070807.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-9011649725942432877</id><published>2008-12-08T12:55:00.000-08:00</published><updated>2008-12-08T12:56:54.098-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Coding'/><title type='text'>Über fiasco ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;I was feeling pretty confident when the contractions started to come, because I had my little app on my iPod to &lt;span style="font-style: italic;"&gt;deal&lt;/span&gt; with them, and somehow help with the excruciating pain which was to build-up over the course of several hours ... that is until I realized, with &lt;span style="font-style: italic;"&gt;horror &lt;/span&gt;and tremendous&lt;span style="font-style: italic;"&gt; shame&lt;/span&gt;, that it kept on crashing. Of course, this was purely my fault. Just the day before, we had a perfectly working application. Sure, it was far from perfect, and there was a lot of polishing still to be done, but it had been tested and was fulfilling its purpose. I should have avoid touching anything since we were getting close to the due date, and thus we could need it at any time. And yet, on the morning of the 19th, I decided to start implementing some of the changes Susan and I had talked about. I was so certain that my changes will have minimum impact, and that we will have time to re-test it, that I didn't even register that I was stomping all over one of the most fundamental law in life: &lt;span style="font-weight: bold;"&gt;"if it ain't broke, don't fix it!"&lt;/span&gt;. The results of my risky endeavour, was a &lt;a href="http://en.wikipedia.org/wiki/Fiasco"&gt;&lt;span style="font-style: italic;"&gt;fiasco&lt;/span&gt;&lt;/a&gt; (the baby still made it out A-Okay, so not everything bombed).&lt;br /&gt;&lt;br /&gt;What is even more annoying, is the cause of the crash was pretty dumb, and only took a couple of second to figure out. If I had run into it while testing the app within &lt;a href="http://en.wikipedia.org/wiki/Xcode"&gt;Xcode&lt;/a&gt;, I will have seen it within the debugger.&lt;br /&gt;&lt;br /&gt;Alas ... lesson harshly learned.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-9011649725942432877?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/9011649725942432877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=9011649725942432877' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/9011649725942432877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/9011649725942432877'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/12/ber-fiasco.html' title='Über fiasco ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-2778741697694250335</id><published>2008-11-19T12:05:00.000-08:00</published><updated>2008-11-19T12:08:56.392-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>Über coolness ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lQfxdt0YNZA/SSQ9peN0ZFI/AAAAAAAAAFQ/pips7UdgqdM/s1600-h/netwton.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 120px; height: 133px;" src="http://4.bp.blogspot.com/_lQfxdt0YNZA/SSQ9peN0ZFI/AAAAAAAAAFQ/pips7UdgqdM/s200/netwton.jpg" alt="" id="BLOGGER_PHOTO_ID_5270405246625277010" border="0" /&gt;&lt;/a&gt;Saturday morning, I managed to get my app on my &lt;a href="http://en.wikipedia.org/wiki/Ipod_touch"&gt;iPod&lt;/a&gt;. I was rather nervous about the whole process after reading various &lt;span style="font-style: italic;"&gt;horror stories&lt;/span&gt; from fellow &lt;a href="http://www.mikeash.com/?page=pyblog/the-iphone-development-story.html"&gt;iPhone developers&lt;/a&gt;, but my worst fears didn't materialize. Lucky me I guess ... I followed &lt;span style="font-style: italic;"&gt;religiously&lt;/span&gt; the &lt;span style="font-style: italic;"&gt;howto&lt;/span&gt; sections of the developers' site to &lt;span style="font-style: italic;"&gt;provision&lt;/span&gt; my device then get my &lt;span style="font-style: italic;"&gt;certificate&lt;/span&gt; stuff in order and things were going well, until I ran into the first issue: there is no &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSCalendarDate_Class/Reference/Reference.html"&gt;&lt;code&gt;NSCalendarDate&lt;/code&gt;&lt;/a&gt; on the device (bummer!). Now, this is really my fault since I failed to paid attention to the fact that, as stated in the documentation, that particular class is on its way to be deprecated ... and missing from the &lt;a href="http://en.wikipedia.org/wiki/IPhone_OS"&gt;iPhone OS&lt;/a&gt;. The surprising thing, though, is that that class is available when targeting the simulator ... Anyhow, that wasn't a huge &lt;span style="font-style: italic;"&gt;drama&lt;/span&gt; and after a bit of cleanup, I was onto the next issues: the &lt;span style="font-style: italic;"&gt;dreaded&lt;/span&gt; 0xE800003A and 0xE8000036 ... errors :-|&lt;br /&gt;&lt;br /&gt;The first one, is &lt;a href="http://discussions.apple.com/thread.jspa?threadID=1793145&amp;amp;tstart=0"&gt;easy to fix&lt;/a&gt; after a bit of googling as for the second one, it is also kinda easy to fix since it only occurs when I try to install a new built over an older one. When it occurs, which isn't all the time but rather often (&lt;span style="font-style: italic;"&gt;read 9 out of 10&lt;/span&gt;), I just delete the older version from the home screen, before hitting &lt;span style="font-style: italic;"&gt;Build &amp;amp; Go&lt;/span&gt; or &lt;span style="font-style: italic;"&gt;Go&lt;/span&gt;. Which is a bit of a bummer 'cause each time I lose whatever &lt;span style="font-style: italic;"&gt;state &amp;amp; data&lt;/span&gt; my app was in ... :-(&lt;br /&gt;&lt;br /&gt;Anyhow, now that the app is on the device we are finally ready for &lt;span style="font-style: italic;"&gt;our big event&lt;/span&gt; ... and with enough time to spare so that we have been improving the app ;-)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-2778741697694250335?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/2778741697694250335/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=2778741697694250335' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2778741697694250335'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2778741697694250335'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/11/ber-coolness.html' title='Über coolness ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lQfxdt0YNZA/SSQ9peN0ZFI/AAAAAAAAAFQ/pips7UdgqdM/s72-c/netwton.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-2069157579682405781</id><published>2008-11-17T15:24:00.000-08:00</published><updated>2008-11-17T15:25:54.847-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Music'/><title type='text'>What the heck are you listening to?</title><content type='html'>&lt;div style="text-align: justify;"&gt;Here's a little something I'd like to share with you (yes, that's you Usman), and for once, it's not something that I have heard on the &lt;a href="http://www.cbc.ca/radio2/thesignal/"&gt;&lt;span style="font-style: italic;"&gt;The Signal&lt;/span&gt;&lt;/a&gt;, but rather something I stumbled upon in &lt;a href="http://cultofmac.com/"&gt;&lt;span style="font-style: italic;"&gt;Cult Of Mac&lt;/span&gt;&lt;/a&gt; of all place.  Be ready, though, for some &lt;span style="font-style: italic;"&gt;extremely&lt;/span&gt; &lt;span style="font-style: italic;"&gt;"weird"&lt;/span&gt; music:&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/3t2O5mvnTAc&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/3t2O5mvnTAc&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Unfortunatly, there doesn't seems to be any available audio files on the &lt;a href="http://slork.stanford.edu/"&gt;SLOrk project site&lt;/a&gt; ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-2069157579682405781?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/2069157579682405781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=2069157579682405781' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2069157579682405781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2069157579682405781'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/11/what-heck-are-you-listening-to.html' title='What the heck are you listening to?'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-4019684946350239474</id><published>2008-11-14T11:23:00.000-08:00</published><updated>2008-11-14T11:24:57.328-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>Not so fast ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lQfxdt0YNZA/SR3PiYcr-DI/AAAAAAAAAFI/DPF7VoBaw9o/s1600-h/icon_iphonesimulator.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 68px; height: 63px;" src="http://4.bp.blogspot.com/_lQfxdt0YNZA/SR3PiYcr-DI/AAAAAAAAAFI/DPF7VoBaw9o/s200/icon_iphonesimulator.png" alt="" id="BLOGGER_PHOTO_ID_5268595328678623282" border="0" /&gt;&lt;/a&gt;Well, we finally got approved yesterday afternoon in the &lt;a style="font-style: italic;" href="http://developer.apple.com/iphone/program/"&gt;iPhone developer program&lt;/a&gt; :-) Which is pretty &lt;span style="font-style: italic; font-weight: bold;"&gt;cool&lt;/span&gt;, I must confess. I have yet to go trough the (possibly) &lt;span style="font-style: italic; font-weight: bold;"&gt;grueling&lt;/span&gt; process of getting the application on my &lt;a href="http://en.wikipedia.org/wiki/Ipod_touch"&gt;iPod&lt;/a&gt;, but I should be doing that this evening (an blogging about it, unfortunatly for you ...).&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="http://mommying-around.blogspot.com/"&gt;Susan&lt;/a&gt; did a &lt;span style="font-style: italic;"&gt;test run&lt;/span&gt; of the app using the simulator the other day, and she came up with a detailed list of bugs and changes, which keept me busy over the past 48 hours. It's not that it was much work, really, it's just that I have only a limited amount of hours each days ...&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-4019684946350239474?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/4019684946350239474/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=4019684946350239474' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4019684946350239474'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4019684946350239474'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/11/not-so-fast.html' title='Not so fast ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lQfxdt0YNZA/SR3PiYcr-DI/AAAAAAAAAFI/DPF7VoBaw9o/s72-c/icon_iphonesimulator.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-3523305220568635736</id><published>2008-11-12T12:04:00.000-08:00</published><updated>2008-11-12T12:06:25.780-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Cocoa'/><title type='text'>Kind of done ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lQfxdt0YNZA/SRsmyRs64nI/AAAAAAAAAFA/EhQZo3-1Azg/s1600-h/netwton.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 136px; height: 150px;" src="http://1.bp.blogspot.com/_lQfxdt0YNZA/SRsmyRs64nI/AAAAAAAAAFA/EhQZo3-1Azg/s200/netwton.jpg" alt="" id="BLOGGER_PHOTO_ID_5267846834327052914" border="0" /&gt;&lt;/a&gt;I sort of completed my first &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; app yesterday. It's nothing fancy, really, but it's something we were &lt;a href="http://mommying-around.blogspot.com/"&gt;in imminent need for&lt;/a&gt;. Since I only applied for enrollment in the &lt;a style="font-style: italic;" href="http://developer.apple.com/iphone/program/"&gt;iPhone developer program&lt;/a&gt; back on October 29th, I have yet to put the app on my &lt;a href="http://en.wikipedia.org/wiki/Ipod_touch"&gt;iPod touch&lt;/a&gt; for testing. I sure hope we get accepted ASAP so that we can do a real life test ...&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;The experience has been very fun, so far. For a mobile device, the IDE (&lt;a href="http://en.wikipedia.org/wiki/Xcode"&gt;Xcode&lt;/a&gt;) and the API (&lt;a href="http://en.wikipedia.org/wiki/Cocoa_Touch"&gt;Cocoa Touch&lt;/a&gt;) are pretty good in comparison to what I was used on Symbian (&lt;a href="http://en.wikipedia.org/wiki/CodeWarrior"&gt;CodeWarrior&lt;/a&gt;). Now, to be fair I should mention that the last time I had to use Symbian stuff was back in 2005. Since I haven't followed-up on it since, I shouldn't really compare both experiences ... yet, coding for the iPhone as so far be a real pleasure where Symbian was a major pain (lacking documentation, constant need for tricks &amp;amp; hacks ...). I have yet to explore the whole &lt;span style="font-style: italic;"&gt;touch&lt;/span&gt; API, but right now it appears to be consistent and well though-out.&lt;br /&gt;&lt;br /&gt;I'm not going to disclose just yet what sort of application we are working on. But I believe it should be fairly easy to guess at it. Post your guesses as comments if you'd like, the winner will get a free version (if and whenever it get released) ;-)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-3523305220568635736?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/3523305220568635736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=3523305220568635736' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3523305220568635736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3523305220568635736'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/11/kind-of-done.html' title='Kind of done ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lQfxdt0YNZA/SRsmyRs64nI/AAAAAAAAAFA/EhQZo3-1Azg/s72-c/netwton.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5856068726555198627</id><published>2008-11-06T16:01:00.000-08:00</published><updated>2008-11-06T16:01:30.402-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><title type='text'>C++ Considered Harmful (?!)</title><content type='html'>&lt;div style="text-align: justify;"&gt;Lately, I have been following an &lt;a href="http://esr.ibiblio.org/?p=532"&gt;interesting discussion&lt;/a&gt; started a some weeks ago by &lt;a href="http://en.wikipedia.org/wiki/Eric_S._Raymond"&gt;Eric Raymond&lt;/a&gt; on his &lt;a href="http://esr.ibiblio.org/"&gt;blog&lt;/a&gt;. The subject is a very touchy one as the title of the work ESR is working on (and which motivated his post) is : &lt;span style="font-style: italic;"&gt;“Why C++ is Not Our Favorite Programming Language”&lt;/span&gt;. As anyone could guess, this post have generated a &lt;span style="font-style: italic;"&gt;certain amount&lt;/span&gt; of reactions over more than a month. It's overall a great read which I strongly recommend for &lt;a href="http://en.wikipedia.org/wiki/C%2B%2B"&gt;C++&lt;/a&gt; &lt;span style="font-style: italic;"&gt;lovers &lt;/span&gt;and &lt;span style="font-style: italic;"&gt;haters&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Since I'm in no way the C++ guru (although I have been using it for a good 10 years), I'm confining myself to respectfully taking-in comments from both sides. This doesn't mean that I don't have my opinion on C++ and its &lt;span style="font-style: italic;"&gt;supposed&lt;/span&gt; harmfulness. Is C++ complex and confusing? Yes, some is. Is C++ syntax tricky? Not so much. As much as possible I try to stay away from all the features I found to add more complications that their are really worth (e.g Templates, iostream ...). In fact, I'm really using C++ in the way it first came about : &lt;span style="font-style: italic; font-weight: bold;"&gt;C with objects&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;While I'm on the C++ subject, &lt;span&gt;&lt;a href="http://en.wikipedia.org/wiki/Kevlin_Henney"&gt;Kevlin Henney&lt;/a&gt; recently (March of this year) participated to &lt;/span&gt;a &lt;a href="http://research.google.com/video.html"&gt;Google Tech Talk&lt;/a&gt;, in which he talked about C++ &lt;a href="http://en.wikipedia.org/wiki/Stylistics_%28linguistics%29"&gt;Stylistics&lt;/a&gt;. A good talk worth watching IMHO:&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/zh8W4ZglOlw&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/zh8W4ZglOlw&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;As I have been moving away from C++ (on to &lt;a href="http://en.wikipedia.org/wiki/Objective-C"&gt;Objective-C&lt;/a&gt;), I have become a bit more critical of C++ lately. I guess I'm having too much fun with Objective-C and &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; to be really language &lt;a href="http://en.wikipedia.org/wiki/Agnostic"&gt;agnostic&lt;/a&gt; anymore ... so C++? &lt;span style="font-weight: bold;"&gt;Yuk!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5856068726555198627?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5856068726555198627/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5856068726555198627' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5856068726555198627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5856068726555198627'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/11/c-considered-harmful.html' title='C++ Considered Harmful (?!)'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-3552519724280038481</id><published>2008-11-03T11:14:00.000-08:00</published><updated>2008-11-03T11:14:48.645-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Space'/><title type='text'>The other Saturn ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;While most people on Earth have heard of the &lt;span style="font-style: italic;"&gt;mighty&lt;/span&gt; &lt;a href="http://en.wikipedia.org/wiki/Saturn_V"&gt;Saturn V&lt;/a&gt; (except maybe the &lt;a href="http://news.bbc.co.uk/2/hi/americas/1267845.stm"&gt;lost tribe of Amazonia&lt;/a&gt; ...), very few people (except the space geeks) knows about the Saturn's older sibling: the less mighty (but yet &lt;span style="font-style: italic;"&gt;impressive&lt;/span&gt;) &lt;a href="http://en.wikipedia.org/wiki/Saturn_I"&gt;Saturn I&lt;/a&gt;.  Check out this video for some incredible (and yet not seen often) footage of the propellant tank, and staging cameras:&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/_dkxDx6RiM4&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/_dkxDx6RiM4&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Thanks to &lt;a href="http://forum.nasaspaceflight.com/index.php" class="nav"&gt;NASASpaceFlight.com's&lt;/a&gt; forum member &lt;span style="font-style: italic;"&gt;Proponent&lt;/span&gt;, for pointing out that superbe video of the 5th flight (SA-5).&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-3552519724280038481?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/3552519724280038481/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=3552519724280038481' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3552519724280038481'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3552519724280038481'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/11/other-saturn.html' title='The other Saturn ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-6024922664272192849</id><published>2008-10-30T10:48:00.000-07:00</published><updated>2008-10-30T10:50:18.314-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Étoilé'/><category scheme='http://www.blogger.com/atom/ns#' term='Darwin'/><title type='text'>C'est plein d'Étoiles ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lQfxdt0YNZA/SQnKhPaxaMI/AAAAAAAAAE4/g4oRAXvldC4/s1600-h/Etoile_Logo_Web.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 69px; height: 76px;" src="http://1.bp.blogspot.com/_lQfxdt0YNZA/SQnKhPaxaMI/AAAAAAAAAE4/g4oRAXvldC4/s200/Etoile_Logo_Web.gif" alt="" id="BLOGGER_PHOTO_ID_5262960311982450882" border="0" /&gt;&lt;/a&gt;Now that I'm done &lt;span style="font-style: italic;"&gt;obsessing&lt;/span&gt; about how soon my &lt;a href="http://en.wikipedia.org/wiki/MacBook"&gt;MacBook&lt;/a&gt; will get to me, it's time to turn to something else to look forward. Luckily for my &lt;a href="http://en.wikipedia.org/wiki/Obsessive-compulsive_disorder"&gt;OCD&lt;/a&gt; afflicted mind, the &lt;a href="http://etoileos.com/"&gt;Étoilé&lt;/a&gt; team have &lt;a href="http://etoileos.com/news/archive/2008/10/27/1211/"&gt;announced 3 days ago&lt;/a&gt; that a new version will be available on the 31st (of this month) with hopefully an &lt;span style="font-style: italic;"&gt;easy to install&lt;/span&gt; set of packages for the popular &lt;a href="http://en.wikipedia.org/wiki/Linux"&gt;Linux&lt;/a&gt; distributions. Which is a pretty cool news for me, since I still have a PC (as in &lt;a href="http://en.wikipedia.org/wiki/IBM_clone"&gt;IBM clone&lt;/a&gt;) at home on which I'd love to put something that look modern (unlike, ahem ... &lt;a href="http://en.wikipedia.org/wiki/GNUStep"&gt;GNUStep&lt;/a&gt;) and yet use the very same &lt;span style="font-style: italic;"&gt;paradigms&lt;/span&gt; that I have been getting use to recently (&lt;a href="http://en.wikipedia.org/wiki/OpenStep"&gt;OpenStep&lt;/a&gt;/&lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Objective-C"&gt;Objective-C&lt;/a&gt;). This could allow for some pretty neafty &lt;a href="http://en.wikipedia.org/wiki/Cross-platform"&gt;&lt;span style="font-style: italic;"&gt;cross-platform&lt;/span&gt;&lt;/a&gt; apps.&lt;br /&gt;&lt;br /&gt;I meant no offense to GNUStep, of course. It's great to be able to copy code across from a Mac and have it compile and run on Linux (as long as you stay away from things too Mac specific such as &lt;a href="http://en.wikipedia.org/wiki/Core_graphics"&gt;&lt;span style="font-style: italic;"&gt;Core Graphics&lt;/span&gt;&lt;/a&gt;). The problem is that the UI layer (&lt;a href="http://en.wikipedia.org/wiki/NeXTStep"&gt;NeXTStep&lt;/a&gt;'s look&amp;amp;feel) is very dated (to say the least). That's why &lt;a href="http://etoileos.com/"&gt;Étoilé&lt;/a&gt; is such an interesting project (which btw is not limited to just  providing a new UI front-end).&lt;br /&gt;&lt;br /&gt;Now, what will be &lt;a href="http://en.wikipedia.org/wiki/Uber"&gt;über&lt;/a&gt; cool, it's to run that environment on top of &lt;a href="http://www.puredarwin.org/"&gt;PureDarwin&lt;/a&gt;, the newest attempt to bring &lt;a href="http://en.wikipedia.org/wiki/Darwin_%28operating_system%29"&gt;Darwin&lt;/a&gt; to the non-Mac users :-)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-6024922664272192849?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/6024922664272192849/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=6024922664272192849' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6024922664272192849'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6024922664272192849'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/10/cest-plein-dtoiles.html' title='C&apos;est plein d&apos;Étoiles ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lQfxdt0YNZA/SQnKhPaxaMI/AAAAAAAAAE4/g4oRAXvldC4/s72-c/Etoile_Logo_Web.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-217068389442168932</id><published>2008-10-27T09:23:00.000-07:00</published><updated>2008-10-27T09:26:13.791-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacBook'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>MacBooking</title><content type='html'>&lt;div style="text-align: justify;"&gt;So the &lt;a href="http://en.wikipedia.org/wiki/MacBook"&gt;MacBook&lt;/a&gt; I ordered back on the 15th finally made it to &lt;a href="http://en.wikipedia.org/wiki/Vancouver,_British_Columbia"&gt;Vancouver&lt;/a&gt; this past Friday after a 7 days journey which took it from the banks of the &lt;a href="http://en.wikipedia.org/wiki/Yangtze_River"&gt;Yangtze river&lt;/a&gt; to the &lt;a href="http://en.wikipedia.org/wiki/Kansai_region"&gt;Kansai region&lt;/a&gt;, then across the Pacific ocean to &lt;a href="http://en.wikipedia.org/wiki/Alaska"&gt;Alaska&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Kentucky"&gt;Kentucky&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Ontario"&gt;Ontario&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Alberta"&gt;Aberta&lt;/a&gt; and finally &lt;a href="http://en.wikipedia.org/wiki/British_Columbia"&gt;British Columbia&lt;/a&gt; ... Way to keep the carbon footprint low there, &lt;a href="http://en.wikipedia.org/wiki/United_Parcel_Service"&gt;UPS&lt;/a&gt; 9_9&lt;br /&gt;&lt;br /&gt;Anyhow ... So far, I'm &lt;span style="font-style: italic;"&gt;extremely pleased&lt;/span&gt; with the new MacBook. I was a bit worry when I got home Friday, that I may experience some of the issues I had heard about on the &lt;a href="http://www.macrumors.com/"&gt;MacRumors.com's&lt;/a&gt; forums, but luckily non applied (dead pixels, loose battery cover, scratches, bent screen) to my unit (so far at least). In fact, I'm more than &lt;span style="font-style: italic;"&gt;pleased&lt;/span&gt;: &lt;span style="font-style: italic; font-weight: bold;"&gt;I love it!&lt;/span&gt; .. and for the following simple reasons:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Small and yet very usable&lt;/li&gt;&lt;li&gt;Sturdy and stylish (feel like a slab of metal)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Nice screen (yeah there some reflections but it's not really a major issue for me at least ...)&lt;/li&gt;&lt;li&gt;Great battery life&lt;/li&gt;&lt;li&gt;Nice keyboard&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Now, it's not (yet) all &lt;span style="font-style: italic;"&gt;lovy dovy&lt;/span&gt;:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Hang on me a couple of time&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Can't seems to be able to get the # character, it keep showing up as £ (WTF?)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Plugged an external-screen to it and the MacBook display froze (it was still working but the unit own display wasn't, not was the external display)&lt;/li&gt;&lt;li&gt;The trackpad is tricky to use (maybe that's just me)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-217068389442168932?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/217068389442168932/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=217068389442168932' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/217068389442168932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/217068389442168932'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/10/macbooking.html' title='MacBooking'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-7297524827979569716</id><published>2008-10-23T13:47:00.000-07:00</published><updated>2008-10-23T13:50:07.696-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>Okay, we get it Apple ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lQfxdt0YNZA/SQDfzHkGkFI/AAAAAAAAAEQ/YMRfxlW7nRo/s1600-h/223457-bake_sale_300.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px; height: 113px;" src="http://1.bp.blogspot.com/_lQfxdt0YNZA/SQDfzHkGkFI/AAAAAAAAAEQ/YMRfxlW7nRo/s200/223457-bake_sale_300.png" alt="" id="BLOGGER_PHOTO_ID_5260450434065535058" border="0" /&gt;&lt;/a&gt;Like many people, I find the &lt;a href="http://www.apple.com/getamac/ads/"&gt;&lt;span style="font-style: italic;"&gt;Get a Mac&lt;/span&gt;&lt;/a&gt; ads that &lt;a href="http://www.apple.com/"&gt;Apple&lt;/a&gt; have been running &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;since&lt;/span&gt; 2006, &lt;span style="font-style: italic; font-weight: bold;"&gt;amusing&lt;/span&gt;. Poking fun of &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Windows"&gt;Windows&lt;/a&gt; and &lt;a href="http://www.microsoft.com/en/us/default.aspx"&gt;Microsoft&lt;/a&gt; while showing the many advantages of the Mac, was a great idea ... The problem is that lately the ads have been solely &lt;span style="font-style: italic; font-weight: bold;"&gt;bullying&lt;/span&gt; Vista without showing anything that is related to how the Mac works nor make things easier for its users. Unless I'm mistaken, the last ads to have been really on &lt;span style="font-style: italic;"&gt;the subject&lt;/span&gt; was &lt;span style="font-style: italic;"&gt;"Office Stress"&lt;/span&gt;, announcing the release of the new version of &lt;a href="http://www.microsoft.com/mac/products/Office2008/default.mspx"&gt;Office for Mac&lt;/a&gt; ... that's 10 ads ago. One may argue that &lt;span style="font-style: italic;"&gt;"Off the Air"&lt;/span&gt; was kinda on the subject too (4 ads ago) ... but not really. Sure it's great that the &lt;span style="font-style: italic;"&gt;Genius&lt;/span&gt; in the store can help &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_1"&gt;transfer&lt;/span&gt; files from PC to Mac when &lt;span style="font-style: italic;"&gt;switching&lt;/span&gt;, but that's no big deal (in my books at least).&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-7297524827979569716?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/7297524827979569716/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=7297524827979569716' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7297524827979569716'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7297524827979569716'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/10/okay-we-get-it-apple.html' title='Okay, we get it Apple ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lQfxdt0YNZA/SQDfzHkGkFI/AAAAAAAAAEQ/YMRfxlW7nRo/s72-c/223457-bake_sale_300.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-9040859894715986898</id><published>2008-10-20T12:22:00.000-07:00</published><updated>2008-10-20T12:23:32.724-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Newton'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>October 20th, 1997</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lQfxdt0YNZA/SPyiXFjIsjI/AAAAAAAAADY/Kr6btjOYGWg/s1600-h/Newton_eat_up_martha.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_lQfxdt0YNZA/SPyiXFjIsjI/AAAAAAAAADY/Kr6btjOYGWg/s200/Newton_eat_up_martha.jpg" alt="" id="BLOGGER_PHOTO_ID_5259256982372135474" border="0" /&gt;&lt;/a&gt;Today is a big day for the few of us for which this matter ... 11 years ago, to the day, the last of the &lt;a href="http://en.wikipedia.org/wiki/Apple_Inc."&gt;Apple&lt;/a&gt;'s &lt;a href="http://en.wikipedia.org/wiki/Apple_Newton"&gt;Newton&lt;/a&gt; (MessagePad 2100) was &lt;span style="font-style: italic;"&gt;introduced&lt;/span&gt;. Until I got my &lt;a href="http://en.wikipedia.org/wiki/Ipod_touch"&gt;iPod touch&lt;/a&gt; back in June of this year, my trusty Newton had been my main &lt;a href="http://en.wikipedia.org/wiki/PDA"&gt;PDA&lt;/a&gt; since March 1998. It is by far the oldest piece of technology I own that is still in working order (followed by my old &lt;a href="http://en.wikipedia.org/wiki/VAIO"&gt;Vaio laptop&lt;/a&gt; runing &lt;a href="http://en.wikipedia.org/wiki/BeOS"&gt;BeOS&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Even tough I like very much the new Apple's mobile platform, I still think that the Newton is, in many ways, still ahead of anything else when it comes to &lt;span style="font-style: italic;"&gt;low-power, mobile&lt;/span&gt; software usage. I know it's hard to beleive if you have never used one ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-9040859894715986898?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/9040859894715986898/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=9040859894715986898' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/9040859894715986898'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/9040859894715986898'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/10/october-20th-1997.html' title='October 20th, 1997'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_lQfxdt0YNZA/SPyiXFjIsjI/AAAAAAAAADY/Kr6btjOYGWg/s72-c/Newton_eat_up_martha.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5674225516940569576</id><published>2008-10-17T14:21:00.000-07:00</published><updated>2008-10-17T14:21:38.697-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacBook'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>Prepared for Shipment ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lQfxdt0YNZA/SPd5BEndxVI/AAAAAAAAADQ/CiemRE7bqVo/s1600-h/apple-laptop-event-088.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_lQfxdt0YNZA/SPd5BEndxVI/AAAAAAAAADQ/CiemRE7bqVo/s200/apple-laptop-event-088.jpg" alt="" id="BLOGGER_PHOTO_ID_5257804149304444242" border="0" /&gt;&lt;/a&gt;Ok, I'm bound to look somewhat silly (as usual), since just a few days ago, I was mostly &lt;span style="font-style: italic;"&gt;hostile&lt;/span&gt; towards the new supposed look of the &lt;a href="http://www.apple.com/"&gt;Apple&lt;/a&gt;'s notebook. I changed my mind and ordered the 2.4Ghz &lt;a href="http://en.wikipedia.org/wiki/MacBook"&gt;MacBook&lt;/a&gt; ... The notebook looked &lt;span style="font-weight: bold;"&gt;much better&lt;/span&gt; during the event and on Apple's official pictures, than it did on the leaked shots ... and this new version is more than ever more akin to a small MacBook Pro than the &lt;span style="font-style: italic;"&gt;old &lt;/span&gt;MacBook. Since I was on the market to replace our aging iBook G3 ... it looked like a very good deal and the reviews so far &lt;a href="http://www.primatelabs.ca/blog/2008/10/macbook-and-macbook-pro-performance-october-2008/"&gt;are&lt;/a&gt; &lt;a href="http://arstechnica.com/journals/apple.ars/2008/10/17/macbook-pros-got-game-exciting-new-gaming-benchmarks"&gt;mainly&lt;/a&gt; (very) &lt;a href="http://gizmodo.com/5063492/macbook-and-macbook-pro-dual-review"&gt;positive&lt;/a&gt;. Can't wait to hold it in my arms! ... err, I mean start using it!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5674225516940569576?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5674225516940569576/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5674225516940569576' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5674225516940569576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5674225516940569576'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/10/prepared-for-shipment.html' title='Prepared for Shipment ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_lQfxdt0YNZA/SPd5BEndxVI/AAAAAAAAADQ/CiemRE7bqVo/s72-c/apple-laptop-event-088.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5498799237724960815</id><published>2008-10-14T06:00:00.000-07:00</published><updated>2008-10-14T06:00:39.692-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacBook'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>Pre Apple event blues ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lQfxdt0YNZA/SPSUa92IXNI/AAAAAAAAAC4/uiMd08uR_hc/s1600-h/231653-2008-10-13mbpleak-4_400.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 160px; height: 152px;" src="http://2.bp.blogspot.com/_lQfxdt0YNZA/SPSUa92IXNI/AAAAAAAAAC4/uiMd08uR_hc/s200/231653-2008-10-13mbpleak-4_400.jpg" alt="" id="BLOGGER_PHOTO_ID_5256989856047324370" border="0" /&gt;&lt;/a&gt;I have been holding out on replacing my old &lt;a href="http://en.wikipedia.org/wiki/IBook#iBook_G3_Dual_USB_.2812.1-inch_and_14.1-inch.29"&gt;iBook&lt;/a&gt; (2003) with a &lt;a href="http://en.wikipedia.org/wiki/MacBook"&gt;MacBook&lt;/a&gt; (Pro?) since there was a rumor (confirmed last week) of a refreshment of the line. As usual, rumors have &lt;span style="font-style: italic; font-weight: bold;"&gt;gone wild&lt;/span&gt; over the couple of days leading to today's event. The &lt;a href="http://daringfireball.net/2008/10/contains_spoilers"&gt;latest round&lt;/a&gt; of &lt;span style="font-style: italic;"&gt;spy-like activities&lt;/span&gt;, spured some &lt;a href="http://www.macrumors.com/2008/10/13/macbook-pro-photo-no-mouse-buttons/"&gt;fuzzy pictures&lt;/a&gt; of what is rumored to be the new MacBook Pro ... And I sure hope this is a fake, 'cause I don't like what I see, nor what I read about some models of the line been left un-touched by the update. What kind of #%&amp;amp;@ed-up update will that be?? ... Maybe I should grab one of the current MBP at my local &lt;a href="http://www.bestbuy.ca/home.asp"&gt;Best Buy&lt;/a&gt; before they get replaced by a mobile version of the &lt;a href="http://en.wikipedia.org/wiki/IMac"&gt;iMac&lt;/a&gt; ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5498799237724960815?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5498799237724960815/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5498799237724960815' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5498799237724960815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5498799237724960815'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/10/pre-apple-event-blues.html' title='Pre Apple event blues ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_lQfxdt0YNZA/SPSUa92IXNI/AAAAAAAAAC4/uiMd08uR_hc/s72-c/231653-2008-10-13mbpleak-4_400.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5947965424501221698</id><published>2008-10-11T16:45:00.000-07:00</published><updated>2008-10-11T16:46:36.030-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='Cocoa'/><title type='text'>@superfluous #2</title><content type='html'>&lt;div style="text-align: justify;"&gt;While I'm in &lt;span style="font-style: italic;"&gt;whining&lt;/span&gt; mood these days (so it seems), let's me talk about a part of &lt;a href="http://en.wikipedia.org/wiki/Objective-C"&gt;Objective-C&lt;/a&gt; which I don't like too much: the lack of &lt;a href="http://en.wikipedia.org/wiki/Namespace_%28computer_science%29"&gt;namespace&lt;/a&gt;. This has a unfortunate effect on the way &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; can be confusing at time simply because in order to avoid &lt;span style="font-style: italic;"&gt;name collision&lt;/span&gt;, everyone is prefixing his stuff with some kind of 2 to 3 letters abbreviation. For example, &lt;a href="http://www.apple.com/"&gt;Apple&lt;/a&gt; have been using &lt;code&gt;NS&lt;/code&gt; since back in the &lt;a href="http://en.wikipedia.org/wiki/NEXTSTEP"&gt;NeXTSTEP&lt;/a&gt; days and thus everything in Cocoa is prefixed as such (e.g &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/NSApplication_Class/Reference/Reference.html"&gt;NSApplication&lt;/a&gt;, &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/NSController_Class/Reference/Reference.html"&gt;NSController&lt;/a&gt; ...). And this &lt;span style="font-weight: bold;"&gt;is&lt;/span&gt; the &lt;span style="font-style: italic;"&gt;problem&lt;/span&gt; since at first glance, there is no easy way to tell what a particular keyword is, unless you already know about it. For example, is &lt;code&gt;NSPoint&lt;/code&gt; a class? No, it's a structure. &lt;code&gt;NSNumber&lt;/code&gt;? a class, &lt;code&gt;NSInteger&lt;/code&gt;? a type ... 9_9&lt;br /&gt;&lt;br /&gt;Since namespaces are a &lt;span style="font-style: italic;"&gt;relatively recent&lt;/span&gt; addition to &lt;a href="http://en.wikipedia.org/wiki/C%2B%2B"&gt;C++&lt;/a&gt;, the fact that is missing from Objective-C isn't much of a surprise. However, one may wonders why it has still not been added. In any case, this is somewhat irrelevant, since it is unlikely that Apple will go over Cocoa (and other framework such as &lt;a href="http://en.wikipedia.org/wiki/Core_Foundation"&gt;Foundation&lt;/a&gt;) and make use of some &lt;code&gt;Cocoa&lt;/code&gt; namespace; braking everyone code in the process. Alas, something like NS::TInteger, NS::CNumber will have make the developers life a little easier ... &lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;Like our Hungarian friends like to said:&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt; &lt;/span&gt;&lt;/span&gt;A little prefixing can go a long way&lt;/span&gt; ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5947965424501221698?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5947965424501221698/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5947965424501221698' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5947965424501221698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5947965424501221698'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/10/superfluous-2.html' title='@superfluous #2'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-1561670265081371934</id><published>2008-10-10T11:05:00.000-07:00</published><updated>2008-10-10T11:10:12.258-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='Cocoa'/><title type='text'>@superfluous</title><content type='html'>&lt;div style="text-align: justify;"&gt;A week or so ago, I decided to stop my &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; musing and focus instead on properly following &lt;a href="http://en.wikipedia.org/wiki/Aaron_Hillegass"&gt;Aaron Hillegass&lt;/a&gt;' &lt;a href="http://www.amazon.ca/Cocoa-R-Programming-Mac-OS/dp/0321503619/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1216442663&amp;amp;sr=8-1"&gt;Cocoa Programming for Mac OS X&lt;/a&gt;. The idea being that this will give me a more  &lt;span style="font-style: italic;"&gt;proper&lt;/span&gt; initiation to Cocoa, especially on the subject of &lt;a href="http://developer.apple.com/documentation/Cocoa/Conceptual/KeyValueCoding/KeyValueCoding.html"&gt;&lt;span style="font-style: italic;"&gt;KVC&lt;/span&gt;&lt;/a&gt;, &lt;a href="http://developer.apple.com/documentation/Cocoa/Conceptual/KeyValueObserving/KeyValueObserving.html"&gt;&lt;span style="font-style: italic;"&gt;KVO&lt;/span&gt;&lt;/a&gt; and the &lt;span style="font-style: italic;"&gt;famous&lt;/span&gt; &lt;a href="http://developer.apple.com/documentation/Cocoa/Conceptual/CocoaBindings/CocoaBindings.html"&gt;&lt;span style="font-style: italic;"&gt;bindings&lt;/span&gt;&lt;/a&gt;. I started &lt;span style="font-style: italic;"&gt;Chapter 8&lt;/span&gt; last night and went through the implementation of the first version of the &lt;span style="font-style: italic;"&gt;RaiseMan&lt;/span&gt; tutorial. This chapter also introduce the usage of the new &lt;a href="http://en.wikipedia.org/wiki/Objective-C"&gt;Objective-C&lt;/a&gt; 2.0 &lt;code&gt;@property&lt;/code&gt;, which can be use to &lt;span style="font-style: italic;"&gt;automatically&lt;/span&gt; create setter and getter methods. Now, it's all good, I don't mind saving some time by writing less code, however I'm running into a bit of a &lt;span style="font-style: italic;"&gt;personal conflict&lt;/span&gt; with this.&lt;br /&gt;&lt;br /&gt;Like many other developers that have been around for sometime, I've grow over the years my own &lt;span style="font-style: italic;"&gt;coding style&lt;/span&gt;, made up of all the things I have encountered and came to appreciate. One of the thing I find necessary is the prefixing of any variable by a lower case single character which give some clear hint on the origin of the variable (e.g &lt;code&gt;iSomeNumber&lt;/code&gt;, &lt;code&gt;aObject&lt;/code&gt;, &lt;code&gt;lCount&lt;/code&gt; ...). In case you are wondering, I got into that habit from my time on &lt;a href="http://en.wikipedia.org/wiki/Symbian"&gt;Symbian&lt;/a&gt;. Now, there's no problem with using such notation with Cocoa unless you happened to want to define an instance variable as property.&lt;br /&gt;&lt;br /&gt;What &lt;code&gt;@synthesize&lt;/code&gt; do behind the scene is to generate the setter/getter methods using the name of the instance variable. So far so good. Now, if you happens to name your instance variable something like &lt;code&gt;iSomeSumber&lt;/code&gt;, the setter will end up being &lt;code&gt;-setISomeNumber:&lt;/code&gt; and the getting &lt;code&gt;-iSomeNumber&lt;/code&gt; ... Not very&lt;span style="font-style: italic;"&gt; elegant&lt;/span&gt;, right? (What I want really is the methods to &lt;code&gt;-setSomeNumber:&lt;/code&gt; and &lt;code&gt;-someNumber&lt;/code&gt; ... well really, I'd like the getter to be &lt;code&gt;-getSomeNumber&lt;/code&gt; ... but that's another issue ...)&lt;br /&gt;&lt;br /&gt;Since there is a &lt;a href="http://en.wikipedia.org/wiki/Refactoring"&gt;refactoring&lt;/a&gt; tool in &lt;a href="http://en.wikipedia.org/wiki/Xcode"&gt;Xcode&lt;/a&gt; which will generate the setter and getter of a given instance variable, I do find the &lt;code&gt;@property&lt;/code&gt; somewhat &lt;a href="http://dictionary.reference.com/search?q=superfluous"&gt;&lt;span style="font-style: italic;"&gt;superfluous&lt;/span&gt;&lt;/a&gt; (Yes, I do know that the property allow for more than what the current refactoring tool does).&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-1561670265081371934?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/1561670265081371934/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=1561670265081371934' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1561670265081371934'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1561670265081371934'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/10/superfluous.html' title='@superfluous'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-229991770937062222</id><published>2008-10-08T08:15:00.000-07:00</published><updated>2008-10-08T08:15:00.874-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='BlackBerry'/><title type='text'>Oops .. I did it again ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;Microsoft have yet again release &lt;span style="font-style: italic;"&gt;some sort&lt;/span&gt; of video and as &lt;a href="http://daringfireball.net/"&gt;John Gruber&lt;/a&gt; put it : &lt;span style="font-style: italic;"&gt;What is wrong with this company? Who authorizes this crap? &lt;/span&gt;See this for yourself:&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Vv2M4aIMc-8&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/Vv2M4aIMc-8&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-style: italic;"&gt;Embarrasing&lt;/span&gt; to said the least ... kinda like that &lt;a href="http://en.wikipedia.org/wiki/Large_Hadron_Collider"&gt;LHC&lt;/a&gt; &lt;a href="http://www.youtube.com/watch?v=j50ZssEojtM"&gt;Rap video&lt;/a&gt; ...&lt;br /&gt;&lt;br /&gt;Anyhow, &lt;a href="http://www.rim.com/"&gt;RIM&lt;/a&gt; announced yesterday its answer to the &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt;, the &lt;a href="http://www.blackberry.com/blackberrystorm/"&gt;&lt;span style="font-style: italic;"&gt;BlackBerry Storm&lt;/span&gt;&lt;/a&gt;. What can I said about it except : &lt;span style="font-weight: bold;"&gt;"yaaaawn"&lt;/span&gt;. So yeah it's got some touch-screen (but it's not &lt;a href="http://en.wikipedia.org/wiki/Touchscreen#Capacitive"&gt;&lt;span style="font-style: italic;"&gt;capacitive&lt;/span&gt;&lt;/a&gt;)&lt;span style="font-weight: bold;"&gt;&lt;/span&gt; and an &lt;a href="http://crackberry.com/exclusive-first-look-blackberry-application-center"&gt;AppStore&lt;/a&gt;, but it lack the slick UI and the &lt;a href="http://en.wikipedia.org/wiki/Wi-Fi"&gt;Wi-Fi&lt;/a&gt; (it's nowhere &lt;a href="http://www.blackberry.com/blackberrystorm/specifications.shtml"&gt;on the specs&lt;/a&gt;). Yes, that's right no Wi-Fi ... "WTF!" exactly what I'm thinking ... Since I can't find any good reason why something as common these days as Wi-Fi will be left-out of a brand new smartphone (and on an iPhone competitor!), I'm going to assume for now that they just forgot to mention it in the specs ... :-|&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-229991770937062222?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/229991770937062222/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=229991770937062222' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/229991770937062222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/229991770937062222'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/10/oops-i-did-it-again.html' title='Oops .. I did it again ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-8854332528710873656</id><published>2008-10-02T14:17:00.000-07:00</published><updated>2008-10-02T14:34:52.713-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Nokia'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Symbian'/><title type='text'>Avkon Touch</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lQfxdt0YNZA/SOUyBSicWvI/AAAAAAAAACw/TNohHE-QaDE/s1600-h/nokia-5800-ofc-07-sm.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_lQfxdt0YNZA/SOUyBSicWvI/AAAAAAAAACw/TNohHE-QaDE/s200/nokia-5800-ofc-07-sm.jpg" alt="" id="BLOGGER_PHOTO_ID_5252659538135112434" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.nokia.com/"&gt;Nokia&lt;/a&gt; finally announced today their answer to &lt;a href="http://en.wikipedia.org/wiki/Apple_Computer"&gt;Apple&lt;/a&gt;'s &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt;, the &lt;span style="font-style: italic;"&gt;5800 XpressMusic&lt;/span&gt;. engadget.com &lt;a href="http://www.engadget.com/2008/10/02/the-nokia-5800-xpressmusic/"&gt;has a little &lt;span style="font-style: italic;"&gt;blurb&lt;/span&gt; about it&lt;/a&gt; including several pictures of it. Funnily, the author of the post (&lt;a href="http://www.engadget.com/bloggers/chris-ziegler/"&gt;Chris Ziegler&lt;/a&gt;) asks if anyone remember the &lt;a href="http://en.wikipedia.org/wiki/Nokia_7710"&gt;7710&lt;/a&gt; ... and I do since I worked on it at Nokia Vancouver back in 2004 (in case you're wondering, I &lt;span style="font-style: italic;"&gt;contributed&lt;/span&gt; to the &lt;span style="font-style: italic;"&gt;Voice Recorder&lt;/span&gt; and &lt;span style="font-style: italic;"&gt;Paint&lt;/span&gt; applications). That phone never made it (AFAIK) to North America. It went on sale in Europe and Asia for only a short time before the project was canned, and &lt;a href="http://en.wikipedia.org/wiki/Series_90"&gt;Series 90&lt;/a&gt; shelved. Being a contractor, the whole &lt;span style="font-style: italic;"&gt;drama&lt;/span&gt; didn't have much impact on me really. It was, however, &lt;span style="font-style: italic;"&gt;very instructive&lt;/span&gt; on the way things work in a company of Nokia's size.&lt;br /&gt;&lt;br /&gt;So about that new Touchscreen smartphone? Yeah, it's stylish (as usual for Nokia) ... not sure I like the UI ... It definitly lack a &lt;a href="http://www.bartleby.com/61/99/J0029900.html"&gt;&lt;span style="font-style: italic;"&gt;certain je ne sais quoi&lt;/span&gt;&lt;/a&gt; (the &lt;span style="font-style: italic;"&gt;Apple's touch&lt;/span&gt; I guess) and doesn't seems to be all that responsive (from what we can see &lt;a href="http://share.ovi.com/media/Conversations.Remixevent/Conversations.10330"&gt;in the videos&lt;/a&gt;) ... Oh and it's running Symbian with likely some sort of &lt;a href="http://en.wikipedia.org/wiki/Avkon"&gt;&lt;span style="font-style: italic;"&gt;Avkon&lt;/span&gt;&lt;/a&gt; &lt;span style="font-style: italic;"&gt;Touch&lt;/span&gt; ... Yeeeeeeks! That's a deal breaker as far as I'm concerned ;-)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-8854332528710873656?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/8854332528710873656/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=8854332528710873656' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/8854332528710873656'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/8854332528710873656'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/10/avkon-touch.html' title='Avkon Touch'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lQfxdt0YNZA/SOUyBSicWvI/AAAAAAAAACw/TNohHE-QaDE/s72-c/nokia-5800-ofc-07-sm.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-1363640923385826457</id><published>2008-10-01T08:38:00.000-07:00</published><updated>2008-10-01T08:39:40.086-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>So long NDA ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Apple_Computer"&gt;Apple&lt;/a&gt; has &lt;a href="http://developer.apple.com/iphone/program/"&gt;just announced&lt;/a&gt; that it was dropping the NDA which have been in effect for the &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; SDK since it's public release earlier this year. This is a very good news all around :-) And perfect timing for me since I just wrote my first little &lt;span style="font-style: italic;"&gt;"application"&lt;/span&gt; for the iPhone last night. Nothing very fancy I must confess, just a port of the first &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; example from &lt;a href="http://en.wikipedia.org/wiki/Aaron_Hillegass"&gt;Aaron Hillegass&lt;/a&gt;' book (the random number generator). Unsurprisingly, the more I get to use &lt;a href="http://en.wikipedia.org/wiki/Interface_builder"&gt;Interface Builder&lt;/a&gt;, the less I'm been &lt;span style="font-style: italic;"&gt;hostile&lt;/span&gt; to it ... Anyhow, now that the NDA is off, I guess I'll be able to include this side of my daily musing as part of this blog :-)&lt;br /&gt;&lt;br /&gt;Speaking of &lt;span style="font-style: italic;"&gt;Cocoa Touch&lt;/span&gt;, &lt;a href="http://bill.dudney.net/roller"&gt;Bill Dudney&lt;/a&gt; has &lt;a href="http://bill.dudney.net/roller/objc/entry/learning_the_iphone"&gt;an interesting piece&lt;/a&gt; on why you should really learn Cocoa for &lt;a href="http://en.wikipedia.org/wiki/OS_X"&gt;OS X&lt;/a&gt; before working on an iPhone (the whole post was NDA friendly).&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-1363640923385826457?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/1363640923385826457/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=1363640923385826457' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1363640923385826457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1363640923385826457'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/10/so-long-nda.html' title='So long NDA ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5542770595821098219</id><published>2008-09-28T18:33:00.000-07:00</published><updated>2008-09-28T18:41:16.802-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Space'/><title type='text'>SECO!</title><content type='html'>&lt;div style="text-align: justify;"&gt;Since I'm also a &lt;span style="font-style: italic;"&gt;Space geek&lt;/span&gt;, I did not miss the LIVE broadcast of the 4th flight of &lt;a href="http://en.wikipedia.org/wiki/SpaceX"&gt;SpaceX&lt;/a&gt;'s &lt;a href="http://en.wikipedia.org/wiki/Falcon_1"&gt;Falcon 1&lt;/a&gt; launch vehicle ... It was especially important to see it, since they finally made it to orbit! Yahoooo! Here's a recording (on YouTube) of the live feed for your enjoyment :-)&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/To-XOPgaGsQ&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/To-XOPgaGsQ&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" height="344" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5542770595821098219?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5542770595821098219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5542770595821098219' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5542770595821098219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5542770595821098219'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/09/seco.html' title='SECO!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-4700746775135525259</id><published>2008-09-25T09:51:00.000-07:00</published><updated>2008-09-25T09:51:46.456-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Cocoa'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>The Dark Side (TM) clouds everything ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lQfxdt0YNZA/SNuvSxl8stI/AAAAAAAAACo/5TjhHad9nDc/s1600-h/itunes-app.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 113px; height: 113px;" src="http://1.bp.blogspot.com/_lQfxdt0YNZA/SNuvSxl8stI/AAAAAAAAACo/5TjhHad9nDc/s200/itunes-app.gif" alt="" id="BLOGGER_PHOTO_ID_5249982527715455698" border="0" /&gt;&lt;/a&gt;I have been observing for a while now how things are panning out with &lt;a href="http://en.wikipedia.org/wiki/Apple_Computer"&gt;Apple&lt;/a&gt; and the &lt;a href="http://en.wikipedia.org/wiki/App_Store"&gt;App Store&lt;/a&gt;. Since I haven't started developing for the &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; yet (but soon! I'm starting a new full time job doing just that in 6 days!!, I can't add anything of value to the on-going discussions, except joining the group of bystanders and shaking my head in disbelieve at each moves Apple made. Even thought I always had a soft spot for Apple since my days on an &lt;a href="http://en.wikipedia.org/wiki/Apple_IIc"&gt;Apple IIc&lt;/a&gt;, I'm not &lt;span style="font-style: italic;"&gt;naive enough&lt;/span&gt; to believe they can do &lt;span style="font-style: italic;"&gt;no evil&lt;/span&gt; ... especially since they sort of have a proven track record of&lt;a href="http://www.wired.com/techbiz/it/magazine/16-04/bz_apple"&gt; not always playing fair and square&lt;/a&gt;. Lots of fore front bloggers have commented about the whole &lt;span style="font-style: italic;"&gt;situation&lt;/span&gt; (e.g &lt;a href="http://daringfireball.net/"&gt;Daring Fireball&lt;/a&gt;, &lt;a href="http://www.wilshipley.com/blog/"&gt;Wil Shipley&lt;/a&gt; ...), including the still &lt;a href="http://www.macworld.com/article/135726/2008/09/iphone_NDA.html"&gt;standing NDA&lt;/a&gt;, which have already caused the publishing of a &lt;a href="http://www.pragprog.com/news/ubuntu-kung-fu-shippingpodcast-iphone-news"&gt;programming book to be canceled&lt;/a&gt;. Now, as long as you can stay anonymous (does that really mean anything on Internet these days?), it is not impossible to &lt;a href="http://www.iphonesdkarticles.com/"&gt;post details (including tutorials)&lt;/a&gt; on &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; Touch. It is a bit of a risky endeavour I must said, but very much appreciated by newbies iPhone devs like myself ;-)&lt;br /&gt;&lt;br /&gt;On another subject, but still related ... The &lt;a href="http://technologizer.com/"&gt;Technologizer.com&lt;/a&gt; web site has an &lt;a href="http://technologizer.com/2008/08/14/a-reverse-chronological-youtube-history-of-apple/"&gt;interesting post&lt;/a&gt; with a bunch of old to recent Apple's TV ads, make sure to check it out for a bit of nostalgia.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-4700746775135525259?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/4700746775135525259/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=4700746775135525259' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4700746775135525259'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4700746775135525259'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/09/dark-side-tm-clouds-everything.html' title='The Dark Side (TM) clouds everything ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lQfxdt0YNZA/SNuvSxl8stI/AAAAAAAAACo/5TjhHad9nDc/s72-c/itunes-app.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-2503676914424481948</id><published>2008-09-24T17:24:00.000-07:00</published><updated>2008-09-25T14:40:12.998-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='Cocoa'/><category scheme='http://www.blogger.com/atom/ns#' term='Nibless'/><title type='text'>Toying around ... #2</title><content type='html'>&lt;div style="text-align: justify;"&gt;A few pointless posts ago, &lt;a href="http://geeking-around.blogspot.com/2008/08/toying-around.html"&gt;I was talking about&lt;/a&gt; &lt;span style="font-style: italic;"&gt;Nibless&lt;/span&gt; &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; applications, and how &lt;a href="http://lapcatsoftware.com/blog/"&gt;Jeff Johnson&lt;/a&gt;, had a  ready to use solution for us, &lt;a href="http://en.wikipedia.org/wiki/Interface_builder"&gt;Interface Builder&lt;/a&gt; cheaters. Jeff's elegant solution is build around using Cocoa &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSObject_Class/Reference/Reference.html"&gt;&lt;code&gt;NSObject&lt;/code&gt;&lt;/a&gt;'s ability to have a class pose as another class (but it must be a parent class). The trick been to make sure that when the application is starting, the &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSBundle_Class/Reference/Reference.html"&gt;&lt;code&gt;NSBundle&lt;/code&gt;&lt;/a&gt; created to load the main &lt;span style="font-style: italic;"&gt;NIB&lt;/span&gt; file does &lt;span style="font-weight: bold;"&gt;not&lt;/span&gt; load it, and instead just pretend to have done so. The method works like a charm (granted that the entry &lt;code&gt;NSMainNibFile&lt;/code&gt; in &lt;span style="font-style: italic;"&gt;info.plist&lt;/span&gt; has been removed), however there is just a &lt;span style="font-style: italic;"&gt;little&lt;/span&gt; problem: the class method &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSObject_Class/DeprecationAppendix/AppendixADeprecatedAPI.html#//apple_ref/occ/clm/NSObject/poseAsClass:"&gt;&lt;code&gt;poseAsClass&lt;/code&gt;&lt;/a&gt; has been deprecated in &lt;a href="http://en.wikipedia.org/wiki/Mac_OS_X_v10.5"&gt;OS X&lt;/a&gt;&lt;a href="http://en.wikipedia.org/wiki/Mac_OS_X_v10.5"&gt; 10.5&lt;/a&gt; and is not even present in 64-bit Cocoa. I have no idea whatsoever this is been phased-out by &lt;a href="http://en.wikipedia.org/wiki/Apple_Inc."&gt;Apple&lt;/a&gt;. Since a similar facility exists in &lt;a href="http://en.wikipedia.org/wiki/Objective-c"&gt;Objective-C&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/GNUstep"&gt;GNUStep&lt;/a&gt;, it's not clear at all why this have to go ... Security concern maybe? Whatever the explanation, I'd like to know ...&lt;br /&gt;&lt;br /&gt;So ... since I'm interested in a solution that can work from 10.4 and beyond on &lt;a href="http://en.wikipedia.org/wiki/PowerPC"&gt;PowerPC&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/List_of_Intel_microprocessors"&gt;Intel&lt;/a&gt;, 32-bit as well as 64-bit, I had to go back to the &lt;span style="font-style: italic;"&gt;drawing board&lt;/span&gt; and come-up with an alternative solution, likely something not as elegant. Hopefully, thanks to Objective-C's dynamic abilities, it is possible to replace &lt;span style="font-style: italic;"&gt;on-the-fly&lt;/span&gt; a method implementation by another function (as long as it have a compatible &lt;a href="http://en.wikipedia.org/wiki/Signature_%28computer_science%29"&gt;signature&lt;/a&gt;). &lt;a href="http://theocacao.com/"&gt;Scott Stevenson&lt;/a&gt; have made a &lt;a href="http://theocacao.com/document.page/266"&gt;an excellent post on this&lt;/a&gt;, which I used as the base of my solution.&lt;br /&gt;&lt;br /&gt;The idea is relatively simple: replace the &lt;code&gt;NSBundle&lt;/code&gt;'s class method &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/NSBundle_AppKitAdditions/Reference/Reference.html#//apple_ref/occ/clm/NSBundle/loadNibNamed:owner:"&gt;&lt;code&gt;loadNibNamed:owner:&lt;/code&gt;&lt;/a&gt; by my own implementation function and call the original method only in when necessary. Since I wanted to have this automatically done as part of a special type of application, I derived &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/NSApplication_Class/Reference/Reference.html"&gt;&lt;code&gt;NSApplication&lt;/code&gt;&lt;/a&gt; in &lt;code&gt;HZNiblessApplication&lt;/code&gt;, implementing its object method &lt;code&gt;init&lt;/code&gt; to do the dirty work:&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:monospace;font-size:50;"  &gt;&lt;div id="gist-12707" class="gist"&gt;&lt;div class="gist-file"&gt;&lt;div class="gist-data gist-syntax"&gt;&lt;div class="gist-highlight"&gt;&lt;pre&gt;&lt;div class="line" id="LC1"&gt;&lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;init&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC2"&gt;        &lt;/div&gt;&lt;div class="line" id="LC3"&gt;    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="n"&gt;self&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;super&lt;/span&gt; &lt;span class="n"&gt;init&lt;/span&gt;&lt;span class="p"&gt;]))&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC4"&gt;    &lt;span class="p"&gt;{&lt;/span&gt;      &lt;/div&gt;&lt;div class="line" id="LC5"&gt;        &lt;span class="n"&gt;Method&lt;/span&gt; &lt;span class="n"&gt;lMethod&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;class_getClassMethod&lt;/span&gt;&lt;span class="p"&gt;([&lt;/span&gt;&lt;span class="n"&gt;NSBundle&lt;/span&gt; &lt;span class="n"&gt;class&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="k"&gt;@selector&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nl"&gt;loadNibNamed:owner:&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC6"&gt;        &lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="n"&gt;lMethod&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC7"&gt;            &lt;span class="n"&gt;NSLog&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;@"NSBundle+loadNibNamed:owner: not found!"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC8"&gt;        &lt;span class="k"&gt;else&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC9"&gt;        &lt;span class="p"&gt;{&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC10"&gt;&lt;span class="cp"&gt;#if MAC_OS_X_VERSION_MIN_REQUIRED &amp;gt; MAC_OS_X_VERSION_10_4&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC11"&gt;            &lt;span class="n"&gt;gDefaultNSBundleLoadNibNamed&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;method_setImplementation&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;lMethod&lt;/span&gt;&lt;span class="p"&gt;,(&lt;/span&gt;&lt;span class="n"&gt;IMP&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="n"&gt;loadNibNamed&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;    &lt;/div&gt;&lt;div class="line" id="LC12"&gt;&lt;span class="cp"&gt;#else            &lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC13"&gt;            &lt;span class="n"&gt;gDefaultNSBundleLoadNibNamed&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;lMethod&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="n"&gt;method_imp&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC14"&gt;            &lt;span class="n"&gt;lMethod&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="n"&gt;method_imp&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;IMP&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="n"&gt;loadNibNamed&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC15"&gt;&lt;span class="cp"&gt;#endif            &lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC16"&gt;        &lt;span class="p"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC17"&gt;    &lt;span class="p"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC18"&gt;    &lt;/div&gt;&lt;div class="line" id="LC19"&gt;  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;self&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC20"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="gist-meta"&gt;&lt;a href="http://gist.github.com/raw/12707/fbf0dde700ca58d181665cb9d401bc4f2473a943" style="float: right;"&gt;view raw&lt;/a&gt;&lt;a href="http://gist.github.com/12707"&gt;This Gist&lt;/a&gt; brought to you by &lt;a href="http://github.com/"&gt;GitHub&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;As your can see, the method basically retrieve the method within the &lt;code&gt;NSBundle&lt;/code&gt; class, and swap its implementation with a function called &lt;code&gt;loadNibNamed&lt;/code&gt;. Since we need to call the original method to perform its duty when there is a need to load a bundle, we save the pointer to the function in a global variable named &lt;code&gt;gDefaultNSBundleLoadNibNamed&lt;/code&gt;. Let's have a look now on how that replacement function is implemented:&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:monospace;font-size:50;"  &gt;&lt;div id="gist-12713" class="gist"&gt;&lt;div class="gist-file"&gt;&lt;div class="gist-data gist-syntax"&gt;&lt;div class="gist-highlight"&gt;&lt;pre&gt;&lt;div class="line" id="LC1"&gt;&lt;span class="kt"&gt;BOOL&lt;/span&gt; &lt;span class="nf"&gt;loadNibNamed&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;id&lt;/span&gt; &lt;span class="n"&gt;aObject&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="kt"&gt;SEL&lt;/span&gt; &lt;span class="n"&gt;aSelector&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;NSString&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="n"&gt;aNibNamed&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="kt"&gt;id&lt;/span&gt; &lt;span class="n"&gt;aOwner&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC2"&gt;&lt;span class="p"&gt;{&lt;/span&gt;   &lt;/div&gt;&lt;div class="line" id="LC3"&gt;    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="n"&gt;aNibNamed&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;aOwner&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="n"&gt;NSApp&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC4"&gt;        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;true&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC5"&gt;    &lt;span class="k"&gt;else&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC6"&gt;        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;BOOL&lt;/span&gt;&lt;span class="p"&gt;)(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="n"&gt;gDefaultNSBundleLoadNibNamed&lt;/span&gt;&lt;span class="p"&gt;)(&lt;/span&gt;&lt;span class="n"&gt;aObject&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;aSelector&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;aNibNamed&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;aOwner&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC7"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="gist-meta"&gt;&lt;a href="http://gist.github.com/raw/12713/02f9ed6c2bb406808e4841ebd0d8d4095eafc641" style="float: right;"&gt;view raw&lt;/a&gt;&lt;a href="http://gist.github.com/12713"&gt;This Gist&lt;/a&gt; brought to you by &lt;a href="http://github.com/"&gt;GitHub&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;From there, all that is needed is to replace the value of the &lt;code&gt;NSPrincipalClass&lt;/code&gt; key in the application's &lt;code&gt;info.plist&lt;/code&gt; by &lt;code&gt;HZNiblessApplication&lt;/code&gt; and get your application delegate to fill in the Application menu from &lt;code&gt;-applicationWillFinishLaunching:&lt;/code&gt; ... Okay, yeah I'm simplifying a bit here, but you get the point I'm sure :-P&lt;br /&gt;&lt;br /&gt;As you have noticed, I finally figured a way of putting neatly formatted code (hmm ... at least on Firefox) on this blog, courtesy of &lt;a href="https://github.com/"&gt;github.com&lt;/a&gt;.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-2503676914424481948?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/2503676914424481948/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=2503676914424481948' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2503676914424481948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2503676914424481948'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/09/toying-around-2.html' title='Toying around ... #2'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-4124105061753812857</id><published>2008-09-19T13:01:00.000-07:00</published><updated>2008-09-19T13:03:04.112-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Indie'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Am I a PC?</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Microsoft"&gt;Microsoft&lt;/a&gt; has released yesterday its new series of ads, replacing the series started a couple of weeks ago with the &lt;span style="font-style: italic;"&gt;comic duo&lt;/span&gt; &lt;a href="http://en.wikipedia.org/wiki/Bill_Gates"&gt;Gates&lt;/a&gt; &amp;amp; &lt;a href="http://en.wikipedia.org/wiki/Jerry_Seinfeld"&gt;Seinfeld&lt;/a&gt;. I think they are not that bad. Sure, it doesn't said much of why using a PC (instead of a Macintosh) is better, but at least it's not as &lt;span style="font-style: italic;"&gt;wild&lt;/span&gt; as the previous ads. See for yourself:&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/hi1se9rH7S8&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/hi1se9rH7S8&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="http://www.rogueamoeba.com/"&gt;Rogue Amoeba&lt;/a&gt;'s developer &lt;a href="http://www.mikeash.com/"&gt;Mike Ash&lt;/a&gt;, has added an interesting post (one of many in fact) on &lt;a href="http://www.mikeash.com/?page=pyblog/"&gt;his blog&lt;/a&gt;, regarding his &lt;a href="http://www.mikeash.com/?page=pyblog/the-iphone-development-story.html"&gt;iPhone development story&lt;/a&gt;. Very interesting and a little bit scary ... Hopefully for him, what he shared won't fall under the &lt;span style="font-style: italic;"&gt;infamous&lt;/span&gt; &lt;a href="http://en.wikipedia.org/wiki/Non-disclosure_agreement"&gt;NDA&lt;/a&gt;, causing him to loose his developer program seat.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-4124105061753812857?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/4124105061753812857/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=4124105061753812857' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4124105061753812857'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4124105061753812857'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/09/am-i-pc.html' title='Am I a PC?'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-1575294933318160539</id><published>2008-09-17T09:40:00.000-07:00</published><updated>2008-09-17T09:42:59.996-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>iCapricious</title><content type='html'>&lt;div style="text-align: justify;"&gt;There has been a &lt;a href="http://www.macworld.com/article/135565/2008/09/podcasterfirstlook.html"&gt;lot of talks&lt;/a&gt; on the &lt;a href="http://en.wikipedia.org/wiki/Apple_Inc."&gt;Apple&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; developers communities lately about the issue of what application get to be on the &lt;a href="http://en.wikipedia.org/wiki/App_Store"&gt;App Store&lt;/a&gt; or be rejected from it ... The folks behind &lt;a href="http://www.geekculture.com/joyoftech/index.html"&gt;The Joy of Tech&lt;/a&gt; have summed-up in their hilarious (and yet lovely) usual way:&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.geekculture.com/joyoftech/joyimages/1151.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://www.geekculture.com/joyoftech/joyimages/1151.jpg" alt="" border="0" /&gt;&lt;/a&gt;So far, since there has been only an handful of rejected applications, I don't think it is fair to Apple to said that they are &lt;span style="font-style: italic;"&gt;abusing&lt;/span&gt; their &lt;span style="font-style: italic;"&gt;gate keeper role&lt;/span&gt; ... however, since not all developers may be has vocal about their rejection as &lt;a href="http://www.nextdayoff.com/"&gt;Podcaster&lt;/a&gt;'s author ... who knows really?&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-1575294933318160539?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/1575294933318160539/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=1575294933318160539' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1575294933318160539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1575294933318160539'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/09/capricious-process.html' title='iCapricious'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-7409863542096305002</id><published>2008-09-16T15:16:00.000-07:00</published><updated>2008-09-16T15:22:40.692-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Game'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Star Wars'/><title type='text'>The Force is weak with this one ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Star_Wars:_The_Force_Unleashed_%28video_game%29"&gt;&lt;span style="font-style: italic;"&gt;The Force Unleashed&lt;/span&gt;&lt;/a&gt; has been out since yesterday for &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt;/&lt;a href="http://en.wikipedia.org/wiki/Ipod_touch"&gt;iPod&lt;/a&gt;, and without much surprise it's really a huge disappointment, gameplay wise. Don't believe me? Check out this video provided by &lt;a href="http://toucharcade.com/"&gt;TouchArcade.com&lt;/a&gt;:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/ngn5kHiBTVs&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/ngn5kHiBTVs&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Yep ... and it get worst, people that reported having purchased it, said that they were able to complete it 90 minutes ... Sure it's only 10 bucks, but still ... Ah well, what can we do except skip it and spend more time playing with &lt;a href="http://en.wikipedia.org/wiki/Enigmo"&gt;Enigmo&lt;/a&gt; ... Now, that's a fun (and yet very geeky) game :-)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-7409863542096305002?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/7409863542096305002/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=7409863542096305002' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7409863542096305002'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7409863542096305002'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/09/force-is-weak-with-this-one.html' title='The Force is weak with this one ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-7032683130818858394</id><published>2008-09-12T12:21:00.000-07:00</published><updated>2008-09-12T12:21:33.749-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Goofing around?</title><content type='html'>&lt;div style="text-align: justify;"&gt;As I was watching the &lt;a href="http://www.youtube.com/watch?v=gBWPf1BWtkw"&gt;second of the new Microsoft's Ads&lt;/a&gt; last night, I came to realise to my &lt;span style="font-style: italic;"&gt;uttermost surprise&lt;/span&gt; that I was &lt;span style="font-style: italic;"&gt;enjoying&lt;/span&gt; it. Yeah, you read it right, I just said that I &lt;span style="font-style: italic;"&gt;enjoyed&lt;/span&gt; it. Sure, I did find it a little long (over 4 minutes), and I still have no idea where this is all going, but I thought it was &lt;span style="font-style: italic;"&gt;goofy&lt;/span&gt; and not without a &lt;span style="font-style: italic;"&gt;certain charm&lt;/span&gt;. Still that won't get me running to my local electronic shop and getting a new PC, nor a copy of Vista ... But maybe that's not the goal of the campaign? What if the intent was to make &lt;span style="font-style: italic;"&gt;Microsoft&lt;/span&gt; appears less of the evil juggernaut we have come to believe it is? &lt;em&gt;Meditate&lt;/em&gt; on this, I will.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-7032683130818858394?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/7032683130818858394/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=7032683130818858394' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7032683130818858394'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7032683130818858394'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/09/goofing-around.html' title='Goofing around?'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-7688125453630158466</id><published>2008-09-10T06:12:00.000-07:00</published><updated>2008-09-10T06:15:43.243-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPod'/><title type='text'>One less thing ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;Since I'm waiting for an update to the &lt;a href="http://en.wikipedia.org/wiki/MacBook"&gt;MacBook&lt;/a&gt;, and that none was announced yesterday, I can't help but feeling disappointed by yesterday &lt;a href="http://events.apple.com.edgesuite.net/0809dt4bs89/event/index.html"&gt;&lt;span style="font-style: italic;"&gt;Let's rock&lt;/span&gt;&lt;/a&gt; event. Sure, funky color &lt;a href="http://en.wikipedia.org/wiki/Ipod_nano#Fourth_generation"&gt;Nanos&lt;/a&gt; and the &lt;a href="http://en.wikipedia.org/wiki/Ipod_touch"&gt;&lt;span style="font-style: italic;"&gt;touch&lt;/span&gt;&lt;/a&gt; finaly getting a speaker and a physical volume control are good news, but still this was in no way the &lt;span style="font-style: italic; font-weight: bold;"&gt;big deal&lt;/span&gt; event which &lt;a href="http://cultofmac.com/apples-sept-9th-event-is-a-big-deal/2675"&gt;was announce by the PR&lt;/a&gt; (how typical ...). Yet, the &lt;a href="http://www.macrumors.com/2008/09/10/ipod-touch-2-1-firmware-features-and-availability/"&gt;2.1 firmware update&lt;/a&gt; was released (minus the pre-announced &lt;span style="font-style: italic;"&gt;push capability&lt;/span&gt;, what happend to that?) and that's a good thing. This time around, Apple was less stingy &lt;a href="http://patrickmccarron.com/iTouch21Changes.png"&gt;with details&lt;/a&gt; on the update, and so far I have found the UI to be &lt;span style="font-style: italic;"&gt;a bit snappier&lt;/span&gt;, however 3rd party applications still take, like, &lt;span style="font-style: italic;"&gt;ever&lt;/span&gt; to load ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-7688125453630158466?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/7688125453630158466/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=7688125453630158466' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7688125453630158466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7688125453630158466'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/09/one-less-thing.html' title='One less thing ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-1881109153237883422</id><published>2008-09-08T15:35:00.000-07:00</published><updated>2008-09-08T16:02:01.379-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Star Wars'/><title type='text'>The force (un)leashed</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lQfxdt0YNZA/SMWkR1wGGxI/AAAAAAAAACg/k4cUUVU7ATw/s1600-h/Vaders_apprentice_kneeling_small.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_lQfxdt0YNZA/SMWkR1wGGxI/AAAAAAAAACg/k4cUUVU7ATw/s200/Vaders_apprentice_kneeling_small.jpg" alt="" id="BLOGGER_PHOTO_ID_5243777967536347922" border="0" /&gt;&lt;/a&gt;Like most &lt;a href="http://en.wikipedia.org/wiki/Star_Wars"&gt;Star Wars&lt;/a&gt; fan that happens to own an &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; or an &lt;a href="http://en.wikipedia.org/wiki/Ipod_touch"&gt;iPod touch&lt;/a&gt; (my case), I was looking forward to September 16th release of &lt;a href="http://en.wikipedia.org/wiki/Star_Wars:_The_Force_Unleashed_%28video_game%29"&gt;&lt;span style="font-style: italic;"&gt;The Force Unleashed&lt;/span&gt;&lt;/a&gt;. However, after watching &lt;a href="http://www.crunchgear.com/2008/07/16/exclusive-star-wars-the-force-unleashed-for-iphone/"&gt;a video showing the gameplay&lt;/a&gt; ... I'm &lt;span style="font-style: italic;"&gt;bitterly&lt;/span&gt; disappointed. I was hoping for something similar to &lt;a href="http://en.wikipedia.org/wiki/Star_Wars_Jedi_Knight_II:_Jedi_Outcast"&gt;&lt;span style="font-style: italic;"&gt;Jedi Knight 2&lt;/span&gt;&lt;/a&gt; where I could play as &lt;a href="http://en.wikipedia.org/wiki/Darth_Vader"&gt;&lt;span style="font-style: italic;"&gt;Darth Vader&lt;/span&gt;&lt;/a&gt;'s secret apprentice (real name &lt;a href="http://starwars.wikia.com/wiki/Galen_Marek"&gt;&lt;span style="font-style: italic;"&gt;Galen Marek&lt;/span&gt;&lt;/a&gt;) ... instead it looks like the game will be &lt;span style="font-style: italic;"&gt;cinematic&lt;/span&gt; and mainly &lt;span style="font-style: italic;"&gt;finger gestures&lt;/span&gt; based. What's the point of carrying a cool looking &lt;a href="http://starwars.wikia.com/wiki/Light_saber"&gt;light saber&lt;/a&gt; around if it's only used to return laser blast? ... Okay so yeah, &lt;a href="http://en.wikipedia.org/wiki/First-person_shooter"&gt;FPS&lt;/a&gt; friendly controls on a device such as this is tricky, but not impossible ...&lt;br /&gt;&lt;br /&gt;While I am on this subject, I should mention that I been reading &lt;a href="http://en.wikipedia.org/wiki/Timothy_Zahn"&gt;Timothy Zahn&lt;/a&gt;'s first sequel to &lt;a href="http://en.wikipedia.org/wiki/Star_Wars_Episode_VI:_Return_of_the_Jedi"&gt;Episode VI&lt;/a&gt;: &lt;a style="font-style: italic;" href="http://en.wikipedia.org/wiki/Heir_to_the_Empire"&gt;Heir to the Empire&lt;/a&gt;. So far it is &lt;span style="font-style: italic;"&gt;okay&lt;/span&gt; ... nothing &lt;span style="font-style: italic;"&gt;exceptional&lt;/span&gt; really, but it's not too bad either. It is the first time that I'm reading a &lt;a href="http://en.wikipedia.org/wiki/Star_Wars_Expanded_Universe"&gt;&lt;span style="font-style: italic;"&gt;Star Wars expanded universe&lt;/span&gt;&lt;/a&gt; book. Since I had some downtime between &lt;a href="http://en.wikipedia.org/wiki/Dune_universe"&gt;Dune's universe&lt;/a&gt; books I thought I gave that a try.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-1881109153237883422?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/1881109153237883422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=1881109153237883422' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1881109153237883422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1881109153237883422'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/09/force-unleashed.html' title='The force (un)leashed'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lQfxdt0YNZA/SMWkR1wGGxI/AAAAAAAAACg/k4cUUVU7ATw/s72-c/Vaders_apprentice_kneeling_small.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-7858285642941743413</id><published>2008-09-03T08:45:00.000-07:00</published><updated>2008-09-03T08:47:18.061-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Music'/><category scheme='http://www.blogger.com/atom/ns#' term='Radio'/><title type='text'>The bleh 2</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lQfxdt0YNZA/SL6hqRXMIdI/AAAAAAAAACY/SIBODE83MIw/s1600-h/1-8.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_lQfxdt0YNZA/SL6hqRXMIdI/AAAAAAAAACY/SIBODE83MIw/s200/1-8.jpg" alt="" id="BLOGGER_PHOTO_ID_5241804763893080530" border="0" /&gt;&lt;/a&gt;I was saving this post for some report on my &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; progress, but instead I feel like I should add my voice to the &lt;a href="http://www.cbc.ca/radio2/blog/2008/09/02/today_on_radio_2_020_1.html#comments"&gt;many that have commented&lt;/a&gt; on the new &lt;a href="http://www.cbc.ca/radio2/"&gt;CBC Radio 2&lt;/a&gt;, which launched yesterday. I have to admit that I had missed the announce of the changes to come from a few months ago, so I only noticed that something was coming up over the week-end. Since the start of September is a common time for program changes on Radio (or TV) I wasn't too surprise ... but I wasn't really expecting the only radio I have been listening to since I moved to Canada 5 years ago, to change so much ... and not for the best, sadly.&lt;br /&gt;&lt;br /&gt;So what happened you may ask? Well ... to sum-up, &lt;span style="font-style: italic;"&gt;Radio 2&lt;/span&gt; which use to be mainly Classical and Jazz, got stuffed with a large part of the &lt;a href="http://radio3.cbc.ca/"&gt;&lt;span style="font-style: italic;"&gt;Radio 3&lt;/span&gt;&lt;/a&gt; playlists. Now don't get me wrong, there nothing wrong with &lt;span style="font-style: italic;"&gt;Radio 3&lt;/span&gt;, in fact I have enjoyed it since the very first podcast of &lt;a href="http://en.wikipedia.org/wiki/Grant_Lawrence"&gt;Grant Lawrence&lt;/a&gt; back in 2005, and I was also very disappointed when the &lt;span style="font-style: italic;"&gt;fun take-over&lt;/span&gt; of &lt;span style="font-style: italic;"&gt;Radio 2&lt;/span&gt; airwaves by &lt;span style="font-style: italic;"&gt;Radio 3&lt;/span&gt; was terminated over a year ago (Saturday nights).&lt;br /&gt;&lt;br /&gt;What's wrong then with &lt;span style="font-style: italic;"&gt;Radio 3&lt;/span&gt; taking over &lt;span style="font-style: italic;"&gt;Radio 2&lt;/span&gt;? Simply put: &lt;span style="font-style: italic;"&gt;wrong crowd, wrong time&lt;/span&gt;.  Let's face it, the large majority of &lt;span style="font-style: italic;"&gt;Radio 2&lt;/span&gt;'s audience isn't the kind that will enjoy &lt;a href="http://en.wikipedia.org/wiki/New_pornographer"&gt;The New Pornographers&lt;/a&gt; at 7 in the morning ... I can understand that they will have wanted to expose the listeners to some of the &lt;a href="http://radio3.cbc.ca/nmc/"&gt;&lt;span style="font-style: italic;"&gt;new&lt;/span&gt; Canadian music&lt;/a&gt;, but a better approach will have been, IMHO, to bring minor tweaks to the programing by adding a single show composed of the usual &lt;span style="font-style: italic;"&gt;Radio 3&lt;/span&gt; playlist (e.g by shortening &lt;a href="http://www.cbc.ca/radio2/programs.html?CANADA_LIVE"&gt;&lt;span style="font-style: italic;"&gt;Canada Live&lt;/span&gt;&lt;/a&gt;) ... one hour will have been enough. In fact, the old &lt;span style="font-style: italic;"&gt;Radio 3&lt;/span&gt; show on &lt;span style="font-style: italic;"&gt;Radio 2&lt;/span&gt; (which I talked about earlier) was perfect to get folks introduced to the &lt;span style="font-style: italic;"&gt;new Canadian music tree&lt;/span&gt;. Instead, we have &lt;span style="font-weight: bold;"&gt;7 hours&lt;/span&gt; of it, and &lt;span style="font-style: italic;"&gt;Radio 2&lt;/span&gt; now just sounds like &lt;span style="font-weight: bold;"&gt;any other FM radios&lt;/span&gt; ... minus the ads that is.&lt;br /&gt;&lt;br /&gt;At least, we still have &lt;a href="http://www.cbc.ca/radio2/thesignal/"&gt;&lt;span style="font-style: italic;"&gt;The Signal&lt;/span&gt;&lt;/a&gt; ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-7858285642941743413?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/7858285642941743413/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=7858285642941743413' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7858285642941743413'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7858285642941743413'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/09/bleh-2.html' title='The bleh 2'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_lQfxdt0YNZA/SL6hqRXMIdI/AAAAAAAAACY/SIBODE83MIw/s72-c/1-8.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-4777685036357640981</id><published>2008-08-22T14:23:00.000-07:00</published><updated>2008-08-22T14:25:51.412-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Game'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Cocoa'/><title type='text'>Toying around ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lQfxdt0YNZA/SK7o9WHKyLI/AAAAAAAAACQ/ZHG_W4vhny8/s1600-h/toybot.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_lQfxdt0YNZA/SK7o9WHKyLI/AAAAAAAAACQ/ZHG_W4vhny8/s200/toybot.gif" alt="" id="BLOGGER_PHOTO_ID_5237379557283776690" border="0" /&gt;&lt;/a&gt;I purchased on the &lt;a href="http://en.wikipedia.org/wiki/App_Store"&gt;App Store&lt;/a&gt; the game &lt;a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=287747021&amp;amp;mt=8"&gt;&lt;span style="font-style: italic;"&gt;Toy Bot Diaries&lt;/span&gt;&lt;/a&gt; from local company (&lt;a href="http://en.wikipedia.org/wiki/Vancouver"&gt;Vancouver&lt;/a&gt;!)  &lt;a href="http://www.iugome.com/"&gt;IUGO&lt;/a&gt;, after reading &lt;a href="http://toucharcade.com/2008/08/13/toy-bot-diaries-a-true-iphone-game/"&gt;the review&lt;/a&gt; posted on &lt;a href="http://toucharcade.com/"&gt;touchArcade&lt;/a&gt;. I can only agree with the author, it's a &lt;span style="font-style: italic; font-weight: bold;"&gt;very sweet deal&lt;/span&gt; (nice gaming, low price). Best of all, the game take advantage of the controls native to the platform, and it work out pretty well, except if you are trying to play while lying down ... In this &lt;span style="font-style: italic;"&gt;setup&lt;/span&gt;, I found the control to not work too well. No big deal really, I shouldn't be playing right before sleeping anyway ... ;-)&lt;br /&gt;&lt;br /&gt;Meanwhile, I have been continuing my &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; musing without &lt;a href="http://en.wikipedia.org/wiki/Interface_builder"&gt;Interface Builder&lt;/a&gt;, and banging my head on the (one will think) simple issue of filling the application menu. Hopefully for ma sanity, I came accross &lt;a href="http://lapcatsoftware.com/blog/"&gt;Jeff Johnson's blog&lt;/a&gt; which have a serie of great posts (and a &lt;a href="http://lapcatsoftware.com/downloads/Nibless.zip"&gt;sample XCode project&lt;/a&gt;), on &lt;a href="http://lapcatsoftware.com/blog/2007/06/04/working-without-a-nib-part-2-also-also-wik/"&gt;how to create a &lt;span style="font-style: italic;"&gt;Nibless&lt;/span&gt; application&lt;/a&gt;. Turns out it's not as simple as it &lt;span style="font-weight: bold; font-style: italic;"&gt;should&lt;/span&gt; be. It's also more akin to &lt;span style="font-style: italic;"&gt;hacking&lt;/span&gt; the framework than&lt;span style="font-style: italic;"&gt; using&lt;/span&gt; it ... anyhow it does work.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Before I sign-out, I will like to point to &lt;a href="http://www.iphonedevcamp.org/2008/08/12/neil-youngs-keynote-video-on-iphone-gaming/"&gt;a video&lt;/a&gt; from the lastest &lt;a href="http://www.iphonedevcamp.org/"&gt;iPhoneDevCamp&lt;/a&gt;, which feature &lt;a href="http://www.ngmoco.com/ngmoco.html"&gt;Neil Young&lt;/a&gt;'s (no, not the &lt;a href="http://en.wikipedia.org/wiki/Neil_Young"&gt;singer&lt;/a&gt;) keynote on the &lt;a href="http://en.wikipedia.org/wiki/Iphone"&gt;iPhone&lt;/a&gt; as a gaming platform.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-4777685036357640981?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/4777685036357640981/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=4777685036357640981' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4777685036357640981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4777685036357640981'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/08/toying-around.html' title='Toying around ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lQfxdt0YNZA/SK7o9WHKyLI/AAAAAAAAACQ/ZHG_W4vhny8/s72-c/toybot.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-6267118192318082181</id><published>2008-08-20T12:20:00.000-07:00</published><updated>2008-08-20T12:21:38.104-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Star Wars'/><title type='text'>Blast them again!</title><content type='html'>&lt;div style="text-align: justify;"&gt;I just realized that I forgot to talk about the opening of the &lt;a href="http://www.starwars.com/clonewars/site/index.html"&gt;Clone Wars&lt;/a&gt;. Like any other geek watching the show, I was expecting the standard opening of a &lt;a style="font-style: italic;" href="http://en.wikipedia.org/wiki/Star_Wars"&gt;Star Wars&lt;/a&gt; movies with &lt;a href="http://en.wikipedia.org/wiki/John_Williams"&gt;John Williams&lt;/a&gt; music and scrolling text ... So I was surprised and somehow &lt;span style="font-style: italic;"&gt;deeply disturbed&lt;/span&gt; to see the opening not conforming to the &lt;a style="font-style: italic;" href="http://en.wikipedia.org/wiki/Canon_%28fiction%29"&gt;canon&lt;/a&gt;. In fact, it reminded me a lot of the TV news broadcast  in the opening of &lt;a href="http://en.wikipedia.org/wiki/Starship_Troopers_%28film%29"&gt;Starship Troopers&lt;/a&gt; ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-6267118192318082181?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/6267118192318082181/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=6267118192318082181' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6267118192318082181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6267118192318082181'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/08/blast-them-again.html' title='Blast them again!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-5277372879924583097</id><published>2008-08-20T08:35:00.000-07:00</published><updated>2008-08-20T08:38:42.552-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Animation'/><category scheme='http://www.blogger.com/atom/ns#' term='Star Wars'/><title type='text'>Blast them!</title><content type='html'>&lt;div style="text-align: justify;"&gt;So I went to see the &lt;a href="http://www.starwars.com/clonewars/site/index.html"&gt;Clone Wars&lt;/a&gt; animation last night with an old friend, and I don't know why the "critics" are so &lt;a href="http://www.rottentomatoes.com/m/clone_wars/"&gt;harsh about it&lt;/a&gt;, 'cause we both enjoyed ourselves (along with the other 10 adults and 25 younglings present). Of course, it probably have to do with the fact that combined we have the &lt;a href="http://en.wikipedia.org/wiki/Mental_age"&gt;mental age&lt;/a&gt; of a 12 years old, but still .... it was a fun 90 minutes, filled with lots of action and ... yes, a simple story line. I think it is clear, that the movie was targeted to an audience much younger than the usual &lt;span style="font-style: italic;"&gt;Star Wars&lt;/span&gt; crowds. As for the &lt;a href="http://en.wikipedia.org/wiki/Computer_graphics"&gt;CG&lt;/a&gt; and animations? Well, it's definitely no &lt;a href="http://www.pixar.com/"&gt;Pixar&lt;/a&gt; movie, but I do think it was alright even if at time the characters motions were a little stiff.&lt;br /&gt;&lt;br /&gt;Speaking of animation movie, I noticed something interesting on the &lt;a href="http://www.bagelturf.com/"&gt;Bagelturf&lt;/a&gt; blog, a link to an animation created by a group of student of the French art school &lt;a style="font-style: italic;" href="http://www.gobelins.fr/presentation-gb.htm"&gt;Gobelins&lt;/a&gt;. &lt;a href="http://www.oktapodi.com/"&gt;&lt;span style="font-style: italic;"&gt;Oktapodi&lt;/span&gt;&lt;/a&gt; is not only funny (in a Pixar shorts sort of way) but also well done, check it out on YouTube:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/HhNvQZ7DrNk&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/HhNvQZ7DrNk&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-5277372879924583097?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/5277372879924583097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=5277372879924583097' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5277372879924583097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/5277372879924583097'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/08/blast-them.html' title='Blast them!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-4013123737629810991</id><published>2008-08-19T05:58:00.000-07:00</published><updated>2008-08-19T05:59:53.397-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>2.0.2</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a href="http://www.apple.com/"&gt;Apple&lt;/a&gt; &lt;span style="font-style: italic;"&gt;blessed&lt;/span&gt; us, iPhone and iPod touch owners, yesterday, with a &lt;a href="http://www.macrumors.com/2008/08/18/iphone-firmware-2-0-2-released/"&gt;new update&lt;/a&gt;. The release note is as usual a trove of details: &lt;span style="font-style: italic;"&gt;"Bug fixes"&lt;/span&gt; 9_9 ... I seriously don't understand why they can put a bit more details so that people can have an idea of what got fixed or not. We all know, heck, the all world know that 2.0 OS was a very buggy release. Issues have been discussed &lt;a href="http://blog.wired.com/gadgets/2008/07/developer-despi.html"&gt;all over the web&lt;/a&gt;! But I guess very few (if any) were acknowledged by Apple. The usual &lt;a href="http://en.wikipedia.org/wiki/Obscurantism"&gt;obscurantism&lt;/a&gt; at its best.&lt;br /&gt;&lt;br /&gt;Once the &lt;a href="http://en.wikipedia.org/wiki/Placebo_effect#Placebo_effect"&gt;placebo effect&lt;/a&gt; recessive in a couple of days, I'll be able to take note if downloading around 250Mb (!!?) was worth it. But right now, the UI seems a little snappier than it was. However, I haven't noticed any improvement during application launches :-|&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-4013123737629810991?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/4013123737629810991/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=4013123737629810991' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4013123737629810991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4013123737629810991'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/08/202.html' title='2.0.2'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-6119757386155047659</id><published>2008-08-16T07:31:00.000-07:00</published><updated>2008-08-16T07:53:44.428-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='Cocoa'/><title type='text'>NSApplication and delegate #2</title><content type='html'>&lt;div style="text-align: justify;"&gt;The only reason for that &lt;span style="font-style: italic;"&gt;yucky thing&lt;/span&gt; I could think off, is that they wanted to save people from having to define and implement all 14 methods each time a &lt;code&gt;NSApplication&lt;/code&gt; delegate was needed, even if only one of them was needed. Since the concept of &lt;span style="font-style: italic;"&gt;optional method&lt;/span&gt; in a Protocol was only introduced recently in &lt;a href="http://en.wikipedia.org/wiki/Objective-C#Objective-C_2.0"&gt;Objective-C 2.0&lt;/a&gt;, using a protocol for the &lt;code&gt;NSApplicationDelegate&lt;/code&gt; (or for &lt;code&gt;NSApplicationNotifications&lt;/code&gt;) was I guess not a solution back when &lt;a href="http://en.wikipedia.org/wiki/NEXTSTEP"&gt;NeXTSTEP&lt;/a&gt; was been designed and implemented. Still, having to define and implements a bunch of methods isn't much of a huge burden (copy&amp;amp;paste), likely only a couple of them are going to have a real implementation, and the number of application delegate class per application is mainly, well ... one.&lt;br /&gt;&lt;br /&gt;I'm aware that adding methods in Objective-C isn't as costly as adding a &lt;span style="font-style: italic;"&gt;virtual method&lt;/span&gt; to a &lt;a href="http://en.wikipedia.org/wiki/C%2B%2B"&gt;C++ &lt;/a&gt;class, but still ... this is not a very &lt;span style="font-style: italic;"&gt;elegant solution&lt;/span&gt;. As this thing used all over the place? I'm a little scare to find out ...&lt;br /&gt;&lt;br /&gt;BTW, sorry for the sloppy code formatting on my previous posts. I still haven't figured a nice way to present it with proper indentation. &lt;em&gt;Syntax&lt;/em&gt; highlighting will be nice too.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-6119757386155047659?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/6119757386155047659/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=6119757386155047659' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6119757386155047659'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6119757386155047659'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/08/nsapplication-and-delegate-2.html' title='NSApplication and delegate #2'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-3042953240622498258</id><published>2008-08-15T06:36:00.000-07:00</published><updated>2008-08-15T06:42:47.129-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cocoa'/><title type='text'>NSApplication and delegate</title><content type='html'>&lt;div style="text-align: justify;"&gt;Last night, I finally restarted my &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; learning effort, by looking at how I could write an application without using &lt;a href="http://en.wikipedia.org/wiki/Interface_builder"&gt;Interface Builder&lt;/a&gt;. &lt;span style="font-style: italic;"&gt;IB&lt;/span&gt; is so vastly used that there isn't as much details available on the web on how to go about with it, nevertheless, there is enough to get started. And in fact, it is relatively easy, at first.&lt;br /&gt;&lt;br /&gt;A &lt;span style="font-style: italic;"&gt;Cocoa&lt;/span&gt; application, in its simplest expression, is composed of a single &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/NSApplication_Class/Reference/Reference.html#//apple_ref/occ/instm/NSObject/applicationWillFinishLaunching:"&gt;&lt;code&gt;NSApplication&lt;/code&gt;&lt;/a&gt; object and one (or more) &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/NSWindow_Class/Reference/Reference.html#//apple_ref/occ/instm/NSWindow/setTitle:"&gt;&lt;code&gt;NSWindow&lt;/code&gt;&lt;/a&gt; object(s). Overall, it doesn't take much boiler code to get something going, which is good:&lt;br /&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;int main(int argc, char *argv[])&lt;br /&gt;{&lt;br /&gt;NSWindow *lWindow;&lt;br /&gt;// create an auto-release pool&lt;br /&gt;NSAutoreleasePool *lPool = [[NSAutoreleasePool alloc] init];&lt;br /&gt;&lt;br /&gt;// initializes the display environment and connects to the window server&lt;br /&gt;// and display server&lt;br /&gt;[NSApplication sharedApplication];&lt;br /&gt;&lt;br /&gt;// create a window&lt;br /&gt;lWindow = [[NSWindow alloc] initWithContentRect:NSMakeRect(10,10,320,240)&lt;br /&gt;                             styleMask:kStyle&lt;br /&gt;                               backing:NSBackingStoreBuffered&lt;br /&gt;                                 defer:NO];&lt;br /&gt;// set the window's title&lt;br /&gt;[lWindow setTitle:@"Hello world!"];&lt;br /&gt;// show the window and move it foreground&lt;br /&gt;[lWindow makeKeyAndOrderFront:nil];&lt;br /&gt;&lt;br /&gt;// start the application run loop&lt;br /&gt;[NSApp run];&lt;br /&gt;&lt;br /&gt;// release the window&lt;br /&gt;[lWindow release];&lt;br /&gt;&lt;br /&gt;// release the pool&lt;br /&gt;[lPool release];&lt;br /&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;The Application object gets a bunch of notification from the system during its life-time. If I wanted to perform some actions in some of them, there is two ways of doing it: I could &lt;a href="http://en.wikipedia.org/wiki/Subclass_%28computer_science%29"&gt;subclass&lt;/a&gt; &lt;code&gt;NSApplication&lt;/code&gt; and implement the corresponding methods, which is the usual way of doing it in 99% of the toolkits out there ... or, I could follow the &lt;span style="font-style: italic;"&gt;Cocoa&lt;/span&gt;&lt;span style="font-style: italic;"&gt; way&lt;/span&gt; and use a &lt;a href="http://en.wikipedia.org/wiki/Delegation_%28programming%29"&gt;delegate&lt;/a&gt; instead. Since the later is what &lt;span style="font-style: italic;"&gt;Apple&lt;/span&gt; encourage developers to do, the &lt;code&gt;NSApplication&lt;/code&gt; class is built to support the addition of a delegate by sending it a &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/NSApplication_Class/Reference/Reference.html#//apple_ref/occ/instm/NSApplication/setDelegate:"&gt;&lt;code&gt;setDelegate&lt;/code&gt;&lt;/a&gt; message.&lt;br /&gt;&lt;br /&gt;Now, as expected, this message take as single argument: the object to be the delegate. So far so good. However, instead of defining the argument with a specific class, for example something like said &lt;code&gt;NSApplicationDelegate&lt;/code&gt;, it is defined as an &lt;code&gt;id&lt;/code&gt; (meaning any kind of object). Since I'm still more of a &lt;a href="http://en.wikipedia.org/wiki/C%2B%2B"&gt;C++&lt;/a&gt; kind of guy than an &lt;a href="http://en.wikipedia.org/wiki/Objective-c"&gt;Objective-C&lt;/a&gt; dude, I found myself a little puzzled by this but still decide to move forward by searching in NSApplication.h (since I didn't see anything in the class documentation) for the delegate class I am expecting to have to subclass, or some sort of protocol definition.&lt;br /&gt;&lt;br /&gt;In the header file, I was nicely surprised to see that &lt;code&gt;NSApplicationDelegate&lt;/code&gt; does exists, but in a way I was not expecting, at all: &lt;code&gt;@interface NSObject(NSApplicationDelegate)&lt;/code&gt;. &lt;span style="font-style: italic;"&gt;Yep, that's right&lt;/span&gt;. A &lt;a href="http://macdevelopertips.com/objective-c/objective-c-categories.html"&gt;category&lt;/a&gt; ... meaning that any object with &lt;code&gt;NSObject&lt;/code&gt; for root parent, can be the application delegate ... Since 99% of all Cocoa's classes have &lt;code&gt;NSObject&lt;/code&gt; as root, any objects can be the delegate .... including widgets! If this isn't &lt;span style="font-style: italic; font-weight: bold;"&gt;yucky&lt;/span&gt;, I don't know what is! Why on earth didn't they use a protocol!??&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-3042953240622498258?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/3042953240622498258/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=3042953240622498258' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3042953240622498258'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3042953240622498258'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/08/nsapplication-and-delegate.html' title='NSApplication and delegate'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-6383418336274569041</id><published>2008-08-13T13:44:00.000-07:00</published><updated>2008-08-13T13:59:03.326-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Star Wars'/><title type='text'>I want(ed) to believe!</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lQfxdt0YNZA/SKNB200qcbI/AAAAAAAAACI/KV5KKE3o8xo/s1600-h/10009543.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_lQfxdt0YNZA/SKNB200qcbI/AAAAAAAAACI/KV5KKE3o8xo/s200/10009543.jpg" alt="" id="BLOGGER_PHOTO_ID_5234099602082918834" border="0" /&gt;&lt;/a&gt;No really, I want to believe &lt;span style="font-style: italic; font-weight: bold;"&gt;so much&lt;/span&gt; the up-coming &lt;a href="http://www.starwars.com/clonewars/site/index.html"&gt;&lt;span style="font-style: italic;"&gt;Clone Wars&lt;/span&gt;&lt;/a&gt; movie isn't going to sucks that I'm ready to like, totaly, forgot about the &lt;a href="http://valleywag.com/5035515/aint-it-cool-news-retracts-clone-wars-review"&gt;review&lt;/a&gt; published then retracted by &lt;a href="http://www.aintitcool.com/"&gt;Ain't It Cool News&lt;/a&gt;. Also, I won't even think about, nor mention the low &lt;a href="http://www.rottentomatoes.com/m/clone_wars/"&gt;44% on the Tomatometer&lt;/a&gt;, given by the &lt;a href="http://www.rottentomatoes.com/"&gt;Rotten Tomatoes&lt;/a&gt; self proclamed &lt;span style="font-style: italic;"&gt;critics&lt;/span&gt;. &lt;span style="font-style: italic;"&gt;I found their lack of faith, disturbing&lt;/span&gt;. Instead, I'm going to be watching over and over &lt;a href="http://www.apple.com/trailers/wb/starwarstheclonewars/"&gt;the trailers&lt;/a&gt;, and the videos available on the movie site. Since I already watched (by-myself mostly) Episode &lt;a href="http://en.wikipedia.org/wiki/Star_Wars_Episode_I:_The_Phantom_Menace"&gt;1&lt;/a&gt; &amp;amp; &lt;a href="http://en.wikipedia.org/wiki/Star_Wars_Episode_II:_Attack_of_the_Clones"&gt;2&lt;/a&gt; this past Sunday afternoon, my &lt;a href="http://en.wikipedia.org/wiki/Star_Wars"&gt;Star Wars&lt;/a&gt; geek-o-meter readings are off the chart! I can almost &lt;span style="font-style: italic;"&gt;feel&lt;/span&gt; the force ... can you? &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-6383418336274569041?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/6383418336274569041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=6383418336274569041' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6383418336274569041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6383418336274569041'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/08/i-wanted-to-believe.html' title='I want(ed) to believe!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_lQfxdt0YNZA/SKNB200qcbI/AAAAAAAAACI/KV5KKE3o8xo/s72-c/10009543.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-289065295910142055</id><published>2008-08-10T13:06:00.000-07:00</published><updated>2008-08-10T13:09:48.034-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>2.0.1</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lQfxdt0YNZA/SJ9DgdcAzaI/AAAAAAAAACA/hMeytjO5s6M/s1600-h/itunes-app.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 109px; height: 109px;" src="http://3.bp.blogspot.com/_lQfxdt0YNZA/SJ9DgdcAzaI/AAAAAAAAACA/hMeytjO5s6M/s200/itunes-app.gif" alt="" id="BLOGGER_PHOTO_ID_5232975516964801954" border="0" /&gt;&lt;/a&gt;So I upgraded my &lt;a href="http://en.wikipedia.org/wiki/IPod_touch"&gt;iPod touch&lt;/a&gt; yesterday morning from 1.1.4 to 2.0.1 ... Since I had a &lt;a href="http://en.wikipedia.org/wiki/Privilege_escalation#Jailbreaking"&gt;&lt;span style="font-style: italic;"&gt;jailbroken&lt;/span&gt;&lt;/a&gt; unit, I was a bit worry that I may encounter some issues, but the whole process went pretty smoothly. All I had to do was to hit the restore button in iTunes, which installed 1.1.5 and whipped all the apps and data I had installed (no big deal). Once that was done, I bought the 2.0 update from &lt;a href="http://en.wikipedia.org/wiki/ITunes"&gt;iTunes&lt;/a&gt; and that was it.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;2.0 OS has been discussed a lot since it came out, so I'm not going to get into any details, I'll just said that, &lt;span style="font-weight: bold;"&gt;yes&lt;/span&gt; the unit does feel more sluggish than 1.1, and &lt;span style="font-weight: bold;"&gt;yes&lt;/span&gt; there's a lot of &lt;span style="font-style: italic;"&gt;so-so&lt;/span&gt; apps on the &lt;a href="http://en.wikipedia.org/wiki/App_Store"&gt;App Store&lt;/a&gt;. I wishs there was a way to download demo version of some of the game. For example, I bought &lt;a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=285005463&amp;amp;mt=8"&gt;Crash Bandicoot Nitro Kart 3D&lt;/a&gt;, and I regret it 'cause I don't like it that much (there goes 10 bucks ...). Some of the apps, are very familiar to me, since they have been available on jailbroken devices for months, such as Vladimir Kofman's &lt;a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=286911289&amp;amp;mt=8"&gt;Converter&lt;/a&gt; ($1). It's a cool app, which doesn't seems to have changed a lot ... except that now it's much slower to start than before :-\ Hopefully Apple can fix that up in the up-coming &lt;a href="http://www.appleinsider.com/articles/08/08/09/apple_releases_new_iphone_2_1_beta_as_crackers_break_2_0_1.html"&gt;2.1 update&lt;/a&gt; .... 9_9&lt;br /&gt;&lt;br /&gt;Bottom line, was it worth upgrading? &lt;span style="font-weight: bold; font-style: italic;"&gt;Not really&lt;/span&gt;.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-289065295910142055?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/289065295910142055/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=289065295910142055' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/289065295910142055'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/289065295910142055'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/08/201.html' title='2.0.1'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_lQfxdt0YNZA/SJ9DgdcAzaI/AAAAAAAAACA/hMeytjO5s6M/s72-c/itunes-app.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-3315222880265370612</id><published>2008-08-06T09:20:00.000-07:00</published><updated>2008-08-06T09:20:41.763-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='GTA'/><category scheme='http://www.blogger.com/atom/ns#' term='iPod'/><title type='text'>Blown away ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;We had a long time friend over last night for diner and I had the "bad" idea to introduce him to the &lt;a href="http://en.wikipedia.org/wiki/IPod_touch"&gt;iPod touch&lt;/a&gt;. Now, he had heard about the &lt;a href="http://en.wikipedia.org/wiki/IPhone_3G"&gt;iPhone&lt;/a&gt; and &lt;span style="font-style: italic;"&gt;iTouch&lt;/span&gt; before, but never had the &lt;span style="font-style: italic;"&gt;privilege&lt;/span&gt; to play with one ... and he was literally blown away by it, especially by the touch UI experience and easy of web browsing ... and also by the few games I had on it (still running &lt;a href="http://en.wikipedia.org/wiki/Privilege_escalation#Jailbreaking"&gt;jailbroken&lt;/a&gt; 1.1.14) making use of the on board &lt;a href="http://en.wikipedia.org/wiki/Accelerometer"&gt;accelerometers&lt;/a&gt;. I had to use all of my persuasion skills (which isn't much really) to restrain him from running to buy one right away ... with a &lt;a href="http://www.macrumors.com/2008/07/29/firmware-hints-at-new-ipod-touch/"&gt;rumored update&lt;/a&gt; right around the corner, it is definitly worth waiting a month or so.&lt;br /&gt;&lt;br /&gt;This past Saturday, I was my self impressed by the latest iteration of &lt;a href="http://en.wikipedia.org/wiki/Grand_Theft_Auto_%28series%29"&gt;Grand Theft Auto&lt;/a&gt; on a friend &lt;a href="http://en.wikipedia.org/wiki/PS3"&gt;PS3&lt;/a&gt;. I had heard of it before, obviously, but never actually played it .... let's hope an iPhone version (or clone) shows up on the app store ... 'cause it's a pretty darn cool game. Granted it's dark and violent, but it's a fun &lt;span style="font-weight: bold;"&gt;game&lt;/span&gt; nevertheless ... now if only I could manage to drive around without hitting pedestrians and other cars ... 9_9&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-3315222880265370612?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/3315222880265370612/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=3315222880265370612' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3315222880265370612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3315222880265370612'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/08/blown-away.html' title='Blown away ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-1409920343727023079</id><published>2008-07-29T14:45:00.000-07:00</published><updated>2008-07-29T14:48:19.498-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dune'/><title type='text'>Vacations reading hijacked!</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lQfxdt0YNZA/SI-LBMPJApI/AAAAAAAAAB4/vMwIN9ACsdg/s1600-h/SandwormsofDune.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_lQfxdt0YNZA/SI-LBMPJApI/AAAAAAAAAB4/vMwIN9ACsdg/s200/SandwormsofDune.jpg" alt="" id="BLOGGER_PHOTO_ID_5228550544981295762" border="0" /&gt;&lt;/a&gt;From the very moment I saw that the paperback edition of the &lt;a href="http://en.wikipedia.org/wiki/Sandworms_of_Dune"&gt;latest Dune universe novel&lt;/a&gt; was out (while purchasing &lt;a href="http://en.wikipedia.org/wiki/Aaron_Hillegass"&gt;Aaron Hillegass' book&lt;/a&gt;), I knew that there was no way I would take advantage of my vacations to read more about &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt;. What can I said, I'm a sucker for &lt;a href="http://en.wikipedia.org/wiki/Dune_%28novel%29"&gt;Dune novels&lt;/a&gt; ... Over the years, I have come to appreciate many of the books authored by &lt;a href="http://en.wikipedia.org/wiki/Brian_Herbert"&gt;Brian Herbert&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Kevin_J._Anderson"&gt;Kevin Anderson&lt;/a&gt;, even if some, like &lt;a href="http://www.amazon.ca/Sandworms-Dune-Brian-Herbert/dp/0765351498/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1217367404&amp;amp;sr=8-1"&gt;&lt;span style="font-style: italic;"&gt;Sandworms of Dune&lt;/span&gt;&lt;/a&gt;, feel a little weak (to be honest, I also found some of the original Dune novels to be also not that great ...). Anyhow, I finished it yesterday so hopefully I can resume climbing the learning curve ... I just hope I didn't lose too much *:o)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-1409920343727023079?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/1409920343727023079/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=1409920343727023079' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1409920343727023079'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1409920343727023079'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/07/vacations-reading-hijacked.html' title='Vacations reading hijacked!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_lQfxdt0YNZA/SI-LBMPJApI/AAAAAAAAAB4/vMwIN9ACsdg/s72-c/SandwormsofDune.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-3200330300043270801</id><published>2008-07-18T22:05:00.000-07:00</published><updated>2008-07-18T22:06:45.573-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Creativity'/><category scheme='http://www.blogger.com/atom/ns#' term='Rambling'/><title type='text'>Raiders of the Lost Creativity</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lQfxdt0YNZA/SIE2jwk9pNI/AAAAAAAAABw/9de6sQuCTrA/s1600-h/itunes-app.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 110px; height: 110px;" src="http://4.bp.blogspot.com/_lQfxdt0YNZA/SIE2jwk9pNI/AAAAAAAAABw/9de6sQuCTrA/s200/itunes-app.gif" alt="" id="BLOGGER_PHOTO_ID_5224517030689744082" border="0" /&gt;&lt;/a&gt;I have been &lt;span style="font-style: italic;"&gt;struggling&lt;/span&gt; &lt;span style="font-style: italic;"&gt;some&lt;/span&gt; lately with my attempt to convert myself as an &lt;a href="http://en.wikipedia.org/wiki/Indie_%28culture%29"&gt;indie&lt;/a&gt; developer on the &lt;a href="http://en.wikipedia.org/wiki/Macintosh"&gt;Mac&lt;/a&gt;/&lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; platform. The problem that I face isn't &lt;span style="font-style: italic;"&gt;technical&lt;/span&gt; (e.g learning &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt;) but rather &lt;span style="font-style: italic;"&gt;psychological&lt;/span&gt; ... &lt;span style="font-style: italic;"&gt;Dude, where's my&lt;/span&gt; &lt;a href="http://en.wikipedia.org/wiki/Creativity"&gt;&lt;span style="font-style: italic;"&gt;creativity&lt;/span&gt;&lt;/a&gt;? In my previous experiences (&lt;a href="http://en.wikipedia.org/wiki/Apple_Newton"&gt;Newton&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/BeOS"&gt;BeOS&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/QNX"&gt;QNX&lt;/a&gt;), I always had a very clear goals in mind when starting up, even if (in retrospect) they didn't turn out  to been successful ... (but that's another story).  This time around, I found my-self very excited by the platform ... but without any concrete idea of what the heck to do ... Meanwhile, the &lt;a href="http://en.wikipedia.org/wiki/App_Store"&gt;iTunes app store&lt;/a&gt; is filling up with some great pieces (and some crappies one apparently) of software (like &lt;a href="http://www.intua.net/products.html"&gt;Intua&lt;/a&gt;'s &lt;a href="http://www.macrumors.com/iphone/2008/07/16/beatmaker-by-intua-brings-serious-music-tool-to-iphone/"&gt;BeatMaker&lt;/a&gt;), and I can't help feeling like I'm missing the boat or something ... :-\ Anyhow, I'm still committed albeit not overly motivated. I dropped tonight at my locale &lt;a href="http://www.chapters.indigo.ca/home?s_campaign=goo-Corp_Chapters&amp;amp;s_kwcid=chapters%7C2024007858&amp;amp;gclid=CMrE3N2Ry5QCFSQtagodXV-ilQ&amp;amp;pticket=1rk5br45yo2jjwjuxb010s45pc%2fE%2bM0sgLKNStPZ3i0pGN8AOAc%3d"&gt;Chapters&lt;/a&gt; and grabbed the 3rd edition of &lt;a href="http://en.wikipedia.org/wiki/Aaron_Hillegass"&gt;Aaron Hillegass&lt;/a&gt;' &lt;a href="http://www.amazon.ca/Cocoa-R-Programming-Mac-OS/dp/0321503619/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1216442663&amp;amp;sr=8-1"&gt;Cocoa Programming for Mac OS X.&lt;/a&gt; For once, they had it in stock. I actually also have (I should said &lt;span style="font-style: italic;"&gt;had&lt;/span&gt;, since it's now in the recycling bin) the 1st edition, which have been collecting dust on my bookshelf for the past 5 years (it's so out of sync with the current version of Cocoa that it's not usable). Since I'm on holiday all next week, I'll try to set some time away from all the fun to read it and who knows maybe get some inspiration. In any case, if you've reading this and got some ideas ... let's get in touch 8-)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-3200330300043270801?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/3200330300043270801/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=3200330300043270801' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3200330300043270801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3200330300043270801'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/07/raiders-of-lost-creativity.html' title='Raiders of the Lost Creativity'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lQfxdt0YNZA/SIE2jwk9pNI/AAAAAAAAABw/9de6sQuCTrA/s72-c/itunes-app.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-7088017827352756307</id><published>2008-07-14T18:11:00.000-07:00</published><updated>2008-07-14T18:13:40.282-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>iPhone : D+3</title><content type='html'>&lt;div style="text-align: justify;"&gt;Well it's out, and in force, according to &lt;a href="http://www.apple.com/"&gt;Apple&lt;/a&gt; which apparently got over &lt;a href="http://www.appleinsider.com/articles/08/07/14/apple_sells_1_million_iphone_3gs_in_first_weekend.html"&gt;1 million activations&lt;/a&gt; over the week-end ... Wow, that's huge! However, the downloads from the Application store is actually even more impressive (10 Millions) and include not just the &lt;a href="http://en.wikipedia.org/wiki/IPhone_3G"&gt;iPhone&lt;/a&gt; users but also the iPod touch users ... I was kind of hoping that the launch will be a flop in Canada, thanks to &lt;a href="http://en.wikipedia.org/wiki/Rogers_Communications"&gt;Rogers&lt;/a&gt;, but it seems like it wasn't the case since &lt;a href="http://www.reuters.com/article/marketsNews/idCAN1444900920080714?rpc=44"&gt;they said that they are sold-out&lt;/a&gt;. That been said, since it was said that Apple reduced the amount of iPhone they sent to Canada, they could be indeed sold-out very quickly :-D ... Anyway, I had to opportunity to check out a little bit the 3G Sunday at my local mall and yes, it looks very nice and tempting ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-7088017827352756307?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/7088017827352756307/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=7088017827352756307' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7088017827352756307'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7088017827352756307'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/07/iphone-d3.html' title='iPhone : D+3'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-6334293033208113515</id><published>2008-07-09T07:04:00.000-07:00</published><updated>2008-07-09T07:06:06.080-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Blogs'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>iPhone : D-2</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lQfxdt0YNZA/SHS9thhyVWI/AAAAAAAAABo/6E1d5mssVQY/s1600-h/specs_dimensions20080609.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_lQfxdt0YNZA/SHS9thhyVWI/AAAAAAAAABo/6E1d5mssVQY/s200/specs_dimensions20080609.jpg" alt="" id="BLOGGER_PHOTO_ID_5221006457821091170" border="0" /&gt;&lt;/a&gt;Yep, only 48 hours away from the release of the &lt;a href="http://en.wikipedia.org/wiki/IPhone_3G"&gt;iPhone 3G&lt;/a&gt;, and &lt;span style="font-style: italic;"&gt;selfishly&lt;/span&gt; I don't really care since we won't be getting one, thanks to &lt;a href="http://en.wikipedia.org/wiki/Rogers_Communications"&gt;Rogers&lt;/a&gt; ultra-mega &lt;a href="http://prnewswire.com/cgi-bin/stories.pl?ACCT=104&amp;amp;STORY=/www/story/06-27-2008/0004840127&amp;amp;EDATE="&gt;over-priced plan&lt;/a&gt;. Fact is that we don't really need a cell phone. We've been doing alright without one for the past 5-6 years, so there isn't much reason for us to get one ... except an iPhone at a decent price &amp;amp; plan, maybe? ...&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;What is more exciting, is the release of the iPhone/&lt;a href="http://en.wikipedia.org/wiki/IPod_touch"&gt;iTouch&lt;/a&gt; &lt;a href="http://en.wikipedia.org/wiki/IPhone_OS_version_history"&gt;OS 2.0&lt;/a&gt;, and more specifically of the &lt;a href="http://en.wikipedia.org/wiki/App_Store"&gt;Application Store&lt;/a&gt; where one day (if I can get pass that reading documents stage I am in) I'll have some software released. Speaking of software and iPhone, the folks from &lt;a href="http://toucharcade.com/"&gt;touchArcade.com&lt;/a&gt; have put together an &lt;a href="http://toucharcade.com/2008/07/07/under-the-hood-the-iphones-gaming-mettle/#more-192"&gt;interesting article&lt;/a&gt; on the iPhone architecture, which is worth reading IMHO. If you are into gaming (even a little), it's a good idea to bookmark that site since they feature a lot of preview (with video) of games to come, as well as already available games for the &lt;a href="http://en.wikipedia.org/wiki/Privilege_escalation#Jailbreaking"&gt;jailbroken&lt;/a&gt; devices.&lt;br /&gt;&lt;br /&gt;While I'm at it (giving links), I should mention that &lt;a href="http://en.wikipedia.org/wiki/Wil_Shipley"&gt;Wil Shipley&lt;/a&gt; have posted a &lt;a href="http://wilshipley.com/blog/2008/07/pimp-my-code-part-15-greatest-bug-of.html"&gt;new blog entry&lt;/a&gt; on his latest debugging adventures, and that if you are looking for &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt;/&lt;a href="http://en.wikipedia.org/wiki/Objective-c"&gt;Objective-C&lt;/a&gt; oriented blogs, you should look no further than &lt;a href="http://cocoablogs.com/"&gt;Cocoa Blogs&lt;/a&gt; ... oh and keep reading this blog ;-)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-6334293033208113515?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/6334293033208113515/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=6334293033208113515' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6334293033208113515'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6334293033208113515'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/07/iphone-d-2.html' title='iPhone : D-2'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_lQfxdt0YNZA/SHS9thhyVWI/AAAAAAAAABo/6E1d5mssVQY/s72-c/specs_dimensions20080609.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-2655968376490486927</id><published>2008-07-07T08:34:00.000-07:00</published><updated>2008-07-07T08:36:50.152-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='NeXT'/><title type='text'>Sunday procrastinating ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a href="http://www.youtube.com/"&gt;YouTube&lt;/a&gt; is great when you feel like &lt;a href="http://en.wikipedia.org/wiki/Procrastinating"&gt;procrastinating&lt;/a&gt; ... it has so much contents that you can spend hours looking for (and at) videos on a subject that interest you, without feeling too guilty about how you should have been reading that &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; document instead ... For example Sunday, I found a video made by &lt;a href="http://en.wikipedia.org/wiki/NeXT"&gt;NeXT&lt;/a&gt; in 1992, which shows the advantage of &lt;a href="http://en.wikipedia.org/wiki/NeXTSTEP"&gt;NeXTSTEP&lt;/a&gt; over &lt;a href="http://en.wikipedia.org/wiki/Sun_Microsystems"&gt;Sun&lt;/a&gt;. The competition is centered on 2 programmers building a business application from the exact same specs, one using NeXT solutions the other the Sun &lt;span style="font-style: italic;"&gt;equivalent&lt;/span&gt;. Does it look rigged? Well no ... but the requirements sounds a lot like they were selected to showcase the capabilities of NeXTSTEP ... which isn't that un-fair for Sun since it all made sense in the context of the application. Needless to said, NeXT came out as the clear winner with the shortest development time and the most features completed. In fact, the developer had so much extra time&lt;span style="font-style: italic;"&gt;&lt;/span&gt; that he implemented things that were not asked for, while the Sun based implementation was not even completed ... :-)&lt;br /&gt;&lt;br /&gt;Here's the two parts of the video, for you viewing pleasure:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/yGBoJjfMuAk&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/yGBoJjfMuAk&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/9MozS0mV_Wc&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/9MozS0mV_Wc&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;It's interesting to think that 16 years after, developers still use the same tools to build applications for Macs ... Now, I'm still not fully convince (yet) that using &lt;a href="http://en.wikipedia.org/wiki/Interface_Builder"&gt;Interface Builder&lt;/a&gt; is the way to go. I like my UI done programmatically you see ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-2655968376490486927?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/2655968376490486927/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=2655968376490486927' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2655968376490486927'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2655968376490486927'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/07/sunday-procrastinating.html' title='Sunday procrastinating ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-7605098387099240705</id><published>2008-07-03T08:40:00.000-07:00</published><updated>2008-07-03T08:41:36.823-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Steve Jobs'/><category scheme='http://www.blogger.com/atom/ns#' term='Videos'/><category scheme='http://www.blogger.com/atom/ns#' term='Pixar'/><title type='text'>YouTube night ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lQfxdt0YNZA/SGzSQzQ8DjI/AAAAAAAAABg/snxy2op_KTo/s1600-h/Apple.III.1980.102646176.fc.lg.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 130px; height: 168px;" src="http://2.bp.blogspot.com/_lQfxdt0YNZA/SGzSQzQ8DjI/AAAAAAAAABg/snxy2op_KTo/s200/Apple.III.1980.102646176.fc.lg.jpg" alt="" id="BLOGGER_PHOTO_ID_5218777254296555058" border="0" /&gt;&lt;/a&gt;Last night I stumbled on an &lt;a href="http://www.youtube.com/user/ComputerHistory"&gt;interesting series of videos&lt;/a&gt; from the &lt;a href="http://www.computerhistory.org/"&gt;Computer History Museum&lt;/a&gt;, and watched &lt;a href="http://www.youtube.com/watch?v=YjSExqtiIyg&amp;amp;feature=user"&gt;the one featuring&lt;/a&gt; several of the key persons at &lt;a href="http://en.wikipedia.org/wiki/Pixar"&gt;Pixar&lt;/a&gt; including &lt;span style="font-style: italic;"&gt;The Incredibles&lt;/span&gt;' director &lt;a href="http://en.wikipedia.org/wiki/Brad_Bird"&gt;Bard Bird&lt;/a&gt;. Quite the interesting (and long by YouTube standards) talk. I don't think I caught the &lt;span style="font-style: italic;"&gt;moderator&lt;/span&gt;'s name but since he was talking about his book to be released "soon", at first I was thinking that it could be &lt;span style="font-style: italic;"&gt;David Price &lt;/span&gt;(&lt;a href="http://www.amazon.ca/Pixar-Touch-Making-Company/dp/0307265757/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1215091608&amp;amp;sr=8-1"&gt;The Pixar touch&lt;/a&gt;) ... but then that book just got released, so since the video was recorded in 2005 that couldn't be. And it turns out that it was Michael Rubin, author of &lt;a href="http://www.amazon.ca/Droidmaker-George-Lucas-Digital-Revolution/dp/0937404675/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1215092032&amp;amp;sr=1-1"&gt;Droidmaker: George Lucas and the Digital Revolution&lt;/a&gt; ... Anyhow, that &lt;span style="font-style: italic;"&gt;computer museum&lt;/span&gt; have a lot of good stuff on their web site, including (but not limited to) &lt;a href="http://www.computerhistory.org/brochures/"&gt;some old brochures&lt;/a&gt; downloadable in PDF format :-)&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;While on YouTube, I also found this funny video on Steve Jobs favorites expressions:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/QOVRgVPrGlQ&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/QOVRgVPrGlQ&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Pretty cool, uh? ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-7605098387099240705?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/7605098387099240705/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=7605098387099240705' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7605098387099240705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/7605098387099240705'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/07/youtube-night.html' title='YouTube night ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_lQfxdt0YNZA/SGzSQzQ8DjI/AAAAAAAAABg/snxy2op_KTo/s72-c/Apple.III.1980.102646176.fc.lg.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-6842123907765766698</id><published>2008-07-01T11:56:00.000-07:00</published><updated>2008-07-01T11:57:50.016-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='Cocoa'/><category scheme='http://www.blogger.com/atom/ns#' term='Wall-E'/><title type='text'>Happy Cocoa Day! ... err Canada day ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;Not since my early days as a &lt;a href="http://en.wikipedia.org/wiki/Symbian"&gt;Symbian&lt;/a&gt; developer, have I spent so many days just reading documents without doing much coding. Since today is an holiday in Canada, I'm sizing the opportunity to finish reading &lt;a href="http://developer.apple.com/documentation/Cocoa/Conceptual/MemoryMgmt/MemoryMgmt.html"&gt;&lt;span style="font-style: italic;"&gt;Memory Management Programming Guide for Cocoa&lt;/span&gt;&lt;/a&gt;, and then hopefully start reading the &lt;a href="http://developer.apple.com/documentation/Cocoa/Conceptual/CocoaFundamentals/Introduction/chapter_1_section_1.html#//apple_ref/doc/uid/TP40002974-CH1-DontLinkElementID_267"&gt;&lt;span style="font-style: italic;"&gt;Cocoa Fundamentals Guide&lt;/span&gt;&lt;/a&gt;. Early last week, I had finished reading the &lt;a style="font-style: italic;" href="http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/Introduction/chapter_1_section_1.html#//apple_ref/doc/uid/TP30001163-CH1-SW2"&gt;Objective-C 2.0 document from Apple&lt;/a&gt;, which (&lt;span style="font-style: italic;"&gt;big surprise&lt;/span&gt;) is based on the original &lt;a href="http://en.wikipedia.org/wiki/NeXT"&gt;NeXT&lt;/a&gt; document I had read before, so yeah you can save yourself sometime by skipping that old document ... 9_9 Since I'm going over the memory management rules in use for &lt;a href="http://en.wikipedia.org/wiki/Cocoa_API"&gt;Cocoa&lt;/a&gt; programming, I now realize (with some &lt;span style="font-style: italic;"&gt;embarrassment&lt;/span&gt;) that my mistake with the exception from a &lt;a href="http://geeking-around.blogspot.com/2008/06/to-release-or-not-to-release_25.html"&gt;couple of blog entries ago&lt;/a&gt;, was due to my &lt;span style="font-style: italic;"&gt;ignorance&lt;/span&gt; of the common rule that a &lt;span style="font-style: italic;"&gt;convenience constructor&lt;/span&gt; (such as &lt;code&gt;+exceptionWith...&lt;/code&gt;) must &lt;span style="font-style: italic;"&gt;autorelease&lt;/span&gt; the object that it creates.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Rogers_Communications"&gt;Rogers&lt;/a&gt; have announced last week the &lt;a href="http://prnewswire.com/cgi-bin/stories.pl?ACCT=104&amp;amp;STORY=/www/story/06-27-2008/0004840127&amp;amp;EDATE="&gt;pricing of the plans&lt;/a&gt; to go with the &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone 3G&lt;/a&gt; in Canada. We were going to get an iPhone 3G (for my wife), but since, this is definitely &lt;span style="font-weight: bold;"&gt;way over-priced&lt;/span&gt;, we simply won't as she doesn't really need a cell phone. It's nice that the phone by it-self is much cheaper than a year ago, but the total cost of ownership is &lt;span style="font-weight: bold;"&gt;insane&lt;/span&gt; ... too bad for Rogers &amp;amp; Apple, since it looks like lots of people won't get it for the same reason.&lt;br /&gt;&lt;br /&gt;We went to see &lt;a href="http://en.wikipedia.org/wiki/Wall-E"&gt;Wall-E&lt;/a&gt; last night and really enjoyed it. I don't think it's the best ever &lt;a href="http://en.wikipedia.org/wiki/Pixar"&gt;Pixar&lt;/a&gt; movie in my book, but it is definitely a good one. The usual short movie, &lt;a href="http://en.wikipedia.org/wiki/Presto_%28film%29"&gt;&lt;span style="font-style: italic;"&gt;Presto&lt;/span&gt;&lt;/a&gt;, that is shown before the main attraction is most excellent :-) After the show, we were wondering what is the next movie to be released next year, and I though it will be &lt;a style="font-style: italic;" href="http://en.wikipedia.org/wiki/Toy_Story_3"&gt;Toy Story 3&lt;/a&gt;, but it turns out that it's one called &lt;a style="font-style: italic;" href="http://en.wikipedia.org/wiki/Up_%282009_film%29"&gt;Up&lt;/a&gt; ... and yes, there was no trailer for this up-coming movie before Wall-E :-(&lt;br /&gt;&lt;br /&gt;Last but not least, &lt;a href="http://theocacao.com/"&gt;Scott Stevenson&lt;/a&gt; has recently posted an article on &lt;a style="font-style: italic;" href="http://theocacao.com/document.page/580"&gt;Thinking like a Cocoa programmer&lt;/a&gt;, which is a good read for all Cocoa wannabee like myself :-)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-6842123907765766698?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/6842123907765766698/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=6842123907765766698' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6842123907765766698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6842123907765766698'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/07/happy-cocoa-day-err-canada-day.html' title='Happy Cocoa Day! ... err Canada day ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-2571399407756455070</id><published>2008-06-28T10:30:00.000-07:00</published><updated>2008-06-28T10:32:11.676-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Music'/><title type='text'>Fresh from your mom's garden ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a href="http://www.cbc.ca/radio2/index.html"&gt;CBC Radio 2&lt;/a&gt; has a very interesting radio show called &lt;a href="http://thesignalblog.wordpress.com/"&gt;&lt;span style="font-style: italic;"&gt;The Signal&lt;/span&gt;&lt;/a&gt; which run every day of the week and feature &lt;a href="http://en.wikipedia.org/wiki/Contemporary_music"&gt;contemporary&lt;/a&gt; (&amp;amp; &lt;a href="http://en.wikipedia.org/wiki/Experimental_music"&gt;experimental&lt;/a&gt;) music from around the world (yes, including Canada). Since the show runs from 10pm to 1am, I'm usually not able to listen to more than 10 or 15 minutes of it (I wishes they had a podcast, or some sort of &lt;span style="font-style: italic;"&gt;on demand&lt;/span&gt; playback) but it is usually enough to discover a couple of &lt;span style="font-style: italic;"&gt;intriguing music&lt;/span&gt;, such as the one played last night: &lt;a style="font-style: italic;" href="http://www.gemueseorchester.org/index.php?option=com_frontpage&amp;amp;Itemid=1"&gt;The Vienna Vegetable Orchestra&lt;/a&gt; which use fresh vegetables from the market to make music. A delightful experience, check out this &lt;a href="http://www.youtube.com/"&gt;YouTube&lt;/a&gt; video:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/hpfYt7vRHuY"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/hpfYt7vRHuY" type="application/x-shockwave-flash" wmode="transparent" height="344" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Pretty neat eh? :-) &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-2571399407756455070?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/2571399407756455070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=2571399407756455070' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2571399407756455070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2571399407756455070'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/fresh-from-your-moms-garden.html' title='Fresh from your mom&apos;s garden ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-580405020276674730</id><published>2008-06-26T15:43:00.000-07:00</published><updated>2008-06-26T15:49:10.353-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Music'/><title type='text'>"Classical" Hip Hop</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lQfxdt0YNZA/SGQY-XqqZKI/AAAAAAAAABY/TEYilJFRy0c/s1600-h/buck-65-with-symphony-nova-scotia.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_lQfxdt0YNZA/SGQY-XqqZKI/AAAAAAAAABY/TEYilJFRy0c/s200/buck-65-with-symphony-nova-scotia.jpg" alt="" id="BLOGGER_PHOTO_ID_5216321728185787554" border="0" /&gt;&lt;/a&gt;If you happen to have read my first post on this blog, you already know that I won't be only talking &lt;span style="font-style: italic;"&gt;programming&lt;/span&gt; here, but that will also blog about other subjects of interest, such as this one. &lt;a href="http://www.cbc.ca/radio2/"&gt;CBC Radio 2&lt;/a&gt; have made available on their &lt;a href="http://www.cbc.ca/radio2/cod/"&gt;&lt;span style="font-style: italic;"&gt;Concerts on Demand&lt;/span&gt;&lt;/a&gt; site, &lt;a href="http://www.cbc.ca/radio2/cod/concerts/20080418bucks"&gt;a recording of the concert&lt;/a&gt; that &lt;a href="http://en.wikipedia.org/wiki/Buck_65"&gt;Buck 65&lt;/a&gt; have made with &lt;a href="http://www.symphonynovascotia.ca/"&gt;Symphony Nova Scotia&lt;/a&gt;. Yep, that's right ... an iconic figure of the &lt;span style="font-style: italic;"&gt;Canadian Hip Hop scene&lt;/span&gt;, with a &lt;span style="font-style: italic;"&gt;classical orchestra&lt;/span&gt;! &lt;a href="http://en.wikipedia.org/wiki/Turntablist"&gt;Turntable&lt;/a&gt; and computer as part of the usual suspects of an orchestra!?? Simply Brillant! I hope this will come out eventually as a CD ... or better, as an &lt;a href="http://en.wikipedia.org/wiki/ITunes"&gt;iTunes&lt;/a&gt; download ;-)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-580405020276674730?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/580405020276674730/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=580405020276674730' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/580405020276674730'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/580405020276674730'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/classical-hip-hop.html' title='&quot;Classical&quot; Hip Hop'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_lQfxdt0YNZA/SGQY-XqqZKI/AAAAAAAAABY/TEYilJFRy0c/s72-c/buck-65-with-symphony-nova-scotia.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-1983925489437538543</id><published>2008-06-25T17:45:00.000-07:00</published><updated>2008-06-25T17:46:57.865-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='Exception'/><title type='text'>To release or not to release? autorelease duh!</title><content type='html'>&lt;div style="text-align: justify;"&gt;Well, it turns out that the standard &lt;span style="font-style: italic;"&gt;class methods&lt;/span&gt; used to instantiate a new &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSException_Class/Reference/Reference.html"&gt;NSException&lt;/a&gt; object, send an &lt;code&gt;autorelease&lt;/code&gt; message to the object, effectively putting it on the nearest &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSAutoreleasePool_Class/Reference/Reference.html"&gt;NSAutoreleasePool&lt;/a&gt;. As with my &lt;a href="http://geeking-around.blogspot.com/2008/06/zero-cost-exception.html"&gt;earlier issue&lt;/a&gt; with the cost of the &lt;span style="font-style: italic;"&gt;try/catch block&lt;/span&gt;, I was &lt;span style="font-style: italic;"&gt;mis-informed &lt;/span&gt;:-| ... mind you, I have yet to see any official document clearly stating the memory whereabouts of an exception ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-1983925489437538543?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/1983925489437538543/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=1983925489437538543' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1983925489437538543'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1983925489437538543'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/to-release-or-not-to-release_25.html' title='To release or not to release? autorelease duh!'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-4503598485433321061</id><published>2008-06-25T06:37:00.000-07:00</published><updated>2008-06-25T06:43:32.368-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='Exception'/><title type='text'>To release or not to release?</title><content type='html'>&lt;div style="text-align: justify;"&gt;Since &lt;span style="font-style: italic;"&gt;exceptions&lt;/span&gt; in &lt;a href="http://en.wikipedia.org/wiki/Objective-C"&gt;Objective-C&lt;/a&gt; are full featured objects (which don't have to be derived from &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSException_Class/Reference/Reference.html"&gt;NSException&lt;/a&gt;), it is legit for a &lt;span style="font-style: italic;"&gt;code monkey&lt;/span&gt; to wonder when are the &lt;span style="font-style: italic;"&gt;exceptions&lt;/span&gt; ... well you know, &lt;span style="font-style: italic;"&gt;released&lt;/span&gt;. From what I have seen so far in &lt;a href="http://developer.apple.com/index.html"&gt;Apple&lt;/a&gt; documents and from (most) code samples I see on the web, it appears as &lt;span style="font-style: italic;"&gt;exception object&lt;/span&gt; are released &lt;span style="font-style: italic;"&gt;automagically&lt;/span&gt; at some point ... but are they really? Having derived &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt;'s exception class to add an &lt;span style="font-style: italic;"&gt;origin&lt;/span&gt; field to it, I also added to my class an implementation of the &lt;code&gt;dealloc&lt;/code&gt; method (so that I could release the &lt;span style="font-style: italic;"&gt;origin&lt;/span&gt; string). For good measure, I also added a &lt;code&gt;printf&lt;/code&gt; statement just to verify that the method was been called (e.g I could have &lt;span style="font-style: italic;"&gt;goofed up&lt;/span&gt; the signature).&lt;br /&gt;&lt;br /&gt;As you will have guessed (easy since otherwise I will not be blogging about it), I found out that the method was not been called unless I explicitly send a &lt;code&gt;release&lt;/code&gt; or &lt;code&gt;autorelease&lt;/code&gt; message to the exception object within the &lt;span style="font-style: italic;"&gt;catch block&lt;/span&gt; ... (!!?) A quick search on the web didn't yield more details, except for an blog post by &lt;a href="http://chanson.livejournal.com/"&gt;Chris Hanson&lt;/a&gt; showing an &lt;code&gt;autorelease&lt;/code&gt; message been sent from a &lt;span style="font-style: italic;"&gt;finally block&lt;/span&gt; for &lt;a href="http://chanson.livejournal.com/tag/exceptions#entry_126035"&gt;a caught exception&lt;/a&gt; (however that occurrence is due to him retaining the exception in the &lt;span style="font-style: italic;"&gt;catch block&lt;/span&gt;, so not really relevant to the case at hand). I'll have to dig this further ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-4503598485433321061?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/4503598485433321061/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=4503598485433321061' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4503598485433321061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4503598485433321061'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/to-release-or-not-to-release.html' title='To release or not to release?'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-4213562747909604270</id><published>2008-06-24T18:05:00.000-07:00</published><updated>2008-06-24T18:07:49.884-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='Wall-E'/><category scheme='http://www.blogger.com/atom/ns#' term='Exception'/><title type='text'>NSObject+CleanupAwareness</title><content type='html'>&lt;div style="text-align: justify;"&gt;To the risk of &lt;span style="font-style: italic;"&gt;boring to death&lt;/span&gt; my single reader (sorry Usman!), let's continue a bit on the subject of exception :-P Thanks to Objective-C support for &lt;a href="http://en.wikipedia.org/wiki/Objective-C#Categories"&gt;&lt;span style="font-style: italic;"&gt;categories&lt;/span&gt;&lt;/a&gt;, it is possible to add &lt;span style="font-style: italic;"&gt;shortcut methods&lt;/span&gt; to the ubiquitous &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSObject_Class/Reference/Reference.html"&gt;NSObject&lt;/a&gt; class, so that any instantiation of a derived class (virtually any classes of &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt;) can push and pop itself on/from an existing &lt;span style="font-style: italic;"&gt;cleanup stack&lt;/span&gt;. And how do we get around of doing that you may ask? Well simply by creating a category of the class:&lt;br /&gt;&lt;pre&gt;@interface NSObject (CleanupAwareness)&lt;br /&gt;&lt;br /&gt;- (void) pushForCleanupL;&lt;br /&gt;&lt;br /&gt;- (void) popFromCleanupL;&lt;br /&gt;&lt;br /&gt;@end&lt;br /&gt;&lt;/pre&gt;The implementing it as follow:&lt;br /&gt;&lt;pre&gt;@implementation NSObject (CleanupAwareness)&lt;br /&gt;&lt;br /&gt;- (void) pushForCleanupL {&lt;br /&gt;&lt;br /&gt;  [[HZCleanupStack current] pushL:self];&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;- (void) popFromCleanupL {&lt;br /&gt;&lt;br /&gt;  [[HZCleanupStack current] popL:self];&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;@end&lt;br /&gt;&lt;/pre&gt;Then Objective-C will work its magic and any code linked to yours will have it's objects capable of being placed on our &lt;span style="font-style: italic;"&gt;cleanup stack&lt;/span&gt;. &lt;span style="font-weight: bold;"&gt;Cool stuff isn't it?&lt;/span&gt; At first I wasn't too much excited by Objective-C (its syntax was a little odd for a &lt;span style="font-style: italic;"&gt;C++ monkey&lt;/span&gt; like myself), but it have definitely grow on me as I got to known it better :-)&lt;br /&gt;&lt;br /&gt;If you are, like myself, &lt;span style="font-style: italic;"&gt;dying&lt;/span&gt; to see the next &lt;a href="http://www.pixar.com/"&gt;Pixar&lt;/a&gt; movie (this Friday!), be sure to read the &lt;a href="http://theocacao.com/document.page/579"&gt;review&lt;/a&gt; written by (darn) lucky &lt;a href="http://theocacao.com/"&gt;Scott Stevenson&lt;/a&gt; on his blog. While you are had it, you may want to also read all the &lt;span style="font-weight: bold;"&gt;good&lt;/span&gt; material that he have written about Cocoa &amp;amp; Objective-C on &lt;a href="http://cocoadevcentral.com/"&gt;Cocoa Dev Central&lt;/a&gt;.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-4213562747909604270?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/4213562747909604270/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=4213562747909604270' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4213562747909604270'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4213562747909604270'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/nsobjectcleanupawareness.html' title='NSObject+CleanupAwareness'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-8017082234265033883</id><published>2008-06-22T22:24:00.000-07:00</published><updated>2008-06-22T22:25:58.068-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='Exception'/><title type='text'>Tidying things up a bit ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;The second thing I have been carrying over from &lt;a href="http://en.wikipedia.org/wiki/Symbian_OS"&gt;Symbian&lt;/a&gt; is a mechanism that goes &lt;span style="font-style: italic;"&gt;hand-in-hand&lt;/span&gt; with exceptions, the (infamous among beginners) &lt;a style="font-style: italic;" href="http://www.symbian.com/developer/techlib/v70sdocs/doc_source/DevGuides/cpp/Base/MemoryManagement/CleanupSupport/CleanupSupportGuide2/index.html"&gt;cleanup stack&lt;/a&gt;. Its purpose is quite simple: &lt;span style="font-style: italic;"&gt;insure that no memory will be leaked when exception occurs&lt;/span&gt;. In an environment where exceptions are used pervasively (like Symbian), the interruption of the &lt;span style="font-style: italic;"&gt;natural flow of execution&lt;/span&gt; can easily lead to &lt;span style="font-style: italic;"&gt;temporary objects&lt;/span&gt; allocated on the &lt;a href="http://en.wikipedia.org/wiki/Dynamic_memory_allocation"&gt;heap&lt;/a&gt; been &lt;span style="font-style: italic;"&gt;orphaned,&lt;/span&gt; each constituting a &lt;a href="http://en.wikipedia.org/wiki/Memory_leak"&gt;memory leak&lt;/a&gt;. The idea behind the &lt;span style="font-style: italic;"&gt;cleanup stack&lt;/span&gt; &lt;span style="font-style: italic;"&gt;(Symbian's style) &lt;/span&gt;, is to allow (and actually enforce) programmers to push object on a &lt;span style="font-style: italic;"&gt;special stack&lt;/span&gt; prior to any call that could &lt;span style="font-style: italic;"&gt;throw an exception&lt;/span&gt;, or to use the standard Symbian &lt;a href="http://en.wikipedia.org/wiki/Jargon"&gt;lingo&lt;/a&gt;: &lt;span style="font-style: italic;"&gt;leave&lt;/span&gt;. Once the call has been completed, the object must be popped from the &lt;span style="font-style: italic;"&gt;special stack&lt;/span&gt;. This sounds like extra work for the developer isn't it? Well, yeah it is a bit more work and a bit more careful thinking, but it is well worth the trouble when the application must run for long period of time on an system where resources are spare (iPhone anyone?).&lt;br /&gt;&lt;br /&gt;Originally (well, last week actually ...) I had implemented my &lt;span style="font-style: italic;"&gt;cleanup stack&lt;/span&gt; as a set of C functions to be called from within a try/catch block. The problem is that thanks to the lack of &lt;a href="http://en.wikipedia.org/wiki/Namespace_%28computer_science%29"&gt;namespace&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Function_overloading"&gt;functions overloading&lt;/a&gt; in &lt;a href="http://en.wikipedia.org/wiki/C_%28programming_language%29"&gt;C&lt;/a&gt;, my functions had the &lt;span style="font-style: italic;"&gt;severe&lt;/span&gt; tendency to be ultra long. Now, I know about Apple's mantra: &lt;span style="font-style: italic;"&gt;"developer spend more times reading than writing code"&lt;/span&gt;, but still who'll like to have to type this function call hundreds of times per file (yeah , OK I exaggerate a bit about the occurence of such call ...):&lt;br /&gt;&lt;pre&gt;HZCleanupStackPopAndReleaseManyWithLastObjectL(...);&lt;/pre&gt;So yesterday I started re-implementing my &lt;span style="font-style: italic;"&gt;stack&lt;/span&gt; as an &lt;a href="http://en.wikipedia.org/wiki/Objective-C"&gt;Objective-C&lt;/a&gt; class which allow for more developer friendly code to be written, at the cost of a bit more &lt;span style="font-style: italic;"&gt;overhead&lt;/span&gt; since &lt;span style="font-style: italic;"&gt;messages&lt;/span&gt; are to be sent to the stack instead of more efficient function calls. Now, in case you did not follow one of the first page referenced on this post (actually the second one), allow me qto uickly show how the &lt;span style="font-style: italic;"&gt;cleanup stack&lt;/span&gt; is been used. Let's assume that you need to call a function that is known to leave (following Symbian coding style, the function/method name &lt;span style="font-weight: bold;"&gt;must&lt;/span&gt; be &lt;span style="font-style: italic;"&gt;post fixed&lt;/span&gt; with an upper case &lt;span style="font-style: italic; font-weight: bold;"&gt;L&lt;/span&gt;): &lt;code&gt;doSomeL()&lt;/code&gt;. As an experienced developer, you know that you must call this function from within a &lt;span style="font-style: italic;"&gt;try/catch block&lt;/span&gt; or from another function that is also known to throw exception. In this case, we will use a &lt;span style="font-style: italic;"&gt;try/catch block&lt;/span&gt;. Your function will be looking somewhat like this:&lt;br /&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;void doTest()&lt;br /&gt;{&lt;br /&gt;@try {&lt;br /&gt;&lt;br /&gt;[HZCleanupStack windUpL];&lt;br /&gt;&lt;br /&gt;doSomeL();&lt;br /&gt;&lt;br /&gt;} @catch(NSException* lException) {&lt;br /&gt;&lt;br /&gt;printf("exception occured\n");&lt;br /&gt;&lt;br /&gt;} @finally {&lt;br /&gt;&lt;br /&gt;[HZCleanupStack unwind];&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;It's contents is simple: at the start of the &lt;span style="font-style: italic;"&gt;try block&lt;/span&gt;, the &lt;span style="font-style: italic;"&gt;cleanup stack&lt;/span&gt; is winded-up (created) then the function is called. When the &lt;span style="font-style: italic;"&gt;try/catch block&lt;/span&gt; end, the stack is un-winded (destroyed). If an object was created (and placed on the &lt;span style="font-style: italic;"&gt;cleanup stack&lt;/span&gt;) in the &lt;code&gt;doSomeL()&lt;/code&gt; function before it threw an exception, the un-winding of the stack in the &lt;span style="font-style: italic;"&gt;finally block&lt;/span&gt; will &lt;span style="font-style: italic;"&gt;release&lt;/span&gt; it, serving the purpose it was built for. Let's now have a look at an example of a &lt;span style="font-style: italic;"&gt;toublesome&lt;/span&gt; function:&lt;br /&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;void doSomeL()&lt;br /&gt;{&lt;br /&gt;HZObject*       lObject[2];&lt;br /&gt;HZReleaseStack* lStack = [HZCleanupStack current];&lt;br /&gt;&lt;br /&gt;lObject[0] = [HZObject newLC];&lt;br /&gt;lObject[1] = [HZObject newLC];&lt;br /&gt;    &lt;br /&gt;someFunctionL(false,lObject[1]);&lt;br /&gt;&lt;br /&gt;[lStack popAndReleaseManyL:2 withLast:lObject[0]];&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;Here, we will assume that we have an class of object (&lt;code&gt;HZObject&lt;/code&gt;) which will accept the &lt;span style="font-style: italic;"&gt;selector&lt;/span&gt; &lt;code&gt;newLC&lt;/code&gt; as a way of instantiating objects. The post fix &lt;code&gt;LC&lt;/code&gt; indicates that the call can &lt;span style="font-style: italic;"&gt;throw&lt;/span&gt; an exception and that otherwise it will leave the created instance on the &lt;span style="font-style: italic;"&gt;cleanup stack&lt;/span&gt;. Since the function is known to potentially &lt;span style="font-style: italic;"&gt;leave&lt;/span&gt;, it is &lt;span style="font-weight: bold;"&gt;assumed&lt;/span&gt; that it have been called from within a &lt;span style="font-style: italic;"&gt;try/catch block&lt;/span&gt;, thus a &lt;span style="font-style: italic;"&gt;cleanup stack&lt;/span&gt; is available, the &lt;span style="font-style: italic;"&gt;selector&lt;/span&gt; &lt;code&gt;current&lt;/code&gt; used on the class &lt;code&gt;HZCleanupStack&lt;/code&gt; will return it to us (in fact, it will return the last winded stack for the calling thread) so that we can pop the two allocated objects. Now, what happens if this function isn't called from within a &lt;span style="font-style: italic;"&gt;try/catch&lt;/span&gt; block? Well, the creation of the first object will throw an exception and the object it-self will be &lt;span style="font-style: italic;"&gt;released&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;If that help, I should maybe mention that the &lt;span style="font-style: italic;"&gt;cleanup stack&lt;/span&gt; concept is somewhat a kin to a &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSAutoreleasePool_Class/Reference/Reference.html"&gt;NSAutoreleasePool&lt;/a&gt; object with the added ability to push then pop objects at will. Maybe I'll add to this in a following post.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-8017082234265033883?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/8017082234265033883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=8017082234265033883' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/8017082234265033883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/8017082234265033883'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/tidying-things-up-bit.html' title='Tidying things up a bit ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-3647914609357630704</id><published>2008-06-19T08:13:00.000-07:00</published><updated>2008-06-19T08:46:50.858-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Indie'/><category scheme='http://www.blogger.com/atom/ns#' term='Mac'/><category scheme='http://www.blogger.com/atom/ns#' term='Shipley'/><title type='text'>Be a software slut ...</title><content type='html'>&lt;div style="text-align: justify;"&gt;Catchy title isn't it? Obviously it's an intriguing concept that I took from the &lt;span style="font-weight: bold;"&gt;hilarious&lt;/span&gt; talk (&lt;a href="http://www.viddler.com/explore/rentzsch/videos/4/"&gt;video&lt;/a&gt;) that&lt;span style="font-style: italic;"&gt; superstar&lt;/span&gt; &lt;a href="http://en.wikipedia.org/wiki/Indie_%28culture%29"&gt;indie&lt;/a&gt; Mac developer &lt;a href="http://en.wikipedia.org/wiki/Wil_Shipley"&gt;Wil Shipley&lt;/a&gt; (of &lt;a href="http://www.omnigroup.com/"&gt;Omni Group&lt;/a&gt; &amp;amp; &lt;a href="http://www.delicious-monster.com/"&gt;Delicious Monster&lt;/a&gt; fame) gave at the &lt;a href="http://en.wikipedia.org/wiki/C4_%28conference%29"&gt;C4&lt;/a&gt; conference in August last year. If you are an indie developer, or if you would like to be, or if you think that you may want to be (but don't know if you can do it), then you most definitely &lt;span style="font-style: italic; font-weight: bold;"&gt;must&lt;/span&gt; watch Wil's take on &lt;a href="http://en.wikipedia.org/wiki/Promotion_%28marketing%29"&gt;&lt;span style="font-style: italic;"&gt;hype&lt;/span&gt;&lt;/a&gt; (and other things that could potentialy make you &lt;span style="font-style: italic;"&gt;successful&lt;/span&gt;). I guess, I should also mention &lt;a href="http://wilshipley.com/blog/"&gt;his blog&lt;/a&gt;, although I'm sure that anyone reading this will have known about it for a while ... unless you are new to the &lt;span style="font-style: italic;"&gt;scene&lt;/span&gt; (oh man this soooo early 90s! Quick get the &lt;a href="http://en.wikipedia.org/wiki/Amiga"&gt;Amiga&lt;/a&gt; out!). Anyhow, there's a lot of (very) good stuff to learn from that talk, so make sure you have some paper and a pen handy so that you can jolt it all down. How do I know it's sound advices? Well ... he's a successful independent developer, and I'm not.  Therefore, what he have to said must be good advices ... unless he's just applying his (core) principles and hyping things ... hmmm 8-o&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-3647914609357630704?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/3647914609357630704/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=3647914609357630704' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3647914609357630704'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3647914609357630704'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/be-software-slut.html' title='Be a software slut ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-233359070615779539</id><published>2008-06-18T21:55:00.000-07:00</published><updated>2008-06-18T22:14:11.999-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='Exception'/><category scheme='http://www.blogger.com/atom/ns#' term='Performance'/><title type='text'>Zero-cost exception! (No, really).</title><content type='html'>&lt;div style="text-align: justify;"&gt;Following up on my post from this morning, it turned out that my &lt;span class="Apple-style-span" style="font-style: italic;"&gt;hunch&lt;/span&gt; was correct. &lt;a href="http://en.wikipedia.org/wiki/GCC"&gt;GCC&lt;/a&gt; on 64-bit &lt;a href="http://en.wikipedia.org/wiki/MacOS_X"&gt;MacOS X&lt;/a&gt;, require the &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;-m64&lt;/span&gt; flag to compile x64 code. Once I added it, the &lt;span class="Apple-style-span" style="font-style: italic;"&gt;try/catch&lt;/span&gt; block really did become &lt;span class="Apple-style-span" style="font-style: italic;"&gt;zero-cost&lt;/span&gt;. Problem solved (now what about on the &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt;?) ... as advertised by Apple release note :-)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-233359070615779539?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/233359070615779539/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=233359070615779539' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/233359070615779539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/233359070615779539'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/zero-cost-exception-no-really.html' title='Zero-cost exception! (No, really).'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-366388342287034715</id><published>2008-06-18T11:40:00.000-07:00</published><updated>2008-06-18T11:47:51.262-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='Exception'/><category scheme='http://www.blogger.com/atom/ns#' term='Performance'/><title type='text'>Zero-cost exception?</title><content type='html'>&lt;div style="text-align: justify;"&gt;Like any &lt;a href="http://en.wikipedia.org/wiki/Code_monkey"&gt;&lt;span style="font-style: italic;"&gt;code monkey&lt;/span&gt;&lt;/a&gt; that have been around for a while, I have assembled from my various experiences (&lt;a href="http://en.wikipedia.org/wiki/BeOS"&gt;BeOS&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/QNX"&gt;QNX&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Symbian"&gt;Symbian&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Win32"&gt;Win32&lt;/a&gt; ...) a particular coding style and set of &lt;a href="http://en.wikipedia.org/wiki/Paradigm"&gt;paradigms&lt;/a&gt;/&lt;a href="http://en.wikipedia.org/wiki/Concept"&gt;concepts&lt;/a&gt; I like to use for my own projects. When I start on a new platform, I usually have to adapt my style to what is available and/or most commonly used on the platform, and this is usually a good exercise that goes hand-in-hand with learning a new environment. Since I have picked-up the usage of &lt;a href="http://en.wikipedia.org/wiki/Exception_handling"&gt;exception&lt;/a&gt; for error handling from my mobile development days at &lt;a href="http://en.wikipedia.org/wiki/Nokia"&gt;Nokia&lt;/a&gt;, this is one of the first thing I have been looking at when starting with &lt;a href="http://en.wikipedia.org/wiki/Objective-C"&gt;Objective-C&lt;/a&gt;. Now, I'm not going, in this blog, to join the on-going debate raging in the software community about the pros&amp;amp;cons of using &lt;span style="font-style: italic;"&gt;exceptions &lt;/span&gt;&lt;span&gt;vs.&lt;/span&gt;&lt;span style="font-style: italic;"&gt; returning error codes&lt;/span&gt;, however I should state that I do prefers to use &lt;span style="font-style: italic;"&gt;exceptions &lt;/span&gt;as they allow for a more elegant and clean (meaning readable) code (IMHO).&lt;br /&gt;&lt;br /&gt;After finding a couple of references (can't find the link now) to the fact that Objective-C's &lt;span style="font-style: italic;"&gt;exception handling&lt;/span&gt; is not as efficient as &lt;a href="http://en.wikipedia.org/wiki/C%2B%2B"&gt;C++&lt;/a&gt; (meaning not  &lt;span style="font-style: italic;"&gt;zero-cost&lt;/span&gt;), I decided that I should try to check that out. For that purpose I wrote a simple (and naive) test program which measure the elapsed time for a loop calling a function containing either a &lt;span style="font-style: italic;"&gt;try/catch&lt;/span&gt; block or a old fashion &lt;span style="font-style: italic;"&gt;if&lt;/span&gt; statement. Here is the function been called repeatedly:&lt;br /&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;void loop(Foo* aFoo)&lt;br /&gt;{ &lt;br /&gt;static int i=0;&lt;br /&gt;#ifdef _EXCEPTION&lt;br /&gt;@try {&lt;br /&gt;  [aFoo doSomeL:i++];&lt;br /&gt;} @catch(NSException* lException) {&lt;br /&gt;  printf("An exception was thrown!\n");&lt;br /&gt;} @finally {&lt;br /&gt;}&lt;br /&gt;#else&lt;br /&gt;if([aFoo doSome:i++] == NO)&lt;br /&gt;  printf("An error occured!\n");      &lt;br /&gt;#endif&lt;br /&gt;}&lt;/span&gt;&lt;/pre&gt;The &lt;span style="font-style: italic;"&gt;Foo&lt;/span&gt; object here used is of no real importance. In both path the message been sent will compare the value passed as argument and will return an error or throw an exception when an hard-coded value is reached within the loop. Since my immediate concern was the cost of &lt;span style="font-style: italic;"&gt;try/catch&lt;/span&gt; block, I had set the hard-coded value to be higher than the loop range so that even if the test was been performed at each loop, it will not trigger an &lt;span style="font-style: italic;"&gt;error&lt;/span&gt; or &lt;span style="font-style: italic;"&gt;exception&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;I was rather disappointed when I ran the program with &lt;span style="font-style: italic;"&gt;if&lt;/span&gt; statement then with the &lt;span style="font-style: italic;"&gt;try/catch&lt;/span&gt; block and noted than the later was &lt;span style="font-weight: bold;"&gt;8.2 times&lt;/span&gt; slower (without any exception been throw). Since my understanding was that Objective-C's exception handling on 64-bit had been improved compared to 32-bit with &lt;a href="http://en.wikipedia.org/wiki/Mac_OS_X_v10.5"&gt;10.5&lt;/a&gt; (see bottom of &lt;a href="http://developer.apple.com/releasenotes/Cocoa/RN-ObjectiveC/index.html"&gt;release notes&lt;/a&gt;), I'm definitely surprised considering that I was testing this on an &lt;a href="http://en.wikipedia.org/wiki/IMac"&gt;iMac&lt;/a&gt; (&lt;a href="http://en.wikipedia.org/wiki/Intel_Core_2_Duo"&gt;Intel Core Duo 2&lt;/a&gt;, gcc 4.0). Now, it is possible that I'm doing something wrong ... I'll have to double check that I was indeed compiling for 64-bit, which I assumed was the case since I believe that gcc will use this &lt;span style="font-style: italic;"&gt;mode&lt;/span&gt; per default on a 64-bit machine (at least that's the way it work on Linux).&lt;br /&gt;&lt;br /&gt;Since I have easy access to a x64 Linux box (gcc 4.1 with Objective-C support), I quickly adapted my test to the absence of &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; and noted with  than the cost of the &lt;span style="font-style: italic;"&gt;try/catch&lt;/span&gt; block was only &lt;span style="font-weight: bold;"&gt;1.03 times&lt;/span&gt; higher than an &lt;span style="font-style: italic;"&gt;if&lt;/span&gt; statement ... evidently &lt;span style="font-style: italic;"&gt;zero-cost&lt;/span&gt; as advertised. So what it's going on with OS-X?&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-366388342287034715?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/366388342287034715/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=366388342287034715' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/366388342287034715'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/366388342287034715'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/zero-cost-exception.html' title='Zero-cost exception?'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-6806254875699508610</id><published>2008-06-17T13:45:00.000-07:00</published><updated>2008-06-17T13:47:54.418-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='1990'/><category scheme='http://www.blogger.com/atom/ns#' term='NeXT'/><title type='text'>Geeky arousal ...</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lQfxdt0YNZA/SFfCi-Q21CI/AAAAAAAAABQ/3m4YlexzGX4/s1600-h/nextcube.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_lQfxdt0YNZA/SFfCi-Q21CI/AAAAAAAAABQ/3m4YlexzGX4/s200/nextcube.jpg" alt="" id="BLOGGER_PHOTO_ID_5212848999789679650" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;Circa 1990, I believe, my mom brought me to see a doctor for a reason that I have long forgotten. In fact it was a very forgetful event aside for one little thing ... Back then (if you recall), Doctors were very much into Personal Computers (in France at least), they were the early adopters of the digital age yet to come. In fact, they were so much into their computer that for the most part of the visit, they were only looking at their screen, typing away. While waiting in the waiting room, I noticed, casually lying on a coffee table, the (then) latest issue of &lt;a href="http://www.svmlemag.fr/"&gt;Science &amp;amp; Vie - Micro&lt;/a&gt; (a french magazine dedicated to computers) with on the cover .... a &lt;a href="http://en.wikipedia.org/wiki/NeXTcube"&gt;NeXTcube&lt;/a&gt; in all its glory!  And boy, was that hardware &lt;span style="font-style: italic;"&gt;cool&lt;/span&gt; and &lt;span style="font-style: italic;"&gt;sexy&lt;/span&gt;!&lt;br /&gt;&lt;br /&gt;Needless to said I feverishly devoured the article, lusting away on the pictures and screenshots of &lt;a href="http://en.wikipedia.org/wiki/NeXTSTEP"&gt;NeXTSTEP&lt;/a&gt; in action, and I was &lt;span style="font-style: italic;"&gt;amazed&lt;/span&gt; and &lt;span style="font-style: italic;"&gt;aroused&lt;/span&gt;. At that time (I was only 16) my experience with computers have been limited to various &lt;a href="http://en.wikipedia.org/wiki/BASIC"&gt;BASIC&lt;/a&gt; powered &lt;span style="font-style: italic;"&gt;"desktop"&lt;/span&gt; (&lt;a href="http://en.wikipedia.org/wiki/Machintosh"&gt;Macintosh&lt;/a&gt;,&lt;a href="http://en.wikipedia.org/wiki/Amstrad_CPC"&gt;Amstrad CPC&lt;/a&gt;,...) and &lt;a href="http://en.wikipedia.org/wiki/Pocket_computer"&gt;pocket computers&lt;/a&gt; (Casio FX-702P). If I did program a bit back then (mostly on my pocket calculator), most of my time was really spend playing video games on my bulky &lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;a href="http://en.wikipedia.org/wiki/IBM_PC"&gt;IBM PC&lt;/a&gt; clone (8088 If I'm not mistaken) running &lt;a href="http://en.wikipedia.org/wiki/MS-DOS"&gt;DOS&lt;/a&gt;.  It's easy to see how NeXT's hardware and OS was very much forward thinking ... It looked not only like something from a science fiction movie, but was also sporting features and a user interface that were very uncommon for the time (at least outside of the universities/multinationals circles). I will love to think that this encounter was the trigger of a closer involvement in computer science ... but I don't think it is really the case. I did start learning the more powerful &lt;a href="http://en.wikipedia.org/wiki/Pascal_%28programming_language%29"&gt;Pascal&lt;/a&gt; language around that time ... but I can't recall if it was due to been &lt;span style="font-style: italic;"&gt;aroused&lt;/span&gt; by NeXT.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;18 years after, I'm finally making the move to NeXTSTEP ... or at least to its descendant, &lt;a href="http://en.wikipedia.org/wiki/Mac_OS_X"&gt;MacOS X&lt;/a&gt;. It's not that I could haven't done earlier since we have had an Apple computer for the past 5 years, but the conditions were never really right ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-6806254875699508610?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/6806254875699508610/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=6806254875699508610' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6806254875699508610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/6806254875699508610'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/geeky-arousal.html' title='Geeky arousal ...'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_lQfxdt0YNZA/SFfCi-Q21CI/AAAAAAAAABQ/3m4YlexzGX4/s72-c/nextcube.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-3522859275117711369</id><published>2008-06-16T14:56:00.000-07:00</published><updated>2008-06-16T14:56:00.994-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><category scheme='http://www.blogger.com/atom/ns#' term='NeXT'/><category scheme='http://www.blogger.com/atom/ns#' term='Cocoa'/><title type='text'>Bandwith stealer (casual)</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lQfxdt0YNZA/SFao8oXWdsI/AAAAAAAAABA/WHwzOvxg97A/s1600-h/P1020583.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_lQfxdt0YNZA/SFao8oXWdsI/AAAAAAAAABA/WHwzOvxg97A/s200/P1020583.jpg" alt="" id="BLOGGER_PHOTO_ID_5212539378308904642" border="0" /&gt;&lt;/a&gt;Since I was in &lt;a href="http://en.wikipedia.org/wiki/Victoria,_British_Columbia"&gt;Victoria&lt;/a&gt; all week-end, I didn't manage to continue learning the way of the OS-X platform. However, since I had my &lt;span style="font-style: italic;"&gt;iTouch&lt;/span&gt; with me, I was able to &lt;span style="font-style: italic;"&gt;"steal"&lt;/span&gt; a bit of bandwidth from various location ... enough to check a couple of web sites (e.g &lt;a href="http://slashdot.org/"&gt;Slashdot&lt;/a&gt;). I don't know if you have travelled to Victoria, but in order to get there you need to take a &lt;a href="http://www.bcferries.com/"&gt;ferry&lt;/a&gt; (1.5 hours) on a very scenic trip. This is usually a good occasion to check out what kind of electronic toys are popular these days. During past trips, I had very often saw many Apple laptops (in majority at time!), but yesterday, oddly enough, I didn't see a single one, only PC laptops and a couple of &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/IPod_touch"&gt;iPod touch&lt;/a&gt; and "older" iPods. I think that it will be nice if a wireless Internet access was provided on-board the ferry, however one should really be enjoying the trip from the promenade decks and not be plowing away on a laptop (albeit it should be possible to geek from the deck).&lt;br /&gt;&lt;br /&gt;In the past, when confronting with the need to learn a new platform, I have in most case been subject to &lt;span style="font-style: italic;"&gt;hard&lt;/span&gt; time constraints (e.g day job)  forcing me to get up to speed as quickly as possible. However, since my current &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt; endeavor isn't bound to any particular project (at the moment) I have been taking my time, &lt;span style="font-style: italic;"&gt;leisurely&lt;/span&gt; (some may said &lt;span style="font-style: italic;"&gt;lazily&lt;/span&gt;) reading the various documents I have printed-out (sorry, I'm not much for ready PDF on a screen). The thing with Apple documentation, is that it is usually filled with good content, while being also pleasant to the eyes. True be told, I haven't really started reading a document authored by Apple, since I have been reading and older document published by &lt;a href="http://en.wikipedia.org/wiki/NeXT"&gt;NeXT&lt;/a&gt;: &lt;a style="font-style: italic;" href="http://www.gnustep.org/resources/documentation/ObjectivCBook.pdf"&gt;Object-Oriented Programming and the Objective-C language&lt;/a&gt;. But, I can said that the layout and content are definitly very much akin to Apple's documents (e.g &lt;i&gt;&lt;a href="http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/ObjC.pdf" class="external text" title="http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/ObjC.pdf" rel="nofollow"&gt;The Objective-C 2.0 Programming Language&lt;/a&gt;). &lt;/i&gt;Since I'm not even half-way trough the document, and that so far it have only covered the basic &lt;a href="http://en.wikipedia.org/wiki/Object-oriented_programming"&gt;OO concepts&lt;/a&gt;, which which I'm already familiar, I can't (yet) tell if it is a recommended reading when getting started with &lt;a href="http://en.wikipedia.org/wiki/Mac_OS_X"&gt;MacOS&lt;/a&gt; programming. Likely it's an interesting read from an historical standpoint, but likely not a mandatory one since it's a little bit outdated (I believe it is from 1997).&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-3522859275117711369?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/3522859275117711369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=3522859275117711369' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3522859275117711369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/3522859275117711369'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/bandwith-stealer-casual.html' title='Bandwith stealer (casual)'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lQfxdt0YNZA/SFao8oXWdsI/AAAAAAAAABA/WHwzOvxg97A/s72-c/P1020583.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-2760340730679595918</id><published>2008-06-13T07:09:00.000-07:00</published><updated>2008-06-13T07:09:18.545-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WWDC'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><category scheme='http://www.blogger.com/atom/ns#' term='Google I/O'/><title type='text'>JavaOne vs. WWDC #2</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lQfxdt0YNZA/SFFxMIsvI2I/AAAAAAAAAA4/2Nywa_AX__A/s1600-h/customLogo.gif.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_lQfxdt0YNZA/SFFxMIsvI2I/AAAAAAAAAA4/2Nywa_AX__A/s200/customLogo.gif.png" alt="" id="BLOGGER_PHOTO_ID_5211070697151865698" border="0" /&gt;&lt;/a&gt;To follow-up on my last post, I wanted to add that WWDC is (obviously) more akin to &lt;a href="http://code.google.com/events/io/"&gt;Google I/O&lt;/a&gt;. There again, most (if not all) of the conference contents is available &lt;a href="http://sites.google.com/site/io/?pli=1"&gt;on the web&lt;/a&gt; (e.g &lt;a href="http://code.google.com/android/"&gt;Android&lt;/a&gt; talks). Now, the thing with WWDC, is that all but the keynote is under an &lt;a href="http://en.wikipedia.org/wiki/Non-disclosure_agreement"&gt;NDA&lt;/a&gt;. One may wonder why all the sessions/talks at a developers conference need to be protected by such agreement? Does &lt;span class="Apple-style-span" style="font-style: italic;"&gt;Cocoa 101&lt;/span&gt; really need to be under NDA?&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Anyhow ... I'm heading for the passport office this morning (to apply in person). Since I have heard a lot of horror stories about how long the line-up can be ... I'm making sure that I have enough loaded up on my &lt;span class="Apple-style-span" style="font-style: italic;"&gt;iTouch&lt;/span&gt; to last several hours.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-2760340730679595918?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/2760340730679595918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=2760340730679595918' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2760340730679595918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/2760340730679595918'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/javaone-vs-wwdc-2.html' title='JavaOne vs. WWDC #2'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_lQfxdt0YNZA/SFFxMIsvI2I/AAAAAAAAAA4/2Nywa_AX__A/s72-c/customLogo.gif.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-1610517380847858437</id><published>2008-06-12T07:31:00.000-07:00</published><updated>2008-06-12T09:46:49.125-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WWDC'/><title type='text'>JavaOne vs. WWDC</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lQfxdt0YNZA/SFE2QOAeZ_I/AAAAAAAAAAw/J5IQvoU4A3o/s1600-h/keynote.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_lQfxdt0YNZA/SFE2QOAeZ_I/AAAAAAAAAAw/J5IQvoU4A3o/s200/keynote.png" alt="" id="BLOGGER_PHOTO_ID_5211005896110270450" border="0" /&gt;&lt;/a&gt;If I had some readers, I'll probably get a lot of &lt;span style="font-style: italic;"&gt;flak&lt;/span&gt; about the title of this post. Afterall, &lt;a href="http://en.wikipedia.org/wiki/JavaOne"&gt;JavaOne&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/WWDC"&gt;WWDC&lt;/a&gt;, it's like comparing ... well &lt;span style="font-style: italic;"&gt;apple&lt;/span&gt; to &lt;span style="font-style: italic;"&gt;orange&lt;/span&gt;. While the Java event is more about Java technologies and the community, Apple's yearly event is very much focused on offering to developers the opportunity to learn/improve/discover the Apple platform(s). So then, what is there to compare you may ask? Well, coverage and openess of the event. While the WWDC keynote is overly covered both by the press and the attendees (and by Apple), the rest of the week goes by relatively un-noticed and uncovered. Sure, there is a couple of blogs/sites on which (lucky) participants share (a bit of) their adventure (e.g &lt;a href="http://theilife.com"&gt;The iLife&lt;/a&gt;) but official coverage from Apple is non-existant (please correct me if I'm wrong). A starck difference with what Sun &lt;a href="http://java.sun.com/javaone/sf/index.jsp"&gt;provides online during&lt;/a&gt; (and after) JavaOne. Now, I'm aware that attending WWDC isn't free, thus I can understand that sessions material isn't readily available on the web during/after the conference, but I do think that a bit more coverage geared towards the developer that couldn't (but wanted to) make it, could be beneficial to the community IMHO.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-1610517380847858437?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/1610517380847858437/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=1610517380847858437' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1610517380847858437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/1610517380847858437'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/javaone-vs-wwdc.html' title='JavaOne vs. WWDC'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_lQfxdt0YNZA/SFE2QOAeZ_I/AAAAAAAAAAw/J5IQvoU4A3o/s72-c/keynote.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2571931302941479673.post-4755516826435287352</id><published>2008-06-11T10:45:00.000-07:00</published><updated>2008-06-11T10:53:59.992-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPod'/><category scheme='http://www.blogger.com/atom/ns#' term='Rambling'/><title type='text'>Vous prendrez bien un bol de cacao chaud?</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://en.wikipedia.org/wiki/Chocolate"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_lQfxdt0YNZA/SE7pphFew5I/AAAAAAAAAAM/mRpn8f7L2FA/s320/800px-Hot_chocolate.jpg" alt="" id="BLOGGER_PHOTO_ID_5210358718379508626" border="0" /&gt;&lt;/a&gt;As you will have guessed (from the title) this is another one of these geeky blogs where the author will be rambling posts after posts on various things including (but not limited to): &lt;a href="http://en.wikipedia.org/wiki/Macintosh"&gt;Mac&lt;/a&gt;, OS, &lt;a href="http://en.wikipedia.org/wiki/IPhone"&gt;iPhone&lt;/a&gt;/&lt;a href="http://en.wikipedia.org/wiki/IPod"&gt;iPod&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Cocoa_%28API%29"&gt;Cocoa&lt;/a&gt;+&lt;a href="http://en.wikipedia.org/wiki/Objective-C"&gt;Objective-C&lt;/a&gt;, programming, gadgets, movies, music ... Well, I think you got the point: &lt;span style="font-style: italic; font-weight: bold;"&gt;heavily geeky stuff&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;About two weeks ago, I got myself an &lt;a href="http://en.wikipedia.org/wiki/IPod_touch"&gt;iPod touch&lt;/a&gt;. The purchasing process by it-self was rather quick (and painless, except for the bank account), however the whole decision process leading to the choice of the latest gadget I should carry around, took weeks... At first, I had set my eyes on a &lt;a href="http://en.wikipedia.org/wiki/PlayStation_Portable"&gt;PSP&lt;/a&gt;. It sounded like the good blend of &lt;span style="font-style: italic;"&gt;gaming&lt;/span&gt;, &lt;span style="font-style: italic;"&gt;mp3ing&lt;/span&gt;, &lt;span style="font-style: italic;"&gt;surfing&lt;/span&gt; and possibly &lt;span style="font-style: italic;"&gt;coding&lt;/span&gt;, but then I found out that in order to &lt;span style="font-style: italic;"&gt;hack&lt;/span&gt; on the device, the battery had to be physically modified (unless that is you get a developer seat from Sony, I presume) ... and that, for a software guy like myself was the definitive deal breaker. Also, during the week leading to my purchase, I managed to borrow my brother-in-law's PSP. The surfing experience on it failed to really excite me (also the text entering method "a la" cellphone is a major pain IMHO), altogether I must said that device is neat ... but definitely not as &lt;span style="font-style: italic;"&gt;sweet&lt;/span&gt; as the iPod, especially since some good (casual, not hardcore) &lt;a href="http://toucharcade.com/"&gt;games&lt;/a&gt; are coming out for it :-)&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Anyhow ... I'll ramble some more in coming posts on my experience with the &lt;span style="font-style: italic;"&gt;iPod touch&lt;/span&gt; (thereafter referred as iTouch), but I can said that the whole thing got me to finally join the legion of the Apple &lt;a href="http://en.wikipedia.org/wiki/Web_monkey"&gt;code monkeys&lt;/a&gt;. Since I have always been (and always be, regardless of the amount of Windows' code I have been coerced into authoring over the years) a &lt;a href="http://en.wikipedia.org/wiki/Unix"&gt;Unix&lt;/a&gt; guy at heart, switching  wasn't much of a big leap ...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2571931302941479673-4755516826435287352?l=geeking-around.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://geeking-around.blogspot.com/feeds/4755516826435287352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2571931302941479673&amp;postID=4755516826435287352' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4755516826435287352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2571931302941479673/posts/default/4755516826435287352'/><link rel='alternate' type='text/html' href='http://geeking-around.blogspot.com/2008/06/vous-prendrez-bien-un-bol-de-cacao.html' title='Vous prendrez bien un bol de cacao chaud?'/><author><name>CocoaGeek</name><uri>http://www.blogger.com/profile/05862751570602642641</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_lQfxdt0YNZA/SjKETy8p3vI/AAAAAAAAAIc/tsPCIG99NrA/S220/MyAvatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lQfxdt0YNZA/SE7pphFew5I/AAAAAAAAAAM/mRpn8f7L2FA/s72-c/800px-Hot_chocolate.jpg' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
