<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="http://blogs.forum.nokia.com/styles/rss.css" type="text/css"?>
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
>
 <channel>
  <title>Gabor Torok&#039;s Forum Nokia Blog</title>
  <link>http://blogs.forum.nokia.com/blog/gabor-toroks-forum-nokia-blog</link>
  <description>&lt;p&gt;Software architect working in Symbian/S60 area since 2000 and still being enthusiastic about mobility. Please visit my introduction page on Forum Nokia Champions web page.&lt;/p&gt;
</description>
  <pubDate>Mon, 23 Nov 2009 14:56:25 +0200</pubDate>
  <generator>http://www.lifetype.net</generator>
  <itunes:author>Forum Nokia</itunes:author>
  <itunes:category text="Technology">
    <itunes:category text="Tech News"/>
  </itunes:category>
  <itunes:image href="http://www.forum.nokia.com/piazza/blogs/imgs/forum_nokia_rss_logo.jpg"/>
    <item>
   <title>Browser as an application platform</title>
   <description>
    &lt;p&gt;
I&#039;ve read the following &lt;a href=&quot;http://www.arcchart.com/blueprint/show.asp?id=484&quot;&gt;analysis from ARCchart&lt;/a&gt;
with great interest. I&#039;m already familiar with the idea of writing
applications for mobile browsers and that it can be considered as a
real alternative for mobile software development. &lt;a href=&quot;http://www.widsets.com/&quot;&gt;WidSets&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Web_widget&quot;&gt;Widgets&lt;/a&gt; are all around us, not to mention &lt;a href=&quot;http://www.adobe.com/products/flashlite/&quot;&gt;Flash Lite&lt;/a&gt;, &lt;a href=&quot;http://silverlight.net/&quot;&gt;Silverlight&lt;/a&gt;, two cross-platform solutions used for delivering (multimedia) content to more and more people.&lt;br /&gt;
&lt;br /&gt;
The
main point of ARCchart&#039;s article was to point out that the whole
problem of fragmented mobile development could be solved by developing
to a single run-time environment: the browser. The browser, which is
today&#039;s most widely used applications on desktop and mobile computing
devices alike.&lt;br /&gt;
&lt;br /&gt;
What is this fragmentation thing, one could ask?
Well, let&#039;s have a quick look at various mobile platforms, development
environments:
&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;It&#039;s a known fact that &lt;span style=&quot;font-weight: bold&quot;&gt;Symbian/C++&lt;/span&gt; opens the door to the wide variety of native features of &lt;span style=&quot;font-weight: bold&quot;&gt;S60 &lt;/span&gt;and &lt;span style=&quot;font-weight: bold&quot;&gt;UIQ &lt;/span&gt;devices,
	however, it still has a steep learning curve and its programming
	environment is not too developer-friendly, either, compared to e.g.
	Java. The vast majority of smartphones are running on Symbian operating
	system (whether iPhone-fans admit it or not), however, development is
	often more (cost-)efficient for other platforms. Portability is a
	serious issue in Symbian.&lt;/li&gt;
	&lt;li&gt;&lt;span style=&quot;font-weight: bold&quot;&gt;Windows Mobile&lt;/span&gt;
	devices are very popular in North-America, especially among business
	users. However, its popularity is way behind Symbian phones&#039; anywhere
	else in the world and don&#039;t forget the fact that there are much more &lt;span style=&quot;font-style: italic&quot;&gt;consumers&lt;/span&gt; than &lt;a href=&quot;http://en.wikipedia.org/wiki/Prosumer&quot;&gt;prosumers&lt;/a&gt;.
	On this platform, you can write native applications in Win32/MFC/.Net,
	however, these applications are rarely portable across other platforms.&lt;/li&gt;
	&lt;li&gt;&lt;span style=&quot;font-weight: bold&quot;&gt;Java? &lt;/span&gt;Hell, it&#039;s the king of fragmentation in terms of supported (or rather &lt;span style=&quot;font-weight: bold&quot;&gt;un&lt;/span&gt;supported)
	features, so-called JSRs. Even though it was supposed to bring the
	Paradise to mobile software developers, it&#039;s still suffering from
	severe problems.&lt;/li&gt;
	&lt;li&gt;What else? &lt;span style=&quot;font-weight: bold&quot;&gt;Linux?&lt;/span&gt;
	Show me some popular Linux-powered phones first and how people are
	making cross-platform, backward compatible programs for them.&lt;/li&gt;
	&lt;li&gt;&lt;span style=&quot;font-weight: bold&quot;&gt;iPhone?&lt;/span&gt;
	Mac OS X with its Objective C just increases variation. Even though C++
	can also be used for programming and there are, for example, attempts
	to &lt;a href=&quot;http://www.innaworks.com/alcheMo-for-iPhone.html&quot;&gt;port JME programs to Obj-C&lt;/a&gt;, as I said: it just increases variation, which is the nightmare of programers.&lt;/li&gt;
	&lt;li&gt;&lt;span style=&quot;font-weight: bold&quot;&gt;Android?&lt;/span&gt;
	Although the whole system is based on mobile Linux, the primary
	development language will be Java. But which Java? Google&#039;s own. And
	although it&#039;s said to be a solid foundation for Google OHA members,
	it&#039;s still only a &lt;span style=&quot;font-style: italic&quot;&gt;recommendation &lt;/span&gt;for
	them to choose whether various features will be supported in their
	devices or not. You can imagine how it affects fragmentation in the
	Java world - it will just make it even more complex.&lt;/li&gt;
&lt;/ul&gt;
Now how does a &lt;span style=&quot;font-style: italic&quot;&gt;browser&lt;/span&gt; come into play? I&#039;m sure that most readers of this blog have already heard of &lt;a href=&quot;http://webkit.org/&quot;&gt;WebKit&lt;/a&gt;, an open source browser engine enabling mobile browsers to show and handle full-web content. It is used in Mac OS X&#039;s &lt;a href=&quot;http://www.apple.com/safari/&quot;&gt;Safari&lt;/a&gt; (iPhone browser), Nokia&#039;s &lt;a href=&quot;http://www.s60.com/browser&quot;&gt;S60 browser&lt;/a&gt;, the built-in browser of Google&#039;s Android &lt;span style=&quot;font-style: italic&quot;&gt;will&lt;/span&gt; also be WebKit-based, not to mention Digia&#039;s &lt;a href=&quot;http://www.digia.com/browser&quot;&gt;@Web&lt;/a&gt;, a recently announced port of WebKit for UIQ phones. Although there are other good browsers, too, such as &lt;a href=&quot;http://www.opera.com/products/mobile/&quot;&gt;Opera Mobile&lt;/a&gt; and IE in Windows Mobile, WebKit seems to be becoming the de facto standard in mobile devices (which is &lt;a href=&quot;http://blogs.s60.com/browser/2007/10/coring_the_browser_1.html&quot;&gt;not necessarily a bad thing&lt;/a&gt;). It&#039;s also worth mentioning &lt;a href=&quot;http://www.operamini.com/&quot;&gt;Opera Mini&lt;/a&gt; and &lt;a href=&quot;http://teashark.com/&quot;&gt;TeaShark&lt;/a&gt; at this point, two &lt;span style=&quot;font-weight: bold; font-style: italic&quot;&gt;Java-based browsers&lt;/span&gt;, both using remote &lt;span style=&quot;font-weight: bold; font-style: italic&quot;&gt;back-end servers for pre-processing full-web content&lt;/span&gt;
and showing only the digested content formatted for
resource-constrained devices. Side-note: it&#039;s also WebKit that is
running on TeaShark&#039;s back-end servers. :)&lt;br /&gt;
&lt;br /&gt;
So &lt;span style=&quot;font-weight: bold&quot;&gt;is ARCchart right&lt;/span&gt; or not? Is the browser the ultimate solution for mobile software development? In my opinion &lt;span style=&quot;font-weight: bold; font-style: italic&quot;&gt;yes and no&lt;/span&gt;.
They&#039;re right that mobile browsers and complementing technologies (such
as Flash Lite) are becoming more and more powerful, capable of
rendering extremely complex web pages, performing surprisingly smart
functions, letting the user interact with active content, exchanging
data with remote servers, etc. However, whilst &amp;quot;older&amp;quot; web technologies
(e.g. JavaScript) are not powerful enough to compete with the power of
real programming languages, newer ones (e.g. Flash Lite) have not been
widely adopted yet. For example, for a quick and very brief reference
as to what the different versions of Flash Lite can and cannot do,
visit &lt;a href=&quot;http://blogs.forum.nokia.com/blog/alessandro-paces-forum-nokia-blog/series-40/2006/10/12/flash-lite-differences&quot;&gt;this link&lt;/a&gt;.
And even though there&#039;s not too much variation here yet, there will be:
newer versions of Flash Lite will require developers to keep track of
which mobile phone supports which version, how to distinguish between
Silverlight and Flash Lite applications, etc. I&#039;m afraid &lt;span style=&quot;font-weight: bold; font-style: italic&quot;&gt;it won&#039;t be any different in the end&lt;/span&gt;.&lt;br /&gt;
&lt;br /&gt;
In
my opinion, web-based technologies will open up new alternatives
(they&#039;ve already done so, actually) for mobile software: not
necessarily too complex ones, but at least enjoyable. And this is
exactly what most people are looking for: they&#039;d like to enjoy using
these programs. These new kind of programs that complete the whole
picture, add to it, but will NOT replace yet older but still powerful
technologies.&lt;br /&gt;
&lt;br /&gt;
Can hardly wait for your comments,&lt;br /&gt;
&lt;br /&gt;
Tote
   </description>
   <link>http://blogs.forum.nokia.com/blog/gabor-toroks-forum-nokia-blog/2008/06/19/browser-as-an-application-platform</link>
   <comments>http://blogs.forum.nokia.com/blog/gabor-toroks-forum-nokia-blog/2008/06/19/browser-as-an-application-platform</comments>
   <guid>http://blogs.forum.nokia.com/blog/gabor-toroks-forum-nokia-blog/2008/06/19/browser-as-an-application-platform</guid>
      <dc:creator>tote_b5</dc:creator>
      
    <category>Browsing</category>
      
    <category>Flash</category>
      
    <category>Java</category>
      
    <category>Symbian C++</category>
      
    <category>Mobile OS</category>
      
    <category>iPhone</category>
      
    <category>Windows Mobile</category>
      
    <category>Symbian</category>
      
    <category>Development</category>
      
    <category>Linux</category>
         <pubDate>Thu, 19 Jun 2008 01:10:10 +0200</pubDate>
   <itunes:author>Forum Nokia</itunes:author>
   <itunes:subtitle>Browser as an application platform</itunes:subtitle>
   <source url="http://blogs.forum.nokia.com/rss.php?blogId=43602&amp;profile=rss20">Gabor Torok&#039;s Forum Nokia Blog</source>
     </item>
    <item>
   <title>Android SDK is out - first impressions</title>
   <description>
    &lt;p&gt;After watching the video about the introduction of &lt;a href=&quot;http://www.youtube.com/watch?v=1FJHYqE0RDg&quot;&gt;Android for developers&lt;/a&gt;, I&amp;#39;m convinced that the new phone will generally be as &lt;u&gt;useful&lt;/u&gt; and &lt;u&gt;user-friendly&lt;/u&gt; as e.g. the-also-newcomer &lt;a href=&quot;http://www.apple.com/iphone/&quot;&gt;iPhone&lt;/a&gt;.
Well, it came as no surprise to me, I&amp;#39;m just expecting a lot of
innovation from the new player in mobile space. I don&amp;#39;t expect that the
new platform will offer as many features as traditional Symbian-powered
devices and I can even dare to say that it&amp;#39;s not going to be as stable,
either ... yet. However, I&amp;#39;m pretty sure that they will catch up soon
and offer real alternatives for users, phone manufacturers, operators,
etc.&lt;br /&gt;&lt;br /&gt;What has totally escaped my attention, though, was that the programming language for this platform would be &lt;span style=&quot;font-weight: bold&quot;&gt;Java&lt;/span&gt;.
Based on the fact that it&amp;#39;s going to be a Linux-based OS I kind of
anticipated that the programming language would be C/C++. I don&amp;#39;t know
the rationale behind this decision, but it will definitely give a boost
to the otherwise stagnating JME programming environment.&lt;br /&gt;&lt;br /&gt;I wonder, though, how Google is planning to solve the &lt;span style=&quot;font-weight: bold&quot;&gt;infamous Java fragmantation problem&lt;/span&gt; for mobile phones. What is that? Well, even though Java is a very &lt;u&gt;popular&lt;/u&gt; and &lt;u&gt;platform-independent&lt;/u&gt; (aka &lt;span style=&quot;font-style: italic&quot;&gt;portable&lt;/span&gt;) programming language, it&amp;#39;s just the set of Java core services that is available on every mobile device. The &lt;span style=&quot;font-weight: bold&quot;&gt;presence of additional features&lt;/span&gt;, such as advanced mobile graphics, security, etc. &lt;span style=&quot;font-weight: bold&quot;&gt;depend on phone manufacturers&amp;#39; decision&lt;/span&gt;, whether it&amp;#39;s worth adding them. Which makes Java mobile applications market very fragmanted (&lt;span style=&quot;font-style: italic&quot;&gt;some features are available, some are not&lt;/span&gt;)
and development very frustrating. You know, I have heard an example
that a mobile Java game programmer had to make 100(!) variants of his
game &amp;quot;just&amp;quot; to be able to distribute it to as many phones as possible.&lt;br /&gt;&lt;br /&gt;Another
thing about mobile Java development is that most mobile phones are
running on another operating system than Java. In fact, Java is not an
operating system at all, even though there have been attempts to make
Java-based mobile platforms, see e.g. &lt;a href=&quot;http://www.savaje.com/&quot;&gt;SaveJe&lt;/a&gt; for more details. But &lt;a href=&quot;http://www.symbian.com/&quot;&gt;Symbian&lt;/a&gt; OS is similar to &lt;a href=&quot;http://code.google.com/android/what-is-android.html&quot;&gt;Android&lt;/a&gt; platform in that they both have their native platform (&lt;span style=&quot;font-weight: bold; font-style: italic&quot;&gt;Symbian OS&lt;/span&gt; and &lt;span style=&quot;font-weight: bold; font-style: italic&quot;&gt;Linux&lt;/span&gt;, respectively) meaning that platform features are usually available in native programming language first and then some &lt;a href=&quot;http://en.wikipedia.org/wiki/Java_Native_Interface&quot;&gt;JNI&lt;/a&gt; layer added on the top and there you are, it&amp;#39;s  ready for Java programmers. So far so good. However, it &lt;span style=&quot;font-style: italic&quot;&gt;introduces some latency&lt;/span&gt;
in the equation as it requires some time to write features in native
environment first and wrap it in the second round. Will Android suffer
from the same problem?&lt;br /&gt;&lt;br /&gt;My regular readers already know that I
was involved in S60 Browser development and it was very challenging and
I really liked it. For that reason, I&amp;#39;m happy to see that &lt;span style=&quot;font-weight: bold&quot;&gt;Google chose WebKit&lt;/span&gt; for their mobile browser (&lt;a href=&quot;http://www.s60.com/browser/&quot;&gt;S60 Browser&lt;/a&gt;
is also based on this rendering engine) and in the demonstration it
worked well. I was wondering which display method they would choose for
web pages:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-weight: bold&quot;&gt;S60 approach&lt;/span&gt; that displays the web page in its entirety without scaling&lt;br /&gt;&lt;/li&gt;&lt;li&gt;or &lt;span style=&quot;font-weight: bold&quot;&gt;iPhone approach&lt;/span&gt;
that scales down the web page to so that it fits to display dimensions,
though it&amp;#39;s hardly readable, but lets the user zoom it very
conveniently (e.g. by double-tapping on screen)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;They actually chose both: they first display the page without scaling and then user can scale it &lt;span style=&quot;font-weight: bold&quot;&gt;down&lt;/span&gt; for better navigation. I&amp;#39;m pretty sure that Nokia has their own IPR on &lt;span style=&quot;font-weight: bold&quot;&gt;MiniMap&lt;/span&gt;
(i.e. the zooming interface) so that might be one of the reasons why
Google didn&amp;#39;t choose that option. However, what surprised me that they
use the same visual history for page navigation as in S60 Browser.&lt;br /&gt;&lt;br /&gt;So
these are my first impressions after spending half an hour with Android
after midnight. I&amp;#39;m really keen to hear your comments - just as usual!
:)&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Originally from&lt;/strong&gt; &lt;a href=&quot;http://mobile-thoughts.blogspot.com/2007/11/android-sdk-is-out-first-impressions.html&quot;&gt;mobile-thoughts.blogspot.com&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Tote&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-weight: bold&quot;&gt;[Update]:&lt;/span&gt; I&amp;#39;m shocked, check this out: &lt;a class=&quot;bb-url&quot; href=&quot;http://www.betaversion.org/%7Estefano/linotype/news/110/&quot;&gt;Dalvik: how Google routed around Sun&amp;#39;s IP-based licensing restrictions on Java ME&lt;/a&gt;. It basically says that Android phones will &lt;span style=&quot;font-weight: bold&quot;&gt;NOT&lt;/span&gt; be JME-powered, but you can write &lt;span style=&quot;font-weight: bold&quot;&gt;&lt;span style=&quot;text-decoration: underline&quot;&gt;JSE programs&lt;/span&gt;&lt;/span&gt; to them. With &lt;span style=&quot;font-style: italic&quot;&gt;Android&lt;/span&gt;, Google has introduced their own VM, &lt;span style=&quot;font-style: italic&quot;&gt;Dalvik&lt;/span&gt;,
which eventually does not make use of Java bytecode, but their own
Dalvik format. It&amp;#39;s all to get rid of Sun being involved in licensing.&lt;br /&gt;It&amp;#39;s
another question how good or bad will it be to the community. It means
a new variant on the horizon, a VM incapable of running so-far-standard
Java bytecode, thus your midlets will have to be re-compiled. I can see
why Google is happy to have their own solution to this problem, but I
can also see why developers would be unhappy due to that they&amp;#39;ll have
to take just another Java variant into consideration. Even if their
pockets will be full with (Google&amp;#39;s) money. &lt;/p&gt;
   </description>
   <link>http://blogs.forum.nokia.com/blog/gabor-toroks-forum-nokia-blog/2007/11/13/android-sdk-is-out-first-impressions</link>
   <comments>http://blogs.forum.nokia.com/blog/gabor-toroks-forum-nokia-blog/2007/11/13/android-sdk-is-out-first-impressions</comments>
   <guid>http://blogs.forum.nokia.com/blog/gabor-toroks-forum-nokia-blog/2007/11/13/android-sdk-is-out-first-impressions</guid>
      <dc:creator>tote_b5</dc:creator>
      
    <category>Browsing</category>
      
    <category>Java</category>
      
    <category>S60</category>
      
    <category>Symbian C++</category>
         <pubDate>Tue, 13 Nov 2007 03:15:17 +0100</pubDate>
   <itunes:author>Forum Nokia</itunes:author>
   <itunes:subtitle>Android SDK is out - first impressions</itunes:subtitle>
   <source url="http://blogs.forum.nokia.com/rss.php?blogId=43602&amp;profile=rss20">Gabor Torok&#039;s Forum Nokia Blog</source>
     </item>
    <item>
   <title>Do you think that PlatSec signing process is a nightmare?</title>
   <description>
    Well, then let me share the following article with you about &lt;a href=&quot;http://blog.javia.org/?p=42&quot;&gt;midlet signing&lt;/a&gt;. It describes how painful a &lt;span style=&quot;font-weight: bold; font-style: italic;&quot;&gt;Java midlet &lt;/span&gt;signing process can be. In addition to that, it also contains some basic information about how signing works (e.g. chain of certificates) and what it costs. Shocking experience. :-&lt;br /&gt;&lt;br /&gt;From signing and capabilities/permissions point of view I would say they&#039;re the same. You know, it&#039;s one thing that you&#039;ve got to be familiar with a security system that sometimes simply doesn&#039;t work (unless you invest much-much money in it), the bigger problem that most developers suffer from is that you even have to pay for it. As security is our &lt;span style=&quot;text-decoration: underline;&quot;&gt;common concern&lt;/span&gt; wouldn&#039;t it make sense to introduce such a system in which &lt;span style=&quot;font-style: italic;&quot;&gt;nobody pays to nobody&lt;/span&gt;? You know, not only is the concern common, but the benefit would also be mutual. I know I&#039;m so naive. :-&lt;br /&gt;&lt;br /&gt;Tote
   </description>
   <link>http://blogs.forum.nokia.com/blog/gabor-toroks-forum-nokia-blog/2007/02/05/do-you-think-that-platsec-signing-process-is-a-nightmare</link>
   <comments>http://blogs.forum.nokia.com/blog/gabor-toroks-forum-nokia-blog/2007/02/05/do-you-think-that-platsec-signing-process-is-a-nightmare</comments>
   <guid>http://blogs.forum.nokia.com/blog/gabor-toroks-forum-nokia-blog/2007/02/05/do-you-think-that-platsec-signing-process-is-a-nightmare</guid>
      <dc:creator>tote_b5</dc:creator>
      
    <category>General</category>
      
    <category>Java</category>
         <pubDate>Mon, 05 Feb 2007 15:10:39 +0100</pubDate>
   <itunes:author>Forum Nokia</itunes:author>
   <itunes:subtitle>Do you think that PlatSec signing process is a nightmare?</itunes:subtitle>
   <source url="http://blogs.forum.nokia.com/rss.php?blogId=43602&amp;profile=rss20">Gabor Torok&#039;s Forum Nokia Blog</source>
     </item>
   </channel>
</rss>