<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml-stylesheet href="http://duncan-cragg.org/css/atom.css" type="text/css" ?>
<!-- Copyright (c) 2006 Duncan Cragg -->

<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
    <id>http://duncan-cragg.org/blog/</id>
    <title>What Not How - Posts tagged 'mobile2.0'</title>
    <subtitle>Duncan Cragg on Declarative Architectures</subtitle>
    <author><name>Duncan Cragg</name></author>
    <logo>/favicon.gif</logo>
    <icon>/favicon.ico</icon>
    <rights>All content including photos and images by Duncan Cragg. Copyright (c) Duncan Cragg, your rights preserved: see /CXL.html</rights>
    <generator uri="http://www.djangoproject.com">A Django Production.</generator>
    <link rel="alternate" type="text/html" href="http://duncan-cragg.org/blog/" title="What Not How" />
    <link rel="self" type="application/atom+xml" href="http://duncan-cragg.org/blog/atom/mobile2.0/" />

    <updated>2009-04-06T17:40:00Z</updated>


    <entry>
        <id>http://duncan-cragg.org/blog/post/symbian-and-linux/</id>
        <title>Symbian and Linux</title>
        <published>2009-04-06T17:40:00Z</published>
        
        <updated>2009-04-06T17:40:00Z</updated>
        
        <link rel="alternate" type="text/html" href="http://duncan-cragg.org/blog/post/symbian-and-linux/" title="Symbian and Linux" />
        
        <category term="mobile2.0" />
        
        <category term="u-web" />
        
        <category term="cilux" />
        
        <summary type="xhtml">
            <div xmlns="http://www.w3.org/1999/xhtml">

<p>

The mobile world has been thrown into turmoil by the iPhone, and everyone is scrambling to
get onto the touch-and-app-store bandwagon and to innovate their way ahead.
</p><p>
These are interesting times. For example, thanks to a remarkable move by Nokia, 
<a href="http://www.symbian.com">Symbian</a> is now going to be made Open Source over the next
year or so, joining Linux as one of the big two Open Source mobile operating systems.
</p><p>
There has recently been some 
<a href="http://www.computerworld.com.au/article/297839/symbian_foundation_faces_up_challenges?rid=-301">discussion at CTIA</a>
about what should be the focus of the newly-formed 
<a href="http://www.symbian.org">Symbian Foundation</a> - steward of this complex operating system
and its S60 wrappers. Should it jump on the iPhone bandwagon?
</p><p>
I believe that the Symbian Foundation should in fact use Linux, not the iPhone, as its
reference standard when setting priorities...
 &#160; ...
</p>

            </div>
        </summary>
        <content type="xhtml" xml:space="preserve">
            <div xmlns="http://www.w3.org/1999/xhtml">

<p>
</p><div class="summary"><p>
The mobile world has been thrown into turmoil by the iPhone, and everyone is scrambling to
get onto the touch-and-app-store bandwagon and to innovate their way ahead.
</p><p>
These are interesting times. For example, thanks to a remarkable move by Nokia, 
<a href="http://www.symbian.com">Symbian</a> is now going to be made Open Source over the next
year or so, joining Linux as one of the big two Open Source mobile operating systems.
</p><p>
There has recently been some 
<a href="http://www.computerworld.com.au/article/297839/symbian_foundation_faces_up_challenges?rid=-301">discussion at CTIA</a>
about what should be the focus of the newly-formed 
<a href="http://www.symbian.org">Symbian Foundation</a> - steward of this complex operating system
and its S60 wrappers. Should it jump on the iPhone bandwagon?
</p><p>
I believe that the Symbian Foundation should in fact use Linux, not the iPhone, as its
reference standard when setting priorities...
</p></div><p>
<b>Porting from Linux to Symbian</b>
</p><p>
I&#39;m writing an application called <a href="http://cilux.net">Cilux</a> for the Linux-based 
<a href="http://maemo.org/intro/">Maemo</a> 
platform, and loving it. I use classic Linux tools like gcc, vim, make and git.
</p><p>
Now, soon I&#39;m hoping to trade in my 
<a href="http://www.omio.com/phones/sony-ericsson/xperia-x1/reviews/61/think-carefully-before-buying-the-xperia-x1">disappointing Xperia X1</a>
for a beautiful new
<a href="http://www.youtube.com/watch?v=Ad5Zf0VdC8E&amp;feature=related">Omnia HD</a>,
which is based on Symbian and S60 v5.
</p><p>
So naturally I want to port Cilux to the Omnia HD; and thence to the Sony Ericsson Idou.
</p><p>
I&#39;ve written Cilux to have a strict boundary between its functions and the underlying
operating system through an abstraction API. I&#39;ve done it for Win32, and it was ugly,
but not too bad. So it&#39;s only the Symbian implementation of that API that I&#39;ll need to
code up in order to port Cilux to my new phone.
</p><p>&#160;</p><p>
<b>Symbian Pain</b>
</p><p>
But there is much evidence that it&#39;s going to be a pain compared to the Linux, and even
the Win32 port. There is an article on Simon Judge&#39;s Mobile Phone Development blog 
<a href="http://mobilephonedevelopment.com/archives/710">comparing coding pain</a>, 
where Symbian comes out looking rather hard. There&#39;s a 
<a href="http://www.fleasome.com/component/poll/15-pollsymbianprogramming">poll on the Fleasome site</a> 
which says much the same. And an article on Wap Review calls Symbian native development
<a href="http://wapreview.com/blog/?p=3331">&#39;notoriously difficult&#39;</a>.
</p><p>
What I want is to develop my Symbian port in my comfortable Ubuntu environment, using
all my familiar Linux tools. What I want is to have standard C operating system APIs.
I want to have full access to the latest available hardware. I hope I won&#39;t have to rely on
Samsung to provide drivers for the OpenGL ES 2.0 API into the OMAP3 chip, meaning a
possible re-port for Sony Ericsson&#39;s device.
</p><p>
Also, here&#39;s a recent article referring to 
<a href="http://www.exponere.com/2009/is-nokia-setting-itself-up-for-failure-with-ovi-store/">Symbian&#39;s instability</a>
in the face of multiple, badly-behaved applications. I want Symbian to be as reliable as
Linux. I certainly don&#39;t want a repeat of my experiences with Windows Mobile.
</p><p>
Linux and its common libraries and tools is the reference standard by which I&#39;ll
inevitably judge my Symbian porting and running experience.
</p><p>&#160;</p><p>
<b>Less Innovation, Less Fragmentation</b>
</p><p>
Linux is a workhorse. Its development is largely about being robust and keeping up
with hardware advances, rather than innovation. The community nature of Linux
development tends to work against dramatic innovation and discourage fragmentation.
</p><p>
You can get 3D interfaces, you can get VMs for Linux to run Flash and Java, you can
run Javascript in browsers - but apart from base Firefox, these are not the priority of
those that put together distributions.  You won&#39;t find much in the way of trendy app
stores in the Linux world - instead, enjoy the luxury of Debian package management,
which allows stable distributions of tested code, whose interdependencies are all taken
care of.
</p><p>
The <a href="http://www.moblin.org">Moblin</a> mobile Linux distro has been 
<a href="http://www.linuxdevices.com/articles/AT6156185477.html">handed over by Intel to the Linux Foundation</a>.
But its potential to meet the
<a href="http://www.youtube.com/watch?v=XcN_9vZ7j20">innovative visions</a>
Intel had for its 
<a href="http://www.youtube.com/watch?v=pyQ_NWt_sjA">Moorestown chips</a>
is now unlikely to be realised, because the Linux community simply has different skills
and priorities. Without the kind of input a commercial enterprise can deliver in areas
like style and information architecture, Moblin will be just another mobile Linux distro.
</p><p>
Two other mobile Linux distros - the rhyming pair
<a href="http://www.maemo.org/intro/">Maemo</a> and
<a href="http://www.limofoundation.org">LiMo</a> -
have been criticised by industry-watchers Vision Mobile for being too, well, boring.
Vision Mobile hope that Maemo&#39;s
<a href="http://www.visionmobile.com/blog/2008/09/symbian%e2%80%99s-open-source-challenge/">Open Source culture won&#39;t drag Symbian down</a>
and that both Symbian and
<a href="http://www.visionmobile.com/blog/2009/03/why-the-limo-foundation-needs-to-go-back-to-the-drawing-board/">LiMo will jump on the iPhone bandwagon</a>.
</p><p>
But a mix of dull reliability and adaptability is Linux&#39;s strength. It comes partly from
the cross-pollination of the various collaboration groups. For example, I now forsee some
Maemo/Moblin collaboration on the horizon, especially since they share the 
<a href="http://www.youtube.com/watch?v=AYGp6iBmCyM">Clutter UI toolkit</a>.
</p><p>&#160;</p><p>
<b>Symbian&#39;s Competition is Linux</b>
</p><p>
In contrast to 
<a href="http://www.visionmobile.com/blog/2008/09/symbian%e2%80%99s-open-source-challenge/">Vision Mobile</a>,
I believe that the Symbian Foundation would do well to copy the Linux model while
opening up Symbian and S60.
</p><p>
Symbian/S60 are now competing with Linux and its ecosystem. The Symbian Foundation thus
needs to learn a few lessons of a well-behaved Open Source operating system and basic
application environment.
</p><p>
It should start with understanding the ways of an Open Source community. Of course it&#39;ll
take more than a 
<a href="http://mobileopportunity.blogspot.com/2009/04/ugliest-logo-ever-but-maybe-it-makes.html">jolly logo</a>
and &#39;branding&#39; - however sincere in intent - to achieve that culture shift, especially
with such a weight of Symbian and S60 developers still working for Nokia.
</p><p>&#160;</p><p>
<b>How Symbian Can Support Innovation</b>
</p><p>
The Symbian Foundation should <i>support innovation in mobile by being the most
responsive provider of a stable mobile OS and full range of packages and drivers that
are easy to program over</i>, using Linux as the standard to aspire to.
</p><p>
The Symbian Foundation should focus on things like ease of writing and porting
applications, and stability of the operating system in the face of poorly-written code.
They must give developers a wide range of easy ways to make solid Symbian or S60
applications that exploit the hardware and give full access to device functions.  
</p><p>
Like Linux, the Symbian Foundation should keep its operating system up-to-date with
hardware advances - fully supporting capacitive touchscreens, accelerometers, GPS,
OpenGL ES 2.0 chips, etc.
</p><p>
They should bring dependency-managed, tested package delivery. They should stay the
provider of the &#39;Symbian distro&#39; of choice, by leveraging their control over the Symbian
modules and over Symbian Signed, thus preventing fragmentation.
</p><p>&#160;</p><p>
<b>Not Competing with the iPhone</b>
</p><p>
Linux, in the form of LiMo, Maemo or Moblin, is unlikely to compete with the iPhone,
or other &#39;convergence devices&#39;, by itself.
</p><p>
Likewise, Symbian is no longer competing with the iPhone, or its old enemy, Microsoft&#39;s
Windows Mobile. These are full-stack, closed systems under a single central control that is
entirely market-driven. The core is opaque, the innovation is entangled in opaque
priorities and roadmaps; the future of your precious software and startup is uncertain.
</p><p>
But when Linux or Symbian is taken by a third party and used to deliver a full package
of innovation over the top, then they could create great, competitive products.
</p><p>
<a href="http://www.android.com">Android</a>
and 
<a href="http://en.wikipedia.org/wiki/Palm_webOS">Palm WebOS</a>
are two good examples of Linux-based platforms where the fun stuff, the user experience,
happens away from the kernel in runtime environments or VMs - Java and Javascript
respectively - and in online services.
</p><p>
The Symbian Foundation should resist the temptation to commit resources to
Symbian-approved and promoted VMs or runtimes for Java, Flash, Javascript, etc. They
should resist the temptation to develop Symbian Widgets or 3D user experiences.  They
should resist the temptation to develop a &quot;Symbian App Store&quot;, or a &quot;Symbian Cloud Services&quot;.
</p><p>&#160;</p><p>
<b>Building on Symbian</b>
</p><p>
They should leave all these innovations to Nokia, Samsung and Sony Ericsson, who are focused
on their markets - and learning fast. 
</p><p>
Looking at Nokia&#39;s 5800 and N97 in the brilliant light of Samsung&#39;s Omnia HD and the Sony
Ericsson Idou leaves one wondering what Nokia will do next to leapfrog the others using
the same platform, hopefully on better chips than the Freescales.
</p><p>
Handing over the reins of S60 downwards, even if not the development, will leave Nokia
free to refocus from a techie company to a Mobile 2.0 innovator - to really get their
teeth into bringing us a
<a href="http://www.visionmobile.com/blog/2008/09/symbian%E2%80%99s-open-source-challenge/">&quot;delightful&quot;</a>
user experience, based around
<a href="http://www.ovi.com/">Ovi</a> and the work of
<a href="http://betalabs.nokia.com/blog/2009/03/31/introducing-nokia-photo-browser-browse-your-photos-with-stunning-3d-effects/">Nokia Labs</a>.
Perhaps with an 
<a href="http://wapreview.com/blog/?p=3331">emphasis on Flash and Web Runtime</a>.
</p><p>
Although, having said that, there should be 
<a href="http://www.exponere.com/2009/is-nokia-setting-itself-up-for-failure-with-ovi-store/">no concern</a>
about Ovi unleashing a large number of well-tested native S60 apps onto a stable Symbian
distribution. And native apps fetched from Nokia Ovi should run on compatible Samsung
devices without alteration - and vice-versa.
</p><p>&#160;</p><p>
<b>Strong Future</b>
</p><p>
Not so trendy for Symbian Foundation, but at least this will ensure Symbian has a strong
future, in an environment where Linux is increasingly showing its strengths.
</p><p>
There is actually already
<a href="http://blog.symbian.org/2009/04/06/collaboration-at-the-heart/">plenty of evidence</a>
that Symbian is going in the right direction.
For example, the
<a href="http://www.forum.nokia.com/main/resources/technologies/open_c/">Open-C</a>
APIs are intended to help those porting from standard environments, and there are some
<a href="http://blog.symbian.org/2009/03/28/simpler-and-cleaner-code/">improvements to the coding idioms</a>.
There are plans to improve
<a href="http://www.symbian-guru.com/welcome/2009/03/interview-with-david-wood-catalyst-at-symbian-foundation.html">Symbian Signed and the code modularity</a>.
Finally, the recent endorsement by Symbian of an 
<a href="http://blog.symbian.org/2009/04/01/the-first-hardware-reference-design/">OMAP3-based dev kit</a>
presumably means they&#39;ll also be bringing out the OpenGL ES 2.0 drivers and APIs.
</p><p>
For me, a more Linux-like Symbian &#39;distro&#39; and tools will make porting <a href="http://cilux.net">Cilux</a>
from Maemo something to look forward to...
</p><p>

</p>

            </div>
        </content>
    </entry>
    
    <entry>
        <id>http://duncan-cragg.org/blog/post/mobile-widgets-arent-mobile-web/</id>
        <title>Mobile Widgets aren&#39;t the Mobile Web</title>
        <published>2009-02-11T16:20:00Z</published>
        
        <updated>2009-02-11T16:20:00Z</updated>
        
        <link rel="alternate" type="text/html" href="http://duncan-cragg.org/blog/post/mobile-widgets-arent-mobile-web/" title="Mobile Widgets aren&#39;t the Mobile Web" />
        
        <category term="architecture" />
        
        <category term="declarative" />
        
        <category term="web2.0" />
        
        <category term="strest" />
        
        <category term="ajax" />
        
        <category term="rest" />
        
        <category term="scalability" />
        
        <category term="momo" />
        
        <category term="microweb" />
        
        <category term="mobile2.0" />
        
        <category term="u-web" />
        
        <summary type="xhtml">
            <div xmlns="http://www.w3.org/1999/xhtml">

<p>

<a href="http://mobilemonday.org.uk/2009/01/february-2nd-event-changing-landscape.html">Mobile Monday London</a>
met last night to discuss the Mobile Web and Widgets. It was an engaging and 
thought-provoking evening.
</p><p>
Your intrepid reporter was there and, in spite of the crashing of his sad, clunky old
Windows Mobile Xperia X1, losing all his notes, he brings you this hot report from
right out of his memory (somewhat steamed up by subsequent socialising, but reclarified by
Google).
</p><p>
After that, I give an explanation of why I believe that Widgets are not the solution
to what Mobile 2.0 needs...
 &#160; ...
</p>

            </div>
        </summary>
        <content type="xhtml" xml:space="preserve">
            <div xmlns="http://www.w3.org/1999/xhtml">

<p>
</p><div class="summary"><p>
<a href="http://mobilemonday.org.uk/2009/01/february-2nd-event-changing-landscape.html">Mobile Monday London</a>
met last night to discuss the Mobile Web and Widgets. It was an engaging and 
thought-provoking evening.
</p><p>
Your intrepid reporter was there and, in spite of the crashing of his sad, clunky old
Windows Mobile Xperia X1, losing all his notes, he brings you this hot report from
right out of his memory (somewhat steamed up by subsequent socialising, but reclarified by
Google).
</p><p>
After that, I give an explanation of why I believe that Widgets are not the solution
to what Mobile 2.0 needs...
</p></div><p>
<b>GSMA ONE</b>
</p><p>
First up was Kevin Smith from Vodafone to tell us about the 
<a href="https://gsma.securespsite.com/access/entry/default.aspx">GSMA ONE Web API</a>
(also <a href="http://oneapi.aepona.com/">via here</a>).
ONE means &#39;Open Network Enablers&#39;. It seems quite similar to the
<a href="http://web21c.bt.com/">Web21C</a>
initiative by BT, led by my good friend
<a href="http://blog.whatfettle.com/">Paul Downey</a>,
but which was unfortunately set aside in favour of
<a href="http://www.ribbit.com">Ribbit</a>.
</p><p>
You can send an SMS, get a user&#39;s location and access billing and connection info. All
through a scary 
<a href="http://duncan-cragg.org/blog/post/strest-service-trampled-rest-will-break-web-20/">STREST</a>
interface. 
</p><p>
Scary because it looks like you can 
<a href="http://www.betavine.net/bvportal/web/guest/projects/resources/api/gsma_api">send a text using a GET</a>... 
The documentation
<a href="http://oneapi.aepona.com/content/gsma/tutorials/GSMA_Access_API_Messaging_REST_Tutorial.pdf">here</a> [PDF]
does suggest using POST, but even so, the design fundamentally wants Resource-Orientation 
in place of Service Orientation:
</p><p>
The message appears to be tacked on to the URL as an argument.  There are references to
&#39;soapUI&#39;, endpoints, etc. An SMS message doesn&#39;t appear to have its own URL, just an
internal message ID. There are &#39;exceptions thrown&#39;, all with a 400 code, even for
internal platform and integration faults.  And so-on - in classic
<a href="http://duncan-cragg.org/blog/post/strest-service-trampled-rest-will-break-web-20/">STREST</a>
style! 
</p><p>
Still, nothing that can&#39;t be fixed with a little help from a REST dude, or a read of 
<a href="http://oreilly.com/catalog/9780596529260/">&quot;RESTful Web Services&quot;</a>.
</p><p>&#160;</p><p>
<b>OMTP BONDI and Ikivo</b>
</p><p>
Next, Nick Allot told us all about
<a href="http://bondi.omtp.org/">OMTP BONDI</a>,
which is an attempt to ameliorate fragmentation in the mobile Web and widget space - the
one which allows access to parts of the phone not normally reached in a browser: PIM,
SMS, camera, GPS, etc.
</p><p>
Their big thing is security: take widgets out of the safety of the browser and give them
access to the phone via APIs, and you have a potential security nightmare. 
</p><p>
Seems BONDI will let you do most Mobile 2.0 native-like 
<a href="http://bondi.omtp.org/widget-gallery/">applets</a>, such as LBS, photo-sharing, etc.
There&#39;s a reference implementation for sad, clunky old Windows Mobile, and both 
<a href="http://www.gomonews.com/bondi-initiative-from-omtp-to-defragment-mobile-internet/">Opera and LiMo are jumping aboard</a>,
too.
</p><p>
BONDI aims to be W3C compatible where possible. Not HTML5, mind, but rather a works-now,
fit-for-purpose solution to the fragmentation problem, that includes widgets and may
later converge with HTML5. There&#39;s an 
<a href="http://wapreview.com/blog/?p=1184">excellent discussion</a>
about this on WAP Review.
</p><p>
This was followed by a talk by Samuel Sweet from 
<a href="http://www.ikivo.com/">Ikivo</a>.
It seems that, starting with their successful
<a href="http://www.gsmarena.com/samsung_release_the_t*omnia_in_korea__omnia_but_on_steroids_-news-656.php">Samsung T*Omnia</a>
widget interface, Ikivo have been overcome with standards love, and are going BONDI as
well as W3C compliant, especially with SVG as a rendering technology.
</p><p>&#160;</p><p>
<b>Firefox for Mobile</b>
</p><p>
Christian Sejersen of Mozilla gave a good intro to what is currently called
<a href="http://images.google.com/images?q=fennec">Fennec</a> - Alpha 2,
but will soon be renamed the more grown-up &#39;Firefox&#39;. It&#39;s got the same code in it after
all: and APIs such as camera and location that get added to the common codebase
will be accessible via both mobile and desktop.
</p><p>
<a href="http://vimeo.com/2577978">Looks very swishy</a>
and touchy and in sync with the times. Available now on Maemo (and 
<a href="http://moblin.org/category/tags/fennec">Moblin</a>)
and soon on sad, clunky old Windows Mobile. Then later this year on Symbian.  Codebase
is C, so no Java or Javascript phones supported, of course. Or closed walled-garden
proprietary locked-down phones like, um, the iPhone. It seems that the add-on community
is already fixing up their plugins for this mobile version without even being prompted.
No news on the <a href="http://labs.mozilla.com/2007/10/prism/">Prism</a>
widget-alike system, to compete with BONDI or Opera. It&#39;s &quot;still in the labs&quot;...
</p><p>&#160;</p><p>
<b>Panel</b>
</p><p>
Then the panel session started, with the best questions from the excellent host,
<a href="http://www.torgo.com/blog/">Dan Appelquist</a> of Vodafone,
and some good ones from the audience.
</p><p>
There was much elaboration and clarification on the presentations (thus included above
instead), and an interesting conversation around monetisation: how do widgets make
money? Three suggestions: adverts, selling widgets on an app(let) store and
micro-payments. Graham Thomas of T-Mobile appeared to be happy just to get more Internet
traffic for now..
</p><p>
There was also confirmation from Graham that Web&#39;n&#39;Walk 4.0 will major on widgets, but
he didn&#39;t say what flavour. More hot journalism uncovers
<a href="http://www.smartphoneshow.com/files/_15.30_jon_tetzchner_innovate_collaborate_accelerate.pdf">this confirmation</a>
[PDF] (page 29) that it&#39;s still going to be tied in with Opera.
</p><p>
The outstanding revelation of the evening (sorry Ikivo!) came when someone told us that
the Palm Pre&#39;s widget system is not only proprietary, but <i>uses tables for layout</i>!
The horror! Lots of tutting and W3C-like smugness around the room.
</p><p>&#160;</p><p>
<b>Following Open W3C Standards can still break the Web</b>
</p><p>
The goal of all this standard widget aspiration, apart from the obvious motivation of
being able to compete with the iPhone, is to allow everyone to write widgets, and for
those widgets to work on all our phones.
</p><p>
However, <i>just because everyone does what the W3C thinks they should do doesn&#39;t mean you
automatically get interoperability</i>.  Most importantly, doing what the W3C wants
doesn&#39;t mean you won&#39;t break the Web!
</p><p>
The W3C, don&#39;t forget, also brings you &#39;Web&#39; Services - those mis-named standards
responsible for much Web-breaking, including inspiring a whole generation of
Web-breakers with their 
<a href="http://duncan-cragg.org/blog/post/strest-service-trampled-rest-will-break-web-20/">STREST</a>
interfaces.
</p><p>
Interoperability on the Web is about state transfer, content types, URLs, hypertext. No
amount of API and widget standardisation will give classic Web interoperability as long
as they ignore these Web basics.
</p><p>
A widget is an applet is an application. It&#39;s a closed structure whose data interoperability
has to be hard coded each time, and whose imperative Javascript naturally wants to
make function calls back on the server - probably through HTTP.
</p><p>
And you run either this application or that, each having its own way of pushing or
pulling data around, or even the same data presented in much the same way all over again.
</p><p>
In the Web you run one browser application and everything is mashed within - data interoperability.
</p><p>&#160;</p><p>
<b>The U-Web gives us the best of both worlds</b>
</p><p>
Admittedly, the basic Web isn&#39;t good enough by itself when seeking an architecture for
Mobile 2.0&#39;s essential personalisation, interactivity and usability.
</p><p>
But that doesn&#39;t mean that we should throw away the Web&#39;s hard-won advantages of
interoperability and scalability, that we perhaps take too much for granted.
</p><p>
Enter the <a href="http://the-u-web.org">U-Web</a>!  The U-Web &quot;puts the Web back into Web 2.0 and
Mobile 2.0&quot;. 
</p><p>
It takes the best of the Web&#39;s one-way static document publishing model, and extends it
to a two-way dynamic data exchange model, while keeping the interoperability and scalability
of the Web.
</p><p>
Instead of working on widget standards that break the Web, let&#39;s standardise a fully
Web-compatible Mobile 2.0 architecture that delivers the same rich, personal
functionality, but adds back the seamless mashability of ever-changing people and their
ever-changing stuff. Oh, and promises scalability and rapid, easy development.
</p><p>
I&#39;ve kicked off the project with the <a href="http://the-u-web.org">U-Web</a> proposal - perhaps
you&#39;d like to jump in and help? Email me (see left bar) or leave a comment.
</p><p>

</p>

            </div>
        </content>
    </entry>
    
    <entry>
        <id>http://duncan-cragg.org/blog/post/mobile-20-killer-app-app-killer/</id>
        <title>The Mobile 2.0 Killer App is the App Killer</title>
        <published>2008-12-19T17:05:00Z</published>
        
        <updated>2008-12-19T17:05:00Z</updated>
        
        <link rel="alternate" type="text/html" href="http://duncan-cragg.org/blog/post/mobile-20-killer-app-app-killer/" title="The Mobile 2.0 Killer App is the App Killer" />
        
        <category term="architecture" />
        
        <category term="declarative" />
        
        <category term="web2.0" />
        
        <category term="yaml" />
        
        <category term="socialsoftware" />
        
        <category term="identity" />
        
        <category term="publishsubscribe" />
        
        <category term="p2p" />
        
        <category term="multimedia" />
        
        <category term="event-driven" />
        
        <category term="mobile2.0" />
        
        <summary type="xhtml">
            <div xmlns="http://www.w3.org/1999/xhtml">

<p>

Mobiles are unique - if you want to miss out on the opportunity they represent, you
could choose to see them as just slow computers with tiny interfaces and dodgy Internet
connections. Then try to squeeze in your traditional applications; try squeezing the
office desktop metaphor with its sedentary documents into a device the size of a mouse!
</p><p>
Alternatively, see them as the most personal, social and dynamic of devices that are
becoming connected to the Internet. Now a multi-billion-scale global opportunity opens
up to you.  That&#39;s customers <i>and</i> dollars! In trying to grasp this, some are calling
it &#39;Mobile 2.0&#39;, by analogy with its sibling, Web 2.0.
</p><p>
In that light, <i>the Killer App for Mobile 2.0 is the sharer, masher and updater of
People, Things, Times and Places</i>...  The key to getting Mobile 2.0 right is for it to
merge seamlessly into our lives. That means the handling of dynamic and shared data
becomes the top priority, even above the handling of applications.
</p><p>
This article describes a Mobile 2.0 platform that makes people and their stuff first
class - not applications.
 &#160; ...
</p>

            </div>
        </summary>
        <content type="xhtml" xml:space="preserve">
            <div xmlns="http://www.w3.org/1999/xhtml">

<p>
</p><div class="summary"><p>
Mobiles are unique - if you want to miss out on the opportunity they represent, you
could choose to see them as just slow computers with tiny interfaces and dodgy Internet
connections. Then try to squeeze in your traditional applications; try squeezing the
office desktop metaphor with its sedentary documents into a device the size of a mouse!
</p><p>
Alternatively, see them as the most personal, social and dynamic of devices that are
becoming connected to the Internet. Now a multi-billion-scale global opportunity opens
up to you.  That&#39;s customers <i>and</i> dollars! In trying to grasp this, some are calling
it &#39;Mobile 2.0&#39;, by analogy with its sibling, Web 2.0.
</p><p>
In that light, <i>the Killer App for Mobile 2.0 is the sharer, masher and updater of
People, Things, Times and Places</i>...  The key to getting Mobile 2.0 right is for it to
merge seamlessly into our lives. That means the handling of dynamic and shared data
becomes the top priority, even above the handling of applications.
</p><p>
This article describes a Mobile 2.0 platform that makes people and their stuff first
class - not applications.
</p></div><p>
Mobile 2.0 should be about effortless delivery of dynamic data such as local weather,
personalised news feeds, timelines off Facebook and feeds off Twitter, messages, notes,
videos, photos, calendar entries, map locations and meetup plans.
</p><p>
Mobile 2.0 should easily allow us to two-way-share this dynamic data with family,
friends, contacts, third parties and the world.
</p><p>&#160;</p><p>
<b>People don&#39;t actually want applications on their mobiles!</b>
</p><p>
What Mobile 2.0 does <i>not</i> need is traditional applications, because applications just
get in the way of this sharing, mashing and updating of live and personal data.  What
most people want on their mobiles is not the applications, but the stuff they animate.
</p><p>
People only accept the concept of applications (whether a native app or a Web app)
because that&#39;s all they&#39;ve been offered, and it&#39;s largely good enough.  But no-one
actually <i>wants</i> to download and launch and register and log in to a local
find-your-friends application - they just want to find their friends in the area - now!
And they shouldn&#39;t then have to flip between the find-your-friends map owned by that
application and the restaurant review map owned by another.
</p><p>
They don&#39;t want Facebook videos and YouTube videos and phone videos. They just want to
share videos. They shouldn&#39;t have to think about whether to send a picture by MMS or to
use an upload app, after remembering the login. They don&#39;t want multiple ways of sending
messages: IM, SMS, Twitter, Facebook, etc. They shouldn&#39;t have to think about how to
tell their friends about some news item - whether to post a TinyURL link on Twitter or
copy the text manually into Facebook.
</p><p>
They only want one shared calendar, not the phone calendar and a Google calendar and
events on Upcoming.org, that need two more logins.  They shouldn&#39;t have to think about
how to synchronise music or contacts lists on the phone, the iPod, the PC, some memory
card and online.
</p><p>
Applications - both native and Web, and including Applets and Widgets - just get in the
way of life!  They try to own or control our People, Things, Times and Places, breaking
them up with arbitrary application boundaries and making things unnecessarily hard to do.
</p><p>&#160;</p><p>
<b>People just want to share new stuff through their mobiles</b>
</p><p>
What most people would prefer is for their friends and messages from their phonebook,
their Facebook, their Twitter, their IM, plus their Flickr photos, their Facebook
photos, their restaurant and film reviews and their meeting places <i>all</i> to appear on
the <i>same</i> map or in the <i>same</i> calendar... along with the local weather forecast
for now and for any dates being planned.
</p><p>
And for that map or calendar, those photos, messages, interesting news, etc., to be
actively shared amongst those friends, or even the entire world, simply by flicking the
&#39;share with friends&#39; or the &#39;make public&#39; switch. Any member of a group should be able
to post photos into a shared gallery, or scribble onto a shared whiteboard.
</p><p>
The Killer App for Mobile 2.0 is the sharer, masher and updater of People, Things, Times
and Places.  This Mobile 2.0 platform would seamlessly merge, update, synchronise,
upload, download and save your latest life stuff, including that of your friends and
family, so that you no longer have to think about doing it yourself.
</p><p>
Your identity and your stuff would be owned and controlled by you through your personal
handset. They would not be merely transferr<i>able</i> - they&#39;d simply <i>be</i> transferred,
to where they&#39;re needed, when they&#39;re needed, using an open Internet protocol and
standard formats.
</p><p>&#160;</p><p>
<b>What this Mobile 2.0 platform must do</b>
</p><p>
This platform will have a tactile 3D interface, with touchable, draggable areas for
People (friends, family, organisations), Things (photos, videos, messages, feeds, news,
notes), Times (appointments, plans, weather) and Places (maps, galleries).  It will
seamlessly access and present this interactive content from the phone itself -
representing you - from friends, and from third parties.
</p><p>
This interactive content will be findable by tags, geo-tags and timestamps - it&#39;s
semantic data, not document text. You&#39;ll be able to pick a Person, then see their
related Things, Times and Places; or pick a Thing, to see it&#39;s associated People, Times
and Places.  Stuff will also be findable by recommendation and trust, or at worst
by well-targetted advertising.
</p><p>
Loss of Internet will be handled gracefully - stuff from others will still be visible,
but simply not updated. There are no central servers, so loss of a server only affects
the particular content it sources and &#39;animates&#39; for you.
</p><p>
Third parties will easily be able to add functionality and interactive content such as
map overlays, media, news feeds, etc.. They just expose them using the open protocol and
notation - they won&#39;t have to ask anyone in order to do so. Some contributors can adapt
the Facebook, Flickr, Twitter and various IM APIs in the same way. This will require a
system for reconciling the multiple identities of users and their contacts.
</p><p>
There will need to be a virtual property system backed up by crypto keys and supporting
payment - just because we don&#39;t have an App Store, doesn&#39;t mean we can&#39;t charge for
interactive content! It will also be possible to charge for premium services, such as
remote storage space for over-enthusiastic photo-snappers.
</p><p>&#160;</p><p>
<b>Blueprint for the Mobile 2.0 Killer Application</b>
</p><p>
Right, we need to describe some more important things with capital letters, because
we&#39;re going to talk about the best open notation and Internet protocol for sharing,
mashing and updating...
</p><p>
We&#39;ve already introduced People, Things, Times and Places. Call these Entities. Entities
are open data - they have a current State.  We&#39;ll use a text-based notation to describe
their public State, because it&#39;s easy to read and write. Each Entity will conform to an
open standard public schema or syntax.
</p><p>
Entities can Link up because they will each have a UID (unique identifier). Some
friends-People met at the last-week-Time and the Tower-of-London-Place and took these
photo-Things. I have a collection Thing of People and both personal and public
collection Things of photo-Things. You get the idea. That&#39;s a form of mashing. Oh -
photos on the Web can be wrapped in Entities that pull out their metadata, and Web URLs
are valid Links.
</p><p>
Any Entity can Observe another. Well, it&#39;s mostly People Entities doing the Observing
and being Observed, via the mobile device: my Person Observes your Person to see what
you&#39;re up to, then Observes your collection Thing of latest photos and may watch you on
the map Place as you head towards me snapping more. Sharing and updating.
</p><p>
But some Things can be Observers, too; the more interactive ones that are affected by
Entities around them. A simple example may be a restaurant review summarising Thing,
that Observes and averages the scores off several reviewers&#39; submission Things. Each
time a score is added or changed, the final score adjusts accordingly. That&#39;s sharing
and updating, too, and Entities that depend on other Entities is another form of mashing.
</p><p>
Entities have read permissions, which control which People and other Entities can see
their State. Crypto tech may be needed to support this in some cases.  Entities don&#39;t
have write permissions as such, because they control their own State as a result of what
they Observe.
</p><p>
Of course, these Observations occur over the Internet. This will use an open standard
publish-subscribe, peer-to-peer protocol. An Internet packet will subscribe to an
Entity&#39;s Link, another packet will return current Entity State, subsequent packets will
broadcast State updates to current subscribers. State is transferred into servers and
handsets as required, by a combination of pull and push - sharing and updating. The
protocol will ultimately also have to support things like streaming and real-time media;
over Wifi at least, so as not to scare off the carriers...
</p><p>&#160;</p><p>
<b>The U-Web Mobile 2.0 platform</b>
</p><p>
This Mobile 2.0 Killer Application for sharing, mashing and updating People, Things,
Times and Places ... will have a shorter name! I&#39;m calling it the &#39;U-Web&#39; Mobile 2.0
platform at the moment, reflecting its affinity to the
<a href="http://duncan-cragg.org/blog/post/universe-web/">Universe Web</a>
I described before. The U-Web platform application will be free and the protocols
and formats outlined above will be open.
</p><p>
The typical handset specification and APIs we&#39;re aiming for are: at least 320x320
touch screen with Embedded 3D; GPS, Wifi and good 3G; front- and back-facing cameras.
</p><p>
There&#39;s a large number of Windows Mobile devices that match this, including phones from
HTC, Sony-Ericsson, Samsung, etc.  There&#39;s currently one Symbian (the Nokia 5800/Tube
with the N97 to come next year). One iPhone. One Android.  One Blackberry without Wifi
(the Storm).
</p><p>
Although Nokia&#39;s plans are somewhat unclear, their S60v5/Qt/Ovi offering looks like it
may preclude the U-Web, especially since the U-Web wants to be the top app... The U-Web
certainly wouldn&#39;t be allowed onto the Apple App Store - the clue is in the name!
Writing it in C also rules out Java phones, such as Android - which in any case is
another app-oriented platform - and any Blackberry handsets.
</p><p>
The U-Web should thus be written for Windows Mobile 6+ Professional handsets. At least
their users will have a ready appetite for anything integrated and easy to use, that
keeps them clear of the .. clumsy .. operating system. It will also be worth keeping an
eye on the various Linux MID (Mobile Internet Device) platforms, including OpenMoko,
Maemo and Moblin, and maybe LiMo.  Similarly, we should write for Windows and Linux on
the server side - the code will be essentially the same. It&#39;ll need to be written in C
as the lowest common denominator, most efficient language.
</p><p>
The U-Web will be the top or idle application: on Windows Mobile it would replace the
Today screen, or more likely TouchFLO 3D or Spb Mobile Shell. Else it could be an
Xperia X1 Panel. Like these, it will give access to phone functions such as calls,
texts, camera, speaker mute, Bluetooth and Wifi enable, lock screen, brightness, etc.
</p><p>
Of course, it won&#39;t actually be the <i>only</i> application while it is in its beta phase -
people may still want to access a browser, email and various settings and utilities. The
need for browser and email should reduce significantly when functions such as Web 2.0,
messaging and file sharing are drawn up into the mobile-native U-Web, leaving just
actual documents fitting awkwardly.
</p><p>&#160;</p><p>
<b>Opportunity</b>
</p><p>
It is a mistake to see Mobile as just a second-class computing platform or as a
miniature office desktop onto which you must squeeze applications and documents.
</p><p>
Mobile represents a whole different world of personal interaction and almost 100%
presence - especially now that mobiles are becoming Internet-connected and location-aware
and are being furnished with top-quality cameras and touch screens.  The mobile device
represents you, here, now; what you&#39;re seeing and doing, to your social network.
</p><p>
A Mobile 2.0 platform needs to drop closed applications and go instead with the flow of
People, Things, Times and Places. It needs to transparently share, mash and update people
and their stuff.
</p><p>
The U-Web Mobile 2.0 platform described here is designed to seamlessly merge your real
and virtual lives, starting with intuitive, 3D touch interfaces that give an almost
tangible feel to virtual property, then expanding out to touch the 3D lives of others.
</p><p>
If you take a photo, your friends can instantly &#39;join you on the map&#39; where you stand
and chat about it - and the weather conditions you&#39;re experiencing.  No need to upload
to photo sharing sites with logins, or to launch isolated chat, map and weather apps.
</p><p>
The opportunity is billion-scale - increasingly capable mobile devices will become the
world&#39;s primary connected computing device, outstripping PCs and making current Internet
and Web usage look like just a warm-up.
</p><p>
We should be in there with appropriate software when that happens. We can stumble into
this step-by-painful-step via applications and browsers, or we can just let go and
meet the actual requirements - with a platform for mashing dynamic, shared data.
</p><p>
I&#39;d be delighted to hear from you if you&#39;re interested in helping or getting involved in
any way with building this platform! Email me - link&#39;s on the left - or leave a comment.
</p><p>&#160;</p><p>

</p>

            </div>
        </content>
    </entry>
    
</feed>

