If you haven’t heard about that, Google has decided to launch an Operating System in 2010. Yes, the Google Chrome OS. It runs the Linux kernel, with a custom-made window manager on top of it; essentially nothing else than Chrome. Google’s point is that OS will be well adapted for netbooks because all it’ll do is run a browser. However, running only a browser these days is very close to having a full-blown OS.
But, even if this looks like a nuclear bomb at Microsoft, like TechCrunch has fun saying, it might not just be exactly what you think it’ll do, for a number of good reasons. In fact, there’s a lot of chances Microsoft will have more than enough time to turn around and prevent any such thing from damaging their own business. And even if it does, Microsoft still has a lot of stuff to back them up and make them a major player within the software technology in applications running on Chrome. Let me explain:
The Google Future
First off, here’s the future most Google enthusiasts see: They think that, because everything is being migrated over the web, it’ll be real easy to see computers become nothing else than terminals to the web. Everything’s going to happen on the web. Ok, it’s very possible and it makes sense, but this radical theory has a few loopholes and doesn’t follow what history tells us.
Developers are King
For a lot of people, platforms become popular because of their superiority, and everything is supposedly led by the user who buys the platform. Wrong, everything is led by the developers. Without what the developers do, the platform is nothing. Take the iPhone for example. Why is it so popular? Its developers. Apple has managed to bring thousands of developers on the iPhone platform, making it, despite its proprietary nature and iTunes lock-in, a very strong competitor in the smartphone market.
What is the single strongest incentive for people not to switch over to a Mac? Software. Who makes the software, developers. What’s the single strongest incentive for people to actually do switch over to a Mac? Software. Who makes the software, again, developers (although in this case Apple’s own developers).
Without a strong developing community, a platform is nothing. What lies behind Firefox’s success is its pleasing experience for web developers. By enabling more support for standards and faster innovation, developers are loving Firefox and hating IE. Yes, the browser is a platform, but let’s not forget Microsoft’s Windows operating system is a huge platform too, and a very successful one.
Microsoft’s Advantage
The whole developer thing is something Microsoft understood very early with the release of Visual Studio and MSDN (Microsoft Developer Network). Over the years, Microsoft has perfected its development environment by bringing in .net, which is much more than a web application solution. Take C# for example, .net’s flagship programming language. Developing in C# is made so easy and enjoyable because Microsoft took the time to automate every other little OS thing for you. You don’t have to figure out how to configure this and that, or how to make a game engine, or how to make cool animation effects. Nope, it’s all included and made easy on the .net platform, which includes stuff like XAML, Microsoft’s XML markup language for interfaces, WPF, the Windows Presentation Foundation for super cool hardware-accelerated in-application graphics, ASP.net, for web deployment, etc. What’s even cooler is that most of this is just 50$ away with a book and the free tools and resources from Microsoft.
But hang on there, Linux is free right? Apple does include development tools for free too. There’s other programming languages out there like Java that do the same thing too don’t they? Well, yes, indeed there is, but none of them can match the ease of Visual Studio. Seriously, Java development, especially for the web, is so bad that the entire open source community prefers developing PHP in an almost IDE-less fashion (Integrated Development Environment, Visual Studio is an IDE).
Developing for the Apple platform is horrible, and certainly not free. Developing applications for the iPhone is even worse because you have to rely on a single point of distribution and cannot even open source your applications because of agreements with Apple. Documentation is nowhere to be seen, the tools are incomplete and books are scarce.
Developing for Linux practically requires that you work with an open source community or otherwise your software will suck. You have to make sure it’s being adapted and built for individual Linux distributions. Yeah, that doesn’t happen by magic. And what’s more, development tools aren’t as good as Visual Studio and the development environment certainly isn’t as easy to figure out. There’s no magic solution for Linux development, you have to do a lot of stuff yourself, which hampers UX (User Experience) innovation, and it shows. There’s also a single inherent problem to the Open Source community. The lack of support. Who do you go to when your PHP build breaks, no one, PHP isn’t someone, it’s a communal effort. Unless you’re ready to go get non-paid support worse than waiting for hours on the phone, you might as well consider the entire Linux thing a support-less thing. With every Microsoft product you buy, you’re also buying support from a real company capable of helping you more than by simply responding in more or less helpful comments on an IRC or forum. Sure you can get support from your web host, but there’s not as much to say when you’re developing desktop apps.
No matter what you say, the web is still just the web
That’s a fact. Web development is very different from than desktop development. Ask the guys at Adobe developing Photoshop if they want to switch their entire development to web development and they’ll be running screaming for their lives. Anyone has to face that, web development sucks! I’m an HTML and CSS guru myself, and I know my fair share of JavaScript, and I can tell you all of those are nothing more than gimmicks.
Oh, wow, HTML 5? Gimmick. Your platform is being ever more split from browser to browser that never support everything the same way, making development a pain in the ass. Sure, a future where only Chrome would be the web platform would ensure a consistent approach, but the current reality is otherwise and developing for the web is not the same as developing for a desktop.
Office applications manage to do well on the web. But still, hundreds of businesses rely on more than Word to do their stuff, all those development tools, all those graphic tools, movie tools, etc. They’re all on the desktop. Could they be on the web? Not unless the web becomes a higher performance place. JavaScript and server-side code alone are not enough to cover for all that software.
The terminal theory and its gigantic loophole
In the terminal theory, eventually our computers will become nothing more than terminals, with all the information being handled by supercomputers elsewhere. This makes perfect sense. You could rent your computer power online and have your Photoshop built on a web server. All you have then is the interface, in which Google’s Chrome OS would make a lot of sense. There’s a ton of benefits to this. You always get the latest software, your security is never compromised, etc. All you have to do is buy a subscription to a service.
History has shown otherwise though, with personal computers being every more powerful and everything moving away from terminals. The computing industry started by mainframes, and then terminal-based stuff, which then moved to ever more powerful computers and ever-less significant mainframes. However, the web seems to be reversing the trend, putting data online as well as processing.
There’s a single loophole in this theory though, privacy. Yup, no, it’s not the processing power or JavaScript, Google has all the time to invent a new way to make web apps more performing, but they cannot cover the Internet’s most apparent problem, privacy.
Where is your information, on Google’s servers. And no matter what the encryption they say you have, you still trust Google to actually do the encryption. By yourself, you have no means of verifying this. Moving online might be easy for a user, but for a business that likes to have a bit more control over its stuff, the prospect is a bit more difficult to imagine.
Oh Well
All in all, there’s tons of theories we could make. It could work, it could not work. The future could be very different from our capitalist-based mechanics, but one thing’s for sure, Chrome OS is far from there and the web is still just the web. Another thing’s for sure too, Microsoft is far from gone.
Whatever anyone says, Microsoft still has the whole .net platform behind them and in a Google Chrome OS future, they could play a major role as a back-end platform for all of that software happening online. They can also play a major role with Silverlight. Despite a large part of the web moving away from the RIA (Rich Internet Application) idea with HTML 5, the web still has fundamental flaws in that regard and RIA frameworks (like Flex, Silverlight and JavaFX) fix those issues.
It’s not hard for me to imagine a future where Microsoft’s platform is still very present, but in a much different form; as an application building platform for Chrome OS. And as much as you could imagine Google completely changing HTML 5 to compete against this very Microsoft platform, it’s not that hard to imagine Microsoft turning around to face Google’s threatening new product.
After-all, 92% of the population still can’t make out the difference between a web browser and a search engine.