.

Tags:

Nokia N950 is essentially the developer version of Nokia N9 (see the side-by-side comparison), the software stack is the same, i.e. MeeGo 1.2 Harmattan. While N9 is way more polished since it is targeted as a consumer smartphone, N950 still feels solid and good-looking, a long overdue replacement for the aging N900. The addition of hardware keypad makes it even more suitable as a developer device.

Let’s do a quick run of the hardware platform. The CPU is TI OMAP 3630 (ARM Cortex-A8) clocked at 1 GHz. The integrated GPU is from Imagination Technology, PowerVR SGX 530. The phone is equipped with at least 16 GB NAND drive and 1 GB RAM. The same SoC also powers various smart phones such as Motorola Droid X and Palm Pre 2.

For a start, being a fresh Qt smartphone in the market wins my heart. I’m sure those who still use Greenphone would not disagree with me here. Qt SDK has been updated to ease the development for this platform. If you are a seasoned Qt developer, you can literally start in minutes.

In this blog post, I’d focus mostly on the web browser. This Harmattan browser is based on WebKit2, a wrapper for WebKit code to have it in a split process model (this multiprocess approach was popularized by Google Chrome). There is a lot of confusion about WebKit2 in general, usually because people mistakenly think of it as a version number. To make it perfectly clear, WebKit2 is not the next-generation of WebKit. Its presence merely extends the possible use of WebKit outside the single-process containment. WebKit2 does not make any of the existing WebKit code obsolete any time soon.

So far, this Harmattan flavor of MeeGo 1.2 can claim itself as the first mobile platform to use this multiprocess WebKit. One of the obvious benefit is the fluid and smooth user experience when using the browser. As I explained in my backing store blog entry, decoupling the rendering process and the user interface process is the key to this success. Spend few hours playing with N950 browser and you’ll probably notice how fast it is!

Performance is one thing, faithful rendering is another thing. Beside being fast, the browser does not show any problem rendering many popular web sites out there (at least the ones I throw at). Scrolling is easy, flicking is smooth, pinching works as expected. Even mobile Google Mail works reasonably well. Looking at the DOM access performance, a recent investigation with Dromaeo test suite (see the full chart) shows how close it is to the performance of iPhone 4.

For the browser freak out there, the browser’s user agent is (this may or may not change for the final version, though):

Mozilla/5.0 (MeeGo; NokiaN950-00/00) AppleWebKit/534.13 (KHTML, like Gecko) NokiaBrowser/8.5.0 Mobile Safari/534.13

However, user agent itself is pretty useless and does not tell much about the browser capabilities (see my post on the theory behind WebKit ports). If we use HTML5 Test to check various features of the browser engine, it shows that the browser is getting the score of 283 + 14 bonus points. This is better than other smartphones in the market: iPhone 4 (217 + 7), Android-based Nexus S (184 + 1), and BlackBerry Torch (266 + 3). Of course by the time iOS 5 and/or next Android smartphone OS are out, the numbers may look entirely different.

Turning to Modernizr feature detection suite, we will get the report like this screenshot. It is quite comprehensive, the browser can handle pretty much the common variants of modern web technologies (lacking only WebGL, IndexedDB, and some variants of input types). CSS3, SVG, and Canvas are well supported. Even CSS 3-D transform works well. My favorite is of course blur shadow, something I have implemented ages ago. HTML5 media is also there, though I haven’t done the real homework of investigating the supported codecs and its quality.

Let’s enter the topic of GPU acceleration. As I described in details in Sencha blog Understanding Hardware Acceleration on Mobile Browsers, the use of hardware acceleration falls into three categories: primitive drawing, backing store, and layer compositing. It is safe to say that Harmattan browser does all of these three, beautifully even. As No’am informed us in the comments to my blog post about accelerated compositing, the browser uses the new texture-mapping strategy to composite the layers. We can witness how the browser has no problem handling various CSS3 animations.

There are of course rough edges here and there. Since there is still some time until the software stack is finalized for the ultimate release (of Nokia N9), hopefully by then those annoyances will be fixed. With so much technology burst coming to this slab of magic device, it is a shame that N9(50) will be the last MeeGo phone from Nokia.

Meanwhile, kudos to the QtWebKit folks and the team behind the browser!

  • Kenneth Christiansen

    Thanks for the kind words!

    Would be nice if you could report the rough edges you find so that we can make sure they are fixed in the final version, or soon thereafter.

  • Kenneth Christiansen

    Thanks for the kind words!

    Would be nice if you could report the rough edges you find so that we can make sure they are fixed in the final version, or soon thereafter.

  • Fri13

    I got with Opera Mobile a 269+11 what is not bad.
    But I dont care yet so much about mobile browsers features (of course they are important) of technologies what are not so common or finalized (like HTML5) if the browser just does show standard pages correctly and draws it quickly and offers great usability (zooming, text wrapping etc).

    I have heard a lot of talks now from Windows Phone fans that Internet is biased to Google and people design non-standard web pages for Webkit what causes that IE9 for WP7.5 does not render pages correctly so webdesigners should start design pages correctly for IE9. LOL

    So far I have not seen better HTML engine than Webkit and non-biased. And it is just funny how world can turn upside down. 10 years back and every other was crying that web designers made non-standard webpages what worked correctly on Internet Explorer. Now IE users cry out about standards.

    Btw, Harmattan is not MeeGo, at least what was said by Nokia developers when they renamed Maemo 6.0 to Harmattan. It is not based or delivered from MeeGo anyway. Same Linux OS and same Qt but just bad thing is it is not real meeGo :(

  • Fri13

    I got with Opera Mobile a 269+11 what is not bad.
    But I dont care yet so much about mobile browsers features (of course they are important) of technologies what are not so common or finalized (like HTML5) if the browser just does show standard pages correctly and draws it quickly and offers great usability (zooming, text wrapping etc).

    I have heard a lot of talks now from Windows Phone fans that Internet is biased to Google and people design non-standard web pages for Webkit what causes that IE9 for WP7.5 does not render pages correctly so webdesigners should start design pages correctly for IE9. LOL

    So far I have not seen better HTML engine than Webkit and non-biased. And it is just funny how world can turn upside down. 10 years back and every other was crying that web designers made non-standard webpages what worked correctly on Internet Explorer. Now IE users cry out about standards.

    Btw, Harmattan is not MeeGo, at least what was said by Nokia developers when they renamed Maemo 6.0 to Harmattan. It is not based or delivered from MeeGo anyway. Same Linux OS and same Qt but just bad thing is it is not real meeGo :(

  • Donald

    @Fri13

    I agree the branding issue is a pain in the rump, especially when Meego guarantees X services will be available and Harmattan does not provide these. (I am looking at avahi for a starter). It is also painful since development (cross compilation) for Meego is so standards compliant and rational and the n9/n950 environment appears to still be chroot based. Nice when it works, painful to dethorn when it spears your bottom.

    Your spammer checkbox reminds me of the form you sign when you enter the states on Visa waver “I do not intend to do any American citizen bodily harm”

  • Donald

    @Fri13

    I agree the branding issue is a pain in the rump, especially when Meego guarantees X services will be available and Harmattan does not provide these. (I am looking at avahi for a starter). It is also painful since development (cross compilation) for Meego is so standards compliant and rational and the n9/n950 environment appears to still be chroot based. Nice when it works, painful to dethorn when it spears your bottom.

    Your spammer checkbox reminds me of the form you sign when you enter the states on Visa waver “I do not intend to do any American citizen bodily harm”

  • Fri13

    [quote]Nice when it works, painful to dethorn when it spears your bottom.[/quote]

    I dont care so much about developers problems to get their MeeGo software work with Harmattan (or later Harmattan software work with MeeGo) as I do care about end-user rights.

    Now the user buys a device what believes to be a MeeGo and so on compatible with MeeGo when other manufacturers takes it when it comes ready to be released.

    Every application what people buy or install to Harmattan needs to be checked is it possible to get for MeeGo device.

    Good thing is, N9 and N950 are last phones what Nokia actually make what are with Linux OS. It does not matter to them does it have a MeeGo or Harmattan, important thing just were they got out of the Intel license and they get money back of N9 and N950 develop, meaning they need to sell few hundred thousands phones to get over it. And bonus for that, everything what they gain with N9 and N950 makes their users to avoid other manufacturers application stores and services because incompatibly.

    Everyone who buys N9 and N950 will suffer incompatibility with MeeGo device and that was one of the key elements what needed to crush Android what is well done when considering the amount of totally different devices.

    But browser can be a savior for many if people use just webapps and not binary ones. In that case it does not matter so much if people just open browser and then wanted webpage.

    Does it give a enough reason to even make developers live harder and users changes to buy apps more likely impossible or much harder? I would say no. No matter how great browser Harmattan has if it is other way incompatible system.

    I just feel sorry how now people talks that N9 and N950 is safe bet to buy as when other manufacturers bring their MeeGo phones, they can just copy apps packages to new phone via MicroSD-card and continue using.
    Such a false hope already because RPM and DEB packaging, and not talking yet the API’s.

    • Jeff

      There’s so much clueless-ness in your post that I don’t know where to begin.
      In fact I won’t….

      I will say though…
      You are totally wrong about compatibility between harmattan & vanilla meego.
      Go read & learn some more, before spewing FUD/crap.

  • Fri13

    [quote]Nice when it works, painful to dethorn when it spears your bottom.[/quote]

    I dont care so much about developers problems to get their MeeGo software work with Harmattan (or later Harmattan software work with MeeGo) as I do care about end-user rights.

    Now the user buys a device what believes to be a MeeGo and so on compatible with MeeGo when other manufacturers takes it when it comes ready to be released.

    Every application what people buy or install to Harmattan needs to be checked is it possible to get for MeeGo device.

    Good thing is, N9 and N950 are last phones what Nokia actually make what are with Linux OS. It does not matter to them does it have a MeeGo or Harmattan, important thing just were they got out of the Intel license and they get money back of N9 and N950 develop, meaning they need to sell few hundred thousands phones to get over it. And bonus for that, everything what they gain with N9 and N950 makes their users to avoid other manufacturers application stores and services because incompatibly.

    Everyone who buys N9 and N950 will suffer incompatibility with MeeGo device and that was one of the key elements what needed to crush Android what is well done when considering the amount of totally different devices.

    But browser can be a savior for many if people use just webapps and not binary ones. In that case it does not matter so much if people just open browser and then wanted webpage.

    Does it give a enough reason to even make developers live harder and users changes to buy apps more likely impossible or much harder? I would say no. No matter how great browser Harmattan has if it is other way incompatible system.

    I just feel sorry how now people talks that N9 and N950 is safe bet to buy as when other manufacturers bring their MeeGo phones, they can just copy apps packages to new phone via MicroSD-card and continue using.
    Such a false hope already because RPM and DEB packaging, and not talking yet the API’s.

    • Jeff

      There’s so much clueless-ness in your post that I don’t know where to begin.
      In fact I won’t….

      I will say though…
      You are totally wrong about compatibility between harmattan & vanilla meego.
      Go read & learn some more, before spewing FUD/crap.

  • what is this i dont even

    Nice to see a fast, standards compliant browser included in an awesome device.

    But that user agent string sucks! apple webit? safari? That means in usage statists we’ll come across as being mac users, or at least safari using windows users.

    They should change it so that it says linux and konquerer. Gotta represent!

  • what is this i dont even

    Nice to see a fast, standards compliant browser included in an awesome device.

    But that user agent string sucks! apple webit? safari? That means in usage statists we’ll come across as being mac users, or at least safari using windows users.

    They should change it so that it says linux and konquerer. Gotta represent!

  • kusg

    Nice post on Qt Phone. Just a quick update, tested some result on html5test.com for N9, the score is 255+, and on IPhone 4GS, the score is 296+

  • kusg

    Nice post on Qt Phone. Just a quick update, tested some result on html5test.com for N9, the score is 255+, and on IPhone 4GS, the score is 296+