At least Alex has brought a little rational thought to this.
Firstly, it is blatantly obvious that the "Browser" that we use today has to actually run within an environment that deals with hardware interaction -I don't think it is being suggested otherwise.
Secondly, lets look at the list of proclaimed Application Service Provider(ASP)/Cloud computing issues:
1) Data Protection & Liability - some data is very important, and very few ASPs (Application Service Providers) provide in depth data security and accessibility agreements - if you are audited, then it is likely the ASP will need to be audited as well. Dealing with Healthcare & Finance information across geographical borders, including embargoed countries can be a real concern.
2) Lock-in - how do you easily migrate away from a chosen provider ? How do you take your customers from SalesForce.com to somewhere else ? etc
3) Lack of direct control.. not being able to push the reset button yourself is frustrating. But with most companies using outsourced data centres... surely you rely on someone else anyway ???
4) Availability - to be blunt about it, most people on this site, and most companies would be very happy to have the kind of uptime reliability of the larger internet based ASP's - especially when comparing the costs.
5) Scheduled downtime - for those of us that work for a global company, this issue is there regardless of whether it is an ASP or not. But not being able to determine outage schedules does make it harder to accept. That doesn't mean doing it internally magically makes that issue go away - it is rare to please everyone with downtime scheduling.
6) Lack of Differentiator - some companies want a killer app that sets them apart from the rest... in most cases that's just salesman crap.. most tools can be very very standard, and benefit from being so.
7) Unfamiliar approach - nonsense.. most enterprise apps are built using a web UI these days - even highly graphical applications (e.g. mapping)
8) Limited UI capabilities - the underlying technologies have a long way to go, but.. are you saying that Office Live, Google Maps, Goowy mentioned above and a whole range of other similar tools are significantly worse than desktop applications ?? Compare AutoRoute with Google Maps, or the MS equivalent... I know which I would prefer. For the vast majority of requirements the internet technologies can *already* support as-good UI's as their desktop equivalents. As this forum is about looking into the future.. I would not bet against internet applications...
9) Connection risks - this is a risk, but consider just how many things rely on the internet to work ? you may be able to update your resume on a client machine,.. but how will you post it to your fave jobsite, or email it to your employer? What if you're *not* at home ? how do you access your stuff then ? laptop ? copy/syncing?
10) It's no good for gaming - er.. WoW... Second Life, etc ? Yes, there is local execution of code, but the data / content is delivered to/from the server... sounds just like serving data/content within a web page... the actual rendering happens locally with that too....
11) Can't do offline.. yes you can, it's just that this area is still very immature - e.g Google Gears etc in fact I think 37 signals basecamp online PM tool supports offline working with Adobe AIR. The point is, that this problem is being fixed as the market matures.
... but what about some benefits ?
a) Easy Installation - type url, register, configure.
b) Easy regular maintenance - it is someone else's job (who specialises in this every single day) to ensure it is fed and watered and running efficiently.
c) Latest version and upgrade path - this can be a concern too if you don't trust the ASP to do it sympathetically, however, the smaller incremental updates they make are usually better suited to not breaking the existing user base compared to traditional software releases where companies tend to be several versions behind. (some for good reason, others because they are lazy or cheap).
d) accessible anywhere - don't understimate this, I have had my entire home network of systems/apps/data available online for several years so I can access anything anywhere - although it's kinda the reverse of the cloud computing idea, the reason I do it is the same.. I don't want to be apart from my data or apps just because of my physical location.. I can access all my systems (e.g. remote desktop) and files/music/videos etc from the top of a mountain on my snowboard if I get a reasonable phone signal..
e) there are more but I think you get the picture..
now, back to the subject....
let's not get too bogged down in the hardware abstraction aspects of an OS just yet, the point most people are trying to get across with this concept is the movement of their working environment to the cloud - instead of it all being localised.
Firstly, current browsers are pretty rubbish - they don't fully support the latest standards (none of them do, though we all know the worst offender..), they are memory hogs - especially with the advent of javascript based apps developed by inconsiderate programmers. So don't think that they will be the deciding factor in the cloud computing vision...
Secondly, what this is really talking about is separating the execution and hosting environment (the client) from the software and content delivery environment (the server). In other words, the OS will still be there executing software (hopefully based on standards), but it will be delivered the presentation and behaviour 'software' dynamically as needed by the server on demand and most likely cache it until the server tells it there is a newer version available (hey, that sounds familiar... updates anyone?). It will then interact with the server for data content. This is how the browser works now.. it caches images and stylsheets and js files... even pages sometimes.. and importantly, it all executes locally... so what's so hard to believe about this being extended to all applications, if that model isn't already there conceptually anyway ?
So, the future is not necessarily going to be a browser that does hardware interaction and removes the need for an OS, but it is likely that the OS will become merely a shell for hosting an environment that interacts with internet based services/ASP's - so you could kinda think of that as a browser ;-) This is the best of both worlds - the centralisation of your 'stuff' and 'run anywhere' type availability whilst performance and hw interaction capabilities of local apps. It may seem like this is a hybrid, but actually it is the browser model just extended a little to improve local machine access (of course.. this opens up the biggest can of worms.. security!)
But, what that will need to do is
1) Intelligently manage caching of delivered software and data - this is where you can cache all your favourite songs (or all if you have the space) to a local hard drive for offline use, but still manage them as if they were in the cloud (e.g. syncing etc) - same principle for online apps - even media delivery services that prefetch your favourite shows etc.
2) Browsers will need to evolve considerably to handle the new types of demands on them
3) Developers and Designers will need to improve their understanding of this new model and how to make it work sympathetically with the users needs
4) Data Security issues need to be addressed
5) Service levels need to mature/become explicit
6) Vastly improved security models -currently it is far too restrictive for legitimate developers, and far to easy for hackers to manipulate (especially IE).
As for standards... I understand the gripe that things don't always move fast enough, especially with the W3C etc, but that is not the only factor for innovation... it was at least 1999/2000 when ALL the current tools for doing whizzbang ajaxy applications was available (I built my first in 2000/2001) - but why was it not until 2005/2006 before the current generation of web apps really started to emerge ? Imagination and technology user maturity play a big factor.
Thing is, the current technology will reach it's limit soon (if it hasn't already in places), so it isn't really good enough for the future vision.. therefore we need to continually demand better standards from those that represent us on standards boards and ensure that we *all* use them to re-enforce the need to continually maintain and improve them in a focused and consistent manner. (for the web developers amongst you: how much easier would it be if all the web browsers behaved the same?! ;-) )
Finally, sometimes the problems we face each day and the repeated imprinting of the status quo make it hard for us to see how tomorrow might bring us something different that might work better, but this forum is supposed to be about looking off into the distance, not down at our feet, so take some time and give this concept a chance - we're actually further towards this than a lot of people think, it's just a case of needing that head slap moment where it all seems so obvious. It's also important to delineate consumer and corporation - businesses will take much longer than consumers to move to this model.
I wonder if any of you actually read all that!
A smile is worth a thousand kind words. So smile, it's easy! 