<?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>Andrea Trasatti&#039;s tech notes and more &#187; Mobile Web</title>
	<atom:link href="http://blog.trasatti.it/tag/mobile-web/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.trasatti.it</link>
	<description></description>
	<lastBuildDate>Sun, 29 May 2011 16:36:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Responsive images and tinySrc</title>
		<link>http://blog.trasatti.it/2011/05/responsive-images-and-tinysrc.html</link>
		<comments>http://blog.trasatti.it/2011/05/responsive-images-and-tinysrc.html#comments</comments>
		<pubDate>Sun, 29 May 2011 16:36:29 +0000</pubDate>
		<dc:creator>Andrea</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[Responsive design]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Mobile]]></category>

		<guid isPermaLink="false">http://blog.trasatti.it/?p=603</guid>
		<description><![CDATA[Producing images of the perfect size, when you create a Web site that targets multiple device classes with very different screen sizes is always a problem. There are a number of solutions out there, but they all require some kind &#8230; <a href="http://blog.trasatti.it/2011/05/responsive-images-and-tinysrc.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Producing images of the perfect size, when you create a Web site that targets multiple device classes with very different screen sizes is always a problem. There are a number of solutions out there, but they all require some kind of server-side detection and image wrangling. <a title="tinySrc" href="http://tinysrc.net/">tinySrc</a> is a nice and simple solution that takes away most if not all of the legwork. Possibly the only downside of tinySrc is that it relies on server-side detection itself. A lot of developers that worked with browsers like Chrome, Firefox and Opera advocate for client-side detection where it&#8217;s the browser that tells you about its capabilities instead of relying on a static database. I will not go into the details of why and when one is better than the other, let&#8217;s just say that tinySrc already gives you the power of the server-side, with my little software you can also benefit from the power of the client.<span id="more-603"></span><span style="line-height: 35px; font-size: 23px; color: #000000;">Just give me the solution</span></p>
<p>If all you care is a super-simple solution that gets the job done, I recommend that you use tinySrc in its basic configuration. tinySrc does a lot of legwork for you and the resulting images are in 90% of the cases or more just great. Check out the <a title="tinySrc" href="http://tinysrc.net/">tinySrc</a> home and you already have all you need.</p>
<h2>So why mix tinySrc with a JavaScript?</h2>
<p>At <a href="http://mobilism.nl/2011">mobilism</a> I met <a href="http://www.scottjehl.com/">Scott Jehl</a> for the first time and he mentioned working on a JavaScript that would take care of providing the right images based on client-side detection. It sounded quite interesting to me because most of the times, in order to create a decent <a href="http://www.alistapart.com/articles/responsive-web-design/">responsive design</a>, you have to create all the media files in advance.</p>
<p>I started looking at his <a href="https://github.com/filamentgroup/Responsive-Images">Responsive Images</a> library and liked the idea. We exchanged a few messages and it seemed easy enough. What it does not do is what I know is very often the real issue: generate the images. So it taps into the power of the client-side detection to understand what the browser and device can do, but then relies on media files generated in advance. In Filament&#8217;s online <a href="http://filamentgroup.com/examples/responsive-images/">demo</a> you can see that Scott generated 2 images, small and big and that&#8217;s all you get. Of course you can extend the JavaScript to manage more sizes, but every time you add a format you will have to edit your JavaScript. This is a good start, but not exactly what I was looking for.</p>
<p>I also thought about <a href="http://wordpress.org/extend/plugins/wordpress-mobile-pack/">WordPress Mobile Pack</a> and users that are on simple hosting plans or maybe don&#8217;t have the time and skills to generate all the images in the right formats. tinySrc seemed a perfect match.</p>
<h2>How it works</h2>
<p>The changes I made to Scott&#8217;s JavaScript and Rewrite rules are very limited, but I think they open the door to some substantial benefits. The JavaScript now reads the available width and height of the screen and passes those values to tinySrc so that an image of the perfect size will be generated (I padded the image of 20px for safety). You still need to have a small image (for fallback purposes) and a full-size image so that tinySrc has a high resolution image to work from (of course the bigger the better).</p>
<p><a href="http://ri.logme.mobi">See it</a> in action.</p>
<h2>Why use it?</h2>
<p>If you want to apply responsive design you must create the correct media files for each target device or family. This little script allows you to do that with near-zero effort. If you want to support device families tinySrc supports that, but you will have to change the JavaScript. What&#8217;s not to love?</p>
<h2>Why NOT use it?</h2>
<p>The JavaScript works so that it parses your HTML and replaces all image URLs with a dummy URL on your Apache server (at the time of writing the script requires Apache, nginx in the works). When the client requests that URL your Apache server will redirect the client to tinySrc. This is at least 1 HTTP request for every image that we might avoid. tinySrc on its own already does a great job, so this really is a step further toward responsive design. The only one that knows which approach is best is probably you.</p>
<h2>What next?</h2>
<p>I am looking at a couple more improvements, one idea is to use tinySrc&#8217;s dataURI API call and use that to replace all image URLs. That should save all the requests to your Apache server that are then redirected to tinySrc. Depending on how many images you have this might or might not make a difference. The problem is browser support, I am looking for some data. If you have any, please contact me.</p>
<h2>The source code</h2>
<p>If you like what you saw you can get the code on <a href="https://github.com/atrasatti/Responsive-Images/commit/30ebc7a82f4e49ac95dee50b00cf9dc645e8bfbb">github</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.trasatti.it/2011/05/responsive-images-and-tinysrc.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Sorting User-Agent strings out</title>
		<link>http://blog.trasatti.it/2010/10/sorting-user-agent-strings-out.html</link>
		<comments>http://blog.trasatti.it/2010/10/sorting-user-agent-strings-out.html#comments</comments>
		<pubDate>Fri, 22 Oct 2010 12:23:22 +0000</pubDate>
		<dc:creator>Andrea</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[device detection]]></category>
		<category><![CDATA[DeviceAtlas]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[user-agent]]></category>
		<category><![CDATA[WURFL]]></category>

		<guid isPermaLink="false">http://blog.trasatti.it/?p=570</guid>
		<description><![CDATA[It is very common that over the years something gets more and more cluttered, until at some point someone comes in and decides it&#8217;s time to clean up and start fresh, based on current and up-to-date needs. User-Agent strings, part &#8230; <a href="http://blog.trasatti.it/2010/10/sorting-user-agent-strings-out.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>It is very common that over the years something gets more and more cluttered, until at some point someone comes in and decides it&#8217;s time to clean up and start fresh, based on current and up-to-date needs. User-Agent strings, part of the HTTP request headers, are no different and between desktop and mobile browsers, the history is long and the amount of text (some might say useless text) has just kept growing. I am going to try and write down what is important today and why.<br />
<span id="more-570"></span>A little introduction is probably needed. I have been the maintainer of <a href="http://wurfl.sourceforge.net">WURFL</a>, a device database, for about 5 years and then worked on another device database called <a href="http://deviceatlas.com">DeviceAtlas</a> for another 3 years. During these years I also worked with the W3C and in general with the mobile Web community to define how the mobile Web should look like and what developers needed to do their job better.</p>
<p>I am going to take four User-Agent strings for four platforms that are meaningful for mobile and analyse what is useful today, what they have currently and what they <strong>should</strong> have. I will also briefly jump into some other headers as they can help in a number of situations.</p>
<h2>User-Agent string definition</h2>
<p>A clarification here is probably needed. Let&#8217;s start from what the User-Agent string is, if you don&#8217;t know. When an HTTP client such as a Web browser makes a request to a server it sends a number of headers as part of that request. One of these headers is called User-Agent and it is meant to identify the client. This is how it is defined in the <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.43">RFC-2616</a>:</p>
<blockquote><p>The User-Agent request-header field contains information about the user agent originating the request. This is for statistical purposes, the tracing of protocol violations, and automated recognition of user agents for the sake of tailoring responses to avoid particular user agent limitations. User agents SHOULD include this field with requests. The field can contain multiple product tokens (section 3.8) and comments identifying the agent and any subproducts which form a significant part of the user agent. By convention, the product tokensare listed in order of their significance for identifying the application.</p></blockquote>
<h3>User-Agent strings in mobile</h3>
<p>In the mobile space specifically this string has historically been used to recognise devices. Since each device has very specific features and installing third party plug-ins has always been (and still is) nearly impossible, recognising a device easily is fundamental to the creation and provision of content that is not only optimised for a device, but often that it is simply supported. In the early 2000 the User-Agent string of a Nokia 7110 was  &#8220;<em>Nokia7110/1.0 (04.84)</em>&#8220;. At that time it gave all the information that was needed. Over the years a lot of information has been added and eventually, recently, a lot of mobile browsers have started emulating the strings that were usually provided by desktop browsers, unfortunately picking up a lot of useless information and removing what was useful.</p>
<h2>The analysis</h2>
<p>Here are my four sample User-Agent strings, an iOS 4.1, an HTC/Google Nexus One, a Nokia N8 and the latest Fennec on an Android device:</p>
<ul>
<li>Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_1 like Mac OS X; en-gb) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8B117 Safari/6531.22.7</li>
<li>Mozilla/5.0 (Linux; U; Android 2.2; en-gb; Nexus One Build/FRF83) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1</li>
<li>Mozilla/5.0 (Symbian/3; Series60/5.2 NokiaN8-00/010.016; Profile/MIDP-2.1 Configuration/CLDC-1.1 ) AppleWebKit/525 (KHTML, like Gecko) Version/3.0 BrowserNG/7.2.5.2 3gpp-gba</li>
<li>Mozilla/5.0 (Android; Linux armv7l; rv:2.0b7pre) Gecko/20101006 Firefox/4.0b7pre Fennec/4.0b1</li>
</ul>
<h3>iPhone User-Agent string</h3>
<p>Let me start with the first one, the iPhone. There are a number of things here of interest: that it&#8217;s an iPhone, the software version, the type of browser and possibly the browser version. I will get back to why the browser version may or may not be useful later. Do we care it&#8217;s &#8220;<em>like Mac OS X</em>&#8220;? Do we care that &#8220;<em>KHTML (is), like Gecko</em>&#8220;?<br />
So what we could do is strip out everything that we don&#8217;t need and</p>
<pre>Mozilla/5.0 (<strong>iPhone</strong>; U; CPU iPhone OS <strong>4_1</strong> like Mac OS X; en-gb) \
 <strong>AppleWebKit/532.9</strong> (KHTML, like Gecko) Version/4.0.5 Mobile/8B117 \
 Safari/6531.22.7</pre>
<p>becomes</p>
<pre>iPhone/4.1 AppleWebKit/532.9</pre>
<p>If I was a VP at Apple and had any decision power I would also specify the iPhone model and it&#8217;s probably a good idea to also be explicit about the vendor (it happened that two vendors named two devices the same way). Here is a very short string that tells me everything I need:</p>
<pre>AppleiPhone4/4.1 AppleWebKit/532.9</pre>
<h3>Google Nexus One User-Agent string</h3>
<p>Second on my list is the Nexus One, again a lot of information we don&#8217;t need. Who needs to know it&#8217;s Linux when we can&#8217;t really hack the kernel or install X.org (at least from the browser!)? Who cares about the language when there is an appropriate header for that called <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.4">Accept-Language</a>? So what we have is</p>
<pre>Mozilla/5.0 (Linux; U; Android 2.2; en-gb; Nexus One Build/FRF83) \
AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1</pre>
<p>but what we should have is</p>
<pre>GoogleNexusOne/2.2 AppleWebKit/533.1</pre>
<h3>Nokia N8</h3>
<p>Nokia, with the N8 and a lot of other devices has taken the best of all worlds. On one side emulating a desktop browser and on the other side bringing all the extra information about J2ME, audio and video streaming and other details that have been meaningful in the mobile space at some point in time. The sad truth is that all these supported environments and protocols are so fragmented that the name alone is not useful and hence, just a burden. Let&#8217;s clean up the house, remove the information that the device supports MIDP-2.1, because anyone who has ever seen the build-chain of a J2ME application knows that you need to know a lot more about the specific JSRs that are available and of course the device-specific quirks. Also, don&#8217;t forget that this is just an example, Sony Ericsson, Samsung, LG and the other vendors are all more or less the same. So bring some fresh air, leave space for what is important and change this</p>
<pre>Mozilla/5.0 (Symbian/3; Series60/5.2 NokiaN8-00/010.016; \
Profile/MIDP-2.1 Configuration/CLDC-1.1 ) AppleWebKit/525 (KHTML, \
like Gecko) Version/3.0 BrowserNG/7.2.5.2 3gpp-gba</pre>
<p>to this</p>
<pre>NokiaN8/010.016 BNG/7.2.5.2</pre>
<p>In this case specifically, we probably need one little extra information. All the Symbian devices by Nokia in the last few years also have an environment called Web Runtime or WRT that lets you create Web applications that look like native applications, are installed on the device and can access device APIs. So we could use &#8220;B&#8221; or &#8220;BNG&#8221; for the browser and &#8220;W&#8221; or &#8220;WRT&#8221; for the Web Runtime, so if you developed a Web application and  request a remote page, the server will know if it can send extra Javascript to pull up the device location or contacts and so on. It&#8217;s a nice piece of information to know, right?</p>
<h3>Fennec on Android</h3>
<p>Now on with my last example and I am picking Fennec on Android simply because it&#8217;s probably the newest kid on the block, but the exact same comment would be valid for Opera browser and other third party browsers that you can install on your mobile device. For starter, there is no reference to the device, there are a already more than 100 of Android devices, how will I know which one? How will I know if it&#8217;s Android 2.2 with Flash or not? So this is what we have today</p>
<pre>Mozilla/5.0 (Android; Linux armv7l; rv:2.0b7pre) Gecko/20101006 \
Firefox/4.0b7pre Fennec/4.0b1</pre>
<p>This is what we should have (and for the sake of this example I am assuming the device is a Nexus One):</p>
<pre>HTCNexusOne/2.2 Fennec/4.0b1</pre>
<p>Now, you might comment that I will know if Flash is available looking at some other headers. Well this would be true, if the browser sent the appropriate information. If you have been into mobile detection for a little while you will know that since day one you could not trust the Accept header, mostly because browser vendors have been very bullish about their ability to support content, to then generally disappoint their users (and most of all the _customers_ of mobile sites and content providers). For example the Accept header of this Fennec for Android is &#8220;<em>text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8</em>&#8221; (see the <a href="http://logme.mobi/query/index.php?user_agent=fennec&amp;last10=0&amp;full_headers=on">full headers</a> recorded on logme.mobi). As you can see, this browser supports ANYTHING (the little */* towards the end), isn&#8217;t that great? Now, will it play a real-video? Probably not. Will it play Flash? MAYBE! Will it play an H.264 video? I don&#8217;t know. Oh, yes, these are the same Accept headers that Firefox for PC sends, but it is also true that on my PC or Mac I can download the file and play it with VLC or I might want to download a Word document and read it later. On mobile devices it&#8217;s slightly different and most mobile devices do not let you download and store files and even after I have downloaded it, my context is normally such that if I cannot read the file now I don&#8217;t care. Hence the server needs more information in order to provide the right content; the server might have the file in the right format, if it knew what is supported.</p>
<p>PS: In fairness Opera Mini adds extra headers to tell you the device it is running on, when they know it and this depends on how you installed the client.</p>
<h2>Conclusions</h2>
<p>I am not advocating overloading the headers, we have examples of other headers sent to the servers that are nearly completely useless. Looking at the N8 again, it sends a header about the Music shop version (<em>X-Nokia-Musicshop-Version: 13.1012.15</em>), do I care? Unlikely. Would I care to know the version of Ovi Maps installed so that I can provide a link that will launch the Maps application? More likely!</p>
<p>As you might have noticed, I have stripped the &#8220;<em>Mozilla/</em>&#8221; at the start. There is a myth that servers will not provide the Web site or will provide a very limited version of the site if that string is not there. I have asked many times and although everyone seems scared of this, I do not know of a single site that really does it today. If you know one, please let me know and most of all <strong>WHY </strong>is this site doing this?</p>
<p>One final note, earlier I said that the browser version might not be required. As a rule of thumb I would say that if the server knows the browser version it&#8217;s better because the server will either not care, or if the site actually has different versions for different browsers it can provide that version. In the future I hope that what will matter is just the browser, i.e. is this a standards-compliant browser? If so, I can use Javascript to detect what works and what doesn&#8217;t or I can create my CSS in a way that degrades gracefully. Today, I think we are on the right track and things are quickly moving in the right direction, but we are not there yet, so for the next 1 or 2 years and until everyone gets a new shiny devices with a cool browser, we will have to be a little patient on this and try working together on what is still not solid enough.</p>
<p>So please, if you are browser vendor, take out what is not useful and keep what developers need.﻿</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.trasatti.it/2010/10/sorting-user-agent-strings-out.html/feed</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
		<item>
		<title>Techcrunch and WPTouch: design optimised for mobile, data usage optimised for long wait</title>
		<link>http://blog.trasatti.it/2010/10/techcrunch-and-wptouch-design-optimised-for-mobile-data-usage-optimised-for-long-wait.html</link>
		<comments>http://blog.trasatti.it/2010/10/techcrunch-and-wptouch-design-optimised-for-mobile-data-usage-optimised-for-long-wait.html#comments</comments>
		<pubDate>Tue, 12 Oct 2010 15:54:06 +0000</pubDate>
		<dc:creator>Andrea</dc:creator>
				<category><![CDATA[Mobile]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[WordPress Mobile]]></category>

		<guid isPermaLink="false">http://blog.trasatti.it/?p=562</guid>
		<description><![CDATA[Techcrunch, the very well known news site about startups, Web 2.0, mobile and buzz words, has launched a mobile version of their site in March 2010: You Asked For It: TechCrunch, The Mobile Version. There are some little technical details that aren&#8217;t &#8230; <a href="http://blog.trasatti.it/2010/10/techcrunch-and-wptouch-design-optimised-for-mobile-data-usage-optimised-for-long-wait.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Techcrunch, the very well known news site about startups, Web 2.0, mobile and buzz words, has launched a mobile version of their site in March 2010: <a title="You Asked For It: TechCrunch, The Mobile Version" rel="bookmark" href="http://techcrunch.com/2010/03/17/techcrunch-mobile/">You Asked For It: TechCrunch, The Mobile Version</a>. There are some little technical details that aren&#8217;t quite perfect for mobiles, though.</p>
<p><span id="more-562"></span></p>
<p>You might or might not know that the service is hosted by wordpress.com and they use <a href="http://wordpress.org/extend/plugins/wptouch/">WPTouch</a> as a mobile theme. WPTouch is normally known as the best WordPress plugin if you want to give an iPhone-like look to your mobile site and we all know how cool is the iPhone nowadays.</p>
<p>This is all good, too bad that while the site looks very good, it is not exactly optimised for performance. I was pleased to notice that WordPress serves the WPTouch theme to Symbian devices like the Nokia N8, less pleased to see the KB downloaded goes up to the stars. The iPhone does not show the data usage in real time, so most of us, including myself, have never noticed this. When I tested this morning the size of the homepage alone was about 1.5MB, yes, 1.5 megabytes!<br />
I tested again this evening on my Mac, emulating the iPhone user-agent and this is what I got</p>
<p><a href="http://blog.trasatti.it/wp-content/uploads/2010/10/TechCrunchWPTouch_resources.png"><img class="alignnone size-medium wp-image-563" title="TechCrunch WPTouch resources" src="http://blog.trasatti.it/wp-content/uploads/2010/10/TechCrunchWPTouch_resources-300x135.png" alt="" width="300" height="135" /></a></p>
<p>As you can see there is a single image using 544KB and then a bunch of other images eating up a lot of memory and bandwidth. The most annoying part is that that image is not even visible! It is hidden in one of the posts and if you don&#8217;t click that post&#8230; Well, you will never see that big, fat image. If you look at the other files, the HTML is just 60KB and all you need is probably in the range of 200KB (CSS, JS, and some basic images). In short, we are wasting 1.3MB &#8211; every time we visit the homepage.</p>
<p>Since this theme is served only to high-end devices why not use a little javascript to load the images when needed? Of course, the way it is now is snappier to open each item on the homepage, but wow, I have to pay for those 1.5MB. Most iPhone users have a nice data flat rate, but a) not all have an iPhone with a contract, b) I still have to wait even if it&#8217;s free and c) this is why operators are getting tired of giving us flat rates.</p>
<p>If you are curious, this is how the TechCrunch homepage looked when I tested, the OneRiot image is a little over 10KB.</p>
<p><a href="http://blog.trasatti.it/wp-content/uploads/2010/10/TechCrunchWPTouch_home.png"><img class="alignnone size-medium wp-image-564" title="TechCrunch WPTouch homepage" src="http://blog.trasatti.it/wp-content/uploads/2010/10/TechCrunchWPTouch_home-300x286.png" alt="" width="300" height="286" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.trasatti.it/2010/10/techcrunch-and-wptouch-design-optimised-for-mobile-data-usage-optimised-for-long-wait.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>WML, Widgets and HTML5 web apps, they are all the same thing</title>
		<link>http://blog.trasatti.it/2010/10/wml-widgets-and-html5-web-apps-they-are-all-the-same-thing.html</link>
		<comments>http://blog.trasatti.it/2010/10/wml-widgets-and-html5-web-apps-they-are-all-the-same-thing.html#comments</comments>
		<pubDate>Mon, 04 Oct 2010 16:32:55 +0000</pubDate>
		<dc:creator>Andrea</dc:creator>
				<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[W3C]]></category>

		<guid isPermaLink="false">http://blog.trasatti.it/?p=546</guid>
		<description><![CDATA[I like to observe how in technology (and often in life) things are repeated. Sometimes they are just the same thing again and again, other times they are slightly different. Especially in technology, some ideas fail because they are missing &#8230; <a href="http://blog.trasatti.it/2010/10/wml-widgets-and-html5-web-apps-they-are-all-the-same-thing.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I like to observe how in technology (and often in life) things are repeated. Sometimes they are just the same thing again and again, other times they are slightly different. Especially in technology, some ideas fail because they are missing some pieces or because their timing was not perfect, this of course allows for refinement and repetition.<br />
<span id="more-546"></span></p>
<h2>Glossary</h2>
<p>Some of the terms in this blog post&#8217;s title are buzzwords these days, so let me first clarify what I mean here.</p>
<p><strong>WML</strong>: YES, I really mean the <a title="In short what is WML?" href="http://www.thewirelessfaq.com/in_short_what_is_wml">WML</a> that was part of WAP 1.<br />
<strong>Widgets</strong>: by &#8220;widgets&#8221; I mean the self-contained mini-applications that you can download and install on your mobile device, created with Web technologies like HTML and Javascript. The most obvious examples are of course <a href="http://www.forum.nokia.com/Develop/Web/">Nokia&#8217;s WRT</a> and the <a href="http://www.w3.org/TR/widgets/">W3C&#8217;s Widget Rec</a>, now already implemented in various browsers and devices.<br />
<strong>HTML5 Web app</strong>: Web applications developed as a single-HTML-page that is updated mostly using Javascript, i.e. with almost no page reloads.</p>
<h2>Why WML, Widgets and HTML Web apps are the same thing</h2>
<p>Forget for a moment the technical details or the SDK that you use to create one of these applications. Let&#8217;s start from this sentence:</p>
<blockquote><p>My service is developed using the latest Web technologies, it contains mark-up and scripts, you can download it with a single request and while you use it you will see different content without actually making new requests to the network</p></blockquote>
<p>It might sound crazy, but the above sentence applies to WML, Widgets and HTML web apps. Why? Let me explain.<br />
<strong> WML</strong> is a highly underestimated mark-up that died a cruel and early death because the rest of the technology was not good enough yet (and <em>possibly</em> because it was a bit too strict). On the other hand it had some interesting ideas that have been disregarded for years or we have forgotten too soon. A WML page was called &#8220;a deck&#8221;, a deck was one file with a header and then one or more &#8220;cards&#8221;. Each card was rendered as a page on your mobile device and you could use anchors to jump from a page to another. The main reason for this was to save network requests, i.e. download everything you need in one go and then browse within that content until you need more.<br />
A<strong> Widget</strong>, in the context I described above, is normally one HTML page, some CSS, some Javacript and an XML file that acts as a descriptor. You download and install it on your mobile device. When you run it, a sandboxed browser opens your starting HTML page and some Javascript and CSS magic loads the content and updates it according to your actions. Of course it is much more advanced than what WML (and WMLScript) did, but 10 years have also gone! What are the key selling points of a widget? That once installed on your mobile device it looks like a native application and that you have the markup pre-loaded in your device&#8217;s memory. IMHO, it sounds a lot like a pre-loaded WML page and in fact something that was also possible with WAPPush (you would send a compiled WML page via SMS and the device would parse it and display it).<br />
An <strong>HTML5 Web app</strong> is not rocket science and in fact Web apps existed way before HTML5. Think about Gmail, it&#8217;s a Web page, but you never hit the &#8220;back&#8221; button or load a new page. In essence Gmail (like any single-page Web app) is one Web page with a lot of CSS and Javascript that load and update different parts of the page. VERY similar to a widget with regards to both technology and functionality, much more advanced than a deck in WML, but not so different in concept.</p>
<h2>So what&#8217;s the story?</h2>
<p>The two ideas might have started from different assumptions, for WML it was a matter of saving network requests, for Widgets was the idea of creating an application that looked native, but was as simple as a Web page and for HTML5 it was a bit of both, look like a native application and optimise network requests. The end result seems to be the same.</p>
<p>Of course, the road to success (if we can already declare Web apps a success) has been paved with many tiles that were missing at the time of WML and even when the first Widget implementations came. We now have much better connectivity and lower latency, we have better Javascript engines and a way of styling pages that allows to manipulate elements in the page easily.</p>
<p>If you are like me and thought that Widgets were not interesting, what is your thinking with HTML5? Why is an HTML5 Web app any better than a widget?<br />
A Web app is downloaded from a URI and is always up-to-date, but updating a Widget is almost as easy. A widget can be installed in your device and appear as an icon like a native application, but you can also save a bookmark of a Web app and some devices let you add shortcuts to bookmarks in your mobile device&#8217;s menus.</p>
<p>So can we call Widgets useless and love Web apps? Can we call WML a complete failure?<br />
Are these just names created by marketing and sales teams for the same thing?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.trasatti.it/2010/10/wml-widgets-and-html5-web-apps-they-are-all-the-same-thing.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Google Analytics for WordPress for Mobile update</title>
		<link>http://blog.trasatti.it/2010/08/google-analytics-for-wordpress-for-mobile-update.html</link>
		<comments>http://blog.trasatti.it/2010/08/google-analytics-for-wordpress-for-mobile-update.html#comments</comments>
		<pubDate>Tue, 24 Aug 2010 20:51:37 +0000</pubDate>
		<dc:creator>Andrea</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[WordPress Mobile]]></category>

		<guid isPermaLink="false">http://blog.trasatti.it/?p=534</guid>
		<description><![CDATA[I thought about a possible issue where a low-end mobile device would have gotten the img tag in the head tag. Not good. While I was editing the code I also improved the code segmentation part that in some cases &#8230; <a href="http://blog.trasatti.it/2010/08/google-analytics-for-wordpress-for-mobile-update.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I thought about a possible issue where a low-end mobile device would have gotten the img tag in the head tag. Not good.</p>
<p>While I was editing the code I also improved the code segmentation part that in some cases might have sent incomplete data.</p>
<p>I have written an update, should be much better.<span id="more-534"></span></p>
<p>Still to do is the AdSense integration and managing the manual placing of the javascript/img.</p>
<p>If you were testing the previous version of the script, please <a href="http://blog.trasatti.it/wp-content/uploads/2010/08/google-analytics-for-wordpress-mobile.4.0.8-1.zip">upgrade</a> now!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.trasatti.it/2010/08/google-analytics-for-wordpress-for-mobile-update.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Opera Mobile vs native browser on Nokia E72</title>
		<link>http://blog.trasatti.it/2010/08/opera-mobile-vs-native-browser-on-nokia-e72.html</link>
		<comments>http://blog.trasatti.it/2010/08/opera-mobile-vs-native-browser-on-nokia-e72.html#comments</comments>
		<pubDate>Tue, 24 Aug 2010 18:37:29 +0000</pubDate>
		<dc:creator>Andrea</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[Nokia]]></category>
		<category><![CDATA[Opera]]></category>
		<category><![CDATA[Symbian]]></category>

		<guid isPermaLink="false">http://blog.trasatti.it/?p=522</guid>
		<description><![CDATA[Comparison between Nokia E72's native browser and Opera Mobile by a regular user <a href="http://blog.trasatti.it/2010/08/opera-mobile-vs-native-browser-on-nokia-e72.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I had a Nokia E72 for the last 3 months and I have used it on a daily basis as my main phone. Of course, this includes browsing. Since I spend quite a bit of time browsing and most of all I want it to be efficient and snappy, I tried the native browser first and what I assumed would be the best browser available for the E72 later: Opera Mobile.</p>
<p><span id="more-522"></span></p>
<h2>Preamble</h2>
<p>My normal browsing starts from four main sites: dabr (i.e. Twitter), Facebook, Google reader, search. From there I normally follow links and consume content that is on the larger Internet.<br />
Also, getting used to the non-touch interface was hard initially because I got so accustomed to zooming and panning easily with my finger. Anyway, since touch is just not a feature of the E72, I will not be discussing here if touch is better than non-touch.</p>
<h2>Native browser</h2>
<p><span style="color: #000000;">The first few weeks I used exclusively the native browser, I wanted to have a clear idea of how the browser works and what is the performance. My hope was that it would simply be good enough.</span></p>
<p><span style="color: #000000;">There are two main cases to consider of course, the site designed for mobile and the site designed for a generic Web browser. In my daily roving on the Internet I end up on everything from good optimised sites, to Flash-only site.<br />
The performance is obviously different and a mobile site always worked better, in any case it is fair to say that the browser overall works. To me that&#8217;s a fact, you can go on pretty much any site and it will work. Flash is not supported, but that is OK with me (Flash lite IS supported, but I cannot remember when I last saw any content).<br />
When you visit Web sites that are not designed for mobile devices, the browser normally shows you a portion of the screen and then you can scroll in all directions. This is a feature that Nokia introduced many years ago (was it 2005? 2006?), when they first released the WebKit-based browser and it&#8217;s still there, working exactly the same way. Although it took me a bit to get used to navigating the page with that small map on the top right, it does the job. Average sites will work well and you will be able to browse around and read your content. The articles or body of the page is normally adapted in a thinner column that fits your screen and this makes it easy to read (yes, in rare occasions you have to scroll a tiny bit, but that is also true for Opera Mobile). The inability to zoom out makes it hard sometimes to get an idea of where are things on particularly complicated pages (think of <a href="http://mashable.com">mashable</a> or <a href="http://techcrunch.com">techcrunch</a>) and of course you will occasionally not be able to see a picture all in one screen (you will have to scroll to see it).<br />
Page loading overall feels slow and while it would be OK on a 3G or even 2G network, it is never snappy, not even on Wifi. Of course, when I am at home or in the office I will most likely use my PC, but I still happen to quickly check on my phone once or twice a day and in those occasions it should be immediate. Speaking of mashable, the page is just too complicated for the browser (or maybe the CPU) and scrolling around and reading, is close to impossible and certainly not pleasant.<br />
Another thing that drives me crazy is that the browser supports multiple tabs, but you are not able to actually open a new one. What you can do is go on a site, click on a link that opens a new tab and <strong>THEN</strong> and only then you can switch between the two (or more) tabs and have multiple pages open at the same time.</span></p>
<p><span style="color: #000000;">My conclusion is that it&#8217;s not a bad browser, but is not exactly up to my requirements as a power-user.</span></p>
<h2><span style="color: #000000;">Opera mobile</span></h2>
<p><span style="color: #000000;">Given the non-complete satisfaction of the native browser, I went on and started looking for Opera. While my first thought was for <a href="http://www.opera.com/mobile/">Opera Mini</a> I soon realised that Opera Mobile is free as well. Of course, the idea of using a proper browser with all the bells and whistles seemed too good to be true.</span></p>
<p><span style="color: #000000;">Installation went smoothly and while to this day I am still not quite sure how to manage the quick links that you have when you open Opera, I immediately felt at the helm of <strong>A </strong><strong>PROPER BROWSER</strong>. Tabs, quick links, google search always handy. It felt very good. Opera Mobile immediately became my favourite browser and I started using it every day instead of the native one.</span></p>
<p><span style="color: #000000;">Unfortunately it did not take long for me to go back to use the native browser occasionally, and eventually abandon Opera Mobile. Here is why.</span></p>
<p><span style="color: #000000;">Loading feels snappier than the native browser, although I have not done proper measurements I have for example switched between the two in the same network conditions. On top of that add the zooming in and out, it works and it&#8217;s a really nice feature. The very same interface to zoom out seems flawed in its design, though. While you are still loading a page the right soft-key has the dual functionality of stopping the page load AND zoom out, which means you cannot zoom out until the browser is done loading. I am a very impatient user and the idea of zooming out and starting to look at other details while the page finishes loading is something that I would love to do. A minor issue that ruins a feature the would otherwise be so good.</span></p>
<p><span style="color: #000000;">I have 3 major issues with Opera Mobile that are really blocking from further use.<br />
The first one is that it often generated memory limit errors when browsing long enough and this eventually also generated a couple of crashes. <strong>Not good</strong>.<br />
Secondly, many times I received a page timeout error, something that rarely happened with the native browser, which tells me that Opera has probably set the timeout limits too low. That seems very strange for a browser that is designed to be used on a mobile device that might have bumpy connection speeds and unstable networks.<br />
Thirdly, a side effect of Opera&#8217;s bullish approach of &#8220;<em>we know best, give us the best content you have</em>&#8221; creates some issues on highly optimised sites like Google reader. The short version of the story is that it does not work, the long version is that the design for desktop browsers is just too complicated for a small screen and too slow to use and the mobile design does not work well with Opera Mobile.</span></p>
<p><span style="color: #000000;">These three things, unfortunately, made me kiss good bye to the power of tabs and search at your fingertip.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.trasatti.it/2010/08/opera-mobile-vs-native-browser-on-nokia-e72.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Analytics for WordPress for Mobile</title>
		<link>http://blog.trasatti.it/2010/08/google-analytics-for-wordpress-for-mobile.html</link>
		<comments>http://blog.trasatti.it/2010/08/google-analytics-for-wordpress-for-mobile.html#comments</comments>
		<pubDate>Mon, 23 Aug 2010 09:18:31 +0000</pubDate>
		<dc:creator>Andrea</dc:creator>
				<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Mobile]]></category>

		<guid isPermaLink="false">http://blog.trasatti.it/?p=505</guid>
		<description><![CDATA[Get Google Analytics for WordPress to work for all mobile devices with WordPress Mobile Pack <a href="http://blog.trasatti.it/2010/08/google-analytics-for-wordpress-for-mobile.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Joost de Valk, a.k.a. Yoast, has created the great Google Analytics for WordPress plugin. The plugin does exactly what you would expect, add the Google Analytics JavaScript to your blog. On top of that it also allows you to define a lot of little tweaks specific to WordPress such as tracking authors, tags, categories and more.</p>
<p>All this is great, but what about mobile devices?</p>
<p><span id="more-505"></span></p>
<p>Well, if your visitor is using a device with a good browser such as Mobile Safari (iOS devices), Android, WebOS and Nokia&#8217;s Symbian devices all should be good, but what about all the others? I am not talking about WML phones that are today a rarity more than anything, I am talking about all those low and mid-end devices that sell like hot-cakes. Think about all the Samsung, Sony Ericsson, LG and (reasonably-priced) Nokia that people get for free from their operator, or buy for about 50-100 Euro. It is true that heavy users will likely buy a high-end device with a big screen and a good browser, but that does not mean we should suddenly forget the long-tail.</p>
<p>With this in mind, and knowing the <a href="http://wordpress.org/extend/plugins/wordpress-mobile-pack/">WordPress Mobile Pack</a> (WPMP for short), I made a few small changes to Yoast&#8217;s script. The theory is very simple, based on the device groups defined by WPMP provide the standard JavaScript for the high-end and  use the Google&#8217;s official ga.php file for the rest. The changes are quite simple and are all applied to googleanalytics.php, plus you will need Google&#8217;s <a href="http://code.google.com/intl/en-GB/mobile/analytics/download.html#Download_the_Google_Analytics_server_side_package">ga.php</a>. Also, this system plays on the safe side as if the device is not correctly recognised, in the worst case the 1px image is server, which means that it should really work with anything, even the WML devices.</p>
<p><strong>REQUIREMENTS</strong></p>
<ul>
<li><a href="http://wordpress.org/extend/plugins/wordpress-mobile-pack/">WordPress Mobile Pack</a> version 1.2.3 or higher</li>
<li><a href="http://wordpress.org/extend/plugins/google-analytics-for-wordpress/">Google Analytics for WordPress</a> by <a href="http://yoast.com">Yoast</a></li>
<li>Download the script adaptation based on Google Analytics for WordPress 4.0.8, a.k.a Google Analytics for WordPress for Mobile</li>
</ul>
<p><strong> </strong></p>
<p><strong>INSTALLATION</strong></p>
<ol>
<li><span style="color: #000000;">Both WPMP and Google Analytics plugins should be enabled and correctly functioning (of course!)</span></li>
<li><span style="color: #000000;">Make sure in the &#8220;Mobile Theme&#8221; menu you have enabled the Nokia templates (this is needed to activate the device group recognition)</span></li>
<li><span style="color: #000000;">Save a backup copy of your existing <em>googleanalytics.php</em></span></li>
<li><span style="color: #000000;">Upload the files <em>ga.php</em> and <em>googleanalytics.php</em> in your <em>google-analytics-for-wordpress</em> directory on your server (normally in <em>wp-content/plugins/google-analytics-for-wordpress</em>)</span></li>
</ol>
<p><strong>KNOWN LIMITATIONS</strong></p>
<p>Although in theory the custom segmentation is implemented, it is a bit of a hack and needs review with Yoast.</p>
<p><strong>UPDATE</strong></p>
<p>Small bug fixed, see <a href="http://blog.trasatti.it/2010/08/google-analytics-for-wordpress-for-mobile-update.html">Google Analytics for WordPress for Mobile update</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.trasatti.it/2010/08/google-analytics-for-wordpress-for-mobile.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Getting W3 Total Cache and a mobile plugin to work in WordPress</title>
		<link>http://blog.trasatti.it/2010/07/getting-w3-total-cache-and-a-mobile-plugin-to-work-in-wordpress.html</link>
		<comments>http://blog.trasatti.it/2010/07/getting-w3-total-cache-and-a-mobile-plugin-to-work-in-wordpress.html#comments</comments>
		<pubDate>Fri, 23 Jul 2010 08:44:45 +0000</pubDate>
		<dc:creator>Andrea</dc:creator>
				<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Mobile]]></category>

		<guid isPermaLink="false">http://blog.trasatti.it/?p=485</guid>
		<description><![CDATA[W3 Total Cache and WordPress Mobile Pack configuration <a href="http://blog.trasatti.it/2010/07/getting-w3-total-cache-and-a-mobile-plugin-to-work-in-wordpress.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Since release 0.9.0 <a href="http://wordpress.org/extend/plugins/w3-total-cache/">W3 Total Cache</a> has an excellent mobile support. The author has done a great job with this update and now it works smoothly. Different mobile plugins or themes might require some slightly settings, but the default should work for most cases.</p>
<p><strong>Configuring WordPress Mobile Pack</strong><br />
<span id="more-485"></span><br />
Configuring the WordPress Mobile Pack with W3 Total Cache 0.9 and above is a breeze, in fact, you have to do nothing! Just to make sure things are enabled, go to the &#8220;User Agent Groups Settings&#8221; section of the W3 Total Cache settings, make sure there are two groups enabled (high and low) and leave the default settings. Save. Clear Cache. If you have &#8220;Preview mode&#8221; enabled, deploy. That&#8217;s it.</p>
<p><strong>How fast will this be?</strong></p>
<p>W3 Total Cache generates nice cache files for the mobile version and then uses Apache to serve the files, this means that it will be AS FAST AS IT CAN BE! Enjoy speed and low resources consumption with full mobile support.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.trasatti.it/2010/07/getting-w3-total-cache-and-a-mobile-plugin-to-work-in-wordpress.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PaddyPower.mobi relaunched for iPhone</title>
		<link>http://blog.trasatti.it/2010/06/paddypowermobi-relaunched-for-iphone.html</link>
		<comments>http://blog.trasatti.it/2010/06/paddypowermobi-relaunched-for-iphone.html#comments</comments>
		<pubDate>Thu, 17 Jun 2010 13:17:00 +0000</pubDate>
		<dc:creator>Andrea</dc:creator>
				<category><![CDATA[Mobile]]></category>
		<category><![CDATA[device detection]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[online betting]]></category>
		<category><![CDATA[PaddyPower]]></category>

		<guid isPermaLink="false">http://blog.trasatti.it/?p=442</guid>
		<description><![CDATA[The other day was brought to my attention that Paddy Power (the biggest bookmaker in Ireland and one of the biggest in the UK) has launched a new version of their mobile site for iPhone. At first I imagined a &#8230; <a href="http://blog.trasatti.it/2010/06/paddypowermobi-relaunched-for-iphone.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The other day was brought to my attention that Paddy Power (the biggest bookmaker in Ireland and one of the biggest in the UK) has launched a new version of their mobile site for iPhone. At first I imagined a little restyle and some extra spacing for touch screens based on their existing mobile site, which was good already good.</p>
<p>To my great pleasure, it was something completely new!</p>
<p><span id="more-442"></span><br />
<span style="font-size: x-large;">Homepage</span></p>
<div class="separator" style="clear: both; text-align: center;"><a style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;" href="http://3.bp.blogspot.com/_Yph16QzcM8U/TBoViXaBQMI/AAAAAAAAAUg/BKJ9IFcPN4U/s1600/IMG_0372.PNG"><img src="http://3.bp.blogspot.com/_Yph16QzcM8U/TBoViXaBQMI/AAAAAAAAAUg/BKJ9IFcPN4U/s320/IMG_0372.PNG" border="0" alt="" width="214" height="320" /></a></div>
<p>The homepage was immediately a pleasant surprise, colours, shades, animated icons moving around to attract my attention.<br />
Immediately visible are a number of icons to access the most important parts of the site. Of course your eye will fall for the big icons, in perfect iPhone-style. You can&#8217;t see it in this image, but the icons can slide left and right and when you load the page they are moving to the left and that makes you immediately understand that you can interact. Something that was not equally obvious on the CNBC&#8217;s mobile site for the winter olympics, for example. Most important events are the ones most prominent with &#8220;Live Betting&#8221; always there and of course the World Cup in the very centre as this is that time of the year (or 4-years).</p>
<p>Below are the events that are happening now, depending on the event some times you can&#8217;t bet, but you can see what&#8217;s happening.</p>
<p>At the very top there is a navigation bar that is consistent across all the site and you can use it to quickly jump to different sections or search for specific events.</p>
<p><span style="font-size: x-large;">Event details</span></p>
<div class="separator" style="clear: both; text-align: center;"><a style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;" href="http://2.bp.blogspot.com/_Yph16QzcM8U/TBoXvVHoz-I/AAAAAAAAAUw/t0i7ElKQZeo/s1600/IMG_0381.PNG"><img src="http://2.bp.blogspot.com/_Yph16QzcM8U/TBoXvVHoz-I/AAAAAAAAAUw/t0i7ElKQZeo/s320/IMG_0381.PNG" border="0" alt="" width="214" height="320" /></a></div>
<p>Something that unfortunately I cannot show you here is that when you click on one of the events you see a nice animation when the page loads, i.e. it resembles the action of opening an app. On my iPhone when you click you see the usual spinning image for a couple of seconds and then magically a new page pops up. Although loading feels a bit slow, the effect is really nice.</p>
<p>As you probably noticed there is a little arrow on the left. The first and most common bets are expanded by default, but you get many more that are collapsed and you can skim quickly to find what you want to bet on. This saves space and lets you read quickly. When you expand you get a nice BIG button that you can press and bet. The odds are clearly stated on the button. Very nice.</p>
<p>For each event they have a lot of things you can bet on and this collapsible system is an excellent compromise between speed and completeness.</p>
<p><span style="font-size: x-large;">Placing a bet</span></p>
<div class="separator" style="clear: both; text-align: center;"><a style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;" href="http://4.bp.blogspot.com/_Yph16QzcM8U/TBoZLFQbDLI/AAAAAAAAAU4/mMd3mewJtAk/s1600/IMG_0378.PNG"><img src="http://4.bp.blogspot.com/_Yph16QzcM8U/TBoZLFQbDLI/AAAAAAAAAU4/mMd3mewJtAk/s320/IMG_0378.PNG" border="0" alt="" width="214" height="320" /></a></div>
<p>Here is a screenshot of what happens when you place a bet: the system registers the bet and a pseudo-cart appears at the top of the page with a number indicating how many bets you prepared so far. Later you will be able to easily finalise them all at once.</p>
<p>As you might have noticed you can do all this without ever logging in, that is required only at the very end of the process.</p>
<p><span style="font-size: x-large;">Easy bets</span></p>
<div class="separator" style="clear: both; text-align: center;"><a style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;" href="http://1.bp.blogspot.com/_Yph16QzcM8U/TBobL5n164I/AAAAAAAAAVA/fhxFvcbhJgY/s1600/IMG_0374.PNG"><img src="http://1.bp.blogspot.com/_Yph16QzcM8U/TBobL5n164I/AAAAAAAAAVA/fhxFvcbhJgY/s320/IMG_0374.PNG" border="0" alt="" width="214" height="320" /></a><a style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;" href="http://1.bp.blogspot.com/_Yph16QzcM8U/TBobL5n164I/AAAAAAAAAVA/fhxFvcbhJgY/s1600/IMG_0374.PNG"><br />
</a></div>
<p>Some special pages collect major events and let you easily bet on a common element, for example for the world cup there is a collection of all the upcoming matches and you can easily tap on a button and place your bet.</p>
<p><span style="font-size: x-large;">Review your bets</span></p>
<div class="separator" style="clear: both; text-align: center;"><a style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;" href="http://4.bp.blogspot.com/_Yph16QzcM8U/TBobOq3VmhI/AAAAAAAAAVI/QePWrG13Ik0/s1600/IMG_0380.PNG"><img src="http://4.bp.blogspot.com/_Yph16QzcM8U/TBobOq3VmhI/AAAAAAAAAVI/QePWrG13Ik0/s320/IMG_0380.PNG" border="0" alt="" width="214" height="320" /></a><a style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;" href="http://4.bp.blogspot.com/_Yph16QzcM8U/TBobOq3VmhI/AAAAAAAAAVI/QePWrG13Ik0/s1600/IMG_0380.PNG"><br />
</a></div>
<p>Once you have collected all the bets you want to place you can click on the &#8220;cart&#8221; at the top and review your list. If you don&#8217;t remember or want to review the details of each a nice pop up gives you all the details.</p>
<p>A simple form allows you to tweak your bet and calculates your potential returns. VERY tempting.</p>
<p><span style="font-size: x-large;">Overall</span></p>
<p>I really like this site and I think it&#8217;s a step forward in the design for mobile. Obviously it was designed with the iPhone in mind, the size of images, text and buttons are optimised for the size of the iPhone. Testing on one device alone we all know is easier, but I do not see how porting this design to Android and possibly to the most recent Nokias that run webKit wouldn&#8217;t be possible. The efforts of this small company (compared to your usual Google or Facebook) are amazing. This site really stands out both for the quality of the design and the usability. The intent is very clear, make it easy to bet on your mobile and in my view they have <strong>completely succeeded</strong>.</p>
<p>If I have to complain about something, I think the site does not feel very fast. I don&#8217;t know if it&#8217;s a network issue, computation on the server side (I am sure they are very busy with the World Cup these days) or anything else. I tested on my Wifi, so we can&#8217;t blame the carriers for once. In any case, I think the experience is worth the short wait.</p>
<p><span style="font-size: x-large;">PS: Device detection</span><br />
Paddy Power implemented a smart device detection system so that any address you hit you will be shown the right presentation, sometimes by redirecting you. This means that you can hit http://www.paddypower.com with your iPhone, PC and any other mobile and still see the correct site. Their default is to have mobile presentation on paddypower.mobi and even if you hit it with your PC, you will still be redirected to the correct desktop presentation. From the perspective of your average user I would say VERY well done, as a mobilist, I would like to be able to force a different presentation and see what happens, but I guess I am a minority <img src='http://blog.trasatti.it/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.trasatti.it/2010/06/paddypowermobi-relaunched-for-iphone.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Go mobile with WP Super Cache and the Mobile Pack</title>
		<link>http://blog.trasatti.it/2010/05/go-mobile-with-wp-super-cache-and.html</link>
		<comments>http://blog.trasatti.it/2010/05/go-mobile-with-wp-super-cache-and.html#comments</comments>
		<pubDate>Wed, 05 May 2010 13:26:00 +0000</pubDate>
		<dc:creator>Andrea</dc:creator>
				<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Mobile]]></category>

		<guid isPermaLink="false">http://blog.trasatti.it/?p=439</guid>
		<description><![CDATA[If you want your blog to stay as fast as possible and you want to support mobile users you will have to reach some compromise. This was true until today. With the WordPress Mobile Pack version 1.2.1 you now can &#8230; <a href="http://blog.trasatti.it/2010/05/go-mobile-with-wp-super-cache-and.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>If you want your blog to stay as fast as possible and you want to support mobile users you will have to reach some compromise.</p>
<p>This was true until today. With the <a href="http://wordpress.org/extend/plugins/wordpress-mobile-pack/">WordPress Mobile Pack</a> version 1.2.1 you now can get the best of both worlds. Here is a quick guide on how to achieve it. I am assuming you have installed the latest version of <a href="http://wordpress.org/extend/plugins/wp-super-cache">WP Super Cache</a>, already.<br /><span id="more-439"></span><br /><b>1. Activate WP Super Cache</b><br /><b>2. Go to the WP Super Cache options</b><br />In your admin -&gt; Settings -&gt; WP Super Cache<br /><b>3. Turn WP Super Cache ON and mobile support</b>
<div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/_Yph16QzcM8U/S9q_Fs3hnDI/AAAAAAAAATE/QWQNssEYiMA/s1600/Schermata+2010-04-30+a+12.22.34.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="150" src="http://4.bp.blogspot.com/_Yph16QzcM8U/S9q_Fs3hnDI/AAAAAAAAATE/QWQNssEYiMA/s320/Schermata+2010-04-30+a+12.22.34.png" width="320" /></a></div>
<p><b><br /></b><br /><b>4. Click on Update Status</b><br /><b>5. Scroll down and click on Update Mod_Rewrite Rules</b>
<div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/_Yph16QzcM8U/S9q_Ou715FI/AAAAAAAAATM/uDvU1xuq5tA/s1600/Schermata+2010-04-30+a+12.23.40.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="144" src="http://4.bp.blogspot.com/_Yph16QzcM8U/S9q_Ou715FI/AAAAAAAAATM/uDvU1xuq5tA/s320/Schermata+2010-04-30+a+12.23.40.png" width="320" /></a></div>
<p><b>6. Make sure WPMP is active</b><br />Go to Plugins -&gt; Installed and activate WPMP if not yet active<br /><b>7. Enjoy speed and mobile content at the same time!</b><br /><b><br /></b><br /><b>Notes for the geeks</b><br />Setting up WordPress this way will generate some extra cache files because you will have a cached version for your desktop versions and up to 3 versions of your mobile site depending on the devices that visit your site. Don&#8217;t worry about this too much as Super Cache will clean up old files anyway and if most of your visitors are in the same device class you will not get the other cache files generated.<br />The integration works in a way that WPMP gives to Super Cache a new key to cache files, so that desktop and mobile pages are separate. Super Cache will be only partial (i.e. like the HALF ON setting) for your mobile content, but and send static HTML files for desktop (i.e. the ON setting). This is currently the best we can get, but soon it might be different, so stay tuned.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.trasatti.it/2010/05/go-mobile-with-wp-super-cache-and.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

