<?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>Uxebu.com - the Ajax and JavaScript Experts &#187; mobile</title>
	<atom:link href="http://uxebu.com/blog/tag/mobile/feed/" rel="self" type="application/rss+xml" />
	<link>http://uxebu.com/blog</link>
	<description>Web, Dojo, news</description>
	<lastBuildDate>Sun, 06 Jun 2010 22:28:09 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Forgotten tricks for iPhones Safari</title>
		<link>http://uxebu.com/blog/2010/04/28/forgotten-tricks-for-iphones-safari/</link>
		<comments>http://uxebu.com/blog/2010/04/28/forgotten-tricks-for-iphones-safari/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 14:18:21 +0000</pubDate>
		<dc:creator>Nikolai Onken</dc:creator>
				<category><![CDATA[frontend engineering]]></category>
		<category><![CDATA[html5apps]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://uxebu.com/blog/?p=1171</guid>
		<description><![CDATA[Safari om the iPhone is an incredible powerful browser and comes with a whole bunch of features.
Besides the amazing support for CSS3, a superfast rendering engine and great JavaScript support, there are a few hidden gems I want to explain in this (and maybe following) blogposts. If you are interested in mobile web development, maybe [...]]]></description>
			<content:encoded><![CDATA[<p>Safari om the iPhone is an incredible powerful browser and comes with a whole bunch of features.<br />
Besides the amazing support for CSS3, a superfast rendering engine and great JavaScript support, there are a few hidden gems I want to explain in this (and maybe following) blogposts. If you are interested in mobile web development, maybe you will find a few features you haven&#8217;t seen before.</p>
<h2>Making your web app iPhone ready</h2>
<p>Note: <a href="http://static.uxebu.com/~nonken/a/safariGems">you can visit the example used in this blog post from your iPhone here.</a></p>
<p><object width="500" height="344"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=11241853&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=11241853&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height="344"></embed></object><br />
<span id="more-1171"></span><br />
The most well-known and really most important meta tag you need to know about is the viewport meta-tag. It allows you to define the minimum and maximum zoom-level and whether or not the user is allowed to zoom into the view. You disable zooming by setting the minimum-scale to the same value as maximum-scale. At the same time you can define the viewport width and height by setting the &#8220;device-width&#8221; or &#8220;device-height&#8221; properties. If you have a website with a width of 960px and you want it to be zoomed in to fit exactly that width, all you need to do is to set width to 960. Since your website should run on several devices though with different resolutions it is not recommended to set an absolute width and instead use the predefined device-width and device-height values. This ensures that your viewport has exactly the size supported by the device.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>meta <span style="color: #000066;">name</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;viewport&quot;</span> content<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;width=device-width,minimum-scale=1.0,maximum-scale=1.0&quot;</span><span style="color: #339933;">/&gt;</span></pre></td></tr></table></div>

<p>Now lets get to the juicy part. When creating an HTML5 app for the iPhone you can define an icon which you will see on the start screen of your iPhone. Once you set this meta tag, the user won&#8217;t be able to see a difference between a native application and a web application on your iPhones homescreen.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>link rel<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;apple-touch-icon&quot;</span> href<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;/yourIcon.png&quot;</span><span style="color: #339933;">/&gt;</span></pre></td></tr></table></div>

<p>To add even another level of detail you can define a startup screen for your application. This is especially useful when your application supports offline mode using cache manifests.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>link rel<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;apple-touch-startup-image&quot;</span> href<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;/startupImage.png&quot;</span><span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p>All of those features wouldn&#8217;t be complete if you couldn&#8217;t hide the browsers chrome once you start your application from the homescreen. To disable the chrome just insert following tag:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>meta <span style="color: #000066;">name</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;apple-mobile-web-app-capable&quot;</span> content<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;yes&quot;</span><span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p>Now after you have added this meta tag you want to be able to differenciate between the user launching the app from the homescreen of the browser.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #006600; font-style: italic;">// navigator.standalone</span>
<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;standalone&quot;</span> <span style="color: #000066; font-weight: bold;">in</span> navigator<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
    <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>navigator.<span style="color: #660066;">standalone</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
        <span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Started from homescreen&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span><span style="color: #000066; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span>
        <span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Started in browser&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span><span style="color: #000066; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span>
    <span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Not supporting standalone property&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Last but not least you can even control the look and feel of the status bar on the top. You can either use the default status bar or a black status bar or a semi translucent status bar:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>meta <span style="color: #000066;">name</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;apple-mobile-web-app-status-bar-style&quot;</span> content<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;black/default/black-translucent&quot;</span> <span style="color: #339933;">/&gt;</span></pre></td></tr></table></div>

<p>These are the most important things you need to know to make a simple website be HTML5 app ready on your iPhone (note: this only works on the iPhone but won&#8217;t hurt other devices and platforms). A &#8220;normal&#8221; user won&#8217;t be able to differentiate between a native or a HTML5 app anymore. Do you know of similar features of other phones? Do you think we should standardize the discussed features? (Some are already). </p>
<p>If you need support getting your website or web application HTML5 app ready, feel free to <a href="http://uxebu.com/contact">contact us</a>.</p>
<p>Enjoy</p>
<h2>Dowload</h2>
<ul>
<li>
<a href="http://static.uxebu.com/~nonken/a/safariGems/safariGems.tgz">Source</a>
</li>
<li><a href="http://developer.apple.com/safari/library/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html">Docs</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://uxebu.com/blog/2010/04/28/forgotten-tricks-for-iphones-safari/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Developing Widgets for Bada Devices</title>
		<link>http://uxebu.com/blog/2010/03/25/developing-widgets-for-bada-devices/</link>
		<comments>http://uxebu.com/blog/2010/03/25/developing-widgets-for-bada-devices/#comments</comments>
		<pubDate>Thu, 25 Mar 2010 11:06:36 +0000</pubDate>
		<dc:creator>Wolfram Kriesing</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Tumbles]]></category>
		<category><![CDATA[development tools]]></category>
		<category><![CDATA[frontend engineering]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[w3c widgets]]></category>
		<category><![CDATA[bada]]></category>
		<category><![CDATA[widgets]]></category>

		<guid isPermaLink="false">http://uxebu.com/blog/2010/03/25/developing-widgets-for-bada-devices/</guid>
		<description><![CDATA[Developing Widgets for Bada Devices
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.badadev.com/developing-widgets-for-bada-devices/">Developing Widgets for Bada Devices</a></p>
]]></content:encoded>
			<wfw:commentRss>http://uxebu.com/blog/2010/03/25/developing-widgets-for-bada-devices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mobile Web – does the adult industry point the way (again)?</title>
		<link>http://uxebu.com/blog/2010/02/26/mobile-web-%e2%80%93-does-the-adult-industry-point-the-way-again/</link>
		<comments>http://uxebu.com/blog/2010/02/26/mobile-web-%e2%80%93-does-the-adult-industry-point-the-way-again/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 12:35:31 +0000</pubDate>
		<dc:creator>Nikolai Onken</dc:creator>
				<category><![CDATA[business]]></category>
		<category><![CDATA[frontend engineering]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[uxebu]]></category>
		<category><![CDATA[w3c widgets]]></category>
		<category><![CDATA[app stores]]></category>
		<category><![CDATA[cross-platform]]></category>

		<guid isPermaLink="false">http://uxebu.com/blog/?p=1054</guid>
		<description><![CDATA[During a very intense week at the Mobile World Congress in Barcelona and a lot of very interesting meetings, discussions and talks, one incident surprisingly stuck out. At one of the evening events, I randomly met the folks behind http://www.yourappshop.com, a platform which allows you to distribute iPhone applications through other means than the official [...]]]></description>
			<content:encoded><![CDATA[<p>During a very intense week at the Mobile World Congress in Barcelona and a lot of very interesting meetings, discussions and talks, one incident surprisingly stuck out. At one of the evening events, I randomly met the folks behind <a href="http://www.yourappshop.com">http://www.yourappshop.com</a>, a platform which allows you to distribute iPhone applications through other means than the official Apple app store – you don’t need a jailbroken iPhone as you need when using alternative app stores such as <a href="http://cydia.saurik.com/">Cydia</a>. But before I explain in more detail what they are doing lets have a look at the current app store hype.<br />
<span id="more-1054"></span></p>
<h2>Is the app store concept flawed?</h2>
<p>Lately I have been reading <a href="http://www.spiegel.de/netzwelt/web/0,1518,679750,00.html">more</a> and <a href="http://www.spiegel.de/netzwelt/netzpolitik/0,1518,679959,00.html">more</a> articles, <a href="http://twitter.com/tomiahonen/status/9580847661">tweets</a> and <a href="http://www.quirksmode.org/blog/archives/2010/02/the_iphone_obse.html">blogposts</a> stating their concerns about the fact that Apple almost randomly removes applications and that people for some reason have distorted views of the mobile application and app store reality.</p>
<p>I am not in favor of allowing any kind of application into an app store by default, there is no reason why you should have to do that (a bakery also selects which producs it wants to sell). The problem really is though, that Apple is running the only official app store for the iPhone. One app store controlling the entire market for a device is plainly wrong!</p>
<p>Not only does it cripple innovation but it also shows one major flaw of Apples strategy – the factor of competence. How on earth does Apple, a hardware and software manufacturer think it has the competence to judge whether an application should be admitted or not? Maybe in these days when mobile applications don’t go further than simple games or information display/exchange – but what if applications are starting to come with real security implications?</p>
<p><strong>An example:</strong><br />
Imagine you are writing an application reading your heartrate and writing an ECG (This is not too far fetched, <a href="http://uxebu.com/blog/2010/01/25/humanapi-the-browser-in-the-real-world/">look at our research project HumanApi</a>). Is Apple seriously trying to tell that they can judge whether such an app should make it into the app store or not? They by far don’t have the competence of the medical industry, no way!</p>
<p>A much more interesting app store concept would be to have certified stores by companies I trust (or community driven in other application use-cases). Looking at the medical example, wouldn’t it make much more sense if companies like Siemens, Phillips, and other medical device manufacturers start an alliance and run their own store, so I can trust the apps I am using, so that as a developer, I know that qualified people are judging my application? Not only would this guarantee much higher quality but it also would foster competition which we are lacking here.</p>
<h2>Companies == lemmings?</h2>
<p>Where does this &#8220;I need an app as well&#8221; come from? Why do people care so much when their application gets rejected by the Apple app store?</p>
<p><strong>An example:</strong><br />
On february 23rd, large German online publisher <a href="http://www.spiegel.de/netzwelt/web/0,1518,679750,00.html">Spiegel Online</a> wrote an article about the fact that Apple might disapprove an application of the famous yellow press publisher &#8220;<a href="http://bild.de">Bild</a>&#8220;. On february 24th they <a href="http://www.spiegel.de/netzwelt/netzpolitik/0,1518,679959,00.html">posted another front-page article</a> questioning whether legal means would be the only way to go?!?</p>
<p>Now that is insane, not only will it cost those folks a lot of money to run law suits against Apple, on top of that they are forcing their way into technology without future – already today, the Apple app store is not the only way to legally distribute your applications to the iPhone! Apple is a new player in the mobile industry and albeit its amazing achievements, <a href="http://communities-dominate.blogs.com/brands/2010/02/phone-market-shares-for-year-of-2009-and-last-quarter-2009.html">never forget looking at marketshares</a>.</p>
<p>To summarize: For whatever kind of reason, one of the biggest German online newspaper sees Apple rejecting applications as being threatening enough to write an article – how more blatantly can the reality be distorted?</p>
<h2>What can and should we do?</h2>
<p>Back to the surprising incident I was mentioning earlier: When the folks behind <a href="http://www.yourappshop.com/">http://www.yourappshop.com</a> showed me their application store – for the iPhone! – one thought came to my mind &#8220;Does the Adult Industry point the way (again)?&#8221;  (whether you and I approve adult content or not is a different discussion, what we need to take out of this is the fact that they are showing a very viable way to go).</p>
<p>YourAppShop developed an app store entirely based on web technologies (lots of HTML5 which is supported by the iPhone browser and many many more devices) – which allows you to download web based applications to your homescreen, watch image slideshows, even videos. Everything works off- and online. To the well traveled mobile web developer all of this is nothing new, it is all part of HTML5. The folks of YourAppStore though were creative enough to build it so that the end-user does not feel the difference between a real native app (from the Apple store) and an application based on web technologies, payment for the service included! </p>
<p>Why don’t people (especially the folks in decision making positions) see that you can write amazing applications for the iPhone based on technology which also will work on other phones and which does not have to pass the QA of Apple? </p>
<p>If you are not too bothered about adult content (NSFW) take a look at <a href="http://www.yourappshop.com">http://www.yourappshop.com</a> from within your iPhone browser and visit one of their stores – the way they have set up a viable ecosystem using web technologies will give you a new impression of what we actually are able to do today.</p>
<p>As much as people might have concerns with the adult industry, they are showing us how we can get out of the app store restrictions – technology of today can be used to write successful applications and you can be monetizing the potential (more than 8.000.000 downloads for YourAppShop should say enough), Now that sounds great doesn’t it <a href="http://twitter.com/bild_aktuell">@Bild.de</a> and <a href="http://twitter.com/spiegel_alles">@Spiegel.de</a>?</p>
<p>And as if its not enough, Apple itself is showing a great example of the potential of web applications running on the iPhone with their online help: <a href="http://help.apple.com/iphone">http://help.apple.com/iphone</a> &#8211; go visit their site, and add the application to your homescreen by clicking on the &#8220;+&#8221; button in the bottom toolbar (Not to mention the fact that iPhone applications where meant to be build using the web stack in the first place). </p>
<p>As an application developer/creator, your goal should not be to only run on one platform, unless you don’t care about having sustainable and solid business case or unless your target-group is only the group of iPhone users (which I can’t believe is ever true).</p>
<p><a href="http://uxebu.com/blog/2010/02/15/eventninja-a-mobile-cross-platform-app/">We showed that there is technology which allows you to write applications for more than one platform</a>, technology which works whether there is an app store in between or not, technology which has a future, technology the web is built with – HTML/JavaScript/CSS or better, HTML5 apps. Use it and stop wasting time being afraid that Apple will ruin your business because they are rejecting an application – you shouldn’t have to care less!!</p>
<h2>Conclusion</h2>
<p>Jumping into the &#8220;We need to have an iPhone app&#8221; mantra without any second thought is very dangerous, its not good for your business. Analyze your requirements and check carefully if you can’t cover your needs with an application based on web technologies (which <a href="http://uxebu.com/blog/2010/02/15/eventninja-a-mobile-cross-platform-app/">as we proved still can make it into the Apple store</a> if they approve of your content). The advantage of applications based on web technology is overwhelming:</p>
<ul>
<li>Standardized technology stack (HTML5)</li>
<li>HTML5 apps work in mobile browsers, can be distributed over app stores or even can be integrated into traditional websites.</li>
<li>Much lower development costs.</li>
<li>Huge amount of target platforms</li>
</ul>
<p>Of course there are application cases where you need to access the devices hardware in ways the browser doesn&#8217;t yet allow you to (games or applications with extreme performance requirements for example) &#8211; but especially publishers and content driven apps should think twice.</p>
<p>If you are looking into building a mobile application and are not sure whether you should go for the native iPhone, native Android or any other native platform (and spend tons of money on it) or whether you should build on top of the much more open technology stack of the web, <a href="/contact">feel free to contact us and we can take a closer look at your requirements</a>.</p>
<p>Back to the <a href="http://www.vdz.de">folks who are planning to sue Apple (VDZ)</a> – start putting your apples into the right basket, build a web based application store as you can see with YourAppShop and you will have complete freedom over what you want to sell and what not. Your customers won’t feel the difference, they might even like it more because you can offer better prices (no profit sharing with Apple). Sueing Apple won’t help a thing, don’t waste your money and time.</p>
]]></content:encoded>
			<wfw:commentRss>http://uxebu.com/blog/2010/02/26/mobile-web-%e2%80%93-does-the-adult-industry-point-the-way-again/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>HumanApi &#8211; the browser in the real world</title>
		<link>http://uxebu.com/blog/2010/01/25/humanapi-the-browser-in-the-real-world/</link>
		<comments>http://uxebu.com/blog/2010/01/25/humanapi-the-browser-in-the-real-world/#comments</comments>
		<pubDate>Mon, 25 Jan 2010 14:32:06 +0000</pubDate>
		<dc:creator>Nikolai Onken</dc:creator>
				<category><![CDATA[frontend engineering]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[uxebu]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[humanapi]]></category>

		<guid isPermaLink="false">http://blog.uxebu.com/?p=922</guid>
		<description><![CDATA[During the Oredev speakers dinner last November, I was having an interesting discussion about the car industry and how Google in one swipe mangled up the turn-to-turn navigation market. During this discussion and other interesting conversations at the following JsConf, it it became more and more clear that we (web developers) should be able to [...]]]></description>
			<content:encoded><![CDATA[<p>During the <a href="http://www.oredev.org" target="_blank">Oredev</a> speakers dinner last November, I was having an interesting discussion about the car industry and how Google in one swipe mangled up the turn-to-turn navigation market. During this discussion and other interesting conversations at the following <a href="http://jsconf.eu">JsConf</a>, it it became more and more clear that we (web developers) should be able to write applications for instance for cars, write applications for phones we can plug into cars, and write those applications using web technologies &#8211; meaning JavaScript, HTML and CSS. </p>
<p><span id="more-922"></span></p>
<p>Since that discussion, the idea developed further and after some time, things started to take shape. </p>
<p>Lets take a look at the first prototype of a web based application (is this the first JavaScript ECG ever?) which reads your heart rate, sends it to the mobile phone via bluetooth and displays it in a native application driven by PhoneGap, meaning &#8211; the actual application is written using JavaScript, HTML(5), CSS.</p>
<div style="text-align: center; margin: 40px; 0">
<object width="500" height="375"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8915705&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=8915705&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height="375"></embed></object>
</div>
<p>Because the quality of the above video isn&#8217;t that good I have recorded a screencast from the iPhone simulator. This video only shows the applications look and feel since the simulator is not connected to the Polar hardware via Bluetooth.</p>
<div style="text-align: center; margin: 40px; 0">
<object width="300" height="514"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8849502&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=8849502&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="300" height="514"></embed></object>
</div>
<p><a href="http://humanapi.org/category/videos/">More videos are available here</a></p>
<p>After I got a first prototype running, the thoughts of what this could potentially mean would not stop popping up in my mind &#8211; the consequences for the web-development community are immense and the challenges we as web developers can face are broadened in a way that tons of exciting new things are lying ahead of us.</p>
<p>In this blogpost I will give you a quick outline the features of this prototype and the components I used.</p>
<h2>Setup</h2>
<p>To get the HumanApi ECG running I used following components:</p>
<ul>
<li><a href="http://phonegap.com">PhoneGap</a></li>
<li><a href="http://apple.com/iphone">iPhone</a></li>
<li><a href="http://www.polarusa.com/us-en/products/accessories/T31_coded_Transmitter">Polar T31</a></li>
<li><a href="http://arduino.cc/en/Main/ArduinoBoardBluetooth">Arduino BT</a></li>
<li><a href="http://danjuliodesigns.com/sparkfun/sparkfun.html">HRMI</a></li>
<li><a href="http://code.google.com/p/btstack/">btstack</a></li>
<li>little stuff</li>
</ul>
<p>Lets take a quick look at each of the components:</p>
<h2>PhoneGap</h2>
<p><a href="http://phonegap.com">PhoneGap</a> is one of the really cool projects out there. It not only allows you to deploy JS, HTML and CSS based applications on a range of mobile phones but it also gives you great APIs to access features of the phone. Because the iPhone SDK allows us to evaluate JavaScript from within Objective C it is relatively simple to execute JavaScript calls within the webkit webview. This essentially allows you to communicate with for instance bluetooth. If more widget runtimes would give us possibilities to inject APIs into the runtime (W3C?) and make available in JavaScript we would be able to write very cool apps! (More on that in a different blogpost soon).</p>
<h2>iPhone</h2>
<p>besides the fact that Apple is blocking certain functionality of the phone (bluetooth for instance), it is an amazing device and allows you to do all kinds of stuff (e.g. inject JS into the webkit view). Its performance is very good as well and therefor makes a great prototyping device. To get this HumanApi prototype running I unfortunately had to jailbreak the device. We are slowly reaching a point in time where blocking device functionality will hurt Apple and other manufacturers/operators, they are locking their devices out from an amazing amount of possible application usecases.</p>
<h2>Polar T31</h2>
<p><a href="http://www.polarusa.com/us-en/products/accessories/T31_coded_Transmitter">The Polar T31</a> is a simple heart rate transmitter which you can use to monitor your heart rate when doing sports. This device is perfect for our prototype because we indirectly can send the data to our iPhone.</p>
<h2>Arduino BT</h2>
<p>Because I can not communicate between the iPhone and the Polar T31 directly I had to create a bridge using the <a href="http://arduino.cc/en/Main/ArduinoBoardBluetooth">Arduino BT</a>. Essentially the Arduino receives the heart rate (using the HRMI) from the T31 and sends it to my iPhone via bluetooth.</p>
<h2>HRMI</h2>
<p>The <a href="http://danjuliodesigns.com/sparkfun/sparkfun.html">human heart rate interface</a> is a great little project by Dan Julio, who developed this hardware to receive the heart rate signal from the T31. Furthermore you can easily connect the HRMI to the Arduino BT and therefore send the heart rate to your iPhone via bluetooth.</p>
<h2>btstack</h2>
<p>As I wrote before, Apple does not allow to access the full bluetooth stack on the device &#8211; even though the hardware is available. Luckily <a href="http://code.google.com/p/btstack/">Matthias Ringwald</a> has developed a library for the iPhone which lets you access the different bluetooth profiles &#8211; without his amazing work this HumanApi prototype never would have been able to exist.</p>
<h2>Your own HumanApi</h2>
<p>If you want to develop your own application accessing hardware, feel free to contribute to the HumanApi project. There would be nothing more amazing than seeing for instance the ECG app running on Andriod and other platforms. </p>
<p>A good start are the <a href="http://humanapi.org">articles on humanapi.org</a>, the <a href="http://groups.google.com/group/humanapi">forum</a>, the <a href="http://github.com/nonken/humanapi">GIT repository</a> or these folks on twitter: <a href="http://twitter.com/nonken">@nonken</a>, <a href="http://humanapi.org">@humanapi</a>, <a href="http://twitter.com/uxebu">@uxebu</a>. </p>
<h2>Conclusion</h2>
<p>Essentially we are at a point where we as JavaScript developers could be writing applications we never thought of a few years ago. It is to us and to the industry now to demand that we get better and more access to the devices hardware &#8211; there is no reason why JavaScript developers get &#8220;discriminated&#8221; over native developers in the way how we can access device features</p>
<p><strong>I want to close this article with a short comparison:</strong></p>
<p>Often mobile developers, using web technologies, are compared to native developers on the example of games. &#8220;Ohhh but you can not write amazing 3D games using JavaScript&#8221; &#8211; funnily enough I even hear JavaScript developers trying to &#8220;defend&#8221; themselves agreeing to the above stated fact &#8211; &#8220;Yes we can&#8217;t write games, but phones are getting better so one day we will&#8221;. </p>
<p>We don&#8217;t need to make these kind of comparisons and should start demanding better access to the devices hardware. What stops us from saying &#8220;We don&#8217;t have to develop games, we can write home automation systems, medical applications (<a href="http://twitter.com/#search?q=mhealth">#mhealth</a>), apps for the cars industry and so much more amazing stuff &#8211; and we can do it cross platform! (And WebGL is on its way btw. ;) )&#8221;? </p>
<p>Right now it is not the language which is stopping us. App store policies, manufacturers and operators are stopping us because we have to hack our way into the devices! </p>
<p>Enjoy hacking</p>
]]></content:encoded>
			<wfw:commentRss>http://uxebu.com/blog/2010/01/25/humanapi-the-browser-in-the-real-world/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Dojo.workshop(&#8220;Haifa&#8221;) &#8211; the summary</title>
		<link>http://uxebu.com/blog/2009/08/12/dojoworkshophaifa-the-summary/</link>
		<comments>http://uxebu.com/blog/2009/08/12/dojoworkshophaifa-the-summary/#comments</comments>
		<pubDate>Wed, 12 Aug 2009 11:11:18 +0000</pubDate>
		<dc:creator>Nikolai Onken</dc:creator>
				<category><![CDATA[dojo]]></category>
		<category><![CDATA[event]]></category>
		<category><![CDATA[frontend engineering]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[uxebu]]></category>
		<category><![CDATA[w3c widgets]]></category>
		<category><![CDATA[dojo.beer()]]></category>

		<guid isPermaLink="false">http://blog.uxebu.com/?p=624</guid>
		<description><![CDATA[August 9th was the day for the first Dojo event in Israel and thanks to Yoav Rubin from IBM Research Labs in Haifa, we were able to hold the event in the great Auditorium of the amazingly located IBM building in Haifa.
To give you a little impression of what kind of working environment the folks [...]]]></description>
			<content:encoded><![CDATA[<p>August 9th was the day for the first Dojo event in Israel and thanks to <a href="http://yoavrubin.blogspot.com">Yoav Rubin</a> from IBM Research Labs in Haifa, we were able to hold the event in the great Auditorium of the amazingly located IBM building in Haifa.<br />
To give you a little impression of what kind of working environment the folks at IBM have, I uploaded a panorama image from Yoav&#8217;s office.</p>
<p><center><a href="http://blog.uxebu.com/wp-content/uploads//2009/08/1411050085_9690da53f7_o.jpg"><img src="http://blog.uxebu.com/wp-content/uploads//2009/08/1411050085_9690da53f7_o-1024x142.jpg" alt="IBM Haifa" title="IBM Haifa" width="50%" class="alignnone size-large wp-image-625" /></a></center><br />
<span id="more-624"></span></p>
<p>The day started as planned with coffee and snacks and a <a href="http://www.slideshare.net/nonken/dojo-introduction-1844594">Dojo introduction</a> giving everybody who wasn&#8217;t really familiar with the Dojo Toolkit a better idea of what it actually is. A few demos such as <a href="http://code.google.com/p/xray-project">xRay</a> where shown to show some of the advanced features of Dojo such as live charting, custom themeing and much more.<br />
After a short break we continued with a talk on how to <a href="http://www.slideshare.net/nonken/event-list">design mobile architectures with the Dojo Toolkit</a> for platforms such as <a href="http://www.phonegap.com">PhoneGap</a>, W3C widgets and other mobile platforms supporting JavaScript/HTML and CSS. This is a very interesting topic and it was great to share the experience we made at uxebu on finding viable solutions for the challenges we face.  The third talk was a quick overview of the current documentation efforts for Dojo and different ways of finding the information you need when you are stuck or simply looking for API docs or similar.<br />
Before the break, Tomer Mahlin from IBM in Jerusalem, who is working on the BIDI implementation in Dojo, gave a very interesting talk on the challenges, developers face when writing applications supporting BIDI. Not having to deal with the issues you get confronted with when having to develop BIDI applications, this talk was eye opening and very interesting.<br />
After a great lunch we jumped into a hands on session building a very simple mobile app running on both PhoneGap and devices with a widget runtime supporting W3C widgets installed. This gave the audience a glimpse into mobile development and the challenges but also really exciting features.</p>
<p>In total there were about 45 people attending the event which is an amazing amount of people for such a first time event, thanks again to everyone attending and especially to Yoav Rubin and the folks at IBM to make this happen.</p>
<p>I am already looking forward to the next Dojo event in Israel and hope that we can be part of it again.</p>

<a href='http://uxebu.com/blog/2009/08/12/dojoworkshophaifa-the-summary/1411050085_9690da53f7_o/' title='IBM Haifa'><img width="150" height="150" src="http://blog.uxebu.com/wp-content/uploads//2009/08/1411050085_9690da53f7_o-150x150.jpg" class="attachment-thumbnail" alt="" title="IBM Haifa" /></a>
<a href='http://uxebu.com/blog/2009/08/12/dojoworkshophaifa-the-summary/nikolaionken_dojo2/' title='nikolaionken_dojo2'><img width="150" height="150" src="http://blog.uxebu.com/wp-content/uploads//2009/08/nikolaionken_dojo2-150x150.jpg" class="attachment-thumbnail" alt="" title="nikolaionken_dojo2" /></a>
<a href='http://uxebu.com/blog/2009/08/12/dojoworkshophaifa-the-summary/img_0131/' title='img_0131'><img width="150" height="150" src="http://blog.uxebu.com/wp-content/uploads//2009/08/img_0131-150x150.jpg" class="attachment-thumbnail" alt="" title="img_0131" /></a>
<a href='http://uxebu.com/blog/2009/08/12/dojoworkshophaifa-the-summary/img_0130/' title='img_0130'><img width="150" height="150" src="http://blog.uxebu.com/wp-content/uploads//2009/08/img_0130-150x150.jpg" class="attachment-thumbnail" alt="" title="img_0130" /></a>
<a href='http://uxebu.com/blog/2009/08/12/dojoworkshophaifa-the-summary/img_01311/' title='img_01311'><img width="150" height="150" src="http://blog.uxebu.com/wp-content/uploads//2009/08/img_01311-150x150.jpg" class="attachment-thumbnail" alt="" title="img_01311" /></a>
<a href='http://uxebu.com/blog/2009/08/12/dojoworkshophaifa-the-summary/img_0133/' title='img_0133'><img width="150" height="150" src="http://blog.uxebu.com/wp-content/uploads//2009/08/img_0133-150x150.jpg" class="attachment-thumbnail" alt="" title="img_0133" /></a>

<p>Following are the slides to give you a little impression of the events content. </p>
<div style="width:425px;text-align:left" id="__ss_1844597"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/nonken/event-list" title="EventNinja, Dojo and mobile">EventNinja, Dojo and mobile</a><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=eventlist-090811111712-phpapp01&#038;stripped_title=event-list" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=eventlist-090811111712-phpapp01&#038;stripped_title=event-list" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">documents</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/nonken">nonken</a>.</div>
</div>
<div style="width:425px;text-align:left" id="__ss_1844594"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/nonken/dojo-introduction-1844594" title="Dojo Introduction">Dojo Introduction</a><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=dojointroduction-090811111614-phpapp02&#038;stripped_title=dojo-introduction-1844594" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=dojointroduction-090811111614-phpapp02&#038;stripped_title=dojo-introduction-1844594" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">documents</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/nonken">nonken</a>.</div>
</div>
<div style="width:425px;text-align:left" id="__ss_1848277"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/guest0176bf4/bidi-support-in-dojo14" title="Bidi Support In Dojo1.4">Bidi Support In Dojo1.4</a><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=bidisupportindojo1-406august2009-090812072918-phpapp02&#038;stripped_title=bidi-support-in-dojo14" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=bidisupportindojo1-406august2009-090812072918-phpapp02&#038;stripped_title=bidi-support-in-dojo14" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">presentations</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/guest0176bf4">guest0176bf4</a>.</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://uxebu.com/blog/2009/08/12/dojoworkshophaifa-the-summary/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Dojo.workshop in Haifa, Israel &#8211; August 9th</title>
		<link>http://uxebu.com/blog/2009/07/30/dojoworkshop-in-haifa-israel-august-9th/</link>
		<comments>http://uxebu.com/blog/2009/07/30/dojoworkshop-in-haifa-israel-august-9th/#comments</comments>
		<pubDate>Thu, 30 Jul 2009 11:08:04 +0000</pubDate>
		<dc:creator>Nikolai Onken</dc:creator>
				<category><![CDATA[business]]></category>
		<category><![CDATA[dojo]]></category>
		<category><![CDATA[event]]></category>
		<category><![CDATA[uxebu]]></category>
		<category><![CDATA[dojo.workshop]]></category>
		<category><![CDATA[israel]]></category>
		<category><![CDATA[mobile]]></category>

		<guid isPermaLink="false">http://blog.uxebu.com/?p=607</guid>
		<description><![CDATA[The news have been announced already on the Dojotoolkit.org and Dojocampus.org blogs but I nevertheless wanted to mention the dojo.workshop in Haifa, Israel on August 9th.
Already now we have more than 50 signups and thanks to Yoav Rubin from IBM research labs we can have a full day of Dojo-ness.

It is interesting to hear that [...]]]></description>
			<content:encoded><![CDATA[<p>The news have been announced already on the <a href="http://dojotoolkit.org/2009/07/27/dojo-workshop-haifa-israel-august-9th-more-info-and-schedule">Dojotoolkit.org</a> and <a href="http://dojocampus.org/content/2009/07/09/dojoworkshophaifa-august-9th/">Dojocampus.org</a> blogs but I nevertheless wanted to mention the dojo.workshop in Haifa, Israel on August 9th.<br />
Already now we have more than 50 signups and thanks to <a href="http://yoavrubin.blogspot.com">Yoav Rubin</a> from IBM research labs we can have a full day of Dojo-ness.<br />
<span id="more-607"></span><br />
It is interesting to hear that many attending people are interested in how to write mobile applications with the Dojo Toolkit and we will try to spend some time on giving people insight about where things currently stand.<br />
As I am discussing in the upcoming issue of the <a href="http://www.jsmag.com/">JSMag</a>, using JavaScript libraries on mobile environments is something you have to do with caution since most of the libraries were not written intentionally for mobile platforms.<br />
Dojo at this point is a very good choice (yes I am biased ;) and yes, Dojo needs a lot of optimization for mobile) especially if you are working on delivering applications both to mobile devices and desktop clients. It is no fun having to use different tools for similar environments. So I am looking forward to lots of mobile hacking in Haifa.</p>
<p>Following some more details for the event. You can find all info also at the <a href="http://dojocampus.org/content/2009/07/09/dojoworkshophaifa-august-9th/">DojoCampus.org event page</a> and things are still subject to change.</p>
<p><strong>Location:</strong></p>
<p>IBM Haifa Research Lab<br />
Haifa University Campus</p>
<p><a href="http://maps.google.com/maps?f=q&#038;source=s_q&#038;hl=en&#038;geocode=&#038;q=Israel,+Haifa,+Haifa+University&#038;sll=32.763315,35.004501&#038;sspn=0.2096,0.176811&#038;ie=UTF8&#038;z=14&#038;iwloc=A">Google map</a></p>
<p><strong>Time:</strong></p>
<p>09:30 &#8211; 15:00</p>
<p><strong>Schedule</strong></p>
<p>09:30 &#8211; 10:00 &#8211; Gathering</p>
<p>10:00 &#8211; 10:15 &#8211; Welcome and introduction</p>
<p>10:15 &#8211; 10:45 &#8211; Overview of Dojo Dijit and Dojox</p>
<p>11:00 &#8211; 12:00 &#8211; Dojo and Mobile</p>
<p>12:00 &#8211; 12:30 &#8211; Dojo based JavaScript API Docs generator</p>
<p>12:30 &#8211; 13:00 &#8211; Hacking mobile (this session might be extended)</p>
<p>13:00 &#8211; 14:00 &#8211; Lunch</p>
<p>14:10 &#8211; 14:30 &#8211; Support for bidirectional languages in Dojo</p>
<p>14:30 &#8211; 15:00 &#8211; Projects demonstration </p>
<p>If you want to give a talk about your experience with Dojo or anything Web related, leave a comment at the <a href="http://dojocampus.org/content/2009/07/09/dojoworkshophaifa-august-9th/">DojoCampus.org event page</a> or send an email to nonken(_at_) dojotoolkit.org and we&#8217;ll make sure you get added to the schedule.</p>
<p>After the main event we will either continue hacking or go for food/drinks/dojo.beers() into town.</p>
<p>If you would like to attend, please add your name to the list below, so we can be sure that we will have enough space.</p>
<p><iframe width="300" height="250" frameborder="0" src="http://doodle.com/summary.html?pollId=d6y8m9mfarzd3xwc"> </iframe></p>
<p>Looking forward to being in Haifa and meeting lots of Dojo, web, JavaScript folks.</p>
]]></content:encoded>
			<wfw:commentRss>http://uxebu.com/blog/2009/07/30/dojoworkshop-in-haifa-israel-august-9th/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>EventNinja: A mobile must-have Widget for the mobile2.0</title>
		<link>http://uxebu.com/blog/2009/06/16/eventninja-a-mobile-must-have-widget-for-the-mobile20/</link>
		<comments>http://uxebu.com/blog/2009/06/16/eventninja-a-mobile-must-have-widget-for-the-mobile20/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 08:31:43 +0000</pubDate>
		<dc:creator>Wolfram Kriesing</dc:creator>
				<category><![CDATA[business]]></category>
		<category><![CDATA[dojo]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[uxebu]]></category>
		<category><![CDATA[w3c widgets]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[mobile2.0]]></category>
		<category><![CDATA[phonegap]]></category>
		<category><![CDATA[w3c]]></category>

		<guid isPermaLink="false">http://blog.uxebu.com/?p=493</guid>
		<description><![CDATA[We have been writing and talking about EventNinja already for a bit. Now you can have it! Just visit EventNinja.net and test it on your iPhone and other mobile devices. EventNinja is on its way into the different AppStores and we will keep you updated on new versions coming out.
What will you get? At first, [...]]]></description>
			<content:encoded><![CDATA[<p>We have been writing and <a href="http://twitter.com/EventNinja_app">talking about EventNinja</a> already for a bit. <strong>Now you can have it!</strong> Just visit <a href="http://www.eventninja.net">EventNinja.net</a> and test it on your iPhone and other mobile devices. EventNinja is on its way into the different AppStores and we will keep you updated on new versions coming out.<br />
What will you get? At first, you&#8217;re getting the best app out there to lead you around a conference like the <a href="http://mobile20.eu">mobile2.0 in Barcelona</a> in a few days on the 18th and 19th of June 2009. If you are attending be sure to have EventNinja on your mobile! So that you have all the info at hand when searching for the next talk to attend. It&#8217;s not just a list of all relevant upcoming web developer events on your phone (and browser). It is even more, you can get in depth info about the events, their schedule, all the twitter messages for an event, directions and many more features.<br />
If you are at the <a href="http://mobile20.eu">mobile2.0</a> be sure to visit us to get even more!</p>
<p>Enjoy the short video we prepared to give you an impression of what EventNinja can do</p>
<p><object width="640" height="385"><param name="movie" value="http://www.youtube.com/v/DClZnEaBHLI&#038;hl=en&#038;fs=1&#038;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/DClZnEaBHLI&#038;hl=en&#038;fs=1&#038;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="385"></embed></object></p>
<p><span id="more-493"></span></p>
<h2>EventNinja in Action</h2>
<p>The EventNinja widget contains multiple pages, as you are used to from mobile applications. The <em>home page</em> shows all the events, allows you to search and filter them. Along the top bar you have the search bar, the &#8220;Help&#8221; and the &#8220;About&#8221; pages linked.<br />
Clicking on the icon to the right of each event takes you to <em>the details page</em> of the event, from where you can go to multiple other places, like <em>the map</em>, to see where it exactly takes place,<em> the schedule</em> of the event. If the event has twitter tags saved for it can go to a page which shows you all <em>the latest twitter messages</em> flying in. Try it on <a href="http://www.eventninja.net">EventNinja.net</a> and explore the features.</p>
<h2>EventNinja Features</h2>
<h3>User Features</h3>
<ul>
<li>List of web developer events</li>
<li>Searchable and filterable by tags, location and full-text search</li>
<li>Exact location of the event</li>
<li>Watch all twitter messages for each event</li>
<li>Find out about details of an event</li>
</ul>
<h3>Technology Features</h3>
<ul>
<li>Events are stored, retrieved and filtered by a Google Calendar</li>
<li>Everything built on top of the <a href="http://www.dojotoolkit.org">Dojo Toolkit</a></li>
<li>pure HTML, CSS, JavaScript based widget</li>
<li>using <a href="http://www.phonegap.com">PhoneGap</a> to run on <a href="http://www.apple.com/iphone/">iPhone</a>, <a href="http://www.android.com/">Android</a> and <a href="http://www.blackberry.nl/">Blackberry</a></li>
<li>Plugin architecture, allows for a modular enhancement of the widget</li>
<li><strong>Fully</strong> customizable via client-side templates and CSS of course</li>
</ul>
<p>As you figure right from the list of features and cleverly combining them we can hook this widget onto any calendar, customize the features (via plugins), style and brand it the way we like it and have your custom widget.</p>
<p>This gives customization a far broader meaning. Just imagine combining the two components 1) base of the widget and 2) the twitter plugin. You get a widget which shows you all tweets for a certain event -that&#8217;s just a new widget itself, without writing a line of new code. Which again is a very different use case, than the widget you get here. Just hook in another plugin which allows replying via twitter and you get a full blown twitter client in the context of events.<br />
The limits of what is thinkable is just limited by the plugins you can write.</p>
<h2>EventNinja for the mobile2.0 Conference</h2>
<p>Mobile2.0 is the first conference where you can really use EventNinja to get all the info possible, the schedule, twitter messages, etc. There surely will follow many more conferences and events that EventNinja can and will be used at. See the screenshots below to get a feeling of what it looks like for this conference.</p>

<a href='http://uxebu.com/blog/2009/06/16/eventninja-a-mobile-must-have-widget-for-the-mobile20/screenshot-20090612-150714/' title='screenshot-20090612-150714'><img width="150" height="150" src="http://blog.uxebu.com/wp-content/uploads//2009/06/screenshot-20090612-150714-150x150.png" class="attachment-thumbnail" alt="" title="screenshot-20090612-150714" /></a>
<a href='http://uxebu.com/blog/2009/06/16/eventninja-a-mobile-must-have-widget-for-the-mobile20/screenshot-20090612-150809/' title='screenshot-20090612-150809'><img width="150" height="150" src="http://blog.uxebu.com/wp-content/uploads//2009/06/screenshot-20090612-150809-150x150.png" class="attachment-thumbnail" alt="" title="screenshot-20090612-150809" /></a>
<a href='http://uxebu.com/blog/2009/06/16/eventninja-a-mobile-must-have-widget-for-the-mobile20/screenshot-20090612-150819/' title='screenshot-20090612-150819'><img width="150" height="150" src="http://blog.uxebu.com/wp-content/uploads//2009/06/screenshot-20090612-150819-150x150.png" class="attachment-thumbnail" alt="" title="screenshot-20090612-150819" /></a>
<a href='http://uxebu.com/blog/2009/06/16/eventninja-a-mobile-must-have-widget-for-the-mobile20/screenshot-20090612-150840/' title='screenshot-20090612-150840'><img width="150" height="150" src="http://blog.uxebu.com/wp-content/uploads//2009/06/screenshot-20090612-150840-150x150.png" class="attachment-thumbnail" alt="" title="screenshot-20090612-150840" /></a>
<a href='http://uxebu.com/blog/2009/06/16/eventninja-a-mobile-must-have-widget-for-the-mobile20/screenshot-20090612-150917/' title='screenshot-20090612-150917'><img width="150" height="150" src="http://blog.uxebu.com/wp-content/uploads//2009/06/screenshot-20090612-150917-150x150.png" class="attachment-thumbnail" alt="" title="screenshot-20090612-150917" /></a>
<a href='http://uxebu.com/blog/2009/06/16/eventninja-a-mobile-must-have-widget-for-the-mobile20/cap/' title='cap'><img width="150" height="150" src="http://blog.uxebu.com/wp-content/uploads//2009/06/cap-150x150.png" class="attachment-thumbnail" alt="" title="cap" /></a>

<h2>Are events missing?</h2>
<p>EventNinja for webdevelopers is driven by the great amount of community events.<br />
If you see that events are missing, please contact us and we will add them immediately. If you organize events yourself let us know as well. You can send any kind of info about the event, e.g. name, location, tags, speakers, twitter tags, schedule details, price, and much more.</p>
<h2>You want an EventNinja?</h2>
<p>Send an email to eventninja _ at _ uxebu.com if you are interested in a customized version of EventNinja, are interested in the technology or simply want to chat. At the <a href="htt[://www.mobile20.eu">mobile2.0</a> conference you will recognize us easily when you look for the guys with those caps, hurry, because we are spreading caps and maybe there will be many more wearing this cap :-).</p>
]]></content:encoded>
			<wfw:commentRss>http://uxebu.com/blog/2009/06/16/eventninja-a-mobile-must-have-widget-for-the-mobile20/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
