![]() |
Nokia Web Runtime developer questions
Do you have questions about Nokia Web Runtime in Maemo? As announced in the Maemo Summit, it's coming for Maemo 5 and the Maemo 6:
We have still some months to go. Now starts to be a good time to share questions about this developer technology, so we can fine tune the developer documentation. Nokia Web Runtime will be landing on Maemo and Symbian (S60 had it for a while but the new generation based on Qt and WebKit is a much more powerful beast). Web Runtime will be positioned as an entry point for cross-platform development and the expectation is to have the majority of developers using this technology, leaving the native Qt based development for specific and justified cases where more complexity and performance is needed. In fact it is very possible that some of you considering Qt now for cross-platform development will end up using Web Runtime instead. It is also possible that some of you power users not thinking of learning C, C++ or even Python will end up giving a try to the Javascript based Web Runtime, turning yourselves into developers as well. So please, share your questions and thoughts here. I can't promise any answers soon but I can grant you that such questions will be taken into account when writing the documentation, helping us to bring the first Nokia Web Runtime releases for Maemo with documentation more suitable for your needs. Since the Nokia Web Runtime is a cross-platform technology, most of the documentation will be just as cross-platform in itself. However, depending on your feedback we might have some content in the Maemo Developer Guide providing the extra bits interesting to Maemo developers, linking to the original and independent Web Runtime documentation for the rest. |
Re: Nokia Web Runtime developer questions
Is it possible to disable the Web Runtime on an individual device?
|
Re: Nokia Web Runtime developer questions
Mmm this is like asking whether you can disable Hildon on an individual device. Why would you do that?
PS: alright, not a good example since Hildon is providing the Desktop as well. Let's say that it's like willing to "unable" Python (in an hypothetical case where Python would be available and pre-installed). Btw, if in the future there are pre-installed widgets/apps developed with Web Runtime, "disabling" it you loose those apps. Why a user would like to do that? |
Re: Nokia Web Runtime developer questions
Will flash be supported in the n900 web runtime?
If not, will a js interface to phonon or similar be provided for multimedia capabilities? This would be preferable anyway, and would be the only way such apps could work on s60 I imagine. Any timeframe for when this will become available for Maemo5? |
Re: Nokia Web Runtime developer questions
Quote:
Web Runtime widgets would be no exception. And given the additional overhead (particularly on the GTK based Maemo5), I'd likely be even more apt to try to disable these until they prove useful to me as a user or developer. This concern primarily applies to widgets though, I don't really desire to disable the runtime, but I would be less likely to use a Web Runtime based widget due to the potentially significant overhead. For an application, this does not bother me. Will the visible/not-visible signals sent to hildon desktop widgets be accessible to Web Runtime Widgets to prevent unnecessary battery drain? |
Re: Nokia Web Runtime developer questions
I *think* Web Runtime will be only opt-in in Maemo 5: you will get it only if you install something using it.
In Maemo 6 it will be pre-installed as official runtime, next to Qt that will be the official native environment. All the rest (including GTK+) will come only when users install apps depending on them. There is a timeline at http://www.slideshare.net/santtuahon...ia-web-runtime (linked in the first post). |
Re: Nokia Web Runtime developer questions
What about using common js libraries (ie. jquery). Will you need to have it a part of your local "widget" or will there be some ones available system wide? I'd hate to have 5 widgets all using a common library and each having to load its own copy of a single library.
|
Re: Nokia Web Runtime developer questions
I'll repost my questions from Maemo Developers here:
Quote:
|
Re: Nokia Web Runtime developer questions
Quote:
Firstly I am actively checking dependancies for Python at present as my personal preference is to avoid it like the plague. I am not a fan of Byte code and virtual machies, especially on a mobile. If this is being released for N900 I seriously hope it comes with a hge banner on associated apps. If JScript and the bundle of security issues associated with it are bundled in with Maemo 6 and no way is found to disable them then I will be dumping the platform for development and end use. I am all for people having the choice to use this technology but forcing it on users smacks of Steve Jobs and MS. Thanks but no thanks. Short summary: by all means develop the sub-systems but don't force us down the Android route. If I wanted an Android machine I would have bought one for much less cash. |
Re: Nokia Web Runtime developer questions
Well, Python apps are about 6+ MB in Application Manager. WRT apps will be 10+ so they will be easily recognizable too :D
|
Re: Nokia Web Runtime developer questions
Quote:
Thans for beig so civil in response too: so much more friendly here than OB seems to think! :) |
Re: Nokia Web Runtime developer questions
Thanks for the info qgil
Will it be possible to disable same-domain restrictions in web runtime apps? i.e. will it be possible to perform AJAX calls to external domains from within a web runtime app. Still really curious about multimedia access from web runtime, what (if any) will be the preferred way to play audio/video? Is there any documentation available for this that isn't a slideshow? |
Re: Nokia Web Runtime developer questions
Quote:
There is deeper documentation there including API docs. Although the Web Runtime 2.0 coming to Maemo is more complex, reading about S60 1.x Web Runtime is useful for starters. We are writing the documentation for 2.0 and this is precisely the reason of this thread. :) I was expecting a bit more of developer questions, honestly. I'll try to find some answers to the technical questions in advance once everybody is back from holidays - myself included. :) |
Re: Nokia Web Runtime developer questions
Quote:
Will there be any way to integrate with the current Maemo theme inside a Web Runtime app? Like a dynamic CSS provided through Web Runtime that would allow me to specify certain classes in my elements to get at the correct gradient backgrounds and colors for instance Will it be possible to embed the Web Runtime in a 'normal' C/C++/Python based Qt application on Maemo, similar to the way you would embed a QWebView? Quote:
|
Re: Nokia Web Runtime developer questions
Quote:
Please don't make Maemo.6 the first step down. |
Re: Nokia Web Runtime developer questions
Quote:
|
Re: Nokia Web Runtime developer questions
What is the estimated performance hit compared to native Qt?
|
Re: Nokia Web Runtime developer questions
playing around with it at a lounge a chick walks up to me asks can she see it. show her youtube and she loves how it looks and behaves like an actual desktop. gives me her nunber and says i like your phone.
|
Re: Nokia Web Runtime developer questions
Quote:
|
Re: Nokia Web Runtime developer questions
Quote:
Quote:
|
Re: Nokia Web Runtime developer questions
On an unrelated note, an N900 user walks into a bar... |
Re: Nokia Web Runtime developer questions
You are wrong. The size in the list is the download size. If you didn't install the dependencies before, they will add up.
Anyway, the point was different. What I originally meant was that if you don't have Python installed, the apps that require it are easily spottable. Now back to the topic. I think the most interesting question is which engine the WRT will use - gecko or webkit? |
Re: Nokia Web Runtime developer questions
Quote:
|
Re: Nokia Web Runtime developer questions
Quote:
A couple of weeks back I was fortunate enough to meet Rajesh (the guy who made many of these slides) and asked if the move to Qt in Maemo6 would affect their choice of gecko as the microB browser engine. I was told that they would continue using Firefox as the main browser, and Webkit would be the preferred rendering engine for web apps. Makes a lot of sense to, gecko is generally better from a compatibility perspective, and webkit is much lighter. Not to mention webkit 'comes for free' with qt 4.4+ already. |
Re: Nokia Web Runtime developer questions
Of course that will mean two browser engines in memory, so they better be prepared...
|
Re: Nokia Web Runtime developer questions
It just gets worse. :/
Quote:
|
Re: Nokia Web Runtime developer questions
Quote:
Quote:
|
Re: Nokia Web Runtime developer questions
I can see that some might see it that way, but it's not really the case. Adding a mandatory javascript app layer to an OS doesn't add functionality, it takes it away (less battery life/performance). You can't do anything new with it that can't be done better without it. I.e. not really a feature...
It's rather like Apple calling the no user multitasking a feature, or the nonremovable battery. Both are "features" that restrict user options. Edit, rather than continue posting off topic: i can see the point that it is a feature to developers in your reply, but would argue that in this case that does not imply a user feature, and here's why. First, battery capacity is the one mobile device hardware component that is essentially stagnant. The only way we get better battery life is by using a bigger battery or making the software or hardware more efficient. Moore's "law" has made a pocket computer phone a possibility in the N900, but we already know the M6 device is going to be using the same SOC--in fact, it's almost going to be the same as the N900 in hardware--so we're really not getting a significant bump in efficiency from the hardware. At the same time, we'll probably see more RAM and hopefully a magnetometer and bigger screen. It seems to me that the N900 has sufficient battery life, but only just. Now, given that, what would your strategy be to evolve N900/Fremantle into a killer device that is going to rule the high-end mobile device world, one that will be light enough to get greater market penetration and have battery life to break into the much larger market of people not specifically looking for a computer? Well, i'd use step 4 to hone and refine the software and drivers so that step 5 can slim down and last longer. So that it actually represents the lean, mean product of 5 steps of evolution, rather than the fifth step in a tech demo random walk. Let's see Nokia's plan: hey, let's throw in an extra layer of cruft that takes up a large chunk of RAM and more cycles. Maybe we can draw developers from Palm, Android, and iPhone so that we can pad out our repo with lots of shiny apps and won't have to use these old boring compiled ones our community has been polishing and refining for a few iterations. By conforming to the rest of the mobile device world, we can really make our product stand out. After all, we have universal name recognition as a provider of great apps, ergonomics, PDAs, and polish. Why would anyone in their right mind not flock to our banner then? Hmmm. My second point was going to be that reducing the barrier to developer entry to that degree doesn't promote useful development or apps, but i don't really think a second point is even necessary. This has all the earmarks of a pointy-haired manager at the wheel, so i guess we can just hold on to our owls and hope for the best. |
Re: Nokia Web Runtime developer questions
Quote:
It's true that 2 different browser engines are going to use more resident memory, and CPU cycles if both are in active use simultaneously. The same is true of including both GTK+ and QT4 widget libraries. I really only think we will see a significant battery hit if developers misuse the feature, and ignore these relevant concerns, the same problems we already see with native widgets and apps. It fits with nokia's stated vision of Maemo, the desktop experience on a mobile. How many rendering engines do you have installed on your desktop? We're still on the cusp of such an experience being at all feasible on devices of this size. But the amount of memory nokia will be able to cram into these is only going to get bigger. |
Re: Nokia Web Runtime developer questions
Its not really the same. Javascript is both slow and hits directly the processor (for a longer time than native) even if lazy loading is used (if evaluation is postponed, it will hit the CPU eventually with the exact same results) and regardless if it is misused or not (you will probably have access to underlying libs to speed up some calculations, but for GUI you're alone with HTML and JS in your hands).
|
Re: Nokia Web Runtime developer questions
It's very hard to understand, why someone would hate the idea getting wrt to maemo. Its cool technology for hacking for example nice looking easy use front ends for web servives etc. Its cool that we have many choices. We all dont want to write assembler to get some simple things done... :) Its not good for every use, but when its used correctly, its nice technology.
|
Re: Nokia Web Runtime developer questions
Just to clarify - I'm not against, just pointing some facts. :)
|
Re: Nokia Web Runtime developer questions
Quote:
Make it entirely optional and i have no objections. Also, nice hyperbole with the assembler comment. |
Re: Nokia Web Runtime developer questions
Quote:
|
Re: Nokia Web Runtime developer questions
Quote:
And it is completely optional in Maemo 5. |
Re: Nokia Web Runtime developer questions
Quote:
|
Re: Nokia Web Runtime developer questions
One thing that I don't understand is that how could wrt reduce battery life if it's not used? Of course it does, when you run apps on it, but you don't have to do that.
If we get good emulator for wrt for maemo and at least same features that it has in Symbian, im gonna bed very exited. I have tested Symbian it worked very well. (I did app which used Google maps and GPS). |
Re: Nokia Web Runtime developer questions
I don't think Flandry is being straightforward with his concerns. I doubt he is worried about WRT affecting battery life. Even if it was shown that WRT had a positive effect on battery life, he would still be unhappy with WRT. My guess is that he is worried that the nature and philosophy of the phone will shift from a Linux hacker & power user device, to a treat-the-user-like-a-baby iPhone-clone.
I don't share those concerns and neither would the many, many people whose lives could be improved (or at least, made a little more fun) by using a device with those abilities out-of-the-box. That's not to say I don't have my concerns. I am quite disappointed to see that WRT will use webkit rather than gecko (on philosophical grounds). So, out of curiosity, why was webkit chosen? |
Re: Nokia Web Runtime developer questions
At least for full compatibility with S60.
|
Re: Nokia Web Runtime developer questions
1 Attachment(s)
Quote:
Getting to the root of that particu.ar issue (being able to tell which apps use the different interpreters and runtime libraries) I would be in favor of a "Language" tag requirement in maemo packages that would let you tell at a glance whether an app is based on python, javascript, C, etc.. |
All times are GMT. The time now is 10:29. |
vBulletin® Version 3.8.8