[Wild Conjecture] Chrome OS as I imagine it
- 07.11.09
- Greater Internet, Linux, OpenSource, chromeos, google, Linux
- 10 Comments
Google’s announcement only drops a few hints here and there, and the world just went crazy with speculation.
Glancing through my feeds, some comments seem to be centered around the theme “you’re just a web application peddler, what makes you think you can handle the complexity of maintaining a full-fledged OS?” (Sorry, I tried looking for references to where I read these comments but I can’t find ‘em right now).
Well, a husband and wife outfit can do it. Any other questions?
But still, the question of how would Google design its OS is a pretty interesting question. I kind of agree to this statement in their announcement:
However, the operating systems that browsers run on were designed in an era whe
ren there was no web.
Some may see it as a targeted broadside at Windows, but I see it more as a reflection of every single desktop system I’ve used thus far. Integration to the web from the desktop gets as far as a browser window running on your desktop and a few plasmoids/widgets/gadgets drawing on public APIs on social networking sites. At the end of the day, the mentality is still “I’m a standalone desktop, connected to the net”.
So here’s my interpretation and some pure conjecture about how Chrome OS would be designed, based on the clues they’ve left behind:
The software architecture is simple — Google Chrome running within a new windowing system on top of a Linux kernel.
Nice to see that the kernel itself is still a sacred cow. Means that Google wants to remain abstracted from the hardware, for the most part. The new windowing system was a cause for concern for people seeking congruence with the status quo in Linux. Yes, if Google were to come up with it’s own “ChromeX”, it’d probably break compatibility with every single windowing toolkit in town.
It probably doesn’t make a whole lot of sense; unless they really have no use for “windows” in its current state. Remember, Google is “just” a web application peddler. Practically every single one of their current application assets is a web application. So my guess here is that the new windowing system would be a drawing engine running on a bare metal kernel doing nothing but to render web pages as fast as any desktop system renders applications right now.
Think about it: your current desktop view as a web page? That’s already been done to death by now. Click on the shortcut to mail? A new <div> tag pops up with Gmail embedded within. The same happens for Facebook, Twitter and any other web-based app you care to remember. The thing to remember is, all these will happen beyond the confines of a browser window. The web app is your window to the world in Chrome OS.
Yeah, that’ll alienate all the traditional window-based GUI developers for sure. But think a while: is the population of web developers any smaller than that of desktop application developers? You’re swapping one developer community for another, and I can tell you a HTML “Hello World” app is a helluva lot easier than a QT one. Complex concepts such as IPC would no longer exist as we know it, replaced by a rather familiar (to a web developer) Javascript cross-domain eventing model.
And however screwed the web is right now in terms of web standards currently, is it any worse than what we have in the traditional desktop world? We’ve got Windows and Linux. And within Linux, we’ve got KDE, Gnome, XFCE ad infinitum. And none of them even look nice when you cross ‘em, if you can at all.
Some people accuse of Google of randomly throwing out toys everytime you get a haircut and not really having a strategy or focus on the bottom line besides AdSense. But if you care to look at Google’s activities recently, it does show a marked effort to push towards a common direction:
- Google is making a huge push for the browser community to move towards HTML 5. To the extent where some are accusing them of manipulating the standards process to get what they want in. With HTML 5, multimedia capabilities would be built right into the browser engine, removing one huge blocker for having the browser as your desktop.
-
Total reliance on the Internet is all fun and games until that connection is lost. Then what?
Says Mike Elgan. True. Then again, the last few times I was without internet access, I didn’t really see the point turning on the computer at all. In any case, Google has the beginnings of having that covered as well. Presenting Google Gears. Gears, in essence, is a caching application engine that allows you to run your apps offline (amongst other things). It even has its own embedded database.
- Sounds like all these web applications are gonna take up a quite a bit of bandwidth. But Google is even tackling the social engineering bit now, actively encouraging web developers to make the web go faster. After all, it needs more web applications being able to run as fast as native desktop apps if it’s going to make this work.
- Many were surprised when Google released Chrome the web browser. However, many of us quickly came to appreciate the minimalist UI, the raw speed of rendering and Javascript, and most of all the quiet elegance of it all. Even more surprises came when Google started actively pushing it to IE6 users, reminding them that they’re using an obsolete browser and they really should consider upgrading. Perhaps the powers-that-be in Google are growing impatient waiting for the old weezer to die a natural death, knowing that its continued preponderance would just delay the groundwork for it to roll out its pièce de résistance?
Now, it’s not that Google has gotten all the pieces of the puzzle in place yet, if they’re really trying for something as audacious as this. Apart from GMail and Maps, none of the other Google apps really cut it as a complete replacement for its desktop counterparts. And there’s a pretty significant percentage of the general populace who’d rather let their social security number get indexed on Bing than to allow Google to have access to all the data currently sitting on their desktops. Myself, I don’t think I’d use it either, I’m too much in love with my KDE setup right now. But it was just technically stimulating to try to visualize how the PhDs in Google would strategize something like this.
Oh. And what about games on Chrome OS? Hmmm. I don’t know, actually. Maybe Google’d just buy up Nintendo: “Here. Your Wii stick. Now go wank on it somewhere far away while we concentrate on our world domination.”
[...] how I imagine #chromeOS may be designed: http://envb.sapphirewillow.com/writings/2009/07/wild-conjecture-chrome-os-as-i-imagine-it/ [...]
“Oh. And what about games on Chrome OS? Hmmm. I don’t know, actually.”
Browser based gaming is HUGE, especially in the casual market. And its not all bejewelled and scrabble anymore either, theres MMORPG games like Runescape, FPS like Quake Live, Sure no one is going to be playing Crysis or Starcraft 2 on this machine, but thats not what it is designed for either.
“Hello World” may be easier in HTML than QT, but personally I’ll take QT any day over web development for writing a full application. “Hello World” is hardly a real world comparison. I cut my teeth on web development, but having done a few desktop apps now I’m beginning to hate web development. It makes me dread a future where applications will be predominantly web based.
“And however screwed the web is right now in terms of web standards currently, is it any worse than what we have in the traditional desktop world?”
Um, yes, for a developer it is IMHO. We may have a bazillion and a half toolkits and languages, but I only need to use one of each of them for any given project. To make a halfway decent web application, I have to juggle HTML, CSS, a server-side scripting language (PHP/ASP/Perl/etc), and JavaScript at a bare minimum.
The world really needs a replacement for javascript if this cloud thing is to move forward. I would love to see a complete web language in which one could write a web app from top to bottom as elegantly as in traditional clientside languages. Maybe Google will deliver?
This article is thought provoking. I am not a web developer, but having more than twenty five years involvement in the technology industry, primarily in business solutions, I think the idea of a ChromeOS is provocative and also wonder as to it’s configuration.
In any case I would like comment from any experienced Web/Desktop apps developers as to the feasibility of Google using KDE Web Developer (Quanta Plus) as a primary tool in this new project, particularly since this toolkit contains elements of both KDE Desktop and a complete Web Development environment.
W. Anderson
wanderson@kimalcorp.org
@Alan:
There’re pros n cons to both sides, that’s a given. What you say is true, to develop a webapp entails learning HTML, CSS, JS and then you’ve got that nasty server side palette of frameworks to select from. But given the potential reach of a webapp compared to a desktop-bound app, many are going down that road anyway. The sheer richness of desktop apps available currently has set the bar very high for webapps to compete, but that’s what the major web players are trying to push new standards towards. My jaw hits the floor almost everyday gaping at the cool shit featured on Ajaxian. And the code needed to write said cool shit just gets shorter and shorter. In GWT, you have some semblance of a “single platform” to code the entire webapp stack that you were asking about (although I’m still trying to learn and find out if it really works as advertised).
Things are coming along, all in all.
We believe Google will come up with something fairly earth-shattering. They may even PAY the makers of mobile internet/pda/cellphone devices to include the GoogleOS for that special and unique condition commonly known as “out of box experience” OOBE.
Why do you think Microsoft is attempting, with their “bingaling boondoggle” to lasso the wild stallion that Google has already mounted and is riding with skill and poise already? They know their stranglehold on the operating system market is just about over as the vast majority of computer users are much more interested in ONLY the social aspects of computing connectivity.
We want our “carry-all-the-time” connectivity devices to “just work” and work all the time and if the only name we ever see is “Google”…then so be it…and Gates and Jobs can go work in a chinese laundry somewhere.
We are indeed, living in interesting times!
Sincerely,
John and Dagny Galt
Atlas Shrugged, Owner’s Manual For The Universe!(tm)
.
I think they are going to take web apps one step further.
Consider the effort put into refining a protocol and application to transmit windows over a network.
Is it not conceivable they intend to build application hosted in the cloud, and manipulated / controlled as a native application, comunicating with the cloud via the new windowing system protocol.
So -> instead of writing web apps using html / javascript css, write web apps using a native windowing manager.
Ever controlled another computer using vnc or remote desktop etc?
I imagine we get to control apps running in the cloud in a similar manner.
Makes sense to me
@rich:
Interesting, but breaking backwards compatibility with both traditional desktop apps and legacy web applications does not bode well for anybody wanting to gain a developer mass anytime soon, or at all. Neither does maintaining a separate body of code for essentially the same functionality sound attractive either.
We can already see examples of running rich web applications on the desktop in Adobe Air and JavaFX. For the most part, these products already satisfy the basic requirements of running web apps locally. However, they’re still largely restricted to their own sandboxes. Inter-operability between applications is difficult due to default anti-XSS scripting rules that’s probably for the best, given the browser scene right now. At the desktop environment space, however, the OS provider may be able to create a permission manager to specifically grant rights to certain sandboxed apps to talk to one another, similar to how desktop apps can talk to each other using DBUS. That would open up a whole new world of possibilities.
[...] http://envb.sapphirewillow.com/writings/2009/07/wild-conjecture-chrome-os-as-i-imagine-it/ [...]
[...] [Wild Conjecture] Chrome OS as I imagine it Myself, I don’t think I’d use it either, I’m too much in love with my KDE setup right now. But it was just technically stimulating to try to visualize how the PhDs in Google would strategize something like this. [...]