Google and Their Server Farm
JR writes "CNet has a very interesting story about Google, operating systems, and where Google may be going. The upshot is that they may make OS issues totally irrelevant by supplying everything anyone needs over the web from their mega-server-farm."
Interesting. I have actually suspected this for a while given their hires over the past year or so. There have been a few PhDs they hired including one from our cs department that would have suggested this is where they might be going. At any rate, this could prove quite interesting and make irrelevant many of the security concerns that the average consumer faces as well as consolidate and ease software distribution issues. Of course this approach will never supplant the needs of most of the Slashdot crowd, and I am not letting go of my dual G5 or OS X, but for the unwashed masses, it might very well be an interesting way for Google to go that will certainly prove to be a way for them to branch out of the search engine field and extend the fight with Microsoft and Yahoo.
Visit Jonesblog and say hello.
I agree with the position of TFA's author... Google will try to treat computers running all types of operating systems as a thing client that has access into various applications within Google's server farms.
This would be fantastic in terms of not having to synchronize data between multiple locations and other tangible benefits. But would anyone trust this? Setting aside the privacy concerns, right now if your internet connection is down, you can still write and print a document. You can still do all sorts of things as a matter of fact. You less you put onto your "thin client" and the more you depend on the network for, the less you will be able to do when the network is down.
I'm a big tall mofo.
The upshot is that they may make OS issues totally irrelevant by supplying everything anyone needs over the web from their mega-server-farm."
Yeah, and what about the people who are on dial-up? Or the people who don't have internet access at all? Or the people who just don't want all their stuff stored on somebody else's server?
All the same arguments apply here that people used when Microsoft wanted to do the same thing.
Now think about what would happen if you had a word processor, a spreadsheet app, a photo editor, an instant messenger, a browser, a music jukebox, and any other "software application" running inside a Web framework that's as fast and responsive as any desktop you've ever used.
"The next killer app in 5 years" was supposed to be the web application. That was five years ago. No, Google is working on something else... I can feel it in the force.
imagine Google serving us everything we need....
if Google can scan our emails for relevant ads, what prevents them from scanning my financial spreadsheets stored on their server farm for "relevant offers"?
given Google's track record, I'd rather have my personal files on my own computer.
Yes, but...
Aren't a lot of /.ers already running their email remotely (via GMail, etc)?
Not every app is a candidate for the client server paradigm, but many are. If Google can manage to serve content paid for by advertising, then this might break open the MS monopoly on desktop apps.
Can't make money w/free content using advertising you say? The television networks do.
Agile Artisans
I thought and talked my lungs off about not needing an multi-functional OS ever since I've seen AT&T's VNC. Most people thought it was crazy.
.NET and Microsoft's sensory overload with junk are making me dizzy.
I'm happy to see that someone is doing something about getting that going.
FTA: "Google Desktop is the company's only other Google-developed product that's not in beta."
I'm glad that people in the press are finally taking notice of this... what the hell, they should change their name to 'Google Beta'.
I think the concept is interesting, and now approaches "possible" with ever expanding pipes and speeds. Anecdotally my experience has been different, but in an office/corporate setting. There was a big push to thin-client architecture with Sun Servers and diskless Sun clients. But something about human nature I suppose, it never gained purchase, and eventually the technology became what we know generally today.... i.e., local storage maintained by owners and users, no matter the lack of diligence in integrity and storage of the data... Human nature that can be overcome? Don't know...
As for one point in the article: from the article:
... I have to say one thing about the "monopoly" for which we trade (from Microsoft to Google) putting aside for the moment what truly defines a monopoly (I happen to think Google is far from being a monopoly)..., I am MUCH more comfortable doing bidnez with a company/"monopoly" whose corporate slogan is "Do No Evil"..., and Google actually seems to be earnest in that quest.
I think it's likely that this is where computing is going; we'll see if Google is the company that can do it.
I predict that the next big dispute in the computing industry will be over openness and accessibility of ASP stored data. We have made a lot of progress when it comes to openness in software, but the issues of what happens to your data when it is stored on some company's big computer is yet to be tackled (think about it all you gmail users!). For example, if I use Google's calendar - what would it take for me to switch to Schmoogle's? Can I retrieve all my data from Google and upload to Schmoogle who seems to have a niftier interface? One way to address this is to make ASP-side software Open Source (like our company does with OpenVPS). It would be interesting whether Google will start moving in that direction - after all, their proprietary code is considered their intellectual property, and investors these days latch on to that very strongly, even though it's not like I could take all their software and build a Google's competitor overnight. The companies that get that there is no value in software code being secret (internally used or otherwise) are the leaders of the future IMO - the question is whether Google is one of them.
Not to mention the fact that, as a developer, writing any substantial amount of JavaScript just makes me feel...well, dirty. No type-safety, no assurance that the end user's browser will interpret the script correctly (or at ALL, for that matter), etc. etc.
All of this on top of the fundamental problem that HTTP is not and never will be appropriate as an application protocol...the whole request/response paradigm becomes a set of handcuffs if your application needs to do anything non-trivial.
Seriously if I had a dime for everytime someone predicted the demise of the desktop, I'd have a couple of bucks.
/usr/local mounted from a central server. Its much easier to maintain that way. Some users even use KDE on solaris which have their binaries located on the /usr/local partition. It works fine.
The funny thing, is that if the desktop would demise, then maybe Linux would finally be "on the desktop", by being the server farm behind the desktop.
To be honest, if networks keep getting more reliable and faster, why would there still be a desktop? Right now, a vast majority of my computing, and my user's computing is done remotely on machines that are much more powerful in terms of CPU capacity and storage and they are maintained by a professional that does backups and whatnot on a regular basis.
Do "normal" desktop users do this? Do they have availability to dozens to hundreds of processors at a time on their desktop? How about disk space? How about backups? How useful is their computer if you cut the ethernet cable?
I think that the desktop has pretty much stalled. Noone cares too much about processor speed anymore for a desktop machine. For niche users like graphics designers that need really high graphical, disk, and memory bandwidth, sure get them a nice dual G5 or whatever, but these people are a minority.
I have my user's workstations set up so that they are pretty much dumb terminals, but they don't know it. I've got
I would argue that the desktop is almost dead already. Again, pull the ethernet cable and see what I mean. Back in the late 80s or early 90s this was not always true, but today it is.
I think you are one of the few users left that would be delegated to having their own machine. In the past, computers were so expensive that an office may only have three, and probably two of those were setup for everyone to use (or at least, they were in my Dad's office in the late 80's). Those who had their own computer were doing work which required them to have access to the comptuer every day, like writing software or something.
Today, think of the benefits from PC virtualization: compiling would be done over a huge grid of computers, video games would be faster because the client/server communications barrier would no longer exist (well, it still would exist, but it'd mostly be sending images to the user's computer, and then the user sending short commands back), all your data would be automatically backed up and secured, and the world would have less environmental damage due to outdated computers with lead parts.
Embrace the wave.
"Victory means exit strategy, and it's important for the President to explain to us what the exit strategy is." G.W.Bush
Is TFA refering to something like this? http://zero-install.sourceforge.net/ But in a larger scale.
This sig is funny.
Yeah remember the good old days when you had to rent your phone from bell.... Phones were soo much better and cheaper then.
Why not a Google Knoppix type CD that simply fires up an X session to an X server located in the datacentre? Then install all apps on that, and all data is remote, and backed up.
Get your own free personal location tracker
...to the GoogleGrid!!!
Dave
People like to own things. They want to own their car, their house, their toys, and, likely, their computer.
I don't know that I could ever reach the point where I'd trust a giant company out there to always give me my information and allow me to use the things I want to use. For instance, what if I want to use 10-year old software? Will this be allowed? Do I get my *own* copies of software or do I have to use only the ones they make available? Not to mention ownership issues, liability, and all that other nonsense.
People [sic] complain about people taking away their freedoms and such, and here is another idea where they are just giving away infrastructure for someone else to handle...I'm too much of a control freak to trust someone else with this responsibility.
I'd better stop now...
"There are a dozen opinions on a matter until you know the truth. Then there is only one." - CS Lewis (paraprhase)
Because system administration is beyond the abilities of 95% of the population.
It's not taught in school and it's not intuitive.
We'll see an Audrey-like Linux Box with a Firefox and nothing else and it'll be called a GoogleBox. You can do your e-mail, web browsing, photo organizing, document writing, and music work on this box and you never need to run scandisk, install AV software, deal with adware, etc. etc. etc.
Plug into your cable modem and go.
It's not what I need or you need but it's what most people need. Google Search and GMail are building a brand that people trust. Windows is becoming untenable for some.
This at least explains what Google is doing with Firefox and shows the next two Google products - music and a 'home-office' suite. I wonder if Apple is smart enough to be working with Google on iTunes for the web.
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
They also admit it in their little poem at the bottom... that's not what is important
what is important is the fact that they are offering google type features in an OS style interface. Their homage to OSX is to make a google interface that mimics it. That's what is interesting. The fact that they have begun to create google/os parallels.
Ahh, but what's the big difference? Everyone loves Google. No one trusts Microsoft, so pulling something of like this is tough for them.
However the wonderful and kind Google, can get away with because of *trust*. Why has Wal-Mart taken over the world...everyone loves them. Now Google is following the same path. Spend a long time building everyone's trust, then turn them into mindless zomebies... "Must by $2 shoes from Wal-Mart"..."Must do tax return on Google"...
"Luke, I am your node.parent();"
All,
It is with great anticipation that I watch the computing environment go back to where it was in the 70's, only with cool graphics and sound.
I think people will embrace it, not because the problems with thin client in the 70's have been solved, but because people crave change, and now that computers have moved to mainstream, we are discovering exactly what the pocket protector crowd knew then and still knows today: the average joe can't maintain and run a system successfully for very long, before catastrophe and data loss occur.
Computing upheavals are necessary to make us feel like we are going somewhere and thin client computing really is the best way for most people.
I boldy predict, that in 30 years, maybe sooner, we'll be right back where we are today, thick and contemplating thin again.
There will be a catastrophe and we will all feel, similar to Obi Wan Kenobi, as if millions of records suddenly cried out, then were deleted. Everyone will lose all their stuff, and start moving back to thick client architectures.
Albert Einstein once said "You cannot solve a problem using the same thinking which created it in the first place."
I think we should listen, and come up with a solution instead of repeating history.
l8,
AC
I think she has a lot of good points in her article but I for one would NEVER surrender to having my files on a central server, ESPECIALLY, if it was M$ that made it there first.
... well crap... that I would love to have organized. I would just like to have something like that on MY server. The idea is something I have wanted for a while. I don't like having favorites, bookmarks and what not on several different computers. So a toolbar that incorporates that into one location and centralizes that collection of links would be AWESOME!
That being said, I think if the idea she is talking about were to be applied in a "P2P-ish" method, it just might work. This would mean the info on your computer you want global would go into a location on YOUR machine that google would manage. However they plan to manage it, that is.
They do have a great email client, I hear they have a calendar in the works, good contacts system and obviously search system, they are only a few features away from what she is talking about in the article. Combine that with a P2P system so your files are on your home computer, add those other apps she talks about and BAM!!! Something most everyone wants. It would be centralized in that Google would be using their systems as management but you have your files on your machine.
SO, you could integrate the "mom and pop" photo/blog/family contact point site all on google.
I see a day when I could have greatoak2005.google.com and that points to site in googles network which has the blog, contact, photo, IM, email, etc. managed and when I try to access it from another location it pulls the photos and info from my server/pc at home.
Sounds nice, I am not 100% comfortable or confident in the sercurity and privacy issues BUT as an idea(l)... It has a GREAT deal of value and merit.
That cannot be denied. If you disagree I don't think you are looking at the big picture of managing all this information. Not just businesses, governements, but people in general. I for one have gigabytes of
An that is just ONE piece. Oh well I am rambling. I just don't like that much information being on someone elses system.
oh well. later.
my 2 cents.
Thats what application frameworks are for. A web engineer will develop the widgets for the toolkits a framework team will develop, and application monkies write to those frameworks.
Thats the whole benefit of using XMLHttpRequest and DOM for those applications -- UI logic stays on the client, and business logic can stay on the server.
GMail is only the most visible application working that way these days. Tax software and a very large number of enterprise software applications are moving rapidly in that direction, as are the toolkits used by enterprise application developers.
outlook is not just a mail client, its also a contact management app, calendaring app with networking capability, and time management app.
outlook is a bloated piece of crap, but it is unrealistic to compare it to a standalone mail client.
Four-digit slashdot ID. Recognize.
Why do ideas like this always involve centralization? What if almost all computer hardware operated in a fashion similar to Seti@home? You own a basic client (ie laptop, fancy PDA thingy, etc), with a basic processor that can do most everyday tasks, but when you start editing pictures or video, unused processing power around you is utilized to speed things up. Everyone would also have some sort of real computer (though maybe not, depending on how ubiquitous processors become... imagine every device having a pentium 4 equivlant running it) and when your laptop does something more intensive than web browsing the unused processing power from around you (neighbor's computers, microwaves, etc.) is enlisted to complete the task. Basically there is networked processing power all around you, and it does whatever task/s that are going on around in the area. I recall reading at one point that the Cell processor was designed for networked computing (forgive the lack of reference). Imagine you have a multi-cell home server... and everyone else does... you are only using two of the processors, and your neighbor needs more than they have? Yours process the neighbors data. It would be kinda neat, you would have slower processing at peak times when more people are doing things, and it could be insanely fast during non-peak times. Now to bring this sorts onto topic... What about the same sort of system for data? The only real challenge as far as I'm concerned is having a network system (Internet 2.0?, 3.0?, 11.0?) that ensures complete anonymity for users. All my data is encrypted with my unique key so that only I can read it, but because it was remotely stored in the first place, it would be available to me wherever. A future like this woul make laptops even lighter and more battery efficient (no hard disk, and smallish processor)
Generally speaking, you are correct. However, let me point out a few matters which complicate things.
Not all software development environments use compilation. Once you peek out of the box of C and friends (C++, Java) you'll find things like Perl, List, etc. where the wait-for-compile stage is noticeably absent.
Moreover, if a large chunk of your programming time is spent waiting for things to compile, I would argue that either you need better tools, or your project is badly structured.
In any case, a rather small percentage of the general population does things like compiling and the needs of professional programmers are unlikely to be important in determining the trade-offs of web-based applications...
Ah next up, the big one, games. Let's rework your calculations a bit, since they're a bit.. shady
:-) Well, let's rework them, but let's agree that I don't want to lose image quality if I am to switch over to web-based games.
:-)
I currently play most of my 3D games (e.g. World of Warcraft, UT 2004) at 1280 x 960 resolution. I usually play other games (e.g. Civ III) at full 1600 x 1200, but we'll leave it aside at the moment. I am most definitely unwilling to play games at 800 x 600.
So, 1280 * 960 = slightly over 1.2 MPixels. Since we are transfering bitmaps we don't need the alpha channel, just the RGB values, 3 bytes/pixel. So we have 3.6 Mb of data per screen.
As to framerate, 30 fps is the *bare minimum* for fast-paced games. Note that 30 fps for a computer game is very different from 30 fps for a movie. Google for it, it's a bit too long to discuss here. But for the sake of argument let's say 30 fps is enough, so our uncompressed data flow is around 110 Mb/second.
Now, compression. I don't want ugly artifacts on my screen -- I don't have them now and see no reason to acquire them. This means we are going to do high-quality compression. Ratio of 1:3 should be more or less in the ballpark, so we have a data flow of around 35 Mb/sec which is more or less 350 Mbits/sec.
But now the interesting question. Network lag in games is caused by latency and almost never by lack of sufficient bandwidth. And sending bitmaps over the net will help latency by about... zero. So right now to play multiplayer games I need bandwidth of, oh, say 3.5Kb/sec. You are suggesting that to continue playing such games I need to increase my bandwidth by FOUR ORDERS OF MAGNITUDE and for what? Network lag will still be there.
All you've done is offload graphic processing over to the server. Basically you took the graphics card out of the computer, put it on a server, and decided to implement the video bus over TCP/IP
If they lose your data, they're responsible and they can and should be sued.
OK. But then they'll need the money to pay the lawyers and the cost of lawsuits, right? Where will this money be coming from? Umm... right, so it will be coming from your monthly fee...
Google's servers are a order of magnitude more environmentally safe: They're likely to stay on the rack for 10-20 years,
I very much doubt the Google's machines will stay on the rack for 10-20 years... But that's irrelevant in any case -- I wasn't talking about servers. I was talking about the device that would be in your home and that you would use to access Google's servers.
This device -- it will have a monitor, right? And a keyboard? Speakers, too? Hmm... it will need a video chip to send the signal to the monitor, it will need a sound chip to send the signal to the speakers, it will need a NIC to deal with ethernet packets, it will need a microprocessor to run code locally, it will need RAM for the same reason...
By golly! It's a computer!!
Kaa
Kaa's Law: In any sufficiently large group of people most are idiots.