<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" version="2.0">

<channel>
	<title>GirlieMac! Blog</title>
	
	<link>http://girliemac.com/blog</link>
	<description>Mac, iPhone, Safari and beyond</description>
	<lastBuildDate>Wed, 30 Sep 2009 21:33:09 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/girliemac" type="application/rss+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>Classification of Mobile Browsers</title>
		<link>http://girliemac.com/blog/2009/09/22/classification-of-mobile-browsers/</link>
		<comments>http://girliemac.com/blog/2009/09/22/classification-of-mobile-browsers/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 03:00:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Nokia]]></category>
		<category><![CDATA[Opera]]></category>
		<category><![CDATA[Palm]]></category>
		<category><![CDATA[WAP]]></category>
		<category><![CDATA[WebKit]]></category>
		<category><![CDATA[WinMo]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://girliemac.com/blog/?p=93</guid>
		<description><![CDATA[Today, I am not going to post some CSS3 tricks on Webkit, or stuff like that. Instead, I post a list mobile browsers, since I am often asked about mobile / WAP browsers by engineers, product managers, and mobile-curious or mobile-newbie people.
I gathered 30+ major browsers I have worked with (plus a few I have [...]]]></description>
			<content:encoded><![CDATA[<p>Today, I am not going to post some CSS3 tricks on Webkit, or stuff like that. Instead, I post a list mobile browsers, since I am often asked about mobile / WAP browsers by engineers, product managers, and mobile-curious or mobile-newbie people.
<p>I gathered 30+ major browsers I have worked with (plus a few I have never even seen), and categorize by the markup that browsers can render &#8211; WML, CHTML, XHTML-MP, and HTML4.</p>
<p>So, here you go. If you find some mistakes, let me know!</p>
<style type="text/css">
			#mobile-browsers table {width: 500px; margin-bottom: 1em; border-right: 1px solid #999;border-bottom: 1px solid #999;}
			#mobile-browsers table tr td,
			#mobile-browsers table tr th {margin: 0; padding: 3px; border-left: 1px solid #999;}
			#mobile-browsers table tr.first td {border-top: 1px solid #999;}
		</style>
<div id="mobile-browsers">
<table>
<tr style="background-color:#ebb06a;">
<th colspan="2">WML Browsers (WAP 1.x)</th>
</tr>
<tr>
<td width="40%">Openwave earliy browsers 4.x </td>
<td>&nbsp;</td>
</tr>
<tr class="first">
<td>Early Nokia browser</td>
<td>&nbsp;</td>
</tr>
<tr class="first">
<td>Early Obigo browser</td>
<td>&nbsp;</td>
</tr>
</table>
<table>
<tr style="background-color:#bbda78;">
<th colspan="2">CHTML Browsers (Common in Japan)</th>
</tr>
<tr>
<td width="40%" rowspan="2">CHTML browsers</td>
<td>Compact-HTML browsers</td>
</tr>
<tr>
<td>Compact NetFront</td>
</tr>
<tr class="first">
<td>i-mode browsers (CHTML / XHTML) </td>
<td>NTT Docomo</td>
</tr>
</table>
<table>
<tr style="background-color:#f2a1d3">
<th colspan="2">XHTML Browsers (WAP 2.x &#8211; XHTML-MP / WML)</th>
</tr>
<tr>
<td rowspan="2" width="40%">WebKit</td>
<td>Nokia S40</td>
</tr>
<tr>
<td>Nokia S60 &#8211; earlier versions, or &#8220;Services&#8221; browser</td>
</tr>
<tr class="first">
<td rowspan="2">NetFront by Access</td>
<td>Palm Blazer 3.x -</td>
</tr>
<tr>
<td>Sony Ericsson WAP browser</td>
</tr>
<tr class="first">
<td>Blazer by Handspring</td>
<td>original browsers before accured by Palm</td>
</tr>
<tr class="first">
<td rowspan="5">Openwave 6.x</td>
<td>Siemens</td>
</tr>
<tr>
<td>Sharp</td>
</tr>
<tr>
<td>Sanyo</td>
</tr>
<tr>
<td>Motorola</td>
</tr>
<tr>
<td>Toshiba</td>
</tr>
<tr class="first">
<td>Blackberry by RIM</td>
<td>Blackberry browser- earlier version ~4.3? (<a href="http://docs.blackberry.com/en/developers/subcategories/?userType=21&#038;category=BlackBerry+Browser" target="_blank">*</a>)</td>
</tr>
<tr class="first">
<td>Obigo by Teleca</td>
<td></td>
</tr>
<tr class="first">
<td>Polaris by InfraWare</td>
<td></td>
</tr>
<tr class="first">
<td>Helio</td>
<td></td>
</tr>
<tr class="first">
<td>Motorola MIB</td>
<td></td>
</tr>
</table>
<table>
<tr style="background-color:#91e0f1;">
<th colspan="2">HTML Browsers</th>
</tr>
<tr>
<td width="40%" rowspan="7">WebKit</td>
<td>Nokia S60 3rd gen., &#8220;Web&#8221; Mini-map browser</td>
</tr>
<tr>
<td>Apple Mobile Safari</td>
</tr>
<tr>
<td>Google Android </td>
</tr>
<tr>
<td>Palm WebOS </td>
</tr>
<tr>
<td>Iris, by Torch Mobile (now RIM)</td>
</tr>
<tr>
<td>Bitstream Bolt (Proxy)</td>
</tr>
<tr>
<td>MOTOMAGX (Motorola Linux devices)</td>
</tr>
<tr class="first">
<td rowspan="4">Gecko</td>
<td>Mozilla Minimo (dead?)</td>
</tr>
<tr>
<td>Mozilla Fennec</td>
</tr>
<tr>
<td>Maemo (aka MicroB)</td>
</tr>
<tr>
<td>Skyfire</td>
</tr>
<tr class="first">
<td rowspan="4">Opera (proxy)</td>
<td>Opera Mobile</td>
</tr>
<tr>
<td>Opera Mini</td>
</tr>
<tr>
<td>Nintendo DSi</td>
</tr>
<tr>
<td>Nintendo Wii</td>
</tr>
<tr class="first">
<td>Blackberry by RIM</td>
<td>Blackberry browser ver.4.6+ (I am not sure about 4.4 and 4.5)</td>
</tr>
<tr class="first">
<td>Microsoft Internet Explorer (was Microsoft Pocket IE) </td>
<td>(earlier versions do not support CSS?)</td>
</tr>
<tr class="first">
<td rowspan="4">NetFront 3.x ?</td>
<td>Sony Ericsson browsers</td>
</tr>
<tr>
<td>Sony PlayStation / PSP browsers</td>
</tr>
<tr>
<td>Palm Blazer 4.x</td>
</tr>
<tr>
<td>Amazon Kindle</td>
</tr>
<tr class="first">
<td>Teleca</td>
<td>Teleca Browser V3.x ? (LG Voyager)</td>
</tr>
<tr class="first">
<td>Danger (now by Microsoft)</td>
<td>Sidekick</td>
</tr>
</table></div>
<p>I have categorized only with the markup type, and did not sub-categorize these browsers. However, if I would, I may want to grade XHTML-MP devices with page memory size (=&#8221;deck size&#8221;, yes I said deck size), and screen resolution for UI design purpose. </p>
<p>To grade full-HTML browsers, you need to spend massive time and effort on testing rendering capability with CSS, and Javascript DOM compatibility, events, etc.  Actually, PPK  has done excellent work on mobile browser testing, so you can simply visit <a href="http://www.quirksmode.org/m/" target="_blank">Quirksmode.org</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://girliemac.com/blog/2009/09/22/classification-of-mobile-browsers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Webkit CSS 3D + Local DB Demo</title>
		<link>http://girliemac.com/blog/2009/09/03/webkit-css-3d-local-db-demo/</link>
		<comments>http://girliemac.com/blog/2009/09/03/webkit-css-3d-local-db-demo/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 06:37:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Dev]]></category>
		<category><![CDATA[Sandbox]]></category>
		<category><![CDATA[WebKit]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://girliemac.com/blog/2009/09/03/webkit-css-3d-local-db-demo/</guid>
		<description><![CDATA[
Ever since I heard of Snow Loepard&#8217;s hardware-accelerated CSS, I wanted try some cool CSS animation for Safari 4.
So after installing Snow Leopard, I spent about a day and half to try creating my first 3D animation with Flickr API.
Honestly, I wasn&#8217;t sure where to get started to make some cool 3D effect, so what [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://girliemac.com/blog/wp-content/images/css3d.jpg" alt="css 3D screenshot"/></p>
<p>Ever since I heard of Snow Loepard&#8217;s hardware-accelerated CSS, I wanted try some cool CSS animation for Safari 4.</p>
<p>So after installing Snow Leopard, I spent about a day and half to try creating my first 3D animation with Flickr API.<br />
Honestly, I wasn&#8217;t sure where to get started to make some cool 3D effect, so what I did was I tried to reproduce the one on webkit.org example and modify a lot by trial and error approach.<br />
Also, I have been freqently asked about how I did with &#8220;My Favorites&#8221; feature on <a href="http://girliemac.com/blog/2009/08/29/pretty-cute-suite-another-cute-app-for-pre-from-me/">my Palm Pre app</a> (which is also a WebKit-based), so I throw the HTML5&#8217;s local storage demo with this 3D demo.
</p>
<p>So here, you can try my <a href="http://girliemac.com/sandbox/flickr_3d.html" target="_blank">CSS 3D and Local DB Demo</a>!!!<br />
Be sure to view this demo on Safari 4, iPhone Safari, or WebKit Nightly! This doesn;t seem to work on other Webkit-based browsers such as Chrome and Palm.
</p>
<p>I am not going to write a whole tutorial how to replicate this animation but I try to explain some examples.</p>
<h3>Spin a Wheel!</h3>
<p>Look at one of the flicke photo wheel on my demo. This is a combination of a few different animation.<br />
Let&#8217;s focus on the small wheel inside. This is the snippet of HTML of the wheel:</p>
<pre class="html">
<code>

&lt;div id="gallery"&gt;
  &lt;div id="pic01"&gt;&lt;img src="..."/&gt;&lt;/div&gt;
  &lt;div id="pic02"&gt;&lt;img src="..."/&gt;&lt;/div&gt;
  ... (10 more imgs)
&lt;/div&gt;	

</code>
</pre>
<p><img src="http://girliemac.com/blog/wp-content/images/coordinate.png" alt="3D Cood" align="left"/><br />
OK, for now, let&#8217;s ignore how each photo is rendered to form a loop, and just focus on the animation of one div, #gallery (= a wheel). A band of photos is ratating clockwise around Y-axis.<br />
This means the animation starts as <code>-webkit-transform: rotateY(0);</code> and goes around an circle for a whole 360 degree. <code> -webkit-transform: rotateY(-360deg);</code>.<br />
Use positive if you want to rotate in opposite direction.<br />
I set the whole circle completion span as 60 seconds in linier motion and the animation goes infinite. </p>
<p>This diagram from <a href="http://developer.apple.com/safari/library/documentation/InternetWeb/Conceptual/SafariVisualEffectsProgGuide/Transforms/Transforms.html" target="_blank">Apple&#8217;s Safari Reference Library</a> explains coordinates.</p>
<p>So the css for this movement is defined as:</p>
<pre class="css">
<code>
#gallery {
  -webkit-transform-style: preserve-3d;
  -webkit-animation: spinY 60s linear infinite;
}
</code>
</pre>
<pre class="css">
<code>
@-webkit-keyframes spinY {
  from { -webkit-transform: rotateY(0);}
  to   { -webkit-transform: rotateY(-360deg);}
}
</code>
</pre>
<p>Use 3D style, <code>-webkit-transform-style: preserve-3d;</code>to give 3D illusion. I set the initial perspective in its parent div as <code>-webkit-perspective: 380;</code>.<br />
It gives you an illusion of the depth. You can make the value lower to make it look more up-close to you.<br />
The unit of perspective should be &#8220;px&#8221;, but it looks like you&#8217;d better remove it for iPhone.</p>
<p><img src="http://girliemac.com/blog/wp-content/images/css3d_pers200.png" alt="perspective 200"/> <img src="http://girliemac.com/blog/wp-content/images/css3d_pers400.png" alt="perspective 400"/><br />
<img src="http://girliemac.com/blog/wp-content/images/css3d_pers500.png" alt="perspective 500"/> <img src="http://girliemac.com/blog/wp-content/images/css3d_pers0.png" alt="perspective 0"/></p>
<p>To figure out how to render each photo in loop, also other animations, please look at the source code of my demo.</p>
<p>Also, I will write about how to use HTML 5&#8217;s local storage sometimes later!</p>
<h3>References</h3>
<ul>
<li><a href="http://webkit.org/blog/386/3d-transforms/" target="_blank">3D Transforms</a> by Webkit.org</li>
<li><a href="http://webkit.org/blog/130/css-transforms/" target="_blank">CSS Transforms (2D)</a> by Webkit.org</li>
<li><a href="http://webkit.org/blog/138/css-animation/" target="_blank">CSS Animation</a> by Webkit.org</li>
<li><a href="http://www.w3.org/TR/css3-3d-transforms/" target="_blank">CSS 3D Transforms Module Level 3</a> W3C Working Draft</li>
<li><a href="http://developer.apple.com/safari/library/documentation/InternetWeb/Conceptual/SafariVisualEffectsProgGuide/Transforms/Transforms.html" target="_blank">Safari Reference Library -Transforms</a> by Apple</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://girliemac.com/blog/2009/09/03/webkit-css-3d-local-db-demo/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>PREtty Cute Suite -Another Cute app for Pre from me!</title>
		<link>http://girliemac.com/blog/2009/08/29/pretty-cute-suite-another-cute-app-for-pre-from-me/</link>
		<comments>http://girliemac.com/blog/2009/08/29/pretty-cute-suite-another-cute-app-for-pre-from-me/#comments</comments>
		<pubDate>Sun, 30 Aug 2009 05:13:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[App]]></category>
		<category><![CDATA[GirlieMac! News]]></category>
		<category><![CDATA[Palm]]></category>
		<category><![CDATA[WebKit]]></category>

		<guid isPermaLink="false">http://girliemac.com/blog/2009/08/29/pretty-cute-suite-another-cute-app-for-pre-from-me/</guid>
		<description />
			<content:encoded><![CDATA[<p><object width="425" height="344" align="center><param name="movie" value="http://www.youtube.com/v/kI8PJEBrkkA&#038;hl=en&#038;fs=1&#038;color1=0xcc2550&#038;color2=0xe87a9f"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/kI8PJEBrkkA&#038;hl=en&#038;fs=1&#038;color1=0xcc2550&#038;color2=0xe87a9f" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
<p>Can&#8217;t have enough cute!<br />
Instead of upgrading my previous app, iCuteOverload for Palm, I have created this power-up version of cute app called, PREtty Cute Suite. </p>
<p>This app is more offensively and obnoxiously cute with more cute-related rss feed and flickr pics.<br />
Included feeds are:</p>
<ol>
<li>Cute Overload</li>
<li>I Can Has Cheezburger</li>
<li>Cute Obssesion</li>
<li>Epicute</li>
<li>Super Cute Kawaii</li>
<li>Cupcakes Take Tha Cake</li>
</ol>
<p>Also, a bunch of cute picture streams from Flickr.<br />
<br/><br />
This app allows you to save the pix/feeds you like as your favorites, also share the links via email.</p>
<p>Currently available as a &#8220;Homebew&#8221; app on <a href="http://www.precentral.net/homebrew-apps/pretty-cute-suite" target="_blank">PreCentral.net</a> for free.<br />
I have no plan to submit this to the Palm official app store in this moment, at least for this version 0.9.</p>
]]></content:encoded>
			<wfw:commentRss>http://girliemac.com/blog/2009/08/29/pretty-cute-suite-another-cute-app-for-pre-from-me/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>My First WebOS App – iCuteOverload for Palm v1.0</title>
		<link>http://girliemac.com/blog/2009/08/11/my-first-webos-app-icuteoverload-for-palm-v10/</link>
		<comments>http://girliemac.com/blog/2009/08/11/my-first-webos-app-icuteoverload-for-palm-v10/#comments</comments>
		<pubDate>Wed, 12 Aug 2009 01:43:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[App]]></category>
		<category><![CDATA[Dev]]></category>
		<category><![CDATA[Girlie Stuff]]></category>
		<category><![CDATA[GirlieMac! News]]></category>
		<category><![CDATA[Palm]]></category>
		<category><![CDATA[SDK]]></category>
		<category><![CDATA[WebKit]]></category>

		<guid isPermaLink="false">http://girliemac.com/blog/2009/08/11/my-first-webos-app-icuteoverload-for-palm-v10/</guid>
		<description><![CDATA[
As a front-end web developer, also a mobile-web developer, the Palm&#8217;s new WebOS SDK for Pre sounds very attractive, and I could not wait to create some applications although I am still a iPhone user and haven&#8217;t been convinced to switch a service provider.
Then I felt like, I already got this web app, iCuteoverload for [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://girliemac.com/blog/wp-content/images/iCO_pre.png"/></p>
<p>As a front-end web developer, also a mobile-web developer, the Palm&#8217;s new WebOS SDK for Pre sounds very attractive, and I could not wait to create some applications although I am still a iPhone user and haven&#8217;t been convinced to switch a service provider.</p>
<p>Then I felt like, I already got this web app, iCuteoverload for iPhone but yeah why not for Pre? So I decide to re-create the same app from scratch. Sure, the existing app is a web app that wrote with JavaScript framework iUI and PHP, does run fine on Pre&#8217;s web browser since Pre is based on Webkit browser. However, I wanted to make this app a standalone client with Mojo framework so I needed to code from scratch.</p>
<p>Anyway, here it is, iCO for Palm is <a href="http://www.precentral.net/homebrew-apps/icuteoverload-palm" target="_blank">now available at PreCentral</a>. The official store is not yet open, so the installing the app may require a bit of geeky skills, but if you happen to be a Pre user and would like to try, follow this tutorial on <a href="http://discussion.treocentral.com/homebrew-apps/194832-webos-quick-install-v1-0-a.html" target="_blank">how to install homebrew apps on Pre for Mac users</a> (And this is for <a href="http://www.precentral.net/how-to-install-homebrew-apps" target="_blank">Windows users instruction</a>). </p>
<p>By the way, I keep this app name begins with <em>i</em>, because I already have named so for iPhone and wanted to keep it for consistency. However, in Pre community, this seems to be a pretty bad thing to do. People see me as a clueless Apple fan <img src='http://girliemac.com/blog/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://girliemac.com/blog/2009/08/11/my-first-webos-app-icuteoverload-for-palm-v10/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>iPhone App – MuniApp for San Francisco Muni riders!</title>
		<link>http://girliemac.com/blog/2009/08/08/iphone-app-muniapp-for-san-francisco-muni-riders/</link>
		<comments>http://girliemac.com/blog/2009/08/08/iphone-app-muniapp-for-san-francisco-muni-riders/#comments</comments>
		<pubDate>Sun, 09 Aug 2009 00:44:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[App]]></category>
		<category><![CDATA[GirlieMac! News]]></category>
		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iPod]]></category>

		<guid isPermaLink="false">http://girliemac.com/blog/2009/08/08/iphone-app-muniapp-for-san-francisco-muni-riders/</guid>
		<description><![CDATA[
Ta-da, finally there&#8217;s an app for that! &#8211; I mean an iPhone native app that I involved is available on App Store!
This app is called, MuniApp, and this gives you access to San Francisco’s MUNI transit system on the go with real time predictions for buses, metro and cable cars.
I have worked on some UI [...]]]></description>
			<content:encoded><![CDATA[<p align="center"><img src="http://girliemac.com/blog/wp-content/images/muniapp.png"/></p>
<p>Ta-da, finally there&#8217;s an app for that! &#8211; I mean an iPhone native app that I involved is available on App Store!
<p>This app is called, MuniApp, and this gives you access to San Francisco’s MUNI transit system on the go with real time predictions for buses, metro and cable cars.</p>
<p>I have worked on some UI and icons, while my friend Alberto has coded all the Obj.C. We are both SF residents and rely on MUNI pretty frequently and we do use this app on daily basis. Honestly, this is really simple and useful app <img src='http://girliemac.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>The official website for MuniApp is at <a href="http://www.obapp.com/muniapp" target="_blank">www.obapp.com/muniapp</a></p>
<p>To directly go to App Store on iTunes, <a href="itms://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=323516756&#038;mt=8&#038;s=143441">go to this link!</a></p>
]]></content:encoded>
			<wfw:commentRss>http://girliemac.com/blog/2009/08/08/iphone-app-muniapp-for-san-francisco-muni-riders/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Finally, the official Mojo SDK for all!</title>
		<link>http://girliemac.com/blog/2009/07/16/finally-the-official-mojo-sdk-for-all/</link>
		<comments>http://girliemac.com/blog/2009/07/16/finally-the-official-mojo-sdk-for-all/#comments</comments>
		<pubDate>Fri, 17 Jul 2009 05:45:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Palm]]></category>
		<category><![CDATA[SDK]]></category>
		<category><![CDATA[WebKit]]></category>

		<guid isPermaLink="false">http://girliemac.com/blog/2009/07/16/finally-the-official-mojo-sdk-for-all/</guid>
		<description><![CDATA[
After I was rejected for the early access then struggled with the &#8220;leaked&#8221; version of Palm Mojo SDK without a documentation, today Palm finally made the official SDK available for all!!! 
I haven&#8217;t playing around with it long enough to blog much about it, so I just post my &#8220;cheat sheet&#8221; that I keep on [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://girliemac.com/blog/wp-content/images/mojo_sdk.png"/></p>
<p>After I was rejected for the early access then struggled with the &#8220;leaked&#8221; version of Palm Mojo SDK without a documentation, today Palm finally made <a href="http://developer.palm.com/" target="_blank">the official SDK available</a> for all!!! </p>
<p>I haven&#8217;t playing around with it long enough to blog much about it, so I just post my &#8220;cheat sheet&#8221; that I keep on Stickies. </p>
<h3>Emulator Key for Mac</h3>
<ul>
<li><strong>Esc</strong> &#8211; acts as &#8220;Back&#8221;</li>
<li><strong>Left / Right arrows</strong> &#8211; Switch between applications</li>
</ul>
<h3>Emulator Navigation</h3>
<p>&#8220;Host&#8221; = Right Ctrl in Virtual Box</p>
<ul>
<li>Host + F &#8211; Toggle full screen view on/off
<li>Host + N &#8211; Display session info
<li>Host + S &#8211; Take a snapshot (will be placed the Snapshot tab of VirtualBox)
<li>Host + Q &#8211; Close the emulator
</ul>
<h3>Commands</h3>
<h4>Create a package (.ipk file)</h4>
<p><code>$ cd palm-package myapp</code></p>
<h4>Install the .ipk file on emulator</h4>
<p><code>$ palm-install com.yourdomain.app.myapp_1.0.0_all.ipk</code></p>
<h4>Launch the app on emulator</h4>
<p><code>$ palm-launch com.yourdomain.app.myapp</code></p>
<h4>Launch the inspector with the app</h4>
<p><code>$ palm-launch -i  com.yourdomain.app.myapp</code></p>
<p>Then, open Palm Inspector app (comes with SDK) from your Application by double-clicking the icon. This should open the Safari inspector.</p>
]]></content:encoded>
			<wfw:commentRss>http://girliemac.com/blog/2009/07/16/finally-the-official-mojo-sdk-for-all/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Find Your Tweeting Neighbor on iPhone with GeoLocation</title>
		<link>http://girliemac.com/blog/2009/06/21/find-your-tweeting-neighbor-on-iphone-with-geolocation/</link>
		<comments>http://girliemac.com/blog/2009/06/21/find-your-tweeting-neighbor-on-iphone-with-geolocation/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 02:20:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Sandbox]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[WebKit]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://girliemac.com/blog/2009/06/21/find-your-tweeting-neighbor-on-iphone-with-geolocation/</guid>
		<description><![CDATA[
iPhone OS 3.0 is now available, and developers can take advantage of the newly introduced geolocation feature in Safari browser.
To try it out quickly, I used Twitter Search API again to create a tiny test app called, NeighborTweet, which enable you to find out who are tweeting in your neighborhood. Basically, what it does is [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://girliemac.com/blog/wp-content/images/neighbortweet.png" alt="screenshot"/></p>
<p>iPhone OS 3.0 is now available, and developers can take advantage of the newly introduced <strong>geolocation</strong> feature in Safari browser.</p>
<p>To try it out quickly, I used Twitter Search API again to create a tiny test app called, <a href="http://girliemac.com/geo" target="_blank"/>NeighborTweet</a>, which enable you to find out who are tweeting in your neighborhood. Basically, what it does is that obtain your location, and pass the latitude and longitude data to Twitter search and display the result tweets.</p>
<p>Try it out on your iPhone with:<br />
Short URL <a href="http://girliemac.com/geo" target="_blank"/>http://bit.ly/K0ZaE</a><br />
or<br />
<a href=http://qrcode.kaywa.com/img.php?s=8&#038;d=http%3A%2F%2Fgirliemac.com%2Fgeo">This QR Code</a> with scanning app like BeeTagg.</p>
<p>If you are interested in learning more on Twitter search API and geocode, please read <a href="http://apiwiki.twitter.com/Twitter-Search-API-Method%3A-search" target="_blank">Twitter Wiki</a>.</p>
<p>OK, now here&#8217;s the code.<br />
To find out your location with Geolocation class is simple &#8211; you just call <code>getCurrentPosition()</code> method. This initiates an asynchronous request to detect the user&#8217;s position.</p>
<pre class="js">
<code>
navigator.geolocation.getCurrentPosition(someFunction)
</code>
</pre>
<p>Get latitude and longitude, by using <code>coords</code> instance:</p>
<pre class="js">
<code>
latitude = position.coords.latitude;
longitude = position.coords.longitude;
</code>
</pre>
<p>Here&#8217;s an actual code I used to create the sample app:</p>
<pre class="js">
<code>
if (navigator.geolocation) {
  navigator.geolocation.getCurrentPosition(function(position) {
    callback(position.coords.latitude, position.coords.longitude);
  });
} else {
  alert("Geolocation services are not supported by your browser.");
} 

function callback(lat,lon){
  // twitter search json-p callback
  var geocode = "&#038;geocode=" + lat + "%2C" + lon + "%2C1mi";
  var fullUrl = url + geocode;
  ...
}
var url = "http://search.twitter.com/search.json?callback=getTweets";

function getTweets (json) {
  // display json data
  ...
}
</code>
</pre>
<h3>References</h3>
<p>Geolocation References:</p>
<ul>
<li><a href="http://developer.apple.com/safari/library/documentation/AppleApplications/Reference/SafariWebContent/GettingGeographicalLocations/GettingGeographicalLocations.html" target="_blank">Safari Reference Library &#8211; Getting Geographic Locations</a> &#8211; Apple Developer Connection</li>
<li><a href="https://developer.mozilla.org/En/Using_geolocation" target="_blank">Using geolocation</a> &#8211; Mozilla Developer Center</li>
<li><a href="http://www.w3.org/TR/geolocation-API/" target="_blank">Geolocation API Specification</a> &#8211; W3C Working Draft</li>
</ul>
<p>More References:</p>
<ul>
<li><a href="http://apiwiki.twitter.com/Twitter-Search-API-Method%3A-search" target="_blank">Twitter Search API Wiki</a></li>
<li><a href="http://bob.pythonmac.org/archives/2005/12/05/remote-json-jsonp/" target="_blank">Remote JSON &#8211; JSONP</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://girliemac.com/blog/2009/06/21/find-your-tweeting-neighbor-on-iphone-with-geolocation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TweetTrendDunno – Played with APIs</title>
		<link>http://girliemac.com/blog/2009/06/16/tweettrenddunno-played-with-apis/</link>
		<comments>http://girliemac.com/blog/2009/06/16/tweettrenddunno-played-with-apis/#comments</comments>
		<pubDate>Wed, 17 Jun 2009 05:20:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[App]]></category>
		<category><![CDATA[GirlieMac! News]]></category>
		<category><![CDATA[Sandbox]]></category>
		<category><![CDATA[Twitter]]></category>

		<guid isPermaLink="false">http://girliemac.com/blog/2009/06/16/tweettrenddunno-played-with-apis/</guid>
		<description><![CDATA[
I had a plenty of time to stay home and play with code right now so I mashed Twitter trend API, mixed with some BOSS news and image search stuff I used before, also Microsoft&#8217;s new Bing search results to create some silly and handy web app called TweetTrendDunno.
Basically, this grabs Twitter &#8220;trending topic&#8221; terms, [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://girliemac.com/blog/wp-content/images/tweettrend.png" alt="TweetTrendDunno screenshot" /><br />
I had a plenty of time to stay home and play with code right now so I mashed Twitter trend API, mixed with some BOSS news and image search stuff I used before, also Microsoft&#8217;s new Bing search results to create some silly and handy web app called <a href="http://girliemac.com/tweetNews/">TweetTrendDunno</a>.</p>
<p>Basically, this grabs Twitter &#8220;trending topic&#8221; terms, and as a user click on each term you want to know about, it displays news articles, images, and Bing results (usually summary from Wikipedia helps you to figure out what the term means in general).</p>
<p>If you are Twitter user and ever wonder what people are talking about, give <a href="http://girliemac.com/tweetNews/">TweetTrendDunno</a> a try!</p>
]]></content:encoded>
			<wfw:commentRss>http://girliemac.com/blog/2009/06/16/tweettrenddunno-played-with-apis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mobile Safari for iPhone 3 includes Geolocation</title>
		<link>http://girliemac.com/blog/2009/06/01/mobile-safari-for-iphone-3-includes-geolocation/</link>
		<comments>http://girliemac.com/blog/2009/06/01/mobile-safari-for-iphone-3-includes-geolocation/#comments</comments>
		<pubDate>Mon, 01 Jun 2009 23:45:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Firefox]]></category>
		<category><![CDATA[WebKit]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://girliemac.com/blog/2009/06/01/mobile-safari-for-iphone-3-includes-geolocation/</guid>
		<description><![CDATA[Although W3C&#8217;s document, The Geolocation API Specification is still in draft state and not yet  finalized, major browsers are working to support this functionality and as we all expected, Mobile Safari is not an exception.
According to ComputerWorld blog, the geolocation API has been implemented for the upcoming API. Apparently, Seth of ComputerWorld tried the [...]]]></description>
			<content:encoded><![CDATA[<p>Although W3C&#8217;s document, <a href="http://www.w3.org/TR/geolocation-API/" target="_blank">The Geolocation API Specification</a> is still in draft state and not yet  finalized, major browsers are working to support this functionality and as we all expected, Mobile Safari is not an exception.</p>
<p>According to <a href="http://blogs.computerworld.com/iphones_safari_browser_to_include_geolocation_0" target="_blank">ComputerWorld blog</a>, the geolocation API has been implemented for the upcoming API. Apparently, Seth of ComputerWorld tried the test webpage, built by Doug Turner for Mozilla on a 3.0B5 iPhone&#8217;s Mobile Safari.<br />
This screenshot is grabbed from the CompWorld&#8217;s blog.<br />
<img src="http://girliemac.com/blog/wp-content/images/compWorld_iphone_geo.png" /> </p>
<p>Obviously I don&#8217;t have access to the new iPhone so I just tested the test page  (<a href="http://people.mozilla.org/~dougt/geo.html" target="_blank">http://people.mozilla.org/~dougt/geo.html</a>) using Geolocation API <code>watchPosition()</code> method, on Mozilla 3.5. (And this should works similarly on Fennec too. I wish I could try on an actual device!)</p>
<p><img src="http://girliemac.com/blog/wp-content/images/ff35_geo01.png"/><br/><br />
<img src="http://girliemac.com/blog/wp-content/images/ff35_geo02.png"/></p>
<p>I am using my old PowerBook G4, with Comcast,. Since this Mac is not equipped with GPS device, Firefox gathers information about nearby wireless access points and computer’s IP address.</p>
<p>Nice! I can&#8217;t wait to see this working on iPhone!<br />
Especially, NextMuni.com with location enabled, that tells me where I am and where the nearest bus stop!</p>
]]></content:encoded>
			<wfw:commentRss>http://girliemac.com/blog/2009/06/01/mobile-safari-for-iphone-3-includes-geolocation/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Matrix Animation with WebKit CSS3</title>
		<link>http://girliemac.com/blog/2009/05/03/matrix-animation-with-webkit-css3/</link>
		<comments>http://girliemac.com/blog/2009/05/03/matrix-animation-with-webkit-css3/#comments</comments>
		<pubDate>Mon, 04 May 2009 05:40:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Dev]]></category>
		<category><![CDATA[Sandbox]]></category>
		<category><![CDATA[WebKit]]></category>

		<guid isPermaLink="false">http://girliemac.com/blog/2009/05/03/matrix-animation-with-webkit-css3/</guid>
		<description><![CDATA[
I tweaked the WebKit CSS3 Animation example I made last time to create this &#8220;Matrix&#8221; animation for fun.


This is the screen capture of the animation on Safari 4.

You can try
the actual HTML page and see it working on current WebKit Nightly build or Safari 4.

To display the Katakana characters, I used @font-face rule to embed [...]]]></description>
			<content:encoded><![CDATA[<p>
I tweaked <a href="http://girliemac.com/blog/2009/02/18/using-keyframes-webkit-css-animation-examples/">the WebKit CSS3 Animation example I made last time</a> to create this &#8220;Matrix&#8221; animation for fun.
</p>
<p>
This is the screen capture of the animation on Safari 4.<br />
<img src="http://girliemac.com/blog/wp-content/images/screenshot_css3matrix.png" alt="css3 animation screenshot"/></p>
<p>You can try<br />
<a href="http://girliemac.com/sandbox/matrix.html" target="_blank">the actual HTML page</a> and see it working on current WebKit Nightly build or Safari 4.
</p>
<p>To display the Katakana characters, I used <code>@font-face</code> rule to embed a Katakana dingbat-like font, rather than using an actual Japanese input.<br />
Although I wanted display the kanakana vertically with using <code>writing-mode: tb-rl</code>, which I believe has been proposed for CSS2, this is not supported on Webkit so I had to use <code>-webkit-transform</code> to rotate each div to 90 degree to display vertically.<br />
This way, each letter faces 90 deg angle too, but oh well, this Japanese letters are random, used only for visual purpose and don&#8217;t mean anything so I guess this doesn&#8217;t matter for now.
</p>
<p>Let&#8217;s take a look at some of the CSS3 code, I am showing only important parts so if you would like to view the entire code, just open up the htmlpage and use Webkit&#8217;s inspector!</p>
<h3>Embed A Katakana Font</h3>
<pre class="css">
<code>
@font-face {
  font-family: Katakana;
  src: url('MoonBeams-katakana_.TTF');
}

#matrix{
  font-family: Katakana; /* use the embedded font */
  position: absolute;
  ... (more styles here) ...
}
</code>
</pre>
<p>@font-face rule is not supported by older Safari including iPhone.<br />
On supported browsers, you should be able to use either TrueType (.ttf) or OpenType (.otf).
</p>
<h3>Define Animations</h3>
<pre class="css">
<code>
@-webkit-keyframes fade{
    0%   {opacity: 1;}
    100% {opacity: 0;}
}
@-webkit-keyframes fall{
   	from {top: -250px;}
	to 	{top: 300px;}
}
</code>
</pre>
<p>I used both <em>%</em> and <em>from/to</em> keywords. But with %, you can define in-between state.</p>
<h3>Rotate the Katakana Strings</h3>
<pre class="css">
<code>
#matrix div{
  position: absolute;
  top: 0;
  -webkit-transform-origin: 0%;
  -webkit-transform: rotate(90deg);
  ...
</code>
</pre>
<p>By setting <code>-webkit-transform-origin</code> as 0%, the div block rotates 90 degrees at the far left.<br />
If you don&#8217;t set this, by default, it rotates at center axis.</p>
<h3>&#8230;and Use the Defined Animations</h3>
<pre class="css">
<code>
#matrix div{
  ...
  -webkit-animation-name: fall, fade;
  -webkit-animation-iteration-count: infinite; /* use 0 to infinite */
  -webkit-animation-direction: normal; /* default is normal. use 'alternate' to reverse direction */
  -webkit-animation-timing-function: ease-out;
}
</code>
</pre>
<p>For more detailed info on <code>-webkit-animation</code> properties, read <a href="http://developer.apple.com/documentation/appleapplications/Reference/SafariCSSRef/Articles/StandardCSSProperties.html#//apple_ref/doc/uid/TP30001266-VisualEffects" target="_blank">Apple&#8217;s Developer Connection</a></p>
<p>Again, this example is currently working only on the latest WebKit and Safari 4 (not iPhone).<br />
Google Chrome does not support @font-face or animation. (<code>-webkit-transform:rotate...</code> works), and I assume it does not work on Android either.<br />
(And I have no intention to try on other WebKit-base browsers like S60).</p>
]]></content:encoded>
			<wfw:commentRss>http://girliemac.com/blog/2009/05/03/matrix-animation-with-webkit-css3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
