Wednesday, April 7, 2010

Does closed source somehow contribute to open source?

A composite of the GNU logo and the OSI logo, ...
Image via Wikipedia
In my earlier posts I have openly discussed my doubts about the relevance of closed source softwares and OSes in today's world. However as I delved deep into the matter, a deeper understanding has struck me.

Closed source OSes like Windows and Mac are the epitome and prototype of functionality. Eg. Windows supports practically an innumerable amount of hardware across the planet and still manages to mesmerise the user with its intuitive and friendly interface. Mac on the other hand is an icon of style and glamour. The hardware is exquisitely designed and the same goes for OSX. Linux OSes however arent as user friendly as Windows. Although a lot has changed and Ubuntu has created a benchmark for usability as far as Linux OSes are concerned, but it still has a long way to go.

Now frankly, these closed source OSes set the benchmark for usability and open source ones (harsh and unkind as it might sound) kind of follow those 'set paths'. I therefore believe that its very important that closed source apps and OSes coexist with open source ones.


  1. Sorry, but if you feel that Windows would be user-friendly, let alone ``mesmerise the user with its intuitive and friendly interface'', then you simply do not have the right comparisons.
    Windows is (with reservations for Windows 7, were I have not yet made more than cursory experiences) highly user-unfriendly, even for someone with a comparatively low degree of computer prowess.

    Those who have a high prowess, OTOH, very often find that Linux is the superior OS even in terms of usuability.

    As for hardware, this has nothing to do with open or closed source: Apart from standard components that work with everything, it is not the OS that supports the hardware, but the hardware that supports the OS. That Windows excels here is not due to Microsofts developers, but the people at the hardware firms that provide the drivers.
    Linux has the handicap that its developers often has to write their own drivers. This, in turn, is just a question of market share---were the market shares reversed, the hardware support would switch accordingly.

  2. the market share, as u say, is indeed a dominant factor. however there is also Apple, which makes hardware for itself inspite of having majority market share, and produces great compatibility (obviously!) and provides a better overall experience for the user. right now, linux OSes run on PCs made for Windows. if linux OSes (especially Ubuntu, since its the most commercial-minded OS around) could make hardware companies come up with a few (at least some, to start off with) linux based hardware, then i guess it would really be great. it has happened with Dell and Ubuntu in the past, but from what I gather, Dell isnt really interested in distributing Ubuntu with its set of computers anymore.

    yes, there will be the obvious argument that linux OSes doesnt charge u anything, but then again, canonical has perhaps somewhat shown that even linux OSes can earn money. so i guess someone somewhere has to take the initiative and cooperate/collaborate with companies to come up with linux compatible hardware. as of now, its very much a 'keeping-fingers-crossed' kind of a thing when it comes to getting a hardware working with linux, which can be very frustrating for the user (not to mention the waste of hundreds of dollars once the user finds that there are no compatible drivers for that particular hardware).

  3. I agree about the hardware part. An ecosystem that has been built around Windows and which forces every hardware manufacturer to provide Windows drivers for their products, certainly makes for a more pleasant experience for people using Windows and buying hardware. But it doesn't necessarily mean that Windows is technologically superior to other OSs.

    On the other hand, the free software community, often without manufacturer support or open specifications, using reverse-engineering and other techniques, has still managed to create an OS with remarkable hardware support.

    I would disagree about the "epitome and prototype of functionality" and the term "user-friendly". Especially the latter is so difficult to define that anyone can picture anything as "user-friendly", and actually be right in whatever they state.

    For instance, I find it at least strange that Microsoft in 2009/2010 still hasn't found a way to allow users to store personal files and settings separately from OS data (e.g. on a separate partition) and to be able to reuse them after reinstalling the OS. Reinstalling Windows and getting your settings (and to a lesser extent, your files) back to where you want them is a major operation, certainly not the kind of you'd like to do every day. With Linux and the /home mount point, it's a piece of cake.

    Networking in Windows 7 still works fundamentally like in Windows 95: TCP/IP settings are stored per network adapter. There are no network TCP/IP profiles. This means that, if you have a certain static IP configuration at work and another one at home, you have to manually change settings every time you move between the two. Want to use static IP for your home wireless network, but need DHCP everywhere else? Manual work, again. Of course, you can use tools like TCP/IP Manager to set up network profiles, but this is functionality that should be included in the OS. In Linux, NetworkManager does everything.

    Windows still doesn't have a package management system with repository support and automatic dependency resolution, like most Linux distros do. Everything you download has its own installer, clutters your Start menu any way it likes and may or may not uninstall cleanly when you decide to get rid of it.

    To me, these are a few of the things that make Windows user-unfriendly. Someone else might focus on Aero, the task bar, jump lists, collections etc. and say that these things make Windows user-friendly. I am right for what matters to me, and so is that other person.

    As for the symbiotic relationship between closed and open source that you mentioned, I think that open and closed source simply copy the best from each other and thus both evolve. The biggest threat to this relationship are software patents.

  4. This comment has been removed by a blog administrator.