Cloud computing may a little over-promised, but it isn’t “worse than stupidity,” as Richard Stallman would say. In fact, it’s really a very positive change in the way we use computers. Not only does it eliminate many of the barriers to using any operating system you want, but it also takes the responsibility of storing and backing up data off of the user. This is all in a very early stage, but the glitches should be worked out in a few years.
Unfortunately, it’s very hard for people to create successful web applications without backing from companies like Google and Microsoft. The problem is that when you start using, for example, Google Docs, it is very hard to switch to Zoho Office. You certainly can’t use both to edit the same documents as you could if they were stored on your hard drive. This means that you are locked into using a single application, naturally leading most of us to pick the one we trust the most. This problem also blocks out a lot of the hobbyist open-source projects that might otherwise appear as web applications.
What we need is a “hard drive in the cloud”: a personal storage space from which documents could be opened with any web application. For example, someone could create a document in Google Docs and save it to their “hard drive in the cloud.” Then, they could open that document from Zoho Office and continue working on it there.
The problem with this plan is that it would require an established web application vendor to adopt it before anyone would bother to use it, and no major web application vendor has an incentive to adopt a system which would make it easier for their customers to switch the a different service.
How will we get data portability in the cloud when companies like Google have it in their interest to prevent any such project?
Illustrating the blessing and the curse of open-source software, some contriversy has arisen over Intel’s Moblin (their Linux for netbooks) replacing NetworkManager with a custom program called ConnMan.
NetworkManager is tool for configuring network connections, from ethernet to 3G. NetworkManager is used in almost every modern Linux distribution, pretty much regardless of the desktop environment. Due to complaints about NetworkManager’s architecture, extensibility, customization options, and lack of WiMax support, the Moblin project decided they needed something completley new: ConnMan.
ConnMan lacks many of the features of NetworkManager, but offers complete separation of the front-end and back-end, WiMax support, and more customization/extensibility.
The Blessing
Open-source software allows anyone to have the choice of rewriting a piece of something that they don’t think is done the right way or that just isn’t right for them. This means that when one project starts sliding in quality, another project can create an alternative program to do the same, or a similar, thing, often utilizing some of the existing code. This often prevents applications from being abandoned and becoming obsolete.
The Curse
This same attribute of open-source software is also a curse, though. A lot of time is spent rewriting code that, in some cases, may be perfectly good code. This time could be better spent working on something new. Worse, when you get two conflicting applications, as is the case here, it fragments the Linux desktop. Right now, every major desktop Linux distribution is using NetworkManager. This means that when one distribution improves the tool, everyone benefits. If, however, a few of these distributions switched to ConnMan, suddenly only the ConnMan distros would benefit from other ConnMan distros and the same for NetworkManager distros.
This is simply an attribute of open-source. Sometimes it is incredibly beneficial, such as when a project is abandoned, but it also encourages people to reinvent the wheel over and over again.
Most likely you have already seen the story about a drunk driving case where the Breathalyzer’s source code was turned over for third-party examination. Naturally, vast numbers of potential errors were found.
This finding doesn’t even necessarily mean that the Breathalyzer gave the wrong result, but it does bring up the question of trusting Government-imposed technology. If the Breathalyzer’s code was far from perfect, who says the e-voting machine isn’t even worse?
When possible, the government should begin to move to open-source sfotware, allowing everyone to see what code is being runa nd, potentially, catching the issues before they become, well, an issue.
Great ideas spring up every day, but only in certain conditions are they able to bloom. Open-source software is, in fact, one of the best places for these great ideas to bloom.
In a closed-source software environment, a new idea must be proposed to the right person. Then this person or persons must be convinced that the idea is good.Finally, a business model or monetization scheme has to be developed. By the end of all this, the idea has gotten old and, perhaps, been modified and messed with far too much.
In contrast, in an open-source environment, if the idea’s creator believes in the idea, he or she can go straight to making it happen. Later on, the rest of the issues, such as how to make money off of the idea (if that is even the plan), can be discussed and dealt with.
This may seem very simple and even obvious, but it is an important attribute of open-source software: it allows for the rapid development of new ideas into actual software.
More and more, governments are deciding to make the switch to open-source software, usually citing or implying privacy concerns over Microsoft Windows, since Microsoft is a US company.
It is a great idea for governments to promote the use of open-source software, but I am not so sure about creating their own distribution of Linux. Internally within a government organization, it makes perfect sense to use a custom distribution, just to make managing everything easier. When you expand this to the entire government or, worse, the entire country, the logic starts to go away.
The only real reason to create a custom Linux distribution just for your own, or your country’s, use, is if all the users have very specific needs. Once you expand beyond a single department of the government, this becomes less and less true. Surely an entire country does not all have the same needs.
Also, from a user’s perspective, would you use an operating system your government handed you at home? It would be like letting them tape a camera to your head, because they claim they will not use the pictures.
Promoting open-source is great, but trying to create customized variants of distributions for too broad of an audience makes little sense.
Every time you turn around, it seems like another government is considering using open-source software as an alternative to expensive proprietary software. While the progress has been slow, as it usually is with governments, the trend is obvious.
In fact, not only is it obvious, but it’s also very logical. Think about it. Governments are usually on very tight budgets, especially for smaller things like software, so the cost alone is a huge advantage. Furthermore, open-source software gives them control. With proprietary software, the government has no idea what could be in the software. Certainly they can have security experts examine it, but that is nothing compared to actually being able to see the complete source code. Plus, beyond security, there are other advantages to open-source software. Not only can the government inspect the software, they can modify it to their needs, giving them the ability to deliver exactly the right operating system to their users, possibly even customized to the job the computer performs.
If you think about it, it is almost suprising governments have tolerated proprietary software. It seems fair to say that governments are rapidly heading to open-source and will likely stay there.
Yesterday was data privacy day, according to Lifehacker, and they posted a number of tips for protecting your privacy.There is one more thing you can do to protect your privacy, though: use open-source software.
Open-source, while not inherently more secure, has little chance of containing any backdoors or anything you wouldn’t want in your software, since all the code is open. But how does your ability to see the code help you if you aren’t a programmer and/or don’t have tons of time on your hands? You can’t review the code yourself, but there are people that can and do. Perhaps no single person will look at everything, but you can be quite sure that everything or almost everything in the code of something open-source has been at least glanced at by someone knowledgeable.
This doesn’t mean that you can go randomly downloading everything that’s open-source. You still have to be careful and trust the maker, but, when you use popular open-source software, you can be quite sure, no matter how paranoid you are, that your software isn’t doing anything malicious or stupid with your data.
A recent Linux Devices article summarizes a speech given by Harald Welte in which he details the technical problems with closed-source drivers in the Linux kernel. Basically the overall problem is that closed-source drivers often break, since they can’t be updated when the kernel is updated.
I understand that improving compatibility with closed-source drivers would mean some technical sacrifices and a giant fight over the politics of it, but I still feel it must be done, at least initially. I am all for open-source drivers, but, quite frankly, it is a big step for companies to go all the way to offering open-source drivers for Linux. It would probably be much easier for more companies to support Linux if they could at least bring their current development method to Linux. Basically, making closed-source drivers work better with the kernel would provide a stepping stone for hardware manufacturers, who would eventually step all the way across into the open-source world. Once everyone has crossed, you can take away the stepping stone and go back to the way things were before.
Plus, the problem is more than just not being comfortable with open-source. Some companies may, for legal reasons, not be able to release source code. Granted there is great help for manufacturers wanting to make open-source drivers for the kernel, but it still usually requires they turn over at least some information.
The point is that some sacrifices may have to be made in the interest of allowing and inviting more people into the Linux and open-source software world.
The problem with closed-source software is that sometimes a feature is not really a feature. Take, for example, Apple’s incorporation of HDCP into their new notebooks. Basically, HDCP is a technology designed so that everything between the content and your eyes (graphics card, cables, connection types, display) has to support HDCP and be designed to prevent leaks that could allow someone to pirate the content. Sounds like a great idea, right? No.
The effect of HDCP is, in reality, nothing more than bothering legitimate users and potentially forcing them to either pirate their content or buy new equipment. I could rant on forever about how DRM is a hopeless arms race that appears to have little effect except to lower the value of DRM-ed content and annoy users, but that is not the point I am trying to make. The point is this: HDCP is not exactly a feature that you would want in your computer. With proprietary software, though, you are stuck. You can complain, but you are at the mercy of the vendor.
If you run open-source software, on the other hand, chances are someone will have a version out without whatever anoying feature was introduced within a day. More generally, this means that even if you never want to see or touch a piece of code, there are still advantages, since others can. Really, it is just like opening up a phone to third-party developers. You will probably never write an application, but you will still benefit.
ComputerWorld is reporting that Gartner predicted all businesses will use open-source software in just 12 months. It is certainly an interesting prediction, but, as with many of these, I think the headline is a little misleading.
All this means is that in a year just about every business will be using some piece of open-source software somewhere. In other words, a giant corporation that uses a piece of open-source software in some tiny department somewhere would count, even if all their other software was proprietary. Thinking of it that way certainly makes the prediction a lot more believable, but it does not make it irrelevant.
The big deal here is really that it means that just about every IT department will have had at least a little experience with open-source software. You can’t guarantee that this experience will make it to higher levels or that it will be entirely positive, but just a little bit of experience with open-source software can certainly help to eliminate doubts.
The idea is that once a company tries a little bit of open-source software, they will be open (pun possibly intended) to the possibility of trying open-source software again. If the company’s experiences are consistently positive, this could lead to a company adopting open-source for more major roles, even if they started with something small.
While this prediction might not be as monumental as it might seem, it does matter and it is good news. A more interesting statistic might be how much each company likes the open-source software they use and if they consider it to play a major role in their jobs?