WebOS Market Review 173
ReadWriteWeb writes "A number of small startups are trying their luck building a WebOS, which is a software platform that interacts with the user through a web browser and does not depend on any particular local operating system. Current WebOS contenders include XIN, YouOS, EyeOS, Orca, Goowy and Fold. There's also a bit of crossover with Ajax homepages like Netvibes, Pageflakes, Microsoft's Live.com and Google's start page. The key difference from Ajax homepages is that a WebOS is a full-on development platform. Indeed for developers, a big benefit is that a WebOS theoretically makes it easier to develop apps that work cross-platform. DHTML and Javascript are the main tools to do that, but not all developers think they are suitable."
WHY? (Score:1, Insightful)
Not Exactly (Score:5, Insightful)
2. Most of these "WebOSes" are a mess. EyeOS just IFrames everything, Orca doesn't seem to work (at least not for me), YouOS is about at the XEdit and XTerm level, Fold is a fancy Portal environment, and XIN isn't available yet. These are nice starts to desktops, but they're a long way from fully featured desktop replacements. Right now, they're just fancy portals.
3. Google is not building a WebOS. Or at least, that's my opinion. There's no inherent advantage to building a windowing system in a browser other than the possibility of Web integration. Unfortunately, if the desktop isn't actually a real desktop (i.e. the only interface you see), then it isn't in any better position to provide Web integration than the web brower itself. Desktop development APIs are best saved for regular AJAX work until an actual need for a desktop arises.
Cross Platform? (Score:5, Insightful)
Isn't that what Java was supposed to do? All this "Web 2.0" stuff is getting out of hand; It's trying to duplicate a technology that already exists with inferior tools. I would rather have all the effort go into improving something that already exists.
Reinventing the wheel again and again and again (Score:5, Insightful)
Antivirus? (Score:3, Insightful)
Re:Good luck with that (Score:5, Insightful)
If I wanted a customisable environment I could access anywhere, I'd make a custom install of a lightweight linux OS on a flash drive and carry it around with me. All my programs, anywhere - plus encrypted storage, plus no need for a network connection, plus no bandwidth usage, plus no latency issues, plus programs that I choose, customise, install and run myself, that I trust, that I can examine the source code of and compile myself if I choose OSS, plus no server downtime, plus less risk of my personal data being accessible by any one of thousands of users with read/write privaledges in an account on the same server that I use that happens to find an unpatched exploit.
The move toward a WebOS is another part of the "stupid user" school of computer education. Instead of actually promoting learning how to use a box properly, you just move all the sensitive stuff server-side. "Installing programs? We'll do that for you! Configuring system files? Leave that to us! Data storage? Backups? System Patches? Anti-virus? Malware detection? It's all on us! You don't need to know a damned thing, just sit down at your thousand dollar terminal, log in, point and click. Sports Broadcasts will resume as normal."
It's just another aspect of the great computer devide that's gradually starting. On the one hand, unix geeks who run their own systems and software, spec their own hardware, believe in open source, try to make personal backups of media, won't buy DRM and want control of their own boxes. On the other, the average consumer who doesn't give a damn about anything aside from getting a system that just works with as little management and maintanence as possible. For the second group, WebOS is brilliant. All you need to remember is a URL, a login and a password. Instant system wherever you are. You've surrenedered the autonomy of your box, but in return you get an easier system to manage. It's a dream for content suppliers as well - imagine the strength of DRM if the average media player is stored on a remote server, and the user has no access to it's program files.
Re:Cross Platform? (Score:3, Insightful)
Once you've shoehorned everything need into a web application development framework (or bolted together everything you need from several frameworks), you practically have an operating system's worth of functionality and complexity.
The difference is that you can't develop on it directly. Most web applications, if they were desktop applications would be dead simple. But it's not simple to do even a merely decent simple web application, for a couple of reasons. First is that you have to decide how to bolt all the services you'll need together, the effort of which surely must be highly reusable. Even if you use something like AppFuse, you still have a development model that is like the old batch days; faster to be sure, but surely it creates a kind of frictional loss that adds up over the course of a project.
The thing that makes Microsoft's product offerings compelling in many corporate environments is that by sticking with their entire product stack in every tier, the very existence of the tiers is somewhat papered over.
I think the idea of a Web Desktop is even better. The idea is to remove as much context as possible from the programmer's brain. A web desktop would encourage programmers to think in the problem domain rather than the web domain. Next, if you can abstract IPC and distribute processes over a cluster, you have a system where "enterprise" doesn't necessarily imply "complex and error prone".
Why? (Score:5, Insightful)
- It relies on an internet connection
- It actually increases the processing requirements of the client
- it sticks another huge layer of abstraction and source of incompatibility between my apps and the system
- It doesn't solve a user problem.
Can anyone give me an argument for why anyone would use this instead of a USB thumbdrive, or a laptop, which are pretty cheap these days?
Because we can (Score:5, Insightful)
A few years ago JavaScript was considered a toy language. Now that it's been "discovered" the pendulum has swung the other way, and people seem to think that JavaScript plus a browser is a suitable platform for writing a windowing system.
We've been able to do a remote terminal like this for years, using more appropriate network protocols and faster execution environments. If we rebuild it on a completely absurd applpication stack:
How does this bring any more value to the concept? The ability to hit the "Back" button and lose my entire session? Having two taskbars at the bottom of my screen?
It seems like this is an idea being pursued just becasue we can; because we're excited about JavaScript and the Web 2.0 hype machine is working overtime.
Don't Mix Your Metaphors (Score:3, Insightful)
All of these projects don't understand the medium. The web is not a desktop. The web doesn't work like a desktop, and attempts to translate the desktop metaphor to the web almost all suck hard. The web doesn't have milisecond response rates -- even with AJAX. You don't have a consistant set of APIs across browsers like you do on the desktop. You can't assume everyone has JavaScript, images, or styles on, and a smart developer will try to make sure that their users get a site that degrades gracefully through any of those cases.
You can't just shoehorn a "desktop" style experience into a system that isn't at all designed for it. The web is a unique medium from the desktop. It demands a totally different metaphor than desktop applications.
A desktop metaphor adds a lot of unnecessary cruft to the web -- trying to use drop-down menus, popup windows, crappy DHTML "controls" and the like degrade user experiences and make sites slow, frustrating, and buggy. Applications like GMail and Yahoo! Mail try to use the technologies in appropriate ways - they have some elements of desktop applications, but they're not trying to mimic a desktop application.
We have a great, if maturing, set of tools in XHTML, CSS, and the JavaScript DOM. You can do amazing things with those tools provided you understand what their limitations and appropriate uses are. Trying to use those tools to emulate the usability problems of a whole different medium is misusing and misunderstanding the technology. A smart developer looks towards what works for the web rather than trying to force the medium to match an experience that it just can't do.
Re:WHY? (Score:1, Insightful)
Wrong Problem (Score:4, Insightful)
If you're going to rip off bash.org quotes (Score:1, Insightful)
Re:Don't Mix Your Metaphors (Score:3, Insightful)
Look: many of these ideas will fail, and some may well succeed. These people are pushing the limits of what these technologies can do, and I for one applaud them for it. No one is forcing you to use these systems, so cut these guys some slack already.
Re:Reinventing the wheel again and again and again (Score:3, Insightful)
And the fact that (in this case) Javascript/DHTML/HTTP is almost completely unsuited for the task. I say "almost" because apparently some people have managed to cobble something together. At least Terminal Server/Citrix performs well. At least Sun's thin clients could actually act like they had a full local OS. People DO care what is under the hood if it performs like a tar covered pig in a room full of... more tar covered pigs. I can see it now: "Let me just ignore this local desktop with 3D accelerated menus, cool apps and games, lots of Vista/XP/OSX eye candy, and a decent looking widget set for this WebOS thing where I can get a glimpse of how graphical itnerfaces performed in the 80's. It's so retro! Yay!" Its a fucking joke is what it is.
-matthew