Coring the browser
Great discussion. Let me first try to clarify a crucial but subtle distinction I was trying to make: the browser “core engine” vs. the browser application.

The Nokia S60 browser application, the thing you actually use and interact with, is this whole picture.
- The “browser core” is composed of WebCore and JavaScriptCore, the open source HTML rendering engine and JavaScript engine.
- The rest of S60 WebKit (and Apple WebKit, Windows Mobile WebKit, etc.) contains the OS-specific porting layers, plug-ins, mobile-specific functions (e.g. WML, which is essential for any mobile browser and will be for an indefinite time) and the browser UI. These parts surrounding the core are what you experience when you use a browser — Firefox’s or Safari’s or S60 Browser’s UI and features. You only notice the core when it’s slow, or it fails to display a page properly.
Now, why do we all love Firefox? Is it the core engine? Or the brilliant UI?
Clearly it’s the UI. No one except developers cares a whit about the core. In fact, my love for Firefox is ever-so-slightly tarnished by the fact that the Gecko engine today is actually a bit slow and a memory hog — no slight intended
Fortunately, Firefox’s UI more than makes up for that.
But, you say, innovation in browser cores has been essential. As Andrea so succinctly commented on my previous post,
On the desktop, by the coming of firefox, we have assisted to a “good war” between browser vendors: opera, ms, apple and firefox are working on standard support and moving forward web technologies… one rendering engine is not so ok for innovation.
Absolutely true for the desktop world — without multiple browsers, especially open source, we’d still be in a proprietary, non-standard IE world. Thank you Mozilla, Apple and Opera for fighting the good fight, and winning. And thank you to the IE 7 team that has embraced standards; browser cores are converging in how they render the web, life is good.
So is it still true that we need diversity in the core? The question for the mobile world is, do we want further “innovation” in browser core engines? I would argue not — at least not in how they render (display) the web.
Again you say, multiple cores should be no problem. HTML, CSS and JavaScript standards should be as stable and complete as possible, and web developers should be able to test a page on any browser and get exactly the same result. But even on desktops today this isn’t true.
Why not? Shouldn’t all browser engines be able to implement standards perfectly and be 100% “compliant” and interoperable? Isn’t it just like a JPEG codec or POP3 client — once the bugs are fixed it’s all fully standardized?
The difference with browsing is that HTML, CSS and ECMAScript create a really complex system, and the standards can never exactly specify the “correct” behavior in every case. It’s just too rich, and there are always going to be tons of ambiguous cases. And don’t forget that all browsers still have to implement IE rendering “workarounds” to handle the billions and billions of “street HTML” pages that are out there, and always will be.
When a system gets this complicated the old approach “standardize first, then implement the standard” fails. What does work is a reference implementation. Even better, a high-quality, open-source implementation, so that everyone can actually use the exact same code. What smart software developer would re-implement an XML parser from scratch when they can use libxml2? Same with OpenSSH and OpenSSL — the open source code is the industry standard.
So it’s clear that we want an open browser core as the industry-adopted reference for mobile browsers. It turns out the choice by Nokia to use WebKit as the core engine for mobile full browsing was easy. Building a new full browser core made no sense (what we were doing before with the old Nokia “Services” browser). Licensing a proprietary, closed engine, no matter how good, doesn’t make sense, since it can never become adopted industry-wide, and one vendor has control. So the obvious choice was open source.
The key insight is that the browser core has become a commodity. The base web standards are not evolving much any more, because they’re good, and stability is far more important than anything else. Being “different” in the core engine is a bug, not a feature — every web page should look and behave consistently across all browsers. And there are two mature, excellent open source browser cores already available.
For mobile devices the choice is between WebKit (WebCore/JavaScriptCore) and Mozilla (Gecko). When Nokia made the decision a few years ago WebKit was about 2 MB, and Minimo was about 10 MB. WebKit, being a newer core implementation that benefitted from earlier work in Gecko, is faster. So really there was no choice — we can’t fit Minimo on current mid- and low-end devices.
Of course that won’t be true in the future — Moore’s law buys us out eventually as memory, processor power, and bandwidth continue to grow. But in practice mobile devices will be constrained for many years. Sure, there will be more and more high-end devices with tons of memory, probably in the hands of readers of this blog — but we want full web browsing to propagate to every mobile device, including low-end phones in developing countries. So WebKit will be the only globally reasonable choice for many years for the major device manufacturers.
Now I hear the cry, “diversity is good!” But I think a strong case can be made that’s no longer true of the commodity, core browser engine.
I propose the Mozilla and WebKit communities combine resources to make WebKit’s WebCore and JavaScriptCore the very best possible open browser core for mobile. Innovate to make it smaller, faster, more compliant.
Then port Firefox for mobile onto the WebKit core engine. Who cares what the core is, as long as it’s small, fast, and accurate? And, I would claim, pervasive.
The big win would be to have the Firefox experience available on all mobile devices, using the exact same core as other browsers, so we can stop fussing with rendering differences across different cores, and focus on what really matters — innovative user experiences. Diversity in browsers is wonderful — give users choices!
Having multiple, slightly incompatible browser core engines in mobile devices actually hinders the success of the web on mobile because it adds headaches for web developers, who are already overwhelmed dealing with several desktop browsers and now hundreds of different mobile device types.
Diversity in core engines is a waste of time.



Frankin, I’m really no expert on this area, but you got me convinced. Brilliant post.
Franklin, I couldn’t disagree more.
The S60 browser, and so by extension Nokia’s version of WebKit, is totally and completely broken as it exists in my N80. Pretty much any real-life website causes the browser to either mis-render, slow down to a crawl or (most likely) crash and burn.
I would sure as hell welcome some competition in this area.
@DanH, are you blaming those problems on the WebKit core?
I think you’re inadvertently supporting my position — on the N80, a limited-memory device, a Mozilla-based browser is actually impossible. That device needs the sleekest, most efficient engine available. WebKit wins hands down (for open-source — feel free to try the competition, Opera Mobile or Opera Mini, which might be quite a good fit on that phone but aren’t relevant to this discussion about open browser cores for mobile).
Now if you want to complain about our port of WebKit to that particular phone… *sigh* You have a point. Unfortunately we’ve learned a lot and improved memory use a lot since that very first version, but it’s impossible to make it available for S60 3rd Edition devices such as N80. Not good news, I know. But not a reason to want to dump the WebKit core, which has just about nothing to do with the problem.
BTW, be sure you have the latest firmware version — there are some fixes that we did get back-ported to an N80 update. http://www.nokiausa.com/softwareupdate
Franklin:
Sorry, I don’t see your point. You say that everyone should standardize on WebKit, but at the same time claims that Nokia can’t even settle on a standard version of WebKit to use on all phones? That WebKit is the answer for everything, except if you want a working browser, in which case try Opera? That WebKit could and should be used on all mobile devices, except on a phone that was explicitly marketed for its internet capabilities?
I’ve tried pretty much every single update to the N80. And the browser has been equally broken in all of them (although sometimes in new and interesting ways). So forgive me for not quite believing in your ode to WebKit.
I must admit, that the browser works quite decently on my N73. I am writing this with it. But does this mean, that there will be no browser updates for the “older” devices like the N73 and N80?
I believe, Franklin was saying that the first version of the adapted WebKit code in S60 was the result of their pioneering work in this area (i.e. using fully capable open source engine on a mobile device). It’s obvious that software improves over time as S60 Browser has indeed done running perfectly previously on my n73 now on n95. Furthermore, what you must understand IMHO that firmware updates can not always help, since it’s very complex to update a browser core engine without affecting other components in S60 ecosystem. Even though it’s based on S60 3rd Edition, it I’m sure cause long hours, days to developers to come out with a decision whether to add (inject, indeed) a better new engine to older models.
Let the best browser win is all I have to say. No one will use Mobile Firefox if all of a sudden none of their sites started working, that is my argument. Webkit will be installed on most devices out of the box and for a lot of people it does a fantastic job. When Johny hears about FF Mobile and installs it only to discover that site ABC doesn’t work … obviously he is going to go right back to Webkit.
Let the best rendering engine win!
Tote:
I’m just pointing out that Franklin doesn’t make sense. On the one hand, he’s saying that “having multiple, slightly incompatible browser core engines in mobile devices actually hinders the success of the web”.
On the other hand, it seems that every Nokia phone uses its own version of WebKit, with obviously very different results. And this is supposed to be a good thing, for some reason that eludes me.
And I really, really hope that you don’t know what you’re talking about. If it is, as you say, “very complex” to update the browser “without affecting other components in S60 ecosystem”, than S60 is even more broken than I thought. What a mess…
@Jukka, Tote has it exactly right. As I understand it, native apps (such as the browser) in S60 3rd Edition - N71, N73, N93, N95, E61, E65, E70, E90, 3250 - unfortunately cannot be updated.
The whole phone firmware may have updates, but only to fix problems, not to back-port later versions of apps.
We will be trying to deliver browser updates and Web Run-Time (widgets) for S60 3rd Edition Feature Pack 1 and later releases. 3rd Edition was indeed our first cut, and as you probably know the default browser for 3rd Edition is still the older Services browser. The Web browser in 3rd Edition is basically an extra — we pushed to get a full web browser into users’ hands as soon as possible.
@DanH, when you say, “every Nokia phone uses its own version of WebKit, with obviously very different results” I think there may be a misunderstanding.
In March 2006 Nokia introduced the first full web browser on a mobile platform, which ships on all S60 3rd Edition (and later) phones. All are based on the same HTMLCore and JavaScriptCore engines, from the open source WebKit.
No other Nokia phones have WebKit — yet! Stay tuned.
Franklin:
Now I’m really confused. Now you say that all Nokia phones with web browsers “are based on the same HTMLCore”. How come, than, that the browser in N80 is unbelievably broken, while the one in N95 (according to testament here) apparently works?
Re the possible misunderstanding: I (obviously, I thought) meant “all Nokia phones with web browsers” in my earlier post.
@DanH: it’s not the core that is the problem on N80, it’s the limited memory on that device, and it may also be that the N80 phone has an older version of the WebKit code (Browser UI, Browser Control API, OS Adaptations, Memory Manager, etc. — see the picture above) than other 3rd Edition phones, since it was the first one.
The N95 has our much-improved 3rd Edition FP 1 WebKit code, which still uses the same core that you have in your N80 (perhaps with minor improvements to HTML display, but nothing that affects browser stability).
I sympathize — it’s always frustrating that newer devices have more features than older devices, or in this case a better and more stable browser UI. As I suggested, if you’re unhappy with N80’s web browser you can try the alternatives as a workaround. But again, this has nothing to do with the discussion about browser core engines.
I hope this clarifies what I mean about the power of sharing a common browser core, distinct from the value of innovative UIs, such as iPhone Safari today (same core as S60), Motorola’s latest Linux phones (same core), and potentially Firefox in the future.
OK, so we actually agree that Nokia already uses multiple and mutually incompatible web browsers on its phones? That means that web developers still have to test every single device to make sure their pages work (or, more likely, decide that this is too much work and ignore them altogether), doesn’t it?
I’m not at all frustrated by newer models having more features. But I am a bit frustrated by the fact that my phone doesn’t work as advertised. I don’t really care which part of the N80 browser that is broken; broken it is, and thus I would welcome some competition and alternatives.
@DanH, as to having multiple browsers on the same device: when the first set of S60 3rd Edition devices came out, then Nokia left the old Browser as the built-in Services app on the device. The new open-source Browser could be added as an add-on to those (now a bit old) phones. The main reason for not including the new application from the very beginning was that the new Browser was not able to handle WAP pages, whereas the old one was. In that sense, Nokia provided multiple browsers, although one of them as an add-on.
Then as time had passed they added the capability of WAP browsing to the new Browser app so that there is now only a single browser on each new S60 device.
I didn’t really get what you meant on “mutually incompatible“. If you meant the aforementioned two browser variants, then indeed one couldn’t replace the other, since at their heart they were totally different (browser core engine and a lot more). If you meant one newer version written for a newer device family not being able to replace an older version originally introduced in older models, then may I ask: what is surprising in it? If you’re in the software industry, then I’m sure you know that keeping track of various versions of the same software, their dependencies, how a version up/downgrade affects dependent components, etc. is really a painful and not-so-easy task. If you’re even a little bit familiar with Nokia’s practices (well, at least S60’s) how they’re trying to keep compatibility (let it be source, binary, data, etc.) from one version to another, then you rather respect their effort than blame them.
Franklin, the past decade has disproved your argument. Internet Explorer stagnated through lack of competition, which led many Web authors to rely on its quirks, which meant the Mozilla and WebKit teams had to spend time on bugward compatibility with IE6 that they could have spent on implementing more features useful for new Web pages.
This was not just because Trident was closed-source; the IE7 team obviously had the benefit of starting their work from the IE6 source code, but had much the same problem of trying to retain compatibility with IE6 while improving CSS support.
The point is that having a single rendering engine — or even only two or three popular rendering engines, as we have now — makes life easier for authors in the short run, but is harmful for the Web in the long run. Authors rely on bugs and quirks in those engines instead of writing to the standards, making it harder to fix those bugs and add new features later on.
It is doubly strange that you should make this argument for the mobile market, because the mobile market is the most obvious counterexample to your other main point, that “every web page should look and behave consistently across all browsers”. For example, how form controls should look and behave depends on both the input devices available (keypad? stylus? touch screen? trackpad? microphone?) and the graphical environment if any. Which DOM events should be supported similarly depends on the input devices used. The appropriate default size for heading elements, relative to body text, depends on the size of the output device. And how zooming should work, if at all, depends on the size and display resolution of the output device. All these things vary widely across mobile devices.
Finally, if you are sure about your claim that “standards can never exactly specify the ‘correct’ behavior in every case”, the HTML 5 working group would appreciate you providing specific examples, so that they can fix the specification accordingly.
“Now, why do we all love Firefox? Is it the core engine? Or the brilliant UI?
Clearly it’s the UI. No one except developers cares a whit about the core. In fact, my love for Firefox is ever-so-slightly tarnished by the fact that the Gecko engine today is actually a bit slow and a memory hog — no slight intended
”
Good point… This is why I think the new Mozilla intiative will lead to a new Minimo disaster. The whole business plan is based on future devices being more powerful than todays (> 64 Mb devices…). The fact is that more memory is not necessarily what all phone manufacturers want (due to increase battery consumption etc.).
The WebKit development has been good in this sense, and I’m afraid that you will have to learn the Gecko people a trick of two.
I would gladly trade my “older” N73 to a newer model with newer generation OS and software, but there is no real successor for it: a candybar with a good camera. Hopefully the N82 will be released soon
Dear Franklin, I have decided that I will try to comment as objetively and fairly as I can.
Before you get lost in my lengthy comment, I state here the most important message of my post:
In my experience the stability and memory handling of the browser depends more on the memory handling of the device than that of the browser core, see: E70 & E61i. In theory both are FP0 devices (although I would think the E61i is FP1 in FP0 clothing) the E61i is a much more stable browsing machine as it is a more memory friendly device. (running for days without rebooting and still having ~20MB of free RAM… Although I still prefer the E70 for the large screen resolution and more comfortable keyboard I just reboot it daily…)
Now the rest of the message:
You have started Yor entry with a statement: “great discussion”, but you must be aware that there is a topic which have generated a large wave of interest - many bloggers jumped on it too - but for several month we have not received much comments - and answers - from the browser team. The topic in question was the stand alone browser.
- Can You please clarify it in light of your entry: is the standalone browser possible? (or now that you stoped developing the core for FP0 that is the end of the story for the browser in FP0?)
You meditated on the issue of what we expect from a browser. I agree that we would like reasonably similar page rendering but it is not a catastrophy if pages look a bit different. What I consider more of a problem is that I am not able to update plugins (e.g.: to use Flashlite 2.0 and 3.0) with my S60 browser
and neither am I able to save web pages!
Please look at the mobile web server blog at S60.com . It hits me that we are able to edit web pages and create web pages on an S60 device, we are able to run a web server - since Friday in ad-hoc mode too in the middle of nowhere - and than we look at your trully revolutionary and beautiful browser and - I AM LOVING YOUR BROWSER - and we cannot save web pages… now what is that?
It is certainly not about the core of the browser…
I tell you what I belive it is: politics…
Let’s make it clear: I do not blame You! Or more clearly: it is not You and your team I blame. I blame those decision makers who have listened and decided not to act on what they have heard.
Look at Tommi’s Beta labs and read why people stand by it. And than look at the requests and questions about the browser which never even got answered… To put it in light of that, I see this behaviour as the total oposit what Beta labs stands for. I am sorry if it sounds too harsh and let me dampen the taste of it by stating again: I love your browser and I wish you would support my device as promised by the sales contract: 2 years of support. ( I am nearing the end of first year and hearing that you abandoned the FP0 browser, while Tommi said I cannot get FP1 and 2? What does it say about the support…?)
Now I see I could go on and on for hours crying here on your shoulder, but let’s do something more useful. Let’s acctually discuss what should be and can be done. I hope that at the end of the day your words: “great discussion” will become reality about these topics also which I so much wish we would talk about.
You and your team are leaders! I truly believe that. I think in many perspectives you even beat the iPhone browser. That is the reason Opera mini is copying you and trying to catch up with you. And here is the bad news: if you will not act on your user’s comments you will be cought and will be overtaken. Be it Opera or Firefox, meditation about the core will not save you from that happening. Offering a roadmap for your users however will probably keep you up front…
Thanks and Regards!
Aron
So…
Stefan Constantinescu:
There’s just a small problem with your “site that doesn’t work in Firefox” comment, namely the fact that Firefox (Gecko) works on far more sites than WebKit!
Hey Aron!
Actually, Opera Mini is not copying the S60 browser because the S60 browser was not the first browser using the overview and zoom concept
Just FYI!
Yesterday Nokia released N810, which has an internet browser but no phone. They have replaced Opera with Firefox as the browser. Why aren’t they using Safari if Nokia has so much commitment to Webkit?
To Franklin: after reading the Firefox people’s statements it semes you were right. They do not seem to go to the mobile market, but they wait until the mobile market evolves to their system requirements…
to Miffit:
I meant the PC like experience on a mobile, with a mouse… That is the thingy copied by Opera mini which closes the gap slowly…
So did Nokia bring the PC experience to mobile with the mouse first, or was it someone else?
and by the way I have nothing against Opera mini copying the good stuff… That is evolution…
Best Regards!
Aron
Mouse cursors have been available on many types of devices with small screens, so it’s not like Nokia is really innovating. I don’t remember the name right now, but it had been done before.
Dear Miffit,
I think we must give credit where credit is due!
You might have seen a “Full Web” experience somewhere with a mouse on a pocket computer, but I did not. I think such thing did not exist before and I might risk to say does not exist even now outside Nokia. (except now, with Opera mini having the mouse) Please feel free to name a pocket computer with a full web experience and a mouse available today… I am really interested. The N800 and other touch screen devices do not count to have a mouse…
To me, you not being able to name the device which migh have had the full web with mouse before Nokia, proves that at least Nokia brought this technology to mainstream on pocket computers… But Nokia may acctually invented it on phones first…
Nokia deserves credit for an experience unseen before. I was really hunting for full web through WLAN in a pocket computer and when I saw the E70 in 50% zoom with the mouse I knew I have found a solution…
After seeing the speed improvement in Flash lite 3 I have hope that one day I will get an upgraded browser for my E70 with you tube, and more stable browsing experience.
I truly belive that the E70 is revolution in itself and Nokia deserves the credit for it!
Hello Franklin,
your point about the browser core seems to be justified and criticized at the same time if we look at the upcoming Google operating system and its browser:
1. It will have webkit as the core, so point for you.
2. However they have tuned the core to make it quicker-some say- and so a point for core tweaking reasoning too…
or do you think that the Google changes to the core could be directly applied to the S60 browser… As it will be open source?
how about making the S60 browser open source? I am sure we would be watching youtube on S60v3 in no time…
Would you please comment if it’s possible to install plugins in a Nokia phone with S60/Webkit? Are there any examples available?
@Aron: Thanks for the comments. We’re thrilled that Google is now able to show WebKit on the Android platform — the Nokia team helped them get started, so congratulations to the Android developers! Same to the MOTOMAGX team, which also uses WebKit (Motorola’s new Linux platform). And of course we are all grateful to KDE folks who created the core, and Apple’s team who put so much effort into it and created the first WebKit and helped the Nokia team get started.
So now there are 4 mobile platforms based on WebKit for the browser: Nokia S60, Apple iPhone, Motorola MOTOMAGX, and now Google Android. Adobe uses WebKit in AIR: http://tinyurl.com/y3ug68 And more to come…
The Nokia S60 browser team is right now moving our development to the latest “tip-of-tree” version of the WebKit core, so all of us will be contributing to the same core code, and benefiting from all contributions.
> how about making the S60 browser open source?
The Nokia WebKit for S60 is open source! See http://opensource.nokia.com/projects/S60browser/index.html. It is straightforward for any developer to build and develop it in the free S60 SDK, and contribute enhancements to WebKit. It’s not yet possible to build a version to install on an S60 device, but we’re working on it.
> I am sure we would be watching youtube on S60v3 in no time…
Actually that depends on Adobe Flash Lite, not on the browser. S60 devices already ship with Flash Lite 2, but that doesn’t yet support video. But version 3 will, and has been announced: http://blogs.s60.com/seeintos60/2007/10/flash_lite_3_comes_to_s60.html. I got to try it on a prototype today, and I could watch my son’s YouTube videos
It was so cool to be able to watch ANY video, compared to just being able to watch the few top videos that have been converted specifically for a mobile platform, which other mobile YouTube solutions are limited to today.
@David: The S60 browser supports Netscape plug-ins for showing specialized content within the browser, and it ships with plug-ins for Adobe Flash Lite, SVG-Tiny, and audio player, but today these must be pre-loaded in the browser, so new ones can’t be user-installed.
But can you clarify what kind of plug-ins do you mean? We’re always interested in what users want.
Thank You for the detailed answer Franklin!
Just a “short” feedback for you:
It was great to read about the cooperative spirit on the webkit core between the S60 browser team and all the other “big guns” you mentioned. Good stuff! Clear and fair cooperation-competition for the good of all. Sounds great!
About the S60 browser being open source:
You already concluded in your post that the S60 browser cannot be compiled as stand alone application.
I agree with the message behind that statement that for a real open source program it should be possible to compile it and load it on a device as a stand alone application. You must be aware of the publicity and all the discussion and all the promises about the stand alone S60 browser which is yet to be fulfilled. The stand alone browser is warmly awaited…
And with this statement we have arrived to the last point: integration of plugins like Flashlite 3.0 . I have Flashlite 3.0 Beta running on my E70 just fine. It is significantly faster than 2.0 and some of the flash games just become more exciting and more enjoyable. Adobe stated that this version does not yet support the browser integration…
But let’s be fair: who will decide if this will be available for S60 V3.0 or not? The official statement says that Flashlite 3.0 might be coming to new Nokia devices in January next year.
So will it be Adobe who will decide about the S60 V3 availability? Will it be Nokia who will have to pay license fees to Adobe to have it? What is the business model behind the plans?
I do not expect you to answer these, I intended them as “rethoric” questions. My point is to hint: if you will provide a real open source browser - stand alone that is - it will be possible to integrate plugins - just like Flashlite 3.0 - in a “flash”.
Than it will happen and it will be available quickly.
Flashlite based YouTube on S60 must be really cool as you wrote. However it is only the top of the iceberg. A “true” open source S60 browser might just be the thing that could “rocket” S60 as an operating system to competitive levels with the new challenges which emerged over the horizont recently. (Google OS, “spreading” full web experience, etc. …)
I hinted it so many times on the S60 blogs that it must be boring already: In my opinion, playing the S60 browser card right could mean the road to the long term glory or the early demise of S60-s domination of the smart phone market.
Your browser is a little miracle - especially on the 416×352 screen of an opened E70 at 50% zoom - and I wish it would spread and change:
-how people feel about the Internet in their pocket…
Acctually I guess that is what Nokia is intending to achive… as an internet company selling mobiles… I wonder what level of strategists will have the final say in this matter…
Best Regards!
Aron
A short correction to my not so short comment bellow:
“In my opinion, playing the S60 browser card right could mean
* the difference between *
the road to the long term glory or the early demise of S60-s domination of the smart phone market.”
T.: Aron
Hi Franklin,
with respect, and recognising that I work for a maker of an alternative rendering engine, I think this is a lot of nonsense, for two reasons.
First, Web standards are not finished - and in many cases WebKit’s implementations of them are not that brilliant (although it is definitely one of the better engines, it is a long way from perfect). More fundamentally, WebKit is itself forked, and forking is natural in a healthy competitive environment that still allows innovation.
Web standards are not stabilising at the development end. SVG is making major inroads (especially in mobile) and providing an open alternative to flash that anyone can implement (Flash itself is still developing). Yet WebKit is well behind the leaders in SVG implementation. (Nokia, like most current Opera mobile releases, uses a plugin not the WebKit Core). Video is becoming a very important part of the Web, but it seems that the developers at Apple and Nokia are not getting any encouragement to work on Open Video standards so people have to wait for Mozilla or Opera, or run Flash outside the core. ECMAScript, HTML and CSS are all under active development, and while WebKit does a great job at some parts of these specs it is behind on others.
WebKit is also not very compatible with IE - on desktop it is often the least compatible of the major rendering engines, so having it on all mobiles would be guaranteeing a serious split between the web that people can use on mobiles, and the one they can use on their desktop. How can we afford to ignore *the* lesson from WAP and propose to split the Web again?
And WebKit is no longer a single engine. It is a codebase that forks and twists, and as it is picked up by more and more developers it will fork and twist more. Imagine for a minute that the complete Safari and Nokia s60 browsers were actually open source. Can I really take the rendering engine code from each one and drop it into the other? And into Konqueror (where the engine was developed) and Android? If it is ported to half the platforms Opera runs on by different organisations over the next 3 years, would you expect it to be easier or harder to interchange the core engine code used by each project?
We have seen what happened on the “desktop” Web when many independent browser projects started moving to the Trident engine at the beginning of this decade, and how much that held back the long-term development of Web technology. While certain things became common, such as the use of XMLHttpRequest as the basis of “Ajax” applications, Microsoft now claims that it is almost impossible to change the Web, having dragged for 5-odd years on even fixing bugs.
That happened with an engine that could not easily fork into a new incompatible version (nor, of course, could you port it). Are you seriously suggesting that we can achieve that stability by all working on the same engine? For that matter, do you really propose that people simply give up on the features of firefox available in Gecko but not in WebKit, such as building XUL-based extensions? (I might not believe that it is the best way to make an extensible browser, but I don’t see that as a reason to try and stop it). Or are you proposing to add XUL to WebKit (in some way that keeps it small)?
The standards development you celebrate at the start of this post picked up precisely as the variety of options available increased over the last couple of years - both by opening up the desktop platform, and via the rise of mobile and device browsers making that less of a monopoly platform to begin with.
Either the diversity is a good thing in general, or it isn’t. If it is, it is OK that Apple and Nokia don’t actually always use the same code-base, nor talk to each other about the design decisions that will have an impact on whether it is worth the investment required to converge. They can base projects on whatever they like (Nokia is also shipping mobile devices with Gecko - how does that reflect the idea that WebKit should be a standard?). But I believe we should keep picking the best codebase for each project, and continuously raise the standard expected of a rendering engine. After all, if we need to stick to a single browser (to rule them all and in the darkness bind them) forever, why not just use IE 6?
It seems pretty obvious that various engines will keep developing, and that making the Web work better depends on us keeping them developing and developing in competition and racing to the top, rather than trying to stagnate and stifle that development in a race to the bottom. Real and active competition is important, and is part of the reality. Just as Webkit is the Open Source darling today, giving Gecko a shove, Nokia is hedging by shipping Gecko on a mobile device that could also run Opera (but it is unclear Nokia could have shipped Webkit on Linux), while PocketIE and Opera both ship on Windows Mobile, and various browsers including Opera already ship on a couple of dozen other platforms, and the Web keeps developing.
Vive la difference
There may be more to this than just diversity in engine code - IMHO there is also diversity in development models to consider, and here the jury is still out on who should set the standard…
The current state of the S60 WebKit tree in the last few months makes me a bit worried about the approach of a single commoditized browser core: it seems that there have been no significant checkins to the SVN repository since this Summer, while the tree has been broken (http://discussion.forum.nokia.com/forum/showthread.php?t=109899) for external contributors since May, and remains tied to an outdated SDK (S60 3rd “original”).
If this engine were “the only game in town”, I believe one of two things would happen:
a) Much bigger pressure from the community to get things fixed more quickly, or
b) Blocking of many lesser “dependent” projects when support by a major contributor (here, Nokia) dries up, even temporarily
One would hope for a)…
I think the suggested approach of a truly shared engine could only work if it is based on more than just token openness, and would probably require very carefully controlled branching and stabilization policies to allow for, say, the iPhone and S60 browser to continue to evolve from the same tree, rather than being essentially diverging forks that are largely owned by their respective companies, but attract little community involvement.
ciao marcus
Hi Franklin,
If Nokia supported installing the new browser on phones it still sells, like the e61i, you might have something.
However, since the new Nokia browser isn’t available for my e61i, I’m shifting to Opera, which continues to support smartphones like mine. Opera is able to do something that for me, is critical. Nokia can’t, and that’s good enough reason to have more than one browser.
Hello,
You must know by now that “emTube” is out providing FULL YouTube access to S60 with the option to save the videos. This means Flash Videos are watchable from S60 phones with a separate application.
Here is my opinion I just wrote to a blog about emTube:
————————————————
Perfect application! This is a HUGE mileston in S60 (and in mobile) history!!!
———
Fantastic application! Works perfect on both E70 and E61i, both WLAN and 3G. Having YouTube in the pocket has been a dream come true for me. A BIG Thank You to the developer!
Especially the saving option just simply changes the perception of S60 devices. How does the iPhone look like now?
Just think of it guys: S60 V3.0 FP0 with youtube support!
This is just simply far better than we could have expected from any official source.
Funny thing that Flash lite 3.0 developer edition just died (expired) on me on the same day I got this application. (although “time travel” helps to run it occasionally) And chances are that Flash Lite 3.0 is not gonna come to S60 V3 FP0…
But don’t you cry! We have YouTube now…
———————————————–
A question to the browser team:
Do you think that we will never get FlashLite 3 in S60 V3 FP0?
Thanks & Regards!
Aron
E65 user here. What puzzles me is, you put “Download!” to devices “desktop”, every kind of application there and yet there is no “Opera” entry.
Firefox or Webkit? What about NEITHER. Webkit can look fine on the overpriced iPhone but not on my E65. I tried to get used to the “S60″ browser and in an hour, I ended up going to opera.com with it to get the latest Opera.
OK, Nokia may have decided to go with Webkit but please don’t do childish things like “hiding” Opera. If you look enough, you can even find a $100 VNC for S60 on catalogs, every kind of still not disciplined overpriced software but no Opera.
What is your problem with Opera?
I can stand to Apple Safari and Webkit memory issues, performance issues, display issues on a Quad G5 64bit CPU/OS X Leopard but on a Symbian phone? Give me a break.
Firefox or anything related to them have no chance unless they somehow manage to discipline their developers about “kitchen sink” and “amateur coding”. As far as I know, all these years, it is impossible without changing the model.
S60 browser is a huge mistake, Nokia is an Enterprise/Consumer/Business/Whatever manufacturer. You don’t have the luxury to put a protype screen to your every phone at sub $200 level and expect user to wonder around on “real” webpages with arrow keys. They are Apple, they can do it.
If you don’t like Opera, fine. Just stop hiding it from your S60 _CUSTOMERS_.
As an answer to praising Opera…
I do love the S60 browser and wish I could acctually have the best version available… but it is denied from me… (E70)
Interesting news on the browser front:
New Opera with flashlite 3 is only available to operators… Why why why…?
A new browser is on its way to change the landscape… I will write the name here after it has arrived…
Please S60 browser team, give us the latest browser.
Thanks & Regards!
Aron