They're looking to the future, not what is possible but what should or could be possible.
I'd much rather have Mozilla working on an "OS for the web" than Google, despite whatever problems Mozilla may have.
It seems to me their mandate is to make everyone's lives better. This looks like a project to define web standards for the future. It also looks like they've got enough to last them for a bit.
In this context, one of the problems that Mozilla has compared to Google is money.
Honestly, for all the money Google has, Google+ isn't very impressive.
Interestingly, about half of that 100 million comes from Google to secure their spot as the homepage and default search.
My first reaction: Great, I'll look again in 2 years when something like this can reasonably be ready. In the meantime I hope the Chrome Phone rumors are true.
My second reaction: So they're going to use Android which brings a lot of non-web baggage that they'll have to strip out. The plus side is that it might mean they can push something out in a year or less.
EDIT: They're not using the Android Java APIs so they will have to rewrite the browser layer, they can't reuse the Firefox Android app. Using Android just for the drivers is a good decision, without a doubt, but this is going to take a while.
Here's an alternative that we could in principle choose: Apps can be delivered over the web, but data is stored locally. If it is backed up remotely, then it is encrypted first. If our app communicates with other users, then it does so P2P instead of through a central service. These steps would ensure the company whose app we use only knows that we are using the app, and not what our data is or who else we are interacting with. Unfortunately, this technology is not very easy with the present state of JS/HTML. I'm not even sure if it is in principle possible for a JS app to create a TCP server. Some quick Googling reveals it may only be possible if you use Flash.
The idea here is to think of apps as being built on web technologies but don't think of them as being delivered like and acting entirely like today's most common webapps.
Beyond B2G, Mozilla is exploring what it means to be a "web technology-based app" and interesting things are already coming of the project and even more interesting things are yet to come.
I really wish this to happen. But unfortunately your next statement,
These steps would ensure the company whose app we use only knows that we are using the app, and not what our data is or who else we are interacting with.
clearly says why it wont happen.
Widgets are zipped up HTML/CSS/JS files so can easily be emailed / bluetoothed between phones. Communicating with other users is a bit harder but HTML5 Device APIs should provide what we need in time.
In summary, the web platform isn't ready for all types of applications yet and because of that combined with the fact that people looking for cheap and simple computers aren't even buying traditional hardware anymore - they're buying tablets. So, Mozilla, why waste your time with this project and instead use those development resources to make Firefox and the web platform better on all of the existing operating systems. Let Chrome OS see whether anyone actually wants something a browser OS.
That's the whole point. The web wasn't quite ready to subsume PDF, until people went and tried to do it, found the pieces that were missing, and got them added.
We expect and hope that we're going to hit a ton of things that don't work today, and that we'll have to make them work and get a standardized API and so forth. I think that's a better way to proceed than to make speculative sky-APIs on standards mailing lists.
We are exactly targetting mobile devices (handsets and tablets), because we agree with your assessment of where things are headed, and because that's where the app action mostly is today. (We want to solve the app-store-for-web problem too, but that's another project.)
This isn't just about the web apps you have today. It's about having your contacts manager, camera, gallery, dialer, SMS app, GPS-integrated maps, launcher etc. be hackable using web tech. That work will help on desktop as well, since many of those pieces are on desktop/laptop machines -- if you write OS-specific code to get to them, and you're allowed by the OS to interpose your version of it.
Maybe you're right, maybe it's a fool's errand. We think it will help the web grow in powerful ways, and make important internet technology be accessible to more user-focused customization, so we're going to try it. That's basically what we do.
I believe Apple's SquirrelFishExtreme work was also going on in the summer of 2008, on a webkit.org svn branch.
Your general point is good: healthy competition helps the web evolve. We got the world we wanted in launching Firefox in 2004. The battle's far from over, what with all the lock-in on mobile devices and in social network sites.
These must be provided by the OS. But various OSes do these differently, some only for native apps. We propose to make every one of these a web-app-facing API, and standardize or use extant standards -- and include security up front and all along, not "add it later".
No one has done this, and saying that you don't have to build an OS does not address how web apps might come to have such device APIs.
What's more, Firefox is locked out of many mobile OSes (I do not mean iOS in particular), but the commoditizing hardware can support a fully open OS and web-based "home" and open web apps environment.
The increasing vertical lock-in and tying among all OS vendors (Android included) and the at best half-open- / delayed-open-source status (ChromeOS excluded, bless it -- but it won't support other browsers than Chrome) are problems for Firefox.
While I am hopeful and rooting for ChromeOS, I also will be rooting for and supporting B2G. While they have different platform targets, moving common functionality to the browser is something they can compete and innovate with.
Having more than one is always a benefit. Even if the particular route B2G takes is not one we care for, we can fork and improve at any time.
But why must there be only one? Monoculture is a problem. Mozilla's mission obligates us to fight it. Friends such as Dave Hyatt at Apple have told me that they want Gecko to keep evolving and competing with WebKit, to keep standards better interop-tested by two (or more) independent open source implementations.
WebKit monoculture (on mobile, modulo numerous version and vendor bugs that make developers pull their hair out) is already becoming a problem. We've seen startups support WebKit-only browsers simply due to the startup's HTML and CSS requiring WebKit-only quirks. Shades of sites that worked only in IE in the early 2000s.
I can say for a fact my Mother most definitely wants this. She's never been technically inclined and finds computers incredibly frustrating.
She has a desktop that she uses 100.00% exclusively for browsing the internet/checking email. As soon as the computer starts the browser opens, and she gets very nervous if she accidentally closes it somehow.
EDIT: Correction, they're using Android for the drivers only. It will not boot to the java APIs, so it won't be the Android Firefox app.
We’re currently aiming at mobile/tablet devices rather than a notebook form factor. We’re looking to expose all device capabilities such that infrastructure like phone dialers can be built with Web APIs, and not only “high level” apps like word processors and presentation software. We also want to provide a stack that's open down as far as we can, and not just the browser-like top layer.
Are Mozilla working with the W3C or doing their own thing?