Computing Ecosystems: Why?

If blame needs to be assigned, I suppose you could throw it at Apple. They started it, with their own operating system on the first Macintosh. Then they introduced the iPod that played music from iTunes, which brought the iTunes store. Then they introduced the iOS devices, the App Store, then the App Store to for the Mac, and as such started to control the user experience through an ecosystem. Everyone told them they were crazy from Microsoft to Google, from tech pundits to grandmothers.

Now, Microsoft is doing it with their cloud offerings, Google is starting it with their Android-only software releases and Google Chrome app store, and even Samsung is starting to build their own ecosystem for their phones, regardless of their OS. Now everyone is all about building a walled garden of some sort, in order to control the user experience.

Why? That may sound like a crazy question from an Apple user, but I think it needs to be asked. An ecosystem doesn't in and of itself guarantee success of a company, but it seems to work for Apple. So why is everyone trying to copy it when it was considered such a lousy idea?

Suppose you as a user want to install an application. In the good old days of Microsoft dominance with a few Macs and Linux boxes out there, you would have to go down to a computer store and pick it up. Or perhaps you would purchase an online download of the software. Either way, you had to actively go out and find the software you wanted, make sure it was compatible for your platform, purchase it, then run the installer.

Linux, interestingly enough, started streamlining this process. RedHat, Mandriva, Ubuntu, etc. would provide cloud-based "app stores" where you just run your install command and it would, well, install your application, service, or tool. Don't have all the required dependencies installed? It would install those as well. This was a HUGE improvement over the old fashioned way of grabbing an app from some repository somewhere, try to install, get dependency errors, try to install dependencies, get more dependency errors, and spend a week trying to configure and install an application. It made it convenient for users, and many in my Linux classes saw this as a way to get more people using Linux in the mainstream.

But no one took Linux's direction seriously, because they didn't have to. People were already conditioned into the "go and buy" process that they didn't really care what Linux was doing. But another platform that had a small footprint in the general computer environment, and therefore a small footprint in the PC-heavy software store, found it difficult to get good software to their users. So Apple, after seeing the success of the App Store on the iPhone, figured they could just import that to the Mac. It made sense, and now there are thousands of Mac apps available from big box and independent developers available to anyone with a Mac to purchase. And still people scoffed, particularly when big box companies like Adobe and Microsoft were reluctant to share 30% of the sales with Apple just for a spot on their App Store.

But with the release of Windows 8, Microsoft has built an App Store for Windows. Part of that is because Windows 8 really is developed for a tablet to use, but it's also a brilliant marketing move in that Microsoft can now, just like Apple, RedHat and the like, have more control over the client's computing experience. Clients now have easy access to applications that do what they want without having to read boxes, look at shelves, drive to a busy mall, etc.

So what about Google, they are just all about the cloud right? Well, sort of, but then they released two operating systems: Android, and Chrome. Android, which has matured quite nicely with Jelly Bean, provided they can keep more continuity between developers. The one really poor thing about Android is the varying quality of devices on which it sits. Sure, you have the high end devices like the Galaxy S4, but you also have really cheap android devices that just barely work. Add onto that a confusing App Store experience, and Android really struggled.

But Google quickly wised up and developed Google Play, an almost exact copy of iTunes and the App Store. Now with the one stop shop, they can control the quality of the apps, help limit some of the historical security issues with apps (lots of malware and spyware on that platform in the past), and control the user experience from sign in to purchase. More control means better experiences for the users, which leads to more adoption of the platform.

Amazon did the same thing with the Kindle Fire, as did Barnes and Noble with the Nook. Sure, they may not be "Android Tablets" like the Galaxy Tab or Motorolla Xoom, but they run Android, Android apps, and have complete top to bottom ecosystems that support them. Great control over the platform means good customer experiences.

So what does this really mean? Ecosystems mean loyal customers, because loyal customers have good customer experiences. The more you build out your ecosystem, the more dedicated your customer base.

But what about the drawbacks? Having used Windows 8, just about every Apple product, and Android devices, I now have three ecosystems to which I belong. For years I've used Google cloud services, but I'm starting to ween myself from them because many of the services I enjoyed are going or have gone away (iGoogle, Google Reader, Google Wave to name a few). The Windows ecosystem has been something new in which I have dabbled, as it plugs into many of the services I already have for my Macs. Apple already has me currently, and as long as the experience remains good, they will have me for a long time.

The consequence of these ecosystems are several email addresses of which I need to keep track, apps that I have purchased remain unavailable unless I use a device within the ecosystem, and I feel frustrated at times when I want to use a feature that I find great in one ecosystem that doesn't exist in the other.

Perhaps one day it will no longer be a problem, and all the ecosystems will exist in harmony. After all, we are still, technically, in early days within the mobile computing world. Perhaps the issue will be resolved some other way.

But in the mean time, what do you think about the computing ecosystems developing? What do you see as pro's or cons?