Donnerstag, 8. November 2012

How the Open Source movement won the battle, but lost the war

there is a saying in German: Don't wish anything, it might come true, but completely different as you want it. This is very true now for the open source movement. Let's take a look around.

Linux is probably the most widely used operating system in the world, if we count all embedded systems, like wifi-routers, smartphones, tablets, GPS-receiver, smart-TVs and other devices most people do not actually know, that these are powered by Linux. Regarding Android I think I can claim that the moment is not too far away when Android will become the most widespread operation system for devices, which we call computers and leave Windows behind, maybe this moment is already there. So this is undoubtedly a success for the open source community that an open source kernel is powering so many devices in the world. But on the other hand, yes Android is open, you can browse the source code, but can you really contribute? As a private person, where can I check-in my fixes and code suggestions? Who are the code maintainers and integrators? Where are all the Android distributions like we used to have with Linux? Sure, it is possible to hack the device and flash the ROMs with new software, but compared with the millions of people, who are using Android, how many people are using custom ROM software? It stays a small community.

The second battle is related. Open Source community always insisted that the used should have full control over his/her hardware and install the operation system he/she likes. Well, in PC-world we are at this point. Installing different system on a regular PC is dead-simple, but try it on a phone or a tablet! Sure it is possible to install Android-system on an iPhone, but again, this is really cumbersome process only for very few of us. Also the number of open source OSes for mobile devices is very low compared with the number of open source OSes available for PC. Hopefully this is just matter of time.

Software should be free. Well, we are close to this point. 90% of software in Android store is free. But it is free as in beer, because there are hardly apps, which source code is published somewhere. At least with Android it is possible to install software without using the official store, so using open source software is easier, but again hardly any app developer is open-sourcing the app. It would be an interesting idea to have an app store, where only apps are published, which source code can be downloaded somewhere.

Lot of apps have access to the cloud. Also we use lot of cloud services with the web-browser. Cloud infrastructure is based on open-source components, like Linux, Apache, some middleware server, open-source database. This is great. But what about all the application logic? Again, there is hardly open source available of all these cloud-based applications. But we provide lot of our most private and sensible data into the cloud. Google claims that there are more than 1 mio Android devices activations per day, that means most of these users are sending their address books, with all private phone numbers, addresses, photos and so on to Google and they trust that Google will not misuse the data (here even open-source will not help), but also that the application software is that secure that no hacker can get access to the cloud and have the most accurate address-book in the world! One of the reasons, why open source is so important is because lot of specialists are able to verify the code and find weaknesses. Another problem with the cloud is that the user basically looses control (and sometimes ownership) over his data and has to trust the cloud provider. This is certainly not the idea of organisations and activists, which engage in open source movement.

So it looks like the open source movement won some battles. Open source is everywhere, PCs are open for installation of large variety of open source OSes, with modern UIs open source software is user-friendly and polished, on mobile devices Android is the most widely used operating system. Clouds and Internet are not imaginable without infrastructure provided by open-source applications. But on the other hand most of the modern developments in the IT-world like apps, smartphones, tablets, browser-apps with logic on a server in the cloud are powered by open source, but are not open source themselves. Developer do not publish the source of their software and the choice which software is running on my device is greatly reduced. So open-source community should think about the strategies how to adapt to the new environment.

Mittwoch, 25. April 2012

ChromeOS for mobile devices

I'm quite a fan of Google and most of the Google products. I love Chrome, which is my default browser on my Mac and I like Android, which is OS of my mobile. When I heard of the ChromeOS for the first time I was intrigued by the concept, because it is so radical different, from what we have today, but on the other side it is very logical consequence of our shift from desktop applications to browser-based ones. Still is requires a courageous mind shift, to cut the rope of being able to download and start a Windows or Mac application and fully trust that there is a replacement application on the web, which provides the same possibilities. Also it is kind of scary for road warriors to use browser based apps and being dependant on ubiquitous net-access. Sure, Google tries to make their apps working offline as well, but this is just beginning, the question is how many other browser-based apps will offer this possibility as well. That means ChromeOS is suited best for strictly defined working environments, better not on the road. Which brings me to the question, why are there only notebooks available with this system?

But anyway, I don't have figures how well ChromeOS is selling. But here is a suggestion how ChromeOS could become the most successful desktopOS. Motorola showed already a mobile phone with Linux desktop (Atrix). The idea is that a mobile phone can be connected via HDMI to a monitor and via USB or bluetooth to keyboard and mouse. As soon as connection to monitor is detected, desktop Linux distribution starts on Android kernel. All of the data like contacts, emails can be shared with Android. The concept of Motorola headed in the right direction, but there were some rough edges, like outdated software preinstalled, and the update process was quite cumbersome. In March Ubuntu announced a distribution, which can be preinstalled by phone manufactures on their phones. The concept is the same as with Motorola phone, but the Ubuntu distribution is famous for its user-friendliness. So far I'm not aware of any phone, which uses Ubuntu, but I guess this is just a question of time.

The concept of turning mobile phone into a full-fledged computer is certainly intriguing. But even compared with a simple netbook a mobile phone ofter lacks required amount of storage capacity for the programs and for the data. Also there is a question how to synchronise this device with the main computer. That's why a cloud based operating system, where all the data are stored in the cloud and the programs called from the web is the right choice for a desktop mobile device OS. That's where ChromeOS can show its strength. ChromeOS doesn't need lot of memory and processing power, all the programs don't have to be available on the storage medium and all the data is saved in the cloud. Places where a monitor and a mouse are available, should have at least WI-FI connection available as well. One important fact is of course that ChromeOS is already available for ARM processors, so most of the mobiles should be able to run it right now. So ChromeOS running on Android phone would be a perfect matching case, between the requirements of a desktop system and what mobile device is able to provide.

There is already Chrome available on Android 4.0. So let see if Google engineers can extend it, so that it also usable with a desktop station in a desktop mode. It is absolutely imaginable that soon the internet cafes and business-oriented hotels will just provide internet access, monitor, mouse and keyboard, so that business traveler can connect their phone to these devices and continue working. Acer showed already a mobile phone which can be plugged into a tablet, expect mobile phones, which can be plugged in mobile notebooks, without a processor. With modern ARM-processors with several cores mobile devices are able to compute larger amounts of data and execute complex programs written in JavaScript. So since mobile devices are growing on much faster rate than desktop-oriented ones, it can be expected that preinstalled ChromeOS could become the most widespread desktop-oriented OS worldwide.

Mittwoch, 25. Januar 2012

My experience with Lumia 800

A short disclaimer first: I'm quite experienced iPhone and Android user, I understand the concept of mobile phone as a window to the cloud and I think I know Windows quite well. For my girlfriend Lumia 800 is her first smartphone, she knows nothing about the cloud and is a very average Windows user, so no X-Box, no Zune, no MSN and other Microsoft hardware and services experience. So I must say it was quite a hard task to update her and her computer just for the usage of the phone.

First task I had to do, was importing the contacts from her old phone, a Nokia 6230i to the shiny new Lumia. Saving contacts on a SIM-card and using it in the new phone does not work, because the new phone needs a Micro-SIM card. So I installed Nokia Suite and could import the contacts via Bluetooth. But exporting from Nokia Suite to Lumia with Bluetooth is not supported. Lumia has an option "Import contacts" which should connect via Bluetooth to the old phone and get the contacts, but for some reason it just didn't work, the phones found each other, but then the transmission just stopped. So I googled a bit and found out that it should be possible to export the contacts from the Nokia Suite into a file in proprietary format, but there are programs which can convert these contacts into CSV, which can be imported into Microsoft cloud. But for some reason the Export->Save menu entry in Nokia Suite was greyed out and I had no idea why. So I could not find any but manual way to get in the contacts into the brand new Lumia.

Second task was the creation of Windows Live ID. Why is it not possible to create one with the phone? You have to know, where to go (www.live.de) and have to fill out a large form with all your personal data. Microsoft wants to know much more about you, than Google or Apple. And why is all this "live" service so slow? Does Microsoft know something about AJAX? All the time new pages come up, the page addresses are changing, the UI is unpleasant compared to iCloud or Googlemail. Is it really necessary to show ads here, does Microsoft really need the money? And how is it possible that Microsoft shows an ad that all his online stuff is supported by iPhone5? I really had to check the news, if I missed something, but 4 months after introducing 4S, Microsoft was still toо lazy to update its ads.

Next task was to update the Windows Phone OS with Mango Update. You have to know, that you need Zune software for that, which is not included in Windows Vista. So after iPhone cut the cord, Windows Phone is the last of the major phone OSes which needs computer for OS-updates. After downloading Zune, I had to register again, again on PC, again large form with my personal data and now I had to invent a community name of my phone, which seems to be an online name for whatever service as well. Only letters and numbers are allowed, no "-", no "_", no "." Of course all readable and meaningful names are already taken, it took me 4 times to find a name, which is still available. I still don't know why I need it. Finally I downloaded the update (I'm not even sure, which one is it, there was no version of the update communicated). Can somebody tell me, how I can put some photos, which Zune found on my computer on the phone? Music was no problem, but photos seem to be more complicated. Did I say that the Zune app looks really ugly and violates all Windows UI-guidelines?

So after creation of all these accounts I wanted to use Nokia Maps. Again you have to register, this time for Nokia! Jesus, why is it so complicated to use ONE name for all the services! With iPhone and Android you have to register ONCE and all the services work.

Now couple of words about the software. The start screen is nice, but the second screen with all the apps is already overcrowded, so how it will become with all the apps? Ever thought about multiple columns and maybe subdirectories? Talking about preferences, is it possible to install an individual ring-tone? If yes, how, it is not obvious. At least it is quite simple to change the colour of the icons. When I set-up the email I could not find if the POP-mails will be left on server or deleted, there is no setting about it, so I assume (hope) they will be left on server. I'm already excited to see if my girlfriend will be able to connect to the company Exchange, which was the main reason why she got a Windows Phone. And typing of the virtual keyboard is quite hard, at least my girlfriend always hits the button or the link, which is just below the desired one.

Now let's go to the shop and see all the promised software. There are not too many apps for explicitly German users, there is "Die Bahn" app, but no app for the public transport timetables. Yes, I know that Nokia Maps provides me shortest ways using public transport, something where Google still has to learn, but Nokia Maps doesn't know anything about the time tables.

So after setting up the phone, which took me about two days, I have to say, that for an average Windows user it is close to impossible to setup the phone with all the services. Four years ago the software was OK, but compared with todays standards set by iPhone and Android, Microsoft has to polish, polish, polish. Not only the software on the phone, but also the cloud. Otherwise Microsoft will never catch-up with the other two mobile players, no matter how much money it has. I think the problem which faces Microsoft is a self-made one. Microsoft had a department for online-services, for phones, for games. In the past these departments were working separately from each other, every one had their own customers, no interoperability was required. But this has changed now, online-services, phone and games have converged into one package, but the departments are not. Therefore they still have own profiles for customers, though it is always the same person using one device. This topic Microsoft has to address.