Most time in debuggers is spent doing the same few things: setting breakpoints, stepping through code, looking at variables. Which products make those features supremely accessible and useful? Read here.
Why there are no significant developments in Open Source in recent times? What is lacking in open source development or what is stalling the progress of open source? Why documentation in important for an open source project? Read at http://pcquest.ciol.com/content/editorscolumn/techetete/2010/110010801.asp
Some time back in my post “What Open Source really means?” on this blog, I wrote that “open source” should be discussed from end user’s perspective also. So, what that perspective should be? Does open source really hold a value for a real world user?
Open source philosophy strongly advocates the availability of source code alongwith the software. But for a non-technical user who has no programming experience at all, the availability of source code has little meaning because he/she can not do anything with it.
I repeat from my previous post that, for a end-user, it doesn’t matter whether a software is open source or proprietary one as long as it serves his/her own purpose for which he/she is using the software, performs stably, and is available on some reasonable cost, if not free (of cost or as defined by Free/Open source evangelists).
Here, I am not questioning the relevance of “open source” as a philosophy and as an effective and reliable software development model. Open source is a key factor for spreading IT in countries like India. What I want to say is, for the wider adoption of “open source” in the society, it is very much required to include the point-of-view of end-user also apart from the developer community. For me, it is the end-user who is of utmost importance as far as the use of any kind of software is concerned. If a software holds a value for a user, it is good irrespective of the availability of the source code. A person with no technical knowledge wants a stable, efficient and ready-to-use product that can help him/her performing routine tasks effectively. Is this really the case with all open source softwares?
So, perhaps time has come when open source evangelists should try to open their close minds to identify the ways that can help spreading open source in the society. To open close minds does not mean that open source community should compromise with its fundamental principles, but it should try to accomodate the concerns of a lagrer group of untouched persons into consideration also. Are all closed source softwares not worth of any use? And, they should be thrown away, since they are available in executable form only. Is this really the case in our daily lives?
Here, I find noteworthy to quote (verbatim) Mr. Robert Sovereign-Smith from his editorial in August, 2009 issue of “Digit” magazine. He writes, “What started in 1985 as a paper titled the GNU Manifesto, by Richard Satllman, has grown exponentially, under the GNU license and the Free Software Foundation, into the biggest community initiative of all time. Now Stallman is (in)famous for being absolutely against all software with closed source, including freeware. His view has always been that unless the source is shared, software just isn’t truelly free.
In very public arguments, Stallman has been criticised by other “evangelists” for being too rigid with his thoughts. To be honest, I’m inclined to agree with these criticisms. There’s no doubting the accomplishments of Stallman, and we probably wouldn’t have open source of any kind if it wasn’t for radical thinker like him, but with the rate the world and its requirements are changing, can we continue to stick to the ideals like an ancient religion’s diktats? This is why I hate the term “evangelist”-it’s basically a word used to describe someone who tries to convert you to their “religion”.
Over the years, I’ve avidly read views from both sides, as both have argued over the definition of common everyday words such as “free”, “freedom” and drawn distinctions between “free as in beer” and “free as in speech”. However, all this makes absolutely no difference to you and I, the everyday computer users. A lot of us use IrfanView, but it isn’t free for commercial use, open source, so should you stop using it? Ofcourse not-use whatever you feel like, and pay for things if you feel they will help you get your work done. That’s because, unlike the evangelists, we live in the real world, where we never get free beer, and rarely speak our minds-either for fear of insulting someone’s sentiments, or getting beaten up.”
I am also agree with this. Developer community should be able to develop quality software products that are useful for the end-user in his/her routine tasks irrespective of the plateform, philosophy, development model or imposed restrictions. If a good software is available as a freeware or shareware although its source is closed, then it should be welcomed. It is very much required to adopt a practical approach rather than a closed room approach. In this way, I found the stand taken by OSI more practical than that of FSF. For end-user, nothing is untouchable whether open or close.
Is a theory needed for software engineering to better understand how to build a great software? Read at http://www.ddj.com/architect/220300840.
First thing first, I am not a specialist on the subject who can give an opinion. However, during some work, some questions struck me, so I thought why not to blog them. I think, there are some points that require some comprehensive discussion from different perspectives in the community, whenever open source is talked about.
So, what we actually mean, when we use the term “open source”. Is it…
- a philosophy pitted against proprietary software?
- another model of software development like waterfall etc.? or
- just a piece of software of a specific functionality?
Importantly, what does it mean from an end-user’s point of view? How can it benefit them? Another perspective is from developer’s point of view and both are quite different from each other.
As a philosophy, open source often refers proprietary software as unethical, hence say completely no to them. I think this mindset has some political and social motivation. However, this is not the place to talk about these aspects. But, concepts like software evolution, no vendor lock-in, cost reduction etc. are worth to make a note, no doubt.
From a developer’s point of view, I think, open source can be regarded one another way for software development. Although, quite often, “open source” and “open source software” are used interchangibly. But, I think, they are quite different having certain meaning associated with each of them. “Open Source” stands for a certain way of software development. It offers a new methodology for developing software that is quite different form traditional way of development. Through community based collaborative development with consistent bug-tracking & fixing and effective version control, a software evolves with time into a reliable and stable system of good quality. However, it requires some pre-existing piece of software, in whatever form. This gives us the notion a software requires to be developed in a closed group somewhere during its development cycle. So, can we say open source and closed source (so called properietary ones) complement each other? Don’t know. Possibly no specific answer for it.
On the other hand, whenever we refer the term “Open Source Software”, we are referring to a particular piece of software of a specific functionality whose source has been opened to the community to access, modify or redistribute it under some license (chosen from a long list otherwise a new one recognized by OSI/FSF). Another commonly used term is “Free Software” which is often used by FSF.
I think, for a end-user, it doesn’t matter whether a software is open source or proprietary one as long as it serves his/her purpose, performs stably, and is available on some reasonable cost, if not free (of cost).
So, these are my thoughts. If something to comment, go for it.
What is Theory of Optimization? How it can help in Software Optimization i.e. identifying the constraints that prevent optimal application performance. Read at : http://www.ddj.com/development-tools/218101302?cid=RSSfeed_DDJ_All.
Where the field of software engineering fits in broad spectrum of computer science? Read at http://www.ddj.com/architect/217701907?cid=RSSfeed_DDJ_All.