WebKit2, beyond Google Chrome

Last week Apple announced the iPhone OS 4 SDK, but besides receiving multi-tasking capabilities, social gaming, iAds and more, there was also a silent announcement for WebKit2. As you may know WebKit is the core of Apple's Safari (Mobile), but also Google Chrome, and Android browsers.

After a little surprise for the open WebKit world, the new engine seems to be welcomed warmly. The thing is, just like Google did with Chrome, that Apple worked on WebKit2 behind closed doors, without input from the open-source community. WebKit itself was also created by Apple, but was opened up for all to see and use, making it possible to migrate changes from WebKit into the original KHTML.

The thing is that WebKit2 is more of a name than something like a complete rewrite of every component. The effect of WebKit2's changes are nonetheless significant. The WebKit2 projects aims to deliver a "split process model" and a "non-blocking API".

Of course a split process model must sound familiar. Two years or so back Google announced Chrome which introduced a per tab (or domain) split process for the web browser. This means that some "overhead" would be introduced to have independent renderers of each web site, but would not only mean a much greater stability (if a page crashes, the rest of the browser simply continues to work), but also increased security as everything is separated. Although work on plug-ins is still going on (the plug-in API needs to be adapted for this), they were also separated from the rendering stack, which also found its way in Safari 4 for Snow Leopard and the latest Firefox nightlies. But WebKit2 does it a little different from Chrome, as Chrome actually sits on-top of WebKit to separate everything, WebKit 2 does everything already inside the engine. This approach has one huge benefit that anyone using WebKit2 can use this, think of Safari 5, Safari Mobile (for iPhone, iPod touch, iPad) and others.

Another interesting thing about WebKit2 is the non-blocking API. More and more do web sites make use of technologies like JavaScript through AJAX (or similar with JSON) and HTML5. A lot of processing is done asynchronously and this means that WebKit2 is designed to offer better ways to deal with the problems that arise from this.

As you can see, WebKit2 not only stands on the principles introduced by Google Chrome, but polishes them for Apple's own purposes, where other can benefit from. Hopefully we'll see a Safari 5 build somewhere this year to play with. The only browser that's truly left behind is Opera (IE 8 has some form of process isolation already).

Straight from Chromium comes the ANGLE project

Google Chrome is progressing rapidly and it certainly has been a success. Some even speculate that it was responsible for preventing Firefox the reach a global usage of 25%. Anyway, what's much more important is that Google is working hard on new technologies that may become interesting in the future.

On Chromium, the place where Google Chrome's source code lives, they've announced the ANGLE project, which stands for Almost Native Graphics Layer Engine. Its purpose is to layer WebGL's subset of the OpenGL ES 2.0 API over DirectX 9.0c API calls. As you may know, the last releases of Windows do not come with any OpenGL version bundled, and most GPU manufacturers pore more effort in a good DirectX (games!) driver, than the far less popular OpenGL (AutoCAD?).

WebGL is an effort by the Khronos Group to create a standard for 3D content on the web. You may get flashbacks of VRML or other technologies from the past, but in this case the real intend is to make it hardware accelerated. Imagine playing those Android, iPhone, iPod touch or iPad games right in your web browser without the need for a (Flash Player or Java) plug-in.

By open-sourcing the ANGLE project, Google hopes that other members of the Khronos Group (such as Mozilla and Opera) will join their effort and increase the possibility of WebGL in total as a valid and solid technology of the web. Currently WebGL is present in Mozilla Firefox 3.7 nightly builds, WebKit (not Safari), and Google Chrome developer previews.

Chrome 4.1 for Windows released

Google is streaming the new Chrome 4.1 release towards all Windows clients as we speak. In the coming days you'll be automatically updated if you're running Chrome on Windows. This next version is, as it's number suggests, a minor update, by nice nonetheless.

Still I think this strategy of Google is quite nice and should be adopted by others. Google actually wants you to forget version numbers. In fact you're using Chrome, not really Chrome 4.1 or 5.0. The thing is, if all updates are "forced" to users, you can keep everybody up to date feature wise, as well as stability and most importantly security wise. Reports have suggested that a group of users tend to be slow in updating and may be in danger.

Anyway, back to the real deal today. This next release of Chrome focuses on three major new features: a new translator info-bar (which detects foreign languages and asks to translate it), privacy features (cookies, images, JavaScript, plug-ins, pop-ups), and XSS Auditor (disabled by default).

Of course security and stability issues were also addressed, making Chrome a better experience and place to stay as a web citizen. Do note that Google has published the names and rewards (yes you can earn money) for finding these!

If you have Google Chrome for Windows you'll get the update automatically (within a few days), if you want it right away, go to the about dialog and it should trigger. If you haven't got Chrome yet, you can download it from Google's site.

Google Chrome 5.0 Beta released

While the Windows users are enjoying the fourth release of Chrome, and Linux users were happy with extensions support, the Mac users on the beta channel had to be patient, but that is changing now, at least if you dare to use betas.

With Chrome 4.0 for Windows out of the door, it made sense for Google to upgrade all release to version 5.0, even while the Linux and Mac builds haven't seen their 4.0 release. How so? Because Google is still actively working on both releases to get them on par feature wise with the Windows release.

This time the Linux and Mac releases are first, after a beta of Chrome 4.0 there is now a beta of Chrome 5.0, which is basically a step further in maturing it for a final release (for the first time). This release especially puts the Mac platform in the spotlight as most was already available on Linux. First of all the one feature to get excited about is support for extensions. Now you can use the same Windows (and Linux) extensions on your Mac, to enhance your browsing experience, if you want to. Best of all is Google's security architecture, meaning extensions are sand boxed as well as running in separate processes. This in combination with the limitations in the API should prevent malware extensions, which plague Firefox. Another big feature is the bookmarks manager. I know it sounds basic, but it was lagging from 4.0 and has now seen an implementation on the Mac. Oddness is that it's not the same as the Windows version, but native? Other changes include bookmarks sync as well as the task manager and cookie manager.

Site preferences are missing from the Mac release, so you won't be able to tell which sites are allowed to run scripts like the Windows release, but surely this will be picked up at some point in time. My biggest concern is the use of Keychain Access by Chrome though (see issue 35351). This password manager, which is part of Mac OS X, is used by Safari and other applications to store user names and passwords. In Safari this means that after remembering it, the username and password will be automatically pre-filled in forms that match, but in Chrome it does not work like that. On the Mac you'll need to type the entire user name before Chrome fills in the password, and well, sometimes I have different user names, and typing it completely can be a pain. On Windows this problem does not exist and considering Safari just works flawlessly I hope the Chrome developers fix this for the Mac platform.

Other than that, the release feels solid as before, be sure to check it out if you're using a Mac and want something different than Safari, while using the WebKit engine.

Chrome 4.0 for Windows released

Well, if you though last week's Firefox 3.6 from Mozilla was exciting think again. Today the fine folks at Google released Chrome 4.0 in stable release channel, bringing a whole load of new features and improvements to the normal end user.

First of all you should take notice that we're talking about the Windows release. Linux users who are using builds from the Chrome beta channel have access to most, if not all of the new features. Mac users on the other hand will have to wait a little while longer, although a lot of features are available in the unstable dev channel for the time being. That being said, Google is honestly working on getting all three versions up to speed.

Extensions, extensions, extensions!
So what's so new and great about this release that should get you all excited. Well, you have access to 1500 new features. Yes access, because for the first time Chrome supports extensions. And in the Chrome architecture way, each extension runs as a separate process, increasing stability, security and memory management. Often heard complaints with Firefox that extensions would slow everything down or eat memory can now be monitored from Chrome's task manager (right click in the tab bar). Oh and the nicest thing about them, you don't need to restart, they install in one click and work right away. Of course the extensions range from good to bad, from mature to immature, but just think about it, they've only been available in the dev and beta channels, so a lot of work needs to be done to get those extensions polished. Several extensions to block ads, social networks (Facebook, Twitter) and mail (Gmail, Wave) are available for adoption.

Bookmark synchronization, and alternatives
So is that all, well if it would, it would be one hell of a huge feature to allow features, but there's more! If you have a Gmail account (or Google account if you insist), you can now synchronize your bookmarks. This way you can access them from any computer as long as you use Chrome. The bookmarks are part of your Google Docs account, so you can also access them from there. Of course the support for extensions also allows you to use Xmarks (previously Foxmarks) to synchronize bookmarks between different browsers.

Our beloved others
But what would Chrome be without V8? And so the famous JavaScript engine that ignited with Safari's Nitro the performance war was updated to be even more on the top. Mozilla's Dromeao DOM Core tests by increased 42% in performance over the last stable release and 400% since the first stable release last year.

Support for web standards remains important, and WebKit is leading the way with in HTML 5: notifications, web database, local storage, WebSockets, Ruby support and more. And last but not least full ACID3 pass, due to re-enabled remote font support (with added defense against bugs in operating system font libraries).

Other changes include: enhanced developer tools, Skia performance improvements, HTTP byte range support, "Strict Transport Security" support, and an experimental new anti-reflected-XSS feature called "XSS Auditor".

Google shows that Chrome does not only fly in performance when rendering HTML or executing JavaScript. They litterally throw out new and exciting releases on a regular base using a streamlined process. I believe this release marks the turning point where it can fully compete with the rest of the markt. Mozilla surely will have a tougher opponent now that Chrome support extensions, and for IE, well, that should be a piece of cake. If Google and liverage its own popularity to diminish IE used by the average Joe and Jane, by all means! Of course we all should help open the web and support Google in our own ways. My prediction for this year? Chrome with a (near) 10% market share!

All Windows users will be automatically updated by Chrome (or can go to Tools > About) as all updates are streamed to the end users. Non-Chrome users can switch, of course, easily by downloading the installer.

Experimental HTML5 video support for YouTube

Google may be the biggest competitor to Microsoft on a whole scale of non traditional ways, but one thing is definitely true, they are pushing new technologies where they can.

Where Apple dominated the new wave of touch-screen mobile devices, Android is opening up the market by exposing a similar OS albeit with multi-tasking and customization. In the same approach not pleased with the slow development of Firefox (hey where is that new update approach coming from Mozilla, and why?) they introduced a new way of browsing the web with the fastest JS performance and multi-processes.

Today is the day that they push technology in another way, though with a sharp edge to it. We already know that HTML 5 comes with the video-tag and that there have been arguments about whether support for the different encoders should be part of the specification. Currently encoders don't play a role, and Google opted for the most superior encoder out there, but with a cost.

H.264 is the new standard to be used for Google's latest HTML 5 experiment for YouTube, but the thing is only Chrome (Frame) and Safari support it. H.264 requires that you pay a certain sum, and although Mozilla must have the money (from the Google search deal), they do not support it, heck they only support the open-source OGG format.

Anyway, if you have Chrome (Frame) or Safari, you can now enjoy the HTML 5 video-tag without the need for Flash, and with perhaps better quality at the new YouTube page. You can opt-in here if you have a supported browser.

2010 is the 2012 for Firefox?

Next year marks the year that we'll see the final version of Google Chrome 4.0. On at least Windows and Linux this means a lot, it will be the first time that support for extensions is included. Can Firefox withstand the tide of Chrome?

Currently the Mac version of Chrome is lacking behind in several key areas: extensions support and managing bookmarks. Whether Google will release 4.0 with extensions support remains to be seen, but without it may not yet be up to a fight with Firefox on the Mac, it can however take on Safari.

But we're talking about Firefox as well. Currently it is seen as the world's most used browser (if counting version numbers and not the total of usage per browser). Some small fires have been reported in the past between Mozilla and Google, of which recently Asa Dotzler, a community manager at Mozilla, suggested to use Bing instead of Google due to privacy concerns. Some of the key developers behind Chrome, such as Ben Goodger, were key in the creation of Firefox (and in fact the UI and extensions support).

Why Chrome is getting stronger
So what does Chrome have that might threaten Firefox? Well, first of all it has a strong backing. It cannot be ignored that Google is big, the revenue they generate is a nice injection into Chrome. Chrome itself allows Google to be a portal, not just towards its search engine, but also its services (now and in the future).

Another big plus is that Chrome is new and fresh. Long ago Apple decided to create WebKit, based on KHTML and not on Gecko. Apple, and its core developers, believed that choosing KHTML and adapting it for their own purposes (and merging it back) would be more favorable. Especially since KHTML was much faster, smaller and easier to understand (due to the programming language and architecture). Chrome adopted WebKit as well, but added V8 as a separate JavaScript engine, as Google wanted to push effort in JavaScript powered web applications. Both WebKit and V8 surpass Gecko and TraceMonkey (Firefox' JavaScript engine). But it doesn't stop there, the security model, which involves sand boxing thanks to its multi-process architecture makes Chrome so unique, no other browser fully matches yet.

That is why I think the final and last major feature (next to bookmarks sync) to Chrome, which is extensions support might be the killer blow. Although Chrome's extensions may be limited due to the security model, the most popular one for Firefox to block ads has seen several incarnations already. Whether the more limited model will hamper adoption remains to be seen, at least the developer community seems very active. Chrome already surpassed Opera without extensions support, but if my guess is correct, their market share will be much, much higher once 4.0 launches.

Near future
Currently Firefox can be seen as following the footsteps of Chrome. It was only in 3.5 that, after much delay, private browsing was introduced, something Chrome, IE8 and Safari already had. With Chrome's support for extensions and making it clear that it too has a stricter security model also led to Firefox 3.6's adapting it's extensions' security. And of course TraceMonkey, it is less speedy than V8 and was mostly triggered by the existence of V8 (and Safari's Nitro). Just looking at the mock-ups for Firefox 4.0 (which partially were intended for 3.7 next year), and the per-process effort known as Electrolysis, Mozilla keeps being inspired by Chrome, instead of taking the lead.

While Firefox is currently at a safe distance from Chrome in usage, you shouldn't underestimate how quickly people can switch, especially when it's free and easy. And easy it is, Chrome can import almost anything from any browser. Of course it begs the question if this would be a good development. Mozilla is a more neutral and open party than Google, which knows tons about you through their search engine already, and is of course commercial of essence. Surely you can trust a company which has a mantra to do no evil? Another thing is the diversity of engines, Opera cannot do it alone to be another alternative to IE's Trident or Chrome and Safari's WebKit, they are just too small for that. Gecko may be harder to work with, but it's far from even being a bad rendering engine.

What Mozilla must do is drive releases, quickly, just like Google. Focus on features that matter and don't be afraid to bring new stuff in the game. For the time being the standard feature set of Chrome is very simple, much like its services (what is there is executed nicely). Perhaps integrate some essential extensions, such as Firebug, an ad blocker, or just hold a vote to fill it in. Abandon Thunderbird development (unless someone wants to work on it freely), ICC profile v4 support, put all effort on the new Firefox 4.0 looks, perhaps even abandon Firefox 3.7 development in favor of 4.0 (which must be released next year).

Mozilla can survive Google, Firefox can survive Chrome. Their paths are crossing right now, but that doesn't mean it needs to be. Of course the joined effort for an open web (against the IE lock-in) is the most import thing, but the casual Joe doesn't care, he wants features, and hopefully both can bring that on a reliable (security) and safe (privacy) way.

Which one is browser of the year 2009?

* Chrome
* Firefox
* Internet Explorer
* Safari
* Opera
* Other

Chrome 4.0 Beta for Linux and Mac

The news has already spread across the globe through the means of the internet, but the first beta release of Chrome, which is also right away version 4.0, has been released for Linux and Mac.

Up till now all Chrome releases were for the most popular platform on the planet: Windows. But today marks a new day, one that shows that Google and its engineers are committed to bringing Chrome to the other platforms, mainly Linux and Mac. Of course Linux is quite important for Google as it is the basis of it's upcoming new Chrome OS as well.

However Linux and Mac users should still be realistic. It's an early beta and it lacks a lot of features. For instance the Mac release comes without extensions, while both platforms lack a bookmarks manager, the latest bookmarks sync (through Google Docs) feature, and more. Of course the folks at Google are working hard to make the non-Windows platforms equal in features, but it also means they need time, and a lot of it.

On the bright side it feels solid and does include the well known new architecture in Chrome, using multiple processes for tabbed/windowed browsing as well as the sandbox principle. Of course V8 is included and shows that it is one of the world's fastest JavaScript engines out there.

You can try Google Chrome 4.0 Beta for yourself, while Windows beta users can indulge themselves in the recently opened extensions website.



Chrome tracker


Firefox tracker

Opera tracker

User login