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

<channel>
	<title>Heiko Behrens (Blog) &#187; iPhone</title>
	<atom:link href="http://www.heikobehrens.net/category/iphone/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.heikobehrens.net</link>
	<description>11:60 p.m. - my plain thoughts</description>
	<lastBuildDate>Fri, 20 Aug 2010 14:13:45 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Books you should read to learn iPhone app development</title>
		<link>http://www.heikobehrens.net/2010/08/20/books-you-should-read-to-learn-iphone-app-development/</link>
		<comments>http://www.heikobehrens.net/2010/08/20/books-you-should-read-to-learn-iphone-app-development/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 13:05:18 +0000</pubDate>
		<dc:creator>Heiko Behrens</dc:creator>
				<category><![CDATA[Usability]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.heikobehrens.net/?p=1214</guid>
		<description><![CDATA[Every now and then, people ask me which books they should read after they had dug into Apple&#8217;s official material on the iPhone Dev Center. Whereas starters want a big picture (A) instead of losely stitched articles, more experienced programmers often approach the iPhone development from desktop computing and want to learn more about Objective-C (B) [...]]]></description>
			<content:encoded><![CDATA[<p>Every now and then, people ask me which books they should read after they had dug into Apple&#8217;s official material on the <a href="http://developer.apple.com/iphone">iPhone Dev Center</a>. Whereas starters want a big picture (A) instead of losely stitched articles, more experienced programmers often approach the iPhone development from desktop computing and want to learn more about Objective-C (B) or the interface concepts of the iPhone (C). From different conversations about individual needs and recommendations I find myself mentioning a few favorites again and again.</p>
<p><span id="more-1214"></span></p>
<h2>Beginning iPhone Development</h2>
<p><a href="http://www.amazon.com/Beginning-iPhone-Development-Exploring-SDK/dp/1430224592"><img class="size-full wp-image-1223 alignleft" title="Beginning iPhone Development" src="http://www.heikobehrens.net/wp-content/uploads/2010/08/BeginningIphoneDevelopment.png" alt="" width="200" height="264" /></a></p>
<p>This book truly falls into category (A) and explains step by step how to start developing for the iPhone. <a href="http://www.davemark.com/">Dave Mark</a> and <a href="http://iphonedevelopment.blogspot.com/">Jeff LaMarche</a> not only discuss the concepts of the iPhone SDK. They describe essential little details of the tools you will face during your work such as the key strokes you have to know when using the Interface Builder. Some examples span across several chapters but the authors encourage you to branch out and try things on your own.<br />
It&#8217;s still for the iOS 3.0 and doesn&#8217;t cover multi tasking nor the retina display or universal apps for iPhone and iPad. But once you have mastered this book, looking up those features on the Dev Center should be easy.</p>
<p><a href="http://www.amazon.com/Beginning-iPhone-Development-Exploring-SDK/dp/1430224592">Link to Amazon</a>, <a href="http://www.iphonedevbook.com/">Book&#8217;s Website</a></p>
<h2 style="clear: both;">Cocoa Design Patterns</h2>
<p><a href="http://www.amazon.com/Cocoa-Design-Patterns-Erik-Buck/dp/0321535022"><img class="size-full wp-image-1224 alignleft" title="Cocoa Design Patterns" src="http://www.heikobehrens.net/wp-content/uploads/2010/08/CocoaDesignPatterns.png" alt="" width="200" height="264" /></a></p>
<p>This book definitely is not for beginners, it belongs to category (B). Readers should have worked with Objective-C and other programming languages before to value this great book by Erik Buck and Donald Yacktman. Newcomers to the iPhone development can use this book to gain a deeper understanding of the APIs they will face. Some of the patterns of this book are rather common in other programming languages, others are more or less unique to Objective-C. Over time, you will adapt these patterns to improve the design of your own programs, too.</p>
<p><a href="http://www.amazon.com/Cocoa-Design-Patterns-Erik-Buck/dp/0321535022">Link to Amazon</a>, <a href="http://www.cocoadesignpatterns.com/">Book&#8217;s Website</a></p>
<h2 style="clear: both;">Tapworthy</h2>
<p><a href="http://www.amazon.com/Tapworthy-Designing-Great-iPhone-Apps/dp/1449381650"><img class="size-full wp-image-1225 alignleft" title="Tapworthy" src="http://www.heikobehrens.net/wp-content/uploads/2010/08/Tapworthy.png" alt="" width="200" height="264" /></a></p>
<p>This book is a must-read for mobile app developers and you should definitely read it before you seriously think about the development of an iPhone app. <a href="http://globalmoxie.com/">Josh Clark</a> shares his deep understanding of the mobile user. To make it clear: This is not a coding book! You will learn a lot about designing interfaces (C), guiding your users through your app and keep them using your app by fleshing out its core features. The colorfully illustrated book rounds out with interesting experience reports by the developers of the Facebook app, Twitterrific, Gowalla, Things, and the like.</p>
<p><a href="http://www.amazon.com/Tapworthy-Designing-Great-iPhone-Apps/dp/1449381650">Link to Amazon</a></p>
<p style="clear: both;">Yes, there are a lot more exciting books covering iPhone development but these are my personal highlights of the aforementioned categories. Feel free to ask for more recommendations <a href="http://twitter.com/HBehrens">via twitter</a> or in the comments. What are your own favorites?</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-mail">
			<a href="mailto:?subject=%22Books%20you%20should%20read%20to%20learn%20iPhone%20app%20development%22&amp;body=Link: http://www.heikobehrens.net/2010/08/20/books-you-should-read-to-learn-iphone-app-development/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Every%20now%20and%20then%2C%20people%20ask%20me%20which%20books%20they%20should%20read%20after%20they%20had%20dug%20into%20Apple%27s%20official%20material%20on%20the%20iPhone%20Dev%20Center.%C2%A0Whereas%20starters%20want%20a%20big%20picture%20%28A%29%20instead%20of%20losely%20stitched%20articles%2C%20more%20experienced%20programmers%20often%20approach%20the%20iPhone%20development%20from%20desktop%20com" rel="nofollow" class="external" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.heikobehrens.net/2010/08/20/books-you-should-read-to-learn-iphone-app-development/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Books+you+should+read+to+learn+iPhone+app+development+-+http://www.heikobehrens.net/2010/08/20/books-you-should-read-to-learn-iphone-app-development/&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.heikobehrens.net/2010/08/20/books-you-should-read-to-learn-iphone-app-development/&amp;title=Books+you+should+read+to+learn+iPhone+app+development" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.heikobehrens.net/2010/08/20/books-you-should-read-to-learn-iphone-app-development/&amp;title=Books+you+should+read+to+learn+iPhone+app+development" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.heikobehrens.net/2010/08/20/books-you-should-read-to-learn-iphone-app-development/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.heikobehrens.net/2010/08/20/books-you-should-read-to-learn-iphone-app-development/&amp;bm_description=Books+you+should+read+to+learn+iPhone+app+development&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.heikobehrens.net/2010/08/20/books-you-should-read-to-learn-iphone-app-development/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.heikobehrens.net/2010/08/20/books-you-should-read-to-learn-iphone-app-development/&amp;title=Books+you+should+read+to+learn+iPhone+app+development" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.heikobehrens.net/2010/08/20/books-you-should-read-to-learn-iphone-app-development/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Video Compositing on the iPhone: OpenGL with alpha mask on top of a full motion video</title>
		<link>http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/</link>
		<comments>http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/#comments</comments>
		<pubDate>Wed, 07 Jul 2010 13:50:41 +0000</pubDate>
		<dc:creator>Heiko Behrens</dc:creator>
				<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.heikobehrens.net/?p=1154</guid>
		<description><![CDATA[During the iPhone game project I have written about before we had to implement a highly dynamic 3D scene in great detail here at itemis. From a third-person perspective, the player looks at a semi-transparent ball rolling through a gully towards a waterfall. To implement this with the limited resources of the mobile device we [...]]]></description>
			<content:encoded><![CDATA[<p>During the <a href="http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/">iPhone game project I have written about before</a> we had to implement a highly dynamic 3D scene in great detail here at <a href="http://mobile.itemis.de">itemis</a>. From a third-person perspective, the player looks at a semi-transparent ball rolling through a gully towards a waterfall. To implement this with the limited resources of the mobile device we came up with an adaption of the<a href="http://en.wikipedia.org/wiki/Rear_projection_effect"> rear projection technique</a> as known from film productions.</p>
<div id="attachment_1155" class="wp-caption aligncenter" style="width: 529px"><img class="size-full wp-image-1155" title="compositingExplained" src="http://www.heikobehrens.net/wp-content/uploads/2010/07/compositingExplained.png" alt="Layer compositing" width="519" height="189" /><p class="wp-caption-text">The game screen has been built with a full motion video behind the HUD and the game layer. </p></div>
<p>The game screen as seen by the player internally consists of different layers. The top-most layer contains 2D graphics and displays information such as speed or remaining time. Behind this layer (or plate) the dynamic 3D game scene is being rendered. This layer contains the actual game elements the player controls. It has been built with OpenGL and displays the player&#8217;s character inside a rolling ball.</p>
<p>Now, in addition to this quite common setup we implemented a third layer in the back that plays a <a href="http://en.wikipedia.org/wiki/Full_motion_video">full motion video</a> of a pre-rendered game scene. Even though this technique had been used for games such as <a href="http://en.wikipedia.org/wiki/Star_Wars:_Rebel_Assault">Rebel Assault on the PC</a> between the late 80&#8217;s and the early 90&#8217;s I am not aware of any iPhone game that integrates the game layer as tight as we did with matting and <a href="http://en.wikipedia.org/wiki/Alpha_compositing">alpha compositing</a>.</p>
<div id="attachment_1161" class="wp-caption aligncenter" style="width: 560px"><img class="size-full wp-image-1161" title="Compositing Result" src="http://www.heikobehrens.net/wp-content/uploads/2010/07/compositingResult.png" alt="" width="550" height="187" /><p class="wp-caption-text">Game elements (a) with animated matting (b) appear inside (c) or even &quot;behind&quot; a background movie as illustrated on (d).</p></div>
<p>In no case we wanted to deliver a separate, affixed game layer above the movie. Instead, we tried to create the impression of embedded game elements (a) as an integrated part of the pre-rendered movie. With the help of an animated alpha mask (holdout matte) that corresponds to the wave movements of the river (b) we were able to let the water appear above the ball (c). And by using a matte with a true alpha channel we were even able to let submerged parts of the scene shine through the water surface as you can see on (d).</p>
<p><a href="http://itunes.apple.com/de/app/nivea-for-men-waterfallrace/id375677447?mt=8">NIVEA FOR MEN WaterfallRace is available on the App Store</a> for free and I will write another post including a screencast once the scheduled update for known bugs is out.</p>
<p>We were able to make this compositing feature work on the 1st generation iPod Touch and iPhone with the SDK 3.0. Please let me know if you are interested in the technical details on how to configure the EAGLView and MPMoviePlayerController or how to sync with the movie on the targeted iPhone OS 3.1. Also, please comment on this post if there&#8217;s another development aspect of this project you want to learn more about.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-mail">
			<a href="mailto:?subject=%22Video%20Compositing%20on%20the%20iPhone%3A%20OpenGL%20with%20alpha%20mask%20on%20top%20of%20a%20full%20motion%20video%22&amp;body=Link: http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A During%20the%20iPhone%20game%20project%20I%20have%20written%20about%20before%20we%20had%20to%20implement%20a%20highly%20dynamic%203D%20scene%20in%20great%20detail%20here%20at%20itemis.%20From%20a%20third-person%20perspective%2C%20the%20player%20looks%20at%20a%20semi-transparent%20ball%20rolling%20through%20a%20gully%20towards%20a%20waterfall.%20To%20implement%20this%20with%20the%20limited%20resour" rel="nofollow" class="external" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Video+Compositing+on+the+iPhone%3A+OpenGL+with+alpha+mask+on+top+of+a+full+motion+%5B..%5D+-+http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/&amp;title=Video+Compositing+on+the+iPhone%3A+OpenGL+with+alpha+mask+on+top+of+a+full+motion+video" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/&amp;title=Video+Compositing+on+the+iPhone%3A+OpenGL+with+alpha+mask+on+top+of+a+full+motion+video" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/&amp;bm_description=Video+Compositing+on+the+iPhone%3A+OpenGL+with+alpha+mask+on+top+of+a+full+motion+video&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/&amp;title=Video+Compositing+on+the+iPhone%3A+OpenGL+with+alpha+mask+on+top+of+a+full+motion+video" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Psychologically Tricked: Perceived Speed in an iPhone Game</title>
		<link>http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/</link>
		<comments>http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/#comments</comments>
		<pubDate>Thu, 03 Jun 2010 12:00:50 +0000</pubDate>
		<dc:creator>Heiko Behrens</dc:creator>
				<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.heikobehrens.net/?p=1042</guid>
		<description><![CDATA[In a recent iPhone game project I was involved with at itemis the player had to gain speed by tapping on the touch screen. Several game elements conveyed the impression of acceleration to motivate the player achieving this goal. The 3D game graphic of fly-by elements in a canyon were supported by a crescendo of game sounds [...]]]></description>
			<content:encoded><![CDATA[<p>In a recent iPhone game project I was involved with at <a href="http://mobile.itemis.de/">itemis</a> the player had to gain speed by tapping on the touch screen. Several game elements conveyed the impression of acceleration to motivate the player achieving this goal. The 3D game graphic of fly-by elements in a canyon were supported by a crescendo of game sounds and as with any serious racing game there was a speedometer, too.</p>
<p><strong>Update: <a href="http://www.heikobehrens.net/2010/07/07/video-compositing-on-the-iphone-opengl-with-alpha-mask-on-top-of-a-full-motion-video/"><span style="font-weight: normal;">Read the follow-up post</span></a></strong> about the <a href="http://itunes.apple.com/de/app/nivea-for-men-waterfallrace/id375677447?mt=8">NIVEA FOR MEN WaterfallRace</a>.</p>
<div id="attachment_1045" class="wp-caption aligncenter" style="width: 400px"><img class="size-full wp-image-1045" title="separation of actual and displayed value" src="http://www.heikobehrens.net/wp-content/uploads/2010/06/chartscombined.png" alt="" width="390" height="156" /><p class="wp-caption-text">Different functions to separate actual and displayed speed values</p></div>
<p>During our first phase of interaction tests we constantly got the feedback that the speedo was not accurate, though. Players had the impression to be way faster than the value displayed by the gauge. Others complained about how hard it was to gain speed in the lower region.</p>
<p>We decided to separate the actual speed used for game logic from the displayed value as shown by the speedometer. The paper &#8220;<a href="http://www.chrisharrison.net/projects/progressbars/ProgBarHarrison.pdf">Rethinking the Progress Bar</a>&#8221; I stumbled across a while ago when I was improving the user experience of a desktop application came in handy to do so. Chris Harrison et. al. discuss how different update rates of ordinary progress bars change the user&#8217;s perception of progress duration. They come up with some simple, yet useful functions to map a real progress value <em>x</em> to the displayed value <em>f(x)</em>.</p>
<div id="attachment_1046" class="wp-caption aligncenter" style="width: 359px"><img class="size-full wp-image-1046" title="selection of progress functions" src="http://www.heikobehrens.net/wp-content/uploads/2010/06/formulars.png" alt="" width="349" height="172" /><p class="wp-caption-text">Selection of functions as described in Rethinking the Progress Bar</p></div>
<p>Whereas the results in the paper highlight functions that produce an accelerating progress bar in the end we needed to achieve the opposite for our game.</p>
<blockquote><p>My speed is quite good by now but I am not at top speed, yet. I will try harder.</p></blockquote>
<p>On slow speed ranges our speedometer simulated a higher speed and greater variation on speed changes. Beginners got immediate feedback and felt success that way. High speed values on the other hand were visually more difficult to achieve. That behavior seemed to motivate advanced players.</p>
<p>We first used the <em>Inverse Fast Power</em> function but eventually settled on <em>Late Pause</em>. No player ever mentioned a mismatch between the actual and the displayed value after our adjustments and nobody seemed to recognize the fake.</p>
<p><strong>Links</strong></p>
<ul>
<li><a href="http://itunes.apple.com/de/app/nivea-for-men-waterfallrace/id375677447?mt=8">NIVEA FOR MEN WaterfallRace</a> on the App Store</li>
<li><a href="http://www.chrisharrison.net/projects/progressbars/ProgBarHarrison.pdf">&#8220;Rethinking the Progress Bar&#8221; by Chris Harrison, Brian Amento, Stacey Kuznetsov and Robert Bell</a></li>
<li><a href="http://mobile.itemis.de/">itemis mobile application development</a></li>
</ul>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-mail">
			<a href="mailto:?subject=%22Psychologically%20Tricked%3A%20Perceived%20Speed%20in%20an%20iPhone%20Game%22&amp;body=Link: http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A In%20a%20recent%20iPhone%20game%20project%20I%20was%20involved%20with%20at%20itemis%20the%20player%20had%20to%20gain%20speed%20by%20tapping%20on%20the%20touch%20screen.%20Several%20game%20elements%20conveyed%20the%20impression%20of%20acceleration%20to%20motivate%20the%20player%20achieving%20this%20goal.%20The%C2%A03D%20game%C2%A0graphic%20of%20fly-by%20elements%20in%20a%20canyon%20were%20supported%20by%20" rel="nofollow" class="external" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Psychologically+Tricked%3A+Perceived+Speed+in+an+iPhone+Game+-+http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/&amp;title=Psychologically+Tricked%3A+Perceived+Speed+in+an+iPhone+Game" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/&amp;title=Psychologically+Tricked%3A+Perceived+Speed+in+an+iPhone+Game" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/&amp;bm_description=Psychologically+Tricked%3A+Perceived+Speed+in+an+iPhone+Game&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/&amp;title=Psychologically+Tricked%3A+Perceived+Speed+in+an+iPhone+Game" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.heikobehrens.net/2010/06/03/psychologically-tricked-perceived-speed-in-an-iphone-game/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Preview your photoshop design directly on the iPhone/iPad</title>
		<link>http://www.heikobehrens.net/2010/05/07/preview-your-photoshop-design-directly-on-the-iphoneipad/</link>
		<comments>http://www.heikobehrens.net/2010/05/07/preview-your-photoshop-design-directly-on-the-iphoneipad/#comments</comments>
		<pubDate>Fri, 07 May 2010 20:19:51 +0000</pubDate>
		<dc:creator>Heiko Behrens</dc:creator>
				<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.heikobehrens.net/?p=1022</guid>
		<description><![CDATA[Too many screen designers are not yet familiar with mobile touch screens. There, you have to look carefully for buttons large enough to hit with your thumb, fonts that are readable on the go and colors that compensate those energy-saving displays. As with print, you should proof your design against the actual output early and [...]]]></description>
			<content:encoded><![CDATA[<p>Too many screen designers are not yet familiar with mobile touch screens. There, you have to look carefully for buttons large enough to hit with your thumb, fonts that are readable on the go and colors that compensate those energy-saving displays. As with print, you should proof your design against the actual output early and regularly. But since we are in the 21st century we can choose a more effective way than using color calibration, DPI adjustments, or print-outs to do this.</p>
<p>A week ago I stumbled across a small and free tool by <a href="http://zambetti.com/">Nicholas Zambetti</a> called <a href="http://zambetti.com/projects/liveview/">LiveView</a> you can find <a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=301069270&amp;mt=8">on the App Store</a>. Its concept is easy: On your Mac you run the LiveView ScreenCaster. That counter part renders an iPhone/iPad frame in its actual (huge!) dimensions on your monitor. Anything that shines through the screen of that imaginary device is being sent over the Wi-Fi. On the iPhone/iPad you can now run the LiveView app. It automatically finds every Mac currently running a ScreenCaster via Bonjour, asks you for the one to display and&#8230; Well, that&#8217;s it. You can now see your screen pixel perfect without exporting and importing images anymore.</p>
<div id="attachment_1023" class="wp-caption aligncenter" style="width: 410px"><a href="http://www.heikobehrens.net/wp-content/uploads/2010/05/liveviewonipad.png"><img class="size-full wp-image-1023" title="LiveView on iPad" src="http://www.heikobehrens.net/wp-content/uploads/2010/05/liveviewonipad.png" alt="The liveview app+screencaster copies the content of your screen directly to your device over the air." width="400" height="318" /></a><p class="wp-caption-text">Get a live copy of your screen on the iPad with the LiveView app.</p></div>
<p>As it turns out, this is just the way you can immediately test out anything you mock on your big screen. The ScreenCaster frame gives you the right idea about the actual dimensions of the device including its borders. You can adjust its position pixel by pixel with the cursor keys and finally press CMD+H to hide it. This is far more convenient than any VNC-based approach I tried before.</p>
<p>From there, work with <a href="http://www.adobe.com/products/photoshop/family/">Photoshop</a>, <a href="http://www.pixelmator.com/">Pixelmator</a>, <a href="http://www.omnigroup.com/applications/omnigraffle/">OmniGraffle</a> or any other tool as usual. You can hide layers, resize elements, and change your font size while watching everything live on your device.</p>
<p>Impress your client and hand over the iPhone to your stunning audience while swapping layers. Or, use the tool as I did it with my current project at <a href="http://www.itemis.com/">itemis</a>. I looked at a flash website through the iPhone! That way, I was able to gain a first impression of what can be improved with a true iPhone app.</p>
<p>Unfortunately, the ScreenCaster cannot be rotated to send the data in landscape mode. Another flaw is the lack of a Windows version of the ScreenCaster. Nicholas, if you read this: I meant it the way I mailed it. Let me know if I can help you with the Windows port!</p>
<h3>Links</h3>
<ul>
<li><a href="http://zambetti.com/projects/liveview/">LiveView project website</a></li>
<li><a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=301069270&amp;mt=8">LiveView on the App Store</a></li>
<li><a href="http://labs.ideo.com/2009/01/20/liveview-an-iphone-app-for-on-screen-prototyping/">blog post about LiveView by Gentry Underwood</a></li>
</ul>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-mail">
			<a href="mailto:?subject=%22Preview%20your%20photoshop%20design%20directly%20on%20the%20iPhone%2FiPad%22&amp;body=Link: http://www.heikobehrens.net/2010/05/07/preview-your-photoshop-design-directly-on-the-iphoneipad/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Too%20many%20screen%20designers%20are%20not%20yet%20familiar%20with%20mobile%20touch%20screens.%20There%2C%20you%20have%20to%20look%20carefully%20for%20buttons%20large%20enough%20to%20hit%20with%20your%20thumb%2C%20fonts%20that%20are%20readable%20on%20the%20go%20and%20colors%20that%20compensate%20those%20energy-saving%20displays.%20As%20with%20print%2C%20you%20should%20proof%20your%20design%20against%20" rel="nofollow" class="external" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.heikobehrens.net/2010/05/07/preview-your-photoshop-design-directly-on-the-iphoneipad/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Preview+your+photoshop+design+directly+on+the+iPhone%2FiPad+-+http://www.heikobehrens.net/2010/05/07/preview-your-photoshop-design-directly-on-the-iphoneipad/&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.heikobehrens.net/2010/05/07/preview-your-photoshop-design-directly-on-the-iphoneipad/&amp;title=Preview+your+photoshop+design+directly+on+the+iPhone%2FiPad" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.heikobehrens.net/2010/05/07/preview-your-photoshop-design-directly-on-the-iphoneipad/&amp;title=Preview+your+photoshop+design+directly+on+the+iPhone%2FiPad" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.heikobehrens.net/2010/05/07/preview-your-photoshop-design-directly-on-the-iphoneipad/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.heikobehrens.net/2010/05/07/preview-your-photoshop-design-directly-on-the-iphoneipad/&amp;bm_description=Preview+your+photoshop+design+directly+on+the+iPhone%2FiPad&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.heikobehrens.net/2010/05/07/preview-your-photoshop-design-directly-on-the-iphoneipad/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.heikobehrens.net/2010/05/07/preview-your-photoshop-design-directly-on-the-iphoneipad/&amp;title=Preview+your+photoshop+design+directly+on+the+iPhone%2FiPad" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.heikobehrens.net/2010/05/07/preview-your-photoshop-design-directly-on-the-iphoneipad/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The iPad sucks &#8211; my first impressions</title>
		<link>http://www.heikobehrens.net/2010/04/07/the-ipad-sucks-my-first-impressions/</link>
		<comments>http://www.heikobehrens.net/2010/04/07/the-ipad-sucks-my-first-impressions/#comments</comments>
		<pubDate>Wed, 07 Apr 2010 15:25:54 +0000</pubDate>
		<dc:creator>Heiko Behrens</dc:creator>
				<category><![CDATA[Usability]]></category>
		<category><![CDATA[featured]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.heikobehrens.net/?p=984</guid>
		<description><![CDATA[Now that I got your attention, read on and understand what exactly I dislike about the current version of the iPad. In short: its weight, the curved flip side while typing, the reflecting display and the absence of multi-user support. So, what does this mean to me?
Weight and Typing
When I held this device in my [...]]]></description>
			<content:encoded><![CDATA[<p>Now that I got your attention, read on and understand what exactly I dislike about the current version of the iPad. In short: its weight, the curved flip side while typing, the reflecting display and the absence of multi-user support. So, what does this mean to me?</p>
<div id="attachment_986" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.heikobehrens.net/wp-content/uploads/2010/04/img_0255.jpg"><img class="size-medium wp-image-986" title="iPad after 15 minutes" src="http://www.heikobehrens.net/wp-content/uploads/2010/04/img_0255-300x225.jpg" alt="The iPad after 15 minutes of usage" width="300" height="225" /></a><p class="wp-caption-text">The iPad after 15 minutes of usage</p></div>
<h3>Weight and Typing</h3>
<p>When I held this device in my hands this morning my first reaction was &#8220;oh, that&#8217;s heavy&#8221;. And in fact, after holding it a few minutes between my thumb and forefinger while swiping and touching through the apps this impression got stronger. Its weight becomes even more annoying while typing when you hold the device with one hand and type letter by letter with the other one.</p>
<p>&#8220;Not a problem&#8221; you might say, &#8220;one can place it on the table to type&#8221;. Well, yes and no. I was suprised how stable it was on the tabletop despite its curved flip side. The keys are way larger than those on the iPhone and typing with two hands would be a pleasure if there wasn&#8217;t the space bar. Each time I hit the spacer with my thumb the device slightly revolved around its own axis. Only cloth could prevent this.</p>
<p>&#8220;Why not using two thumbs for typing&#8221;, I thought by myself. This is what I do on the iPhone the whole time and it might work well on the iPad even though it&#8217;s larger. I was looking at the virtual keyboard to hit the proper keys with my thumbs and kept quite happy for a few letters. To conquer those larger distances with your fingers is one thing. To focus text and keyboard with my single pair of eyes simultanously simply doesn&#8217;t work. The keyboard at the bottom and text at the very top of the screen are so far away from each other on that huge display, this technique doesn&#8217;t work anymore. The seesaw between text and keyboard made me feel like I haven&#8217;t typed before at all.</p>
<p>In the end, only few postures on the sofa where you place the iPad on your lap worked fine for me.</p>
<h3>Glossy Display</h3>
<p>At first glance, this might only be an esthetic issue. Having finger prints all over the display is not really the end of the world. It&#8217;s just in the eye of the beholder. Right, but having reflections of your ceiling light, sunblinds or windows in general is more than annoying. When one finally found a way to type successfully on the iPad, there are not many options to prevent those reflections anymore. There&#8217;s no turnable display lid like the one on your laptop and you cannot easily change the angle between your tables and your windows &#8211; once you figured out how to type with two hands.</p>
<h3>No Multi-User Support</h3>
<p>I think of the iPad as the obvious extension of your living room. Your guests can look-up the soccer results, browse on youtube, pass it around to complete the pizza ordering or even check their facebook status. And the latter is exactly the problem with the iPad. As anything else in your living room the iPad is open to anyone. But what about your mails? What about your browser history and your stored logins? And what about your beloved calender, twitter, facebook or baking apps that grant access at a single finger tip?</p>
<p>Do you really have to lock the iPad? Is it just a toy and must not be used for serious data?</p>
<h3>Conclusion</h3>
<p>I am still fascinated by the iPad. It&#8217;s an amazing (some argue &#8220;magical&#8221;) piece of technology. I will get used to its weight and will learn how to type and look at the glossy display. But the lack of a &#8220;guest profile&#8221; or an equivalent way to hide away sensible data is something apple has to work on. Under these circumstances there&#8217;s only one option for me to use the iPad in future &#8211; I will need two of them.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-mail">
			<a href="mailto:?subject=%22The%20iPad%20sucks%20-%20my%20first%20impressions%22&amp;body=Link: http://www.heikobehrens.net/2010/04/07/the-ipad-sucks-my-first-impressions/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Now%20that%20I%20got%20your%20attention%2C%20read%20on%20and%20understand%20what%20exactly%20I%20dislike%20about%20the%20current%20version%20of%20the%20iPad.%20In%20short%3A%20its%20weight%2C%20the%20curved%20flip%20side%20while%20typing%2C%20the%20reflecting%20display%20and%20the%20absence%20of%20multi-user%20support.%20So%2C%20what%20does%20this%20mean%20to%20me%3F%0D%0A%0D%0A%0D%0AWeight%20and%20Typing%0D%0AWhen%20I%20hel" rel="nofollow" class="external" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.heikobehrens.net/2010/04/07/the-ipad-sucks-my-first-impressions/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=The+iPad+sucks+-+my+first+impressions+-+http://www.heikobehrens.net/2010/04/07/the-ipad-sucks-my-first-impressions/&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.heikobehrens.net/2010/04/07/the-ipad-sucks-my-first-impressions/&amp;title=The+iPad+sucks+-+my+first+impressions" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.heikobehrens.net/2010/04/07/the-ipad-sucks-my-first-impressions/&amp;title=The+iPad+sucks+-+my+first+impressions" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.heikobehrens.net/2010/04/07/the-ipad-sucks-my-first-impressions/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.heikobehrens.net/2010/04/07/the-ipad-sucks-my-first-impressions/&amp;bm_description=The+iPad+sucks+-+my+first+impressions&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.heikobehrens.net/2010/04/07/the-ipad-sucks-my-first-impressions/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.heikobehrens.net/2010/04/07/the-ipad-sucks-my-first-impressions/&amp;title=The+iPad+sucks+-+my+first+impressions" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.heikobehrens.net/2010/04/07/the-ipad-sucks-my-first-impressions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The iPhone at EclipseCon 2010</title>
		<link>http://www.heikobehrens.net/2010/03/31/the-iphone-at-eclipsecon-2010/</link>
		<comments>http://www.heikobehrens.net/2010/03/31/the-iphone-at-eclipsecon-2010/#comments</comments>
		<pubDate>Wed, 31 Mar 2010 08:49:36 +0000</pubDate>
		<dc:creator>Heiko Behrens</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[featured]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.heikobehrens.net/?p=968</guid>
		<description><![CDATA[The EclipseCon 2010 was a huge success not only for our flagship project Xtext. As mentioned by Sven and Jan before, we gratefully received the Eclipse Community Award and enthusiastically delivered more than 6 talks around model-driven software development. But beyond that, it&#8217;s been the first international conference where you could learn about a new area [...]]]></description>
			<content:encoded><![CDATA[<p>The EclipseCon 2010 was a huge success not only for our flagship project <a href="http://www.eclipse.org/Xtext/">Xtext</a>. As mentioned by <a href="http://blog.efftinge.de/2010/03/xtext-won-eclipse-community-award.html">Sven</a> and <a href="http://koehnlein.blogspot.com/2010/03/eclipsecon-2010-xtext-everywhere.html">Jan</a> before, we gratefully received the <a href="http://www.eclipse.org/org/press-release/20100322_awardswinners.php">Eclipse Community Award</a> and enthusiastically delivered more than 6 talks around model-driven software development. But beyond that, it&#8217;s been the first international conference where you could learn about <a href="http://www.itemis.com/itemis-ag/portfolio/language=en/29470/business-applications-for-mobile-devices">a new area of itemis&#8217; activities: mobile applications</a>.</p>
<div id="attachment_975" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.heikobehrens.net/wp-content/uploads/2010/03/generatediphoneapp.png"><img class="size-medium wp-image-975" title="generatediphoneapp" src="http://www.heikobehrens.net/wp-content/uploads/2010/03/generatediphoneapp-300x176.png" alt="Generated iPhone app" width="300" height="176" /></a><p class="wp-caption-text">100% Generated iPhone app of my EclipseCon talk</p></div>
<p>During my talk on Monday (<a href="http://www.slideshare.net/HeikoB/mdsd-on-iphone-eclipsecon-2010">slides on slideshare</a>), I argued how you can leverage the ideas of MDSD to be more efficient when building iPhone apps with the help of domain-specific languages. To prove this, I built a running iPhone application in front of the audience in just 12 minutes. That application was able to browse the corporate blog of itemis as well as an index of itemis speakers and talks available at EclipseCon. From any screen you could jump to related bits of information. Everything was being loaded on demand and behaved like every other native application on the iPhone &#8211; since <em>it is</em> a native app. And the coolest thing: All this without leaving Eclipse!</p>
<p>As you can read in the <a href="http://www.thebitsource.com/featured-posts/iphonical-model-driven-iphone-application-development/">interview I gave to The Bitsource</a> I understand this particular demo app as an example. It represents an important part of many apps you can find in the stores today and the provided results are substitutional for the whole group of data-centric mobile applications itemis is going to deliver with the powerful help of MDSD.</p>
<div id="attachment_971" class="wp-caption aligncenter" style="width: 310px"><a href="http://vimeo.com/10438569"><img class="size-medium wp-image-971" title="Heiko holding the iPhone Mars Rover app" src="http://www.heikobehrens.net/wp-content/uploads/2010/03/portraitheiko-300x225.png" alt="" width="300" height="225" /></a><p class="wp-caption-text">Me holding the iPhone Mars Rover app. Click the image to watch a video of the iPhone Mars Rover app.</p></div>
<p>A rather unusual event we stumbled upon was the <a href="http://www.eclipse.org/community/e4RoverMars/challenge.php">EclipseCon Mars Rover Challenge</a> held in cooperation with the <a href="http://www.jpl.nasa.gov/">NASA JPL</a>. It&#8217;s idea was to create the very best robotic control system to drive a robot across a prototypical Mars landscape. And guess what? <a href="http://www.peterfriese.de">Peter</a> and I set out to deliver an iPhone application to do so.</p>
<p>To make a <a href="http://www.google.com/search?q=iphone%20mars%20rover">long and amusing story</a> short, we came up with a vibrating and blinking iPhone app that allows you to steer the robot by tilting the device. <a href="http://www.popsci.com/technology/article/2010-03/watch-iphone-control-mars-rover-earth">Popular Science</a>, <a href="http://mashable.com/2010/03/26/iphone-mars-rover/">Mashable</a>, <a href="http://tech.slashdot.org/story/10/03/26/1318208/iPhone-App-Developed-To-Control-NASA-Robot">Slashdot</a> and many other news sites caught up quickly &#8211; so we decided to publish a <a href="http://iPhoneMarsRover.com">dedicated website (iPhoneMarsRover.com)</a> discussing the details and providing more images on that particular application. At this point I want to thank <a href="http://www.carsten-oltmann.de/">Carsten</a> and <a href="http://jendryschik.de/">Michael</a> for their invaluable help building that site. It&#8217;s a pleasure to work with such talented people.</p>
<p>And regarding the Mars Rover app: In future, we will most probably give droids the chance to hold that app in their hands &#8211; stay tuned!</p>
<p>Yes, itemis truly enters the market of mobile applications. And this goes way beyond ordinary iPhone, Android or Symbian apps. We are currently working on something that will knock your socks off! But that&#8217;s still a #secretproject&#8230;</p>
<p><strong>Update 04/15/10:</strong> Dzone interviewed <a href="http://www.PeterFriese.de">Peter</a> and me about the aforementioned talk as well as the Mars Rover app. <a href="http://java.dzone.com/articles/xtext-and-iphone">Read more details over there</a>.</p>
<h3>Links</h3>
<ul>
<li><a href="http://www.slideshare.net/HeikoB/mdsd-on-iphone-eclipsecon-2010">Slides of my MDSD on iPhone talk</a></li>
<li><a href="http://vimeo.com/10438569">Video of the iPhone Mars Rover app</a></li>
<li><a href="http://iPhoneMarsRover.com">iPhoneMarsRover.com</a></li>
<li><a href="http://www.thebitsource.com/featured-posts/iphonical-model-driven-iphone-application-development/">Interview at BitSource about MDSD on iPhone</a></li>
<li><a href="http://java.dzone.com/articles/xtext-and-iphone">Interview at DZone about MDSD on iPhone and Mars Rover</a></li>
</ul>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-mail">
			<a href="mailto:?subject=%22The%20iPhone%20at%20EclipseCon%202010%22&amp;body=Link: http://www.heikobehrens.net/2010/03/31/the-iphone-at-eclipsecon-2010/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A The%20EclipseCon%202010%20was%20a%20huge%20success%20not%20only%20for%20our%20flagship%20project%20Xtext.%20As%20mentioned%20by%20Sven%20and%20Jan%20before%2C%20we%20gratefully%20received%20the%20Eclipse%20Community%20Award%20and%C2%A0enthusiastically%20delivered%20more%20than%206%20talks%20around%20model-driven%20software%20development.%20But%20beyond%20that%2C%20it%27s%20been%20the%20first%20int" rel="nofollow" class="external" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.heikobehrens.net/2010/03/31/the-iphone-at-eclipsecon-2010/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=The+iPhone+at+EclipseCon+2010+-+http://www.heikobehrens.net/2010/03/31/the-iphone-at-eclipsecon-2010/&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.heikobehrens.net/2010/03/31/the-iphone-at-eclipsecon-2010/&amp;title=The+iPhone+at+EclipseCon+2010" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.heikobehrens.net/2010/03/31/the-iphone-at-eclipsecon-2010/&amp;title=The+iPhone+at+EclipseCon+2010" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.heikobehrens.net/2010/03/31/the-iphone-at-eclipsecon-2010/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.heikobehrens.net/2010/03/31/the-iphone-at-eclipsecon-2010/&amp;bm_description=The+iPhone+at+EclipseCon+2010&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.heikobehrens.net/2010/03/31/the-iphone-at-eclipsecon-2010/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.heikobehrens.net/2010/03/31/the-iphone-at-eclipsecon-2010/&amp;title=The+iPhone+at+EclipseCon+2010" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.heikobehrens.net/2010/03/31/the-iphone-at-eclipsecon-2010/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Retrospection of the iPhone Developer Conference 2009</title>
		<link>http://www.heikobehrens.net/2009/12/07/retrospection-of-the-iphone-developer-conference-2009/</link>
		<comments>http://www.heikobehrens.net/2009/12/07/retrospection-of-the-iphone-developer-conference-2009/#comments</comments>
		<pubDate>Mon, 07 Dec 2009 20:11:49 +0000</pubDate>
		<dc:creator>Heiko Behrens</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[openArchitectureWare]]></category>

		<guid isPermaLink="false">http://www.heikobehrens.net/?p=914</guid>
		<description><![CDATA[The German iPhone Developer Conference in Cologne (01-02 December) was an exciting event that started with a very informative keynote by Maximilian Reiß who elaborated the tide of iPhone events of the last years. From there, nearly 200 attendees were invited to join business-related presentations and developer-oriented talks on separated tracks over the next two [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://www.iphonedevcon.de/">German iPhone Developer Conference</a> in Cologne (01-02 December) was an exciting event that started with a very informative keynote by Maximilian Reiß who elaborated the tide of iPhone events of the last years. From there, nearly 200 attendees were invited to join business-related presentations and developer-oriented talks on separated tracks over the next two days.</p>
<div id="attachment_917" class="wp-caption aligncenter" style="width: 460px"><img class="size-full wp-image-917" title="iPhoneDevCon" src="http://www.heikobehrens.net/wp-content/uploads/2009/12/iphonedevcon.png" alt="Nearly 200 attendees, 29 talks on 2 days and 3 winners of the best German iPhone App contest at the iPhone Developer Conference" width="450" height="133" /><p class="wp-caption-text">Nearly 200 attendees, 29 talks on 2 days and 3 winners of the best German iPhone App contest at the iPhone Developer Conference in Cologne</p></div>
<p>I had the chance to introduce the <a href="http://code.google.com/p/iphonical/">iPhonical project</a> that applies model-driven techniques to produce parts of iPhone applications automatically. <a href="http://www.slideshare.net/HeikoB/iphonical-and-modeldriven-software-development-for-the-iphone">The presentation</a> first describes a way to separate generated code from manually written source with the Objective-C concept of categories. From there, I demonstrated that even with powerful frameworks such as <a href="http://iphoneonrails.com/">ObjectiveResource</a> (an adapter to connect iPhone apps with Rails applications) one can benefit from code generation. With the help of the iPhonical DSL (implemented with <a href="http://www.Xtext.org">Xtext</a>) keeping data-centric classes in sync with the web application was way easier than coding them by hand.</p>
<p>The iPhoneDevCon was a very informative event. Many passionated developers or leads, growing studios and enthusiastic marketing representatives shared their ideas and during the breaks you could easily discuss different viewpoints of today&#8217;s opportunities and approaches.</p>
<p>Apart from the 3 winners of the &#8220;<a href="http://www.iphonedevcon.de/Beste-App-09.322.0.html">best German iPhone app</a>&#8221; (according to iPhone &amp; Co) a <a href="http://www.mac-developer.de/">brand-new iPhone and Mac magazine, mac-developer,</a> has been announced. As the name suggests it concentrates on developers and its first issue is quite promissing.</p>
<h3>Links</h3>
<ul>
<li><a href="http://iphonedevcon.de/">iPhone Developer Conference</a> website</li>
<li><a href="http://www.slideshare.net/HeikoB/iphonical-and-modeldriven-software-development-for-the-iphone">Slides &#8220;iPhonical and model-driven software development for the iPhone&#8221;</a> on SlideShare</li>
<li><a href="http://code.google.com/p/iphonical/">iPhonical project</a> website</li>
<li><a href="http://www.mac-developer.de/">mac-developer</a> magazine (German)</li>
</ul>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-mail">
			<a href="mailto:?subject=%22Retrospection%20of%20the%20iPhone%20Developer%20Conference%202009%22&amp;body=Link: http://www.heikobehrens.net/2009/12/07/retrospection-of-the-iphone-developer-conference-2009/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A The%20German%20iPhone%20Developer%20Conference%20in%20Cologne%20%2801-02%20December%29%20was%20an%20exciting%20event%20that%20started%20with%20a%20very%20informative%20keynote%20by%20Maximilian%20Rei%C3%9F%20who%20elaborated%20the%20tide%20of%20iPhone%20events%20of%20the%20last%20years.%20From%20there%2C%20nearly%20200%20attendees%20were%20invited%20to%20join%20business-related%20presentations%20a" rel="nofollow" class="external" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.heikobehrens.net/2009/12/07/retrospection-of-the-iphone-developer-conference-2009/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Retrospection+of+the+iPhone+Developer+Conference+2009+-+http://www.heikobehrens.net/2009/12/07/retrospection-of-the-iphone-developer-conference-2009/&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.heikobehrens.net/2009/12/07/retrospection-of-the-iphone-developer-conference-2009/&amp;title=Retrospection+of+the+iPhone+Developer+Conference+2009" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.heikobehrens.net/2009/12/07/retrospection-of-the-iphone-developer-conference-2009/&amp;title=Retrospection+of+the+iPhone+Developer+Conference+2009" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.heikobehrens.net/2009/12/07/retrospection-of-the-iphone-developer-conference-2009/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.heikobehrens.net/2009/12/07/retrospection-of-the-iphone-developer-conference-2009/&amp;bm_description=Retrospection+of+the+iPhone+Developer+Conference+2009&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.heikobehrens.net/2009/12/07/retrospection-of-the-iphone-developer-conference-2009/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.heikobehrens.net/2009/12/07/retrospection-of-the-iphone-developer-conference-2009/&amp;title=Retrospection+of+the+iPhone+Developer+Conference+2009" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.heikobehrens.net/2009/12/07/retrospection-of-the-iphone-developer-conference-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhonical at the second German iPhone Developer Conference in December 2009</title>
		<link>http://www.heikobehrens.net/2009/10/25/iphonical-at-the-second-german-iphone-developer-conference-in-december-2009/</link>
		<comments>http://www.heikobehrens.net/2009/10/25/iphonical-at-the-second-german-iphone-developer-conference-in-december-2009/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 17:33:33 +0000</pubDate>
		<dc:creator>Heiko Behrens</dc:creator>
				<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.heikobehrens.net/?p=858</guid>
		<description><![CDATA[This December will start with two exciting days when the German iPhone Developer Conference takes place in Cologne. With 28 talks about business and engineering on two tracks the second iPhoneDevCon celebrates the second anniversary of the iPhone itself. Not by accident Maximilian Reiß picks up this coincidence and gives a résumé of two eventful [...]]]></description>
			<content:encoded><![CDATA[<p>This December will start with two exciting days when the <a href="http://www.iPhoneDevCon.de">German iPhone Developer Conference takes place in Cologne</a>. With 28 talks about business and engineering on <em>two</em> tracks the <em>second</em> iPhoneDevCon celebrates the <em>second</em> anniversary of the iPhone itself. Not by accident Maximilian Reiß picks up this coincidence and gives a résumé of two eventful years with apple&#8217;s successful device in his keynote.</p>
<p>My talk about model-driven iPhone development in general and the <a href="http://code.google.com/p/iphonical/">open source tool iPhonical</a> in particular ranks among many other promising talks for developers.</p>
<div id="attachment_861" class="wp-caption aligncenter" style="width: 410px"><a href="http://www.iphonedevcon.de/"><img class="size-full wp-image-861" title="iphonedevconlogo" src="http://www.heikobehrens.net/wp-content/uploads/2009/10/iphonedevconlogo.png" alt="Visit the iPhoneDevCon in Cologne on December 01-02, 2009" width="400" height="71" /></a><p class="wp-caption-text">Visit the German iPhoneDevCon in Cologne on December 01-02, 2009</p></div>
<p>If you are planning to attend please contact me in advance. Being a speaker I can give away a limited amount of promotion codes. This might safe you some expenses and allows you to buy me a drink in return <img src='http://www.heikobehrens.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-mail">
			<a href="mailto:?subject=%22iPhonical%20at%20the%20second%20German%20iPhone%20Developer%20Conference%20in%20December%202009%22&amp;body=Link: http://www.heikobehrens.net/2009/10/25/iphonical-at-the-second-german-iphone-developer-conference-in-december-2009/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A This%20December%20will%20start%20with%20two%20exciting%20days%20when%20the%20German%20iPhone%20Developer%20Conference%20takes%20place%20in%20Cologne.%20With%2028%20talks%20about%20business%20and%20engineering%20on%20two%20tracks%20the%20second%20iPhoneDevCon%20celebrates%20the%20second%20anniversary%20of%20the%20iPhone%20itself.%20Not%20by%20accident%20Maximilian%20Rei%C3%9F%20picks%20up%20thi" rel="nofollow" class="external" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.heikobehrens.net/2009/10/25/iphonical-at-the-second-german-iphone-developer-conference-in-december-2009/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=iPhonical+at+the+second+German+iPhone+Developer+Conference+in+December+2009+-+http://www.heikobehrens.net/2009/10/25/iphonical-at-the-second-german-iphone-developer-conference-in-december-2009/&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.heikobehrens.net/2009/10/25/iphonical-at-the-second-german-iphone-developer-conference-in-december-2009/&amp;title=iPhonical+at+the+second+German+iPhone+Developer+Conference+in+December+2009" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.heikobehrens.net/2009/10/25/iphonical-at-the-second-german-iphone-developer-conference-in-december-2009/&amp;title=iPhonical+at+the+second+German+iPhone+Developer+Conference+in+December+2009" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.heikobehrens.net/2009/10/25/iphonical-at-the-second-german-iphone-developer-conference-in-december-2009/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.heikobehrens.net/2009/10/25/iphonical-at-the-second-german-iphone-developer-conference-in-december-2009/&amp;bm_description=iPhonical+at+the+second+German+iPhone+Developer+Conference+in+December+2009&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.heikobehrens.net/2009/10/25/iphonical-at-the-second-german-iphone-developer-conference-in-december-2009/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.heikobehrens.net/2009/10/25/iphonical-at-the-second-german-iphone-developer-conference-in-december-2009/&amp;title=iPhonical+at+the+second+German+iPhone+Developer+Conference+in+December+2009" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.heikobehrens.net/2009/10/25/iphonical-at-the-second-german-iphone-developer-conference-in-december-2009/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Burlington Ducky iPhone App</title>
		<link>http://www.heikobehrens.net/2009/10/02/burlington-ducky-iphone-app/</link>
		<comments>http://www.heikobehrens.net/2009/10/02/burlington-ducky-iphone-app/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 07:32:52 +0000</pubDate>
		<dc:creator>Heiko Behrens</dc:creator>
				<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.heikobehrens.net/?p=688</guid>
		<description><![CDATA[The people at itemis provide a vast range of skills beyond model-driven engineering. For me, this versatility yielded an iPhone project in cooperation with Weischer Mobile and phi mobile media where a funny marketing app had to be delivered. The design concept presented to Burlington drafted a line (water), a circle (duck) inside a rectangle [...]]]></description>
			<content:encoded><![CDATA[<p>The people at <a href="http://www.itemis.com/">itemis</a> provide a vast range of skills beyond model-driven engineering. For me, this versatility yielded an iPhone project in cooperation with <a href="http://www.weischermobile.de/">Weischer Mobile</a> and <a href="http://www.phimobile.com/">phi mobile media</a> where a funny marketing app had to be delivered. The design concept presented to <a href="http://www.burlington.de/">Burlington</a> drafted a line (water), a circle (duck) inside a rectangle (iPhone) and an arrow (movement). Some bullet points completed the requirements of the part I was asked to implement. Even though the final app offers some more features such as a movie, funny photo tricks and wallpapers, I was responsible for the ducky only. This is what I came up with:</p>
<div style="text-align: center; margin-left: auto; margin-right: auto;"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="380" height="384" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=6839893&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="380" height="384" src="http://vimeo.com/moogaloop.swf?clip_id=6839893&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></div>
<p>Under the hood, the animated ducky as well as the illusion of water is based on a hand-crafted physics engine. The water is implemented as a particle-based fluid simulation. Matthias Müller <a href="http://www.matthiasmueller.info/publications/sca03.pdf">published a paper with the same title</a> and great <a href="http://people.cs.ubc.ca/~rbridson/fluidsimulation/GameFluids2007.pdf">slides for SIGGRAPH 2007</a> as a starting point if you are interested in this topic. The ducky itself <a href="http://en.wikipedia.org/wiki/Rigid_body_dynamics">interacts as rigid body</a> with these particles where buoyancy had been implemented explicitly. Play with <a href="http://www.myphysicslab.com/collision.html">Erik Neumann&#8217;s demo</a> to have fun with rigid body physics. These concepts had been adjusted and combined with the accelerometer and touch sensors built into the iPhone to let the user interact with the simulation.</p>
<div id="attachment_693" class="wp-caption aligncenter" style="width: 461px"><img class="size-full wp-image-693" title="overview" src="http://www.heikobehrens.net/wp-content/uploads/2009/08/overview.png" alt="Different techniques had been applied to realize the illusion of a ducky swimming in water" width="451" height="211" /><p class="wp-caption-text">Different techniques had been applied to realize the illusion of a splashing ducky</p></div>
<p>Having just dots and circles as one could look at the physics engine was obviously not the ultimate goal. From the raw data of the simulation the water surface area had to be derived, the ducky had to be put in shape and some smooth animations and sounds were needed to round out the illusion of an interactive bathtub.</p>
<p>Without going into every detail I want to emphasize that the iPhone is not a MacBook Pro. Where you traditionally use <a href="http://en.wikipedia.org/wiki/Marching_cubes">marching cubes</a>/<a href="http://en.wikipedia.org/wiki/Marching_squares">squares</a> to convert distinct particles into a cohesive area the processing power of mobile devices requires you to squeeze out every cycle by thinking outside the box and taking advantage of hardware acceleration. In this case, <a href="http://www.khronos.org/opengles/">OpenGL ES</a> offers a variety of techniques including framebuffers, blending functions and alpha tests to perform the needed steps by the <a href="http://en.wikipedia.org/wiki/Gpu">GPU</a>.</p>
<div id="attachment_689" class="wp-caption aligncenter" style="width: 460px"><img class="size-full wp-image-689" title="metaballs" src="http://www.heikobehrens.net/wp-content/uploads/2009/08/fluid.png" alt="metaball technique from particles using blending and alpha functions" width="450" height="185" /><p class="wp-caption-text">metaball technique from particles using blending and alpha functions</p></div>
<p>Some other findings during the project include the unreliability of sensor data as well as users&#8217; unpredictable behavior. Be aware that humans and machines act differently under certain circumstances. For applications where the interaction between those both is crucial you should do usability tests early, often and extensively before delivery, again.</p>
<p>The iPhone is different from other mobile devices or the emulator. Generally, <a href="http://en.wikipedia.org/wiki/Floating_point">floating point arithmetic</a> will be evaluated more efficient than <a href="http://en.wikipedia.org/wiki/Fixed-point_arithmetic">fixed-point</a>. Some GPU operations are executed faster on the device than on the emulator, others are of poor performance though. Therefore, you should profile on the device to test different approaches of your design regularly. And: You must not forget to do so with sound enabled since sound processing might take more than 30% of your overall processing power.</p>
<p>So, go ahead and grab your version of the <a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=329171550&amp;mt=8">Burlington Duck on the app store</a>:</p>
<p><a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=329171550&amp;mt=8"><img class="alignnone size-full wp-image-822" style="margin-bottom: 20px;" title="Download Burlington Duck from App Store" src="http://www.heikobehrens.net/wp-content/uploads/2009/09/download.png" alt="" width="260" height="90" /></a></p>
<p>If you are interested in details (e.g. &#8220;unpredictable human factor&#8221;, production of the screencast, etc.), please let me know and use the comment function of this post.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-mail">
			<a href="mailto:?subject=%22Burlington%20Ducky%20iPhone%20App%22&amp;body=Link: http://www.heikobehrens.net/2009/10/02/burlington-ducky-iphone-app/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A The%20people%20at%20itemis%20provide%20a%20vast%20range%20of%20skills%20beyond%20model-driven%20engineering.%20For%20me%2C%20this%20versatility%20yielded%20an%20iPhone%20project%20in%20cooperation%20with%20Weischer%20Mobile%20and%20phi%20mobile%20media%20where%20a%20funny%20marketing%20app%20had%20to%20be%20delivered.%20The%20design%20concept%20presented%20to%20Burlington%20drafted%20a%20line%20" rel="nofollow" class="external" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.heikobehrens.net/2009/10/02/burlington-ducky-iphone-app/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Burlington+Ducky+iPhone+App+-+http://www.heikobehrens.net/2009/10/02/burlington-ducky-iphone-app/&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.heikobehrens.net/2009/10/02/burlington-ducky-iphone-app/&amp;title=Burlington+Ducky+iPhone+App" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.heikobehrens.net/2009/10/02/burlington-ducky-iphone-app/&amp;title=Burlington+Ducky+iPhone+App" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.heikobehrens.net/2009/10/02/burlington-ducky-iphone-app/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.heikobehrens.net/2009/10/02/burlington-ducky-iphone-app/&amp;bm_description=Burlington+Ducky+iPhone+App&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.heikobehrens.net/2009/10/02/burlington-ducky-iphone-app/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.heikobehrens.net/2009/10/02/burlington-ducky-iphone-app/&amp;title=Burlington+Ducky+iPhone+App" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.heikobehrens.net/2009/10/02/burlington-ducky-iphone-app/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>obj2opengl: convert obj 3D models to arrays compatible with iPhone OpenGL ES</title>
		<link>http://www.heikobehrens.net/2009/08/27/obj2opengl/</link>
		<comments>http://www.heikobehrens.net/2009/08/27/obj2opengl/#comments</comments>
		<pubDate>Thu, 27 Aug 2009 19:07:32 +0000</pubDate>
		<dc:creator>Heiko Behrens</dc:creator>
				<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.heikobehrens.net/?p=695</guid>
		<description><![CDATA[Whenever you want to use 3D objects modeled with a software such as Blender, 3ds Max or Cinema 4D in your iPhone Application or any other OpenGL project, you somehow have to make the designed data accessible to you program. To do this you can either load and interpret the files your models are saved [...]]]></description>
			<content:encoded><![CDATA[<p>Whenever you want to use 3D objects modeled with a software such as <a href="http://en.wikipedia.org/wiki/Blender_(software)">Blender</a>, <a href="http://en.wikipedia.org/wiki/3ds_Max">3ds Max</a> or <a href="http://en.wikipedia.org/wiki/Cinema_4D">Cinema 4D</a> in your iPhone Application or any other <a href="http://www.opengl.org/">OpenGL</a> project, you somehow have to make the designed data accessible to you program. To do this you can either load and interpret the files your models are saved into or you could directly provide the needed in-memory representation your program expects.</p>
<p>OBJ2OPENGL does the latter and acts as a converter from model files to C/C++ headers that describe vertices of the faces, normals and texture coordinates as simple arrays of floats.</p>
<div id="attachment_697" class="wp-caption aligncenter" style="width: 460px"><img class="size-full wp-image-697" title="screenshot" src="http://www.heikobehrens.net/wp-content/uploads/2009/08/screenshot.png" alt="Texturized and lighted 3D model with 8056 faces on the iPhone" width="450" height="241" /><p class="wp-caption-text">Texturized and lighted 3D model with 8,056 faces on the iPhone</p></div>
<p>OBJ2OPENGL is a Perl script that reads a <a href="http://en.wikipedia.org/wiki/Obj">Wavefront OBJ file</a> describing a 3D object and writes a C/C++ include file describing the object in a form suitable for use with OpenGL ES. It is compatible with <a href="http://en.wikipedia.org/wiki/Objective-C">Objective C</a> and the libraries of the iPhone SDK.</p>
<p>The original idea and code base of this script comes from <a href="http://people.sc.fsu.edu/~burkardt/pl_src/obj2opengl/obj2opengl.html">Margaret Geroch</a> who kindly allowed me to enhance and republish this version. It now supports texture mapping and stored normals (instead of recalculating them). I have changed the structure of the generated arrays to work with <em>glDrawArrays</em> instead of <em>glDrawElements</em>. This is particularly needed for normals and textures where a vertex holds different information for some shapes. Also, this version includes several command line options to better control its behavior (such as scaling and moving the origin or setting the object&#8217;s and output file&#8217;s name).</p>
<p>If you can go with the defaults the conversion is as simple as</p>
<pre class="brush: plain;">./obj2opengl.pl banana.obj</pre>
<p>To include the converted object all you have to do is</p>
<pre class="brush: java;">// include generated arrays
#import "banana.h"

// set input data to arrays
glVertexPointer(3, GL_FLOAT, 0, bananaVerts);
glNormalPointer(GL_FLOAT, 0, bananaNormals);
glTexCoordPointer(2, GL_FLOAT, 0, bananaTexCoords);

// draw data
glDrawArrays(GL_TRIANGLES, 0, bananaNumVerts);</pre>
<h3>Examples</h3>
<p>These are two models and generated sample output that is included in the provided archive:</p>
<table border="0">
<thead>
<tr>
<th>Input</th>
<th>Output</th>
<th>Texture</th>
<th>Vertices</th>
<th>Faces</th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="http://www.heikobehrens.net/wp-content/uploads/2009/08/cube.txt">cube.obj</a></td>
<td><a href="http://www.heikobehrens.net/wp-content/uploads/2009/08/cube.h">cube.h</a></td>
<td></td>
<td>8</td>
<td>6</td>
</tr>
<tr>
<td><a href="http://www.heikobehrens.net/wp-content/uploads/2009/08/banana.txt">banana.obj</a></td>
<td><a href="http://www.heikobehrens.net/wp-content/uploads/2009/08/banana.h">banana.h</a></td>
<td><a href="http://www.heikobehrens.net/wp-content/uploads/2009/08/banana.jpg">banana.jpg</a></td>
<td>4,032</td>
<td>8,056</td>
</tr>
</tbody>
</table>
<h3>Downloads</h3>
<ul>
<li><a href="http://www.heikobehrens.net/wp-content/uploads/2009/08/obj2opengl.zip"> OBJ2OPENGL.ZIP</a> (script and examples)</li>
<li><a href="http://www.heikobehrens.net/wp-content/uploads/2009/08/obj2opengl.txt"> OBJ2OPENGL.PL</a></li>
</ul>
<div>Please use the comment function of this post to discuss any problems or noteworthy results accomplished with help of this script. I will read feature requests, too. Feedback is highly appreciated.</div>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-mail">
			<a href="mailto:?subject=%22obj2opengl%3A%20convert%20obj%203D%20models%20to%20arrays%20compatible%20with%20iPhone%20OpenGL%20ES%22&amp;body=Link: http://www.heikobehrens.net/2009/08/27/obj2opengl/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Whenever%20you%20want%20to%20use%203D%20objects%20modeled%20with%20a%20software%20such%20as%20Blender%2C%203ds%20Max%20or%20Cinema%204D%20in%20your%20iPhone%20Application%20or%20any%20other%20OpenGL%20project%2C%20you%20somehow%20have%20to%20make%20the%20designed%20data%20accessible%20to%20you%20program.%20To%20do%20this%20you%20can%20either%20load%20and%20interpret%20the%20files%20your%20models%20are%20saved" rel="nofollow" class="external" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.heikobehrens.net/2009/08/27/obj2opengl/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=obj2opengl%3A+convert+obj+3D+models+to+arrays+compatible+with+iPhone+OpenGL+ES+-+http://www.heikobehrens.net/2009/08/27/obj2opengl/&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.heikobehrens.net/2009/08/27/obj2opengl/&amp;title=obj2opengl%3A+convert+obj+3D+models+to+arrays+compatible+with+iPhone+OpenGL+ES" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.heikobehrens.net/2009/08/27/obj2opengl/&amp;title=obj2opengl%3A+convert+obj+3D+models+to+arrays+compatible+with+iPhone+OpenGL+ES" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.heikobehrens.net/2009/08/27/obj2opengl/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.heikobehrens.net/2009/08/27/obj2opengl/&amp;bm_description=obj2opengl%3A+convert+obj+3D+models+to+arrays+compatible+with+iPhone+OpenGL+ES&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.heikobehrens.net/2009/08/27/obj2opengl/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.heikobehrens.net/2009/08/27/obj2opengl/&amp;title=obj2opengl%3A+convert+obj+3D+models+to+arrays+compatible+with+iPhone+OpenGL+ES" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.heikobehrens.net/2009/08/27/obj2opengl/feed/</wfw:commentRss>
		<slash:comments>58</slash:comments>
		</item>
	</channel>
</rss>
