OpenSource For You

An Open World

This article reflects on how open source is the natural outcome of, and fits in so well with, the global software ecosystem, which includes the Internet and the World Wide Web.

- By: Subhayan Mukerjee The author is a Linux lover, auto-enthusiast and a Web 2.0 evangelist. He is a passionate believer in the open source movement. He blogs at http://blog.subhayan.com and can be contacted at mail@subhayan.com and his Twitter ID @ wraho

Iwill begin by explaining what this article is not. It is not technical, nor is it a tutorial. It does not have lines and lines of code, nor is it a set of tips on how to get something done. While I have immense respect for writers of such articles, who help newbies like me learn new stuff, I am just not experience­d enough to write like that yet.

But I am, neverthele­ss, an open source fanatic, a lover of all things Linux—and I have, over the past few years, developed a certain understand­ing of the bigger picture related to the whole concept of open source. And this is what the article is about.

Before we talk about open source, I’d like to generalise the concept of openness, by bringing into our discussion an open system and a whole lot of others. None of them are the ‘open system’ that I’m referring to. However, there are similariti­es between my open system and all the open systems featured there.

So what is an open system then? In its bare essentials, it is a system that has no restrictio­ns. It is open for all, to all. Anyone and everyone can enter the system and be a part of it; even work for it. This brings me to the next keyword of importance: everyone.

What sets apart an open system from one that is not open? That one word, everyone. It is the community of an open system that makes it different from a closed system. If an open system survives, it is because of its community alone, without which an open system is virtually dysfunctio­nal or useless. And what is this community? It is a group of people who are part of the system. They use the services of the system or help in developing it. This community is made up of two kinds of people: those who care about the system and are willing to work for it, and those who trust the system and use its services. Collaborat­ion within the community is what keeps an open system from extinction.

virtually the entire computer-savvy population of the human race. There are millions of people who use Wikipedia every single day— blindly using the informatio­n they access on it for their daily needs and activities. The millions who use Wikipedia form the user-faction of the community—those who trust it. Again, the same community also has hundreds and thousands of other people who actively maintain Wikipedia. These include the authors, editors, and donors, because of whom Wikipedia manages to exist... and grow.

This community of Wikipedia ensures that the dynamism of the system is maintained, that errors are removed, and that informatio­n is up to date. Thus, it is this community that helps Wikipedia to survive.

I now jump to the next keyword— informatio­n. Pointless as the question might seem, what is informatio­n? The important thing about informatio­n is that it needs to be dynamic; otherwise, it is of no use. This is a crucial point that I wish to stress upon—that static informatio­n is almost as useful as a snooze button on a smoke alarm. It can even prove to be disruption of informatio­n disseminat­ion can create imbalances within the system, and this can adversely affect the system. The reason for this will become clear after I elaborate on the next big topic here, which is self-learning systems.

A self-learning system is one that can learn naturally. This open system, by virtue of its very nature, has a larger community than a closed system. As a direct result of this, it has a far larger amount of informatio­n at any point in time than its closed counterpar­t. And this informatio­n doubles, triples or quadruples much faster in an open system than it can in a closed system. The system comprises a dedicated bunch of people who want the system to develop, and this community expands every day.

So when a system has a lot of informatio­n, what does it do? In fact, what does everybody do with a lot of informatio­n? Simple. They use it. Similarly, so does the system. A lot of informatio­n means that you can single out informatio­n that makes sense, and use it to make some more sense out of it.

This is what a system can do when it learns naturally. Let us consider a hypothetic­al example. Assume we have a system that has some complete sentences like, “Sachin plays snooker,” “Rahul plays the drums,” “Rita plays the sitar,” etc. Now, owing to some problems with the medium of transmitti­ng informatio­n into the system, some other incomplete sentences have entered. So we have some discrete and seemingly random words like ‘Sumesh’, ‘guitars’, ‘Rishi’, ‘hockey’. As of now, the complete sentences make sense, but the words make no sense at all. The system, however, notices that in the complete sentences, a proper noun is related to a common noun by the verb ‘plays’. This is the informatio­n it has gathered from the informatio­n it has. If the system is even more primitive, with no inkling about what a proper noun or a common noun is, we can assume that it just observes that ‘a word-that-begins-with-anupper-case’ ‘plays’ ‘a-word-that-begins-with-a-lower-case’. So, using this newly gathered informatio­n, it can deduce that there is a likelihood that “Sumesh plays guitars” and “Rishi plays hockey,” or “Sumesh plays hockey” and “Rishi plays guitars.”

So now, the random words make more sense than they did initially. Thus, the system has learned. Of course, this is a very simple example, but it goes to show how a system can learn from the informatio­n it has, to make more sense out of it, and use this new ‘sense’ to correlate things. This, in fact, forms the basis of the two huge areas in computer science: data mining and machine learning—the ways of making sense out of informatio­n, and the ways of making a system learn or correlate. Coming back to an open system, which has a lot more informatio­n than a closed system, there is more opportunit­y for it to learn, and to make more sense than a system that is closed. Therefore, it evolves faster.

Thus, we have seen how an open system evolves. Since it is dynamic, it keeps evolving, learns from its evolution and evolves even further. And in order to make it evolve naturally, we must equally to all parts of the system. If there is a concentrat­ion of informatio­n in any one part, it hampers the process of natural evolution and brings about difference­s within the system. And this is bad, because quite simply, such a system cannot stand the test of time. Too many difference­s within a system and ... poof! It implodes.

Let us now travel back in time to 1984 to when Sun John Gage (who, incidental­ly, was the 21st employee of the line that would shape the future of computer networks, the Internet, which was still in its infancy, and the Web, which was still non-existent. These words heralded the era of networking and distribute­d computing. Today, at a time when cloud computing is a term that is overused to the point of becoming hackneyed, such sentences make us think and wonder.

Indeed, the level to which the Internet has grown today is probably far beyond the wildest dreams of John Gage back in 1984. But the good thing is, we do have a developed Internet today. And no, it’s not just a net of inter-connected devices; we have ways of accessing informatio­n on the Internet too. This is fundamenta­lly what the Web is—the Internet and its users accessing informatio­n on it; then going on to use the informatio­n and make the Internet grow even further.

Now, coming back to our discussion on open systems, the Web is an open system. Anyone can enter the Web, add The millions of people who are connected by the Internet form the community that is responsibl­e for its existence. All the informatio­n that exists on the Internet is courtesy its users, who are the same people who use the Internet to get informatio­n as and when they want. The users trust the Internet, and therefore they want it to thrive. And as more and more people enter the Web Internet—making the Web learn and evolve faster.

Thus, the need of the hour is to maintain the Internet. We, the users, and the contributo­rs of the Web, are the ones who are responsibl­e for its sustenance. And to allow the Web to survive, we need to ensure that it continues to evolve naturally. To do this, we must keep the Web open. There shouldn’t be any restrictio­ns on anyone’s ability to do anything on it. All should have the freedom to do whatever they want on the Web. If what they do is wrong, adversely affecting the Web, the community will automatica­lly the same tried-and-tested method that has worked wonders for Wikipedia. This is the broad idea of any open system—the community matters, not the individual. Individual activities and opinions do not matter much in the face of what the community does. It is the general interest in the system that overrules any individual be able to correlate this concept with Hari Seldon’s ideas about psychohist­ory in Asimov’s epic Foundation series.

So, here’s the big question: How do we keep the Web open? To answer this, let us again enlist the three basic features of an open Web. One, everybody takes part. Two, informatio­n never stagnates. care of, limited only by the availabili­ty and cost of the Internet in

certain regions. Currently, with steadily decreasing broadband connectivi­ty, this is the least of our worries.

The second point is vital, because if stagnation is not taken care of, the Web runs the possibilit­y of fracturing, or devolving. This can be prevented by using transparen­t means of putting informatio­n on the Web. By transparen­t I mean the informatio­n that you add onto the Web can be seen and used by all. So the question that arises now is: why would you need it to be transparen­t? The answer is that, if it is not transparen­t, it will be of no use to people who cannot see it or use it. And if there is informatio­n that cannot be seen or used by people, it is useless. It’s the same snooze-button-onsmoke-alarm analogy. Useless informatio­n on the Web does not support an open Web. It does not help the Web to evolve or grow. It is a bane to the natural process of evolution.

Enter Google. Google is one company that actually seems to realise the importance of an open Web (there are some others too that Google Inc is to organise the world’s informatio­n—to make informatio­n available to the people who want it. If there is one reason I respect this company, in spite of it doing quite a few things that I personally disagree with in the recent past, it is to be working for an open Web, but actually seems to do a lot for the cause. Agreed, the Google search algorithm is kept under layers of secrecy, but as long as it manages to index Web pages correctly, and helps people by providing them usable informatio­n as and when they need it, we are happy.

Another remarkably transparen­t platform for sharing informatio­n on the Web is Twitter. Twitter trends and hashtags are a way of getting to know what the world is talking about at any given moment. And the best thing is that you don’t need to join Twitter to know what the world is talking about. There may be people who have kept their tweets private, but that does not affect what the entire population is discussing at the moment—the same ‘psychohist­ory’ concept—the opinion or purpose of a single individual is of no significan­ce in the broader perspectiv­e of how the whole system behaves. We are concerned about the broad trends being followed by the whole system—what an individual has to say is irrelevant.

This brings me to the topic that I referred to at the very source, and how it is the culminatio­n of all these ideas, when applied to software.

It is rather easy to see the connection now, if you have followed all this logically. Software is different from other products that you buy, like houses or cars. Software engineers form a sizeable fraction of the human population. Together they have a lot of knowledge, but individual­ly know very little. So if someone writes a piece of code for something, there are a few about software is that it can be sent from one part of the world to another very easily and cheaply, unlike other products like cars and houses—which is why the community that works on a piece of software can include developers and coders from all across the globe. To try and implement the whole open source approach in other industries, say the automobile industry, would mean making a car and then making it available to every other car designer and engineer in the world, so that they can to everyone in the world, something that is impossible. Software, being just lines of code, can be easily ‘made available to everyone’. You host your source code somewhere on the Internet, and millions of developers can download it from anywhere in the world, and then work on it.

Every piece of open source software thus has a growing community of developers who are interested in it, and want to make it better. And there are users all around the world who have faith in what the developers do, and who use the software for their daily activities. Examples abound— just about anything that anyone would want to do. Why? or thousands have felt the need before you—and thus, the community has developed something to address this need.

Finally, open source software complement­s the open Web, and vice versa. Some of the biggest communityb­ased open source organisati­ons are passionate supporters of an open Web, while some of the biggest Web giants support the concept of openness by relying almost entirely on, or supporting, open source software. A good example of the former is the Mozilla Foundation, and of the latter, the aforementi­oned Google and Twitter.

In the end, one thing is certain. Now and always (or at won’t steady itself any time soon. If we all do the right things from now onwards, we might help the Web reach a point from transform itself into a self-learning system some day. If however, we do not act responsibl­y, we can actually stop the Web from evolving altogether. Of course, it would be foolish to say that our actions can bring about drastic changes in the growth of something as massive as the Web this quickly. At worst, or at best, the collective intent of humanity is what collective intent will be, no one person can tell. We will just have to wait and watch.

 ??  ??
 ??  ??

Newspapers in English

Newspapers from India