For those of you caught unaware of the dreaded 'Project Life Cycle' during the Interview phase, here's a sneek peek-a-boo of what a Project Life Cycle.
Project Life Cycle!!!
Wednesday, May 31, 2006
Wednesday, May 24, 2006
To B or not to be an OBC!!!!
This is a premonition concept that Government is for the people, of the people and by the people. Atleast, Mr. Abraham Lincoln would be visualized crying in the grave at the pangs of human morality and lo at the sign of India..I am not going to delve much into the OBCs funda, I'll just narrate certain experiences why I feel it's inadequate to point out certain instances here. Let me see if I can analyze it in a better tone.
It has been 50 years and more now, since Jawahar Lal Nehru gave that famous speech in Parliament, "At the stroke of midnight, when the whole world sleeps, India will rise to freedom." I am not sure, the freedom that Mr. Nehru than spoke off smelt of agony and disdain of lower castes the so called SC/sets. I am not against an OBC fight here, but I guess a lot of work has had done off-late for the OBCs. And there have been less dividends out of it. The OBCs or other backward classes have not been come upto the standard, and I don't find the reason to be a social stigma rather than consequences.
My question is though why does the Government' have the impulsive nature of correcting it by forcing reservation? In this case, can the government not look into the reasons as to what are the OBCs drawback? I'm sure,there have been multiple committees formed to justify and come out the cases-but you and I know the best--the diary is full and all the reports are dumped into the garbage can. So, now the government has decided to come up with another solution--that is enforcing OBC reservation as if it's giant to deliver this time?
Politics plays a whole set of cards in India. Knowingly or unknowingly, you'll be engulfed in a storm of politicians who are braving their wits for a game of votes. The much respected and beloved minister for human resource and development, who at an age of 82 has decided to call an act has brought nothing but inhumane reaction from the different sections of society. Why did ARJUN play this gamble? Well, 1) he was upset that the veto power was vested in Manmohan Singh's cabinet for sometimes now, thought for a change 2) getting popular 3) Vote banks of Congress and 4) what else he could do?
The OBCs reservation policy has perhaps made the country witness the most volatile and inspired upheaval (if I may call it). I do see Rakesh Mehra's Rang De Basanthi doing some tricks out there, but it was a phenomenon nonetheless to see people scathing high and beat to stop this agitation. I was wondering how beautiful and strong are we when we get united. Doctors from all lore beated their hearts to join the agitated. IITs and IIMs took their prestigious lore into action as they activitely raised their voices, ongoing hunger strikes and lots more going on as I write this piece on May 23rd 2006 at Bangalore.
Questions were poured on Arjun Singh by the extreme Karan Thapar and mind you! Karan is not an easy joke. It was his interview that her Excellency Aama Jayalalithaa walked off as she felt that she was dragged off into an unnecessary controversy. Arjun Singh however, chose to remain tight-lipped during the interview and one point of time admitted the fact that the ordinance will be passed in the parliament irrespective of the fact that people like it or not. I don't see any reasons to talk to him on any matter!
The inhuman nature of the government could be understood more vividly as the government was busy in celebrating its 2nd anniversary, while atrocities were carried on large section of students point here is that not many people are affected by this. Would it culminate into an action, that
It has been 50 years and more now, since Jawahar Lal Nehru gave that famous speech in Parliament, "At the stroke of midnight, when the whole world sleeps, India will rise to freedom." I am not sure, the freedom that Mr. Nehru than spoke off smelt of agony and disdain of lower castes the so called SC/sets. I am not against an OBC fight here, but I guess a lot of work has had done off-late for the OBCs. And there have been less dividends out of it. The OBCs or other backward classes have not been come upto the standard, and I don't find the reason to be a social stigma rather than consequences.
My question is though why does the Government' have the impulsive nature of correcting it by forcing reservation? In this case, can the government not look into the reasons as to what are the OBCs drawback? I'm sure,there have been multiple committees formed to justify and come out the cases-but you and I know the best--the diary is full and all the reports are dumped into the garbage can. So, now the government has decided to come up with another solution--that is enforcing OBC reservation as if it's giant to deliver this time?
Politics plays a whole set of cards in India. Knowingly or unknowingly, you'll be engulfed in a storm of politicians who are braving their wits for a game of votes. The much respected and beloved minister for human resource and development, who at an age of 82 has decided to call an act has brought nothing but inhumane reaction from the different sections of society. Why did ARJUN play this gamble? Well, 1) he was upset that the veto power was vested in Manmohan Singh's cabinet for sometimes now, thought for a change 2) getting popular 3) Vote banks of Congress and 4) what else he could do?
The OBCs reservation policy has perhaps made the country witness the most volatile and inspired upheaval (if I may call it). I do see Rakesh Mehra's Rang De Basanthi doing some tricks out there, but it was a phenomenon nonetheless to see people scathing high and beat to stop this agitation. I was wondering how beautiful and strong are we when we get united. Doctors from all lore beated their hearts to join the agitated. IITs and IIMs took their prestigious lore into action as they activitely raised their voices, ongoing hunger strikes and lots more going on as I write this piece on May 23rd 2006 at Bangalore.
Questions were poured on Arjun Singh by the extreme Karan Thapar and mind you! Karan is not an easy joke. It was his interview that her Excellency Aama Jayalalithaa walked off as she felt that she was dragged off into an unnecessary controversy. Arjun Singh however, chose to remain tight-lipped during the interview and one point of time admitted the fact that the ordinance will be passed in the parliament irrespective of the fact that people like it or not. I don't see any reasons to talk to him on any matter!
The inhuman nature of the government could be understood more vividly as the government was busy in celebrating its 2nd anniversary, while atrocities were carried on large section of students point here is that not many people are affected by this. Would it culminate into an action, that
Sunday, May 14, 2006
The feel good factor!
Hi Rajdeep,
Thanks for that elaborate reply. It really helped a lot! Actually my company is of a medium size and I am the only TW here.At times, it gets difficult for me to learn new things. Even to begin with them. I feel that weird thing called Writer's block, which actually is a *technical* writer's block. I know what is to be written and how, but I
don't know how to present it and in which format! TWIN and seniors like you are making life easier for me.
I took a lot of keywords from your mail and googled them for more info. Got quite a lot. Thanks again for being so supportive. I hope I didn't annoy you with such basic questions.
Thanks and Warm Regards,
Mugdha
-----Original Message-----
From: Rajdeep Gupta [mailto:holypriest1@lycos.com]
Sent: Friday, May 12, 2006 10:27 AM
To: Mugdha Kulkarni
Subject: Re: [twin] Process for creating Application Help
Mugdha,
I hope you have gone through the links that Guruji has send across to it.Anyway, I'ld like to share a little insight on Help Application, primarily due to the reason that I actively started my Technical Writing career developing online help application and than scaled up doing other things.Please see my responses in-line.
Is there any standard process for generating Application Help?
Rajdeep:yes, there is. Based on the requirement set fort, an Online help is developed to cater the online audience. So, in general, you'll have the following things in your help--welcome note, about the help, audience of the help, logging into the application/system (since it's an online help,), features and task centric wise, Index and a question tag. Note that the help will have more screenshots than a PDF document has.
What are the steps that you guys generally follow?
Rajdeep: I'll tell you how I develop an Online Help. Primarily using Robohelp HTML, I import the Word document into the Robohelp application and the generate the Help. You can use Robohtml tutorials to get more insight on it.
What all comes as an input and in what format you are supposed to deliver the output?
Rajdeep: If you are using Robohelp, you can have multiple help outputs aka Webhelp, javahelp, flash help,webhelp pro, Oracle Help, WinHelp 2000,WinHelp 4 and WinHelp 3.
Who are the other professionals involved in this process?
Rajdeep: So far I have come across, I have worked with the developers for generating Online Help. The developers take all the map ids that each html file and corresponds it to the application for context-sensitive help. The quality assurance team will come later for testing the documentation.
What are the available tools and when do you choose each one of them?
Rajdeep: Using htmlhelp workshop(free tool), Roohelp, Madcap and etc you can generated online help. If you want to purchase a tool, I suggest Madcap or Robohelp.
Hope this helps!
Rajdeep
Thanks for that elaborate reply. It really helped a lot! Actually my company is of a medium size and I am the only TW here.At times, it gets difficult for me to learn new things. Even to begin with them. I feel that weird thing called Writer's block, which actually is a *technical* writer's block. I know what is to be written and how, but I
don't know how to present it and in which format! TWIN and seniors like you are making life easier for me.
I took a lot of keywords from your mail and googled them for more info. Got quite a lot. Thanks again for being so supportive. I hope I didn't annoy you with such basic questions.
Thanks and Warm Regards,
Mugdha
-----Original Message-----
From: Rajdeep Gupta [mailto:holypriest1@lycos.com]
Sent: Friday, May 12, 2006 10:27 AM
To: Mugdha Kulkarni
Subject: Re: [twin] Process for creating Application Help
Mugdha,
I hope you have gone through the links that Guruji has send across to it.Anyway, I'ld like to share a little insight on Help Application, primarily due to the reason that I actively started my Technical Writing career developing online help application and than scaled up doing other things.Please see my responses in-line.
Is there any standard process for generating Application Help?
Rajdeep:yes, there is. Based on the requirement set fort, an Online help is developed to cater the online audience. So, in general, you'll have the following things in your help--welcome note, about the help, audience of the help, logging into the application/system (since it's an online help,), features and task centric wise, Index and a question tag. Note that the help will have more screenshots than a PDF document has.
What are the steps that you guys generally follow?
Rajdeep: I'll tell you how I develop an Online Help. Primarily using Robohelp HTML, I import the Word document into the Robohelp application and the generate the Help. You can use Robohtml tutorials to get more insight on it.
What all comes as an input and in what format you are supposed to deliver the output?
Rajdeep: If you are using Robohelp, you can have multiple help outputs aka Webhelp, javahelp, flash help,webhelp pro, Oracle Help, WinHelp 2000,WinHelp 4 and WinHelp 3.
Who are the other professionals involved in this process?
Rajdeep: So far I have come across, I have worked with the developers for generating Online Help. The developers take all the map ids that each html file and corresponds it to the application for context-sensitive help. The quality assurance team will come later for testing the documentation.
What are the available tools and when do you choose each one of them?
Rajdeep: Using htmlhelp workshop(free tool), Roohelp, Madcap and etc you can generated online help. If you want to purchase a tool, I suggest Madcap or Robohelp.
Hope this helps!
Rajdeep
Tuesday, May 09, 2006
Documentation and QA-Two sides of a coin
Summary: This article written by Kumar Raman is all about wearing your documentation cap with pride as you do your other technical and quality caps. Documentation is as important as any other aspect of a project, like analysis, design, coding, testing, etc. The problem is that we do not realize its importance. Once we do, we can deliver products with a higher level of perfection. This has to be understood, appreciated, and infused into our system.
About the Author- Kumar Raman was a business journalist with a leading national economic daily in India. He has varied newspaper experience, picking up knowledge in domains such as finance, banking, insurance, stock markets, etc. In information technology, he has worked on both Microsoft and Java platforms, playing a variety of roles from analyst programmer to quality facilitator to project leader.
_________________________________________________
Before joining my current organization, I had never heard people talking about documentation as a separate area worthy of much attention. The general opinion was that anybody who was free could do it—whether creating plans (e.g., the QA plan, test plan, or SCM plan), templates for reviews, status reports, time sheets, or the user manual. Having special technical writers was considered a good idea, but a luxury.
An Eye-Opener
During the interview for my current job, I talked at length about everything from software process to management and metrics collection. I did not stress documentation, even though it is my core area. I felt that talking about documentation would sound like I had no other skills, because I considered it the least marketable skill. Even when my interviewer asked about my documentation work and experience, and then started to tell me why he thought that documentation can make or break a project, I did not think he took it seriously. Nevertheless, I joined the company to head the documentation area.
The day I joined, our managing director sent a message to everybody saying that no documents—internal or external—would leave the company without my review. He gave an example of how a well-written, thirty-page document fetched us a million-dollar project. “We knew we could deliver if we got the project, and the bridge between us and the project was our proposal. We understood this and worked hard on this. We took extra efforts to express ourselves fully with a professional and holistic appeal and that paid off. We got the project,” he told me later. This was a first for me: I saw someone at the top who felt documentation was an important part of quality assurance!
Documentation? What’s That?
We have all read a lot about technology, quality, certification, testing, automation tools, and processes. But how many of us have seen articles on documentation? There are few, not because documentation is not important, but because we have not yet realized its potential. There is still a perception in some that documentation is less significant than analysis, design, or coding.
But we should appreciate that fact that documentation projects have levels of maturity, just like the software process. The book Managing Your Documentation Projects by Joann T. Hackos is one of the best books on how project documentation can be standardized and how standardized project documentation improves a project’s quality. When compared to those levels, many software companies would not qualify as low-level documentation organizations, having only ad hoc documentation practices and no documentation experts. Most companies do not give a fraction of the importance to the documentation process that they give to their software development processes.
The fact is, careful documentation can save an organization time and money. Unless you are able to produce a document that makes the user comfortable and agreeable, no matter how superior your product might be, people will refuse to accept it. In my opinion, Microsoft’s MSDN is one of the finest product guides ever produced. Given the scale of products they offer, they would be lost without an established documentation standard. Today, even with their massive size, Microsoft launches products with professional documentation. Some may dismiss this by saying they have the resources that others lack. But did they always have the resources? At some point they placed a priority on documentation. That is one of the reasons that all their products are self-contained and successful. That saves millions of dollars, not only for Microsoft, but also for all kinds of businesses today.
Small companies also can gain by developing good documentation staff and practices. Often, a proposal fails to convert to a project because the proposal documentation lacks concise and expressive language, professional organization and polish. It may not be their inability to deliver, but their inability to express their capability.
For many, documentation is only about creating user manuals and online help, and even that documentation lacks an established process. When a project nears completion, a writer is called upon to document it. Someone sits with the technical writer and quickly runs through the application, telling the technical writer to prepare a user manual and to “please call on me if you have any questions…” The technical writer does their best to prepare a manual for the application. Then come the calls for more training or help over the phone, and half of the support staff will be answering queries on the user manual itself. Think how much time would have been saved if the documentation had been considered an important part of the process from the beginning.
Doing it is important!
It’s not that we don’t know how to do the documentation right. We just don’t think it’s important. The simplest thing one can do is to involve documentation people from project initiation and let them understand the project dynamics, technology, domain, and objective. We need to make sure the person who does the documentation—whether internal or external—understands the document audience well, and the purpose and objectives of creating the document. Once this is done, the documentation will be organized and articulated in a way that makes sense to the readers. The idea behind this is to take a proactive approach toward documentation. We will surely be better off planning our project documentation and executing it when the writers know the purpose and stay involved throughout the lifecycle.
To set our documentation standards in place, we need to integrate our software processes with our project documentation requirements; specifically, the various documents and records we create for our quality conformance purposes should adhere to set document standards. There might be the understanding that “we already have templates that we follow.” But I am not talking about the process we follow for certification’s sake (e.g., ISO or CMM). I am talking about synchronizing our real quality assurance with our documentation standards and other processes. Hence, it is very important that both our QA and documentation processes go hand-in-hand and that both departments work in synchrony. It actually has to be a synchrony triad—the processes defined by QA, followed by the technical people, and documented as per the standards.
Remember that change happens slowly. This morning, I spoke to our team of project owners and told them it is important to follow whatever standard templates and styles we publish. As I was enjoying my cup of coffee with a sense of satisfaction thinking about the morning session, I received a call from one of the project owners. He congratulated me on all my endeavours to bring order to the chaotic environment, and then he came to the point: “Kumar, I have a document to be reviewed. I wish I had time to format it in line with the dot template you sent me the other day; but I think you will appreciate that I have an important design review to attend. Can I send you the document and ask that one of your technical writers format it according to our style before it is reviewed?” I hung up the phone with a very hesitant “Yes.” Old habits die hard, but if we are persistent and patient, our efforts will pay off, and others will appreciate the importance of documentation to quality assurance.
About the Author- Kumar Raman was a business journalist with a leading national economic daily in India. He has varied newspaper experience, picking up knowledge in domains such as finance, banking, insurance, stock markets, etc. In information technology, he has worked on both Microsoft and Java platforms, playing a variety of roles from analyst programmer to quality facilitator to project leader.
_________________________________________________
Before joining my current organization, I had never heard people talking about documentation as a separate area worthy of much attention. The general opinion was that anybody who was free could do it—whether creating plans (e.g., the QA plan, test plan, or SCM plan), templates for reviews, status reports, time sheets, or the user manual. Having special technical writers was considered a good idea, but a luxury.
An Eye-Opener
During the interview for my current job, I talked at length about everything from software process to management and metrics collection. I did not stress documentation, even though it is my core area. I felt that talking about documentation would sound like I had no other skills, because I considered it the least marketable skill. Even when my interviewer asked about my documentation work and experience, and then started to tell me why he thought that documentation can make or break a project, I did not think he took it seriously. Nevertheless, I joined the company to head the documentation area.
The day I joined, our managing director sent a message to everybody saying that no documents—internal or external—would leave the company without my review. He gave an example of how a well-written, thirty-page document fetched us a million-dollar project. “We knew we could deliver if we got the project, and the bridge between us and the project was our proposal. We understood this and worked hard on this. We took extra efforts to express ourselves fully with a professional and holistic appeal and that paid off. We got the project,” he told me later. This was a first for me: I saw someone at the top who felt documentation was an important part of quality assurance!
Documentation? What’s That?
We have all read a lot about technology, quality, certification, testing, automation tools, and processes. But how many of us have seen articles on documentation? There are few, not because documentation is not important, but because we have not yet realized its potential. There is still a perception in some that documentation is less significant than analysis, design, or coding.
But we should appreciate that fact that documentation projects have levels of maturity, just like the software process. The book Managing Your Documentation Projects by Joann T. Hackos is one of the best books on how project documentation can be standardized and how standardized project documentation improves a project’s quality. When compared to those levels, many software companies would not qualify as low-level documentation organizations, having only ad hoc documentation practices and no documentation experts. Most companies do not give a fraction of the importance to the documentation process that they give to their software development processes.
The fact is, careful documentation can save an organization time and money. Unless you are able to produce a document that makes the user comfortable and agreeable, no matter how superior your product might be, people will refuse to accept it. In my opinion, Microsoft’s MSDN is one of the finest product guides ever produced. Given the scale of products they offer, they would be lost without an established documentation standard. Today, even with their massive size, Microsoft launches products with professional documentation. Some may dismiss this by saying they have the resources that others lack. But did they always have the resources? At some point they placed a priority on documentation. That is one of the reasons that all their products are self-contained and successful. That saves millions of dollars, not only for Microsoft, but also for all kinds of businesses today.
Small companies also can gain by developing good documentation staff and practices. Often, a proposal fails to convert to a project because the proposal documentation lacks concise and expressive language, professional organization and polish. It may not be their inability to deliver, but their inability to express their capability.
For many, documentation is only about creating user manuals and online help, and even that documentation lacks an established process. When a project nears completion, a writer is called upon to document it. Someone sits with the technical writer and quickly runs through the application, telling the technical writer to prepare a user manual and to “please call on me if you have any questions…” The technical writer does their best to prepare a manual for the application. Then come the calls for more training or help over the phone, and half of the support staff will be answering queries on the user manual itself. Think how much time would have been saved if the documentation had been considered an important part of the process from the beginning.
Doing it is important!
It’s not that we don’t know how to do the documentation right. We just don’t think it’s important. The simplest thing one can do is to involve documentation people from project initiation and let them understand the project dynamics, technology, domain, and objective. We need to make sure the person who does the documentation—whether internal or external—understands the document audience well, and the purpose and objectives of creating the document. Once this is done, the documentation will be organized and articulated in a way that makes sense to the readers. The idea behind this is to take a proactive approach toward documentation. We will surely be better off planning our project documentation and executing it when the writers know the purpose and stay involved throughout the lifecycle.
To set our documentation standards in place, we need to integrate our software processes with our project documentation requirements; specifically, the various documents and records we create for our quality conformance purposes should adhere to set document standards. There might be the understanding that “we already have templates that we follow.” But I am not talking about the process we follow for certification’s sake (e.g., ISO or CMM). I am talking about synchronizing our real quality assurance with our documentation standards and other processes. Hence, it is very important that both our QA and documentation processes go hand-in-hand and that both departments work in synchrony. It actually has to be a synchrony triad—the processes defined by QA, followed by the technical people, and documented as per the standards.
Remember that change happens slowly. This morning, I spoke to our team of project owners and told them it is important to follow whatever standard templates and styles we publish. As I was enjoying my cup of coffee with a sense of satisfaction thinking about the morning session, I received a call from one of the project owners. He congratulated me on all my endeavours to bring order to the chaotic environment, and then he came to the point: “Kumar, I have a document to be reviewed. I wish I had time to format it in line with the dot template you sent me the other day; but I think you will appreciate that I have an important design review to attend. Can I send you the document and ask that one of your technical writers format it according to our style before it is reviewed?” I hung up the phone with a very hesitant “Yes.” Old habits die hard, but if we are persistent and patient, our efforts will pay off, and others will appreciate the importance of documentation to quality assurance.
Monday, May 08, 2006
Open source does not make better code!
Open Source Does Not Make Better Code. Better Programmers Make Better Code.
Every now and then, I will see a "dispelling the myths of open source" type of article, blog, discussion, or whatever come my way, and it always seems to come around to the "more eyeballs means less defects" idea. For whatever reason, many open source proponents seem to believe that there is this rear guard of closed source folks spreading FUD about open source (even Microsoft has toned down their rhetoric lately). I think that less than 10% of the knowledgeable people out there actually claim that closed source is inherently more secure than open source. It definitely seems that most people (at least amongst those that voice an opinion) believe that open source software is inherently more secure than close source software.
In reality, what matters much more than "open" or "closed" source, is who is writing and reviewing the code, why they are doing it, and how long they are doing it. If I compare OSS project "Project A" to closed source project "Project B", and "Project A" is being written by five 15 year olds who just wrote "Hello World" last week for the first time, and "Project B" is being written by twenty crusty old timers, and "Project A" has a three person "community" and "Project B" has zero community inspecting the source, I still guarantee that "Project B" will blow "Project A" out of the water. Open source, closed source, it really does not matter.
Another thing that I find fallacious about this argument is the continual assumption that "open source" means "free." The two are not mutual ideas, not by a long shot. Nor are they mutually exclusive. Historically speaking, UNIX is "open source," but hardly "free." Indeed, the original BSD386 project was due to the desire for there to be a free UNIX. One of the reasons why so much System V source code has ended up in various UNIXs over the years is precisely because Sytem V was open source, and SCO’s lawsuits exist because System V was not free! On the other hand, there is plenty of free software that is not open source. Just got to any shareware repository and find a piece of freeware that is pre-compiled and that does not include source code.
What really matters is who is writing and reviewing the code, and money tends to attract the continued writing and review of code much better than whatever it is that actually motivates FOSS coders. Sure, some FOSS projects (Apache, Linux, BSD, MySQL, etc.) attract top talent, but just taking a look at Source Forge shows that the vast majority of Open Source projects go nowhere. To decide that FOSS is the best possible method of development and quality control based on Windows vs. Linux or Oracle vs. MySQL or IIS vs. Apache or PHP vs. Java, or whatever is silly. That is like saying that "a Dodge will always be faster than a Chevy" based upon a comparison between the Viper and the Corvette.
One of the reasons why these projects are able to attract such a large pool of developers and testers has less to do with the fact that they are "open source," but the fact that they are free. Only a minute percentage of Linux users ever touch their source code, let alone look at it (or even care about it). They are attracted by its phenomenal price/performance ratio. The same can be said for any FOSS project. Thanks to the widespread usage of various package managers, it is fairly uncommon for most mainstream Linux users to even compile from source, let alone modify compiler flags or make changes to source code. If these packages were closed source but still free, most of their users would still use them and be testing them.
The vast majority of lines of code are written under the radar of most people and do not get any attention. Try comparing a small sample of each type of software. Take a few dozen random items from Source Forge that are in at least a "release quality" state and compare them to a few dozen freeware applications. Then evaluate the difference between closed source and open source. I really cannot tell you what the results will be, but I do know that many of the open source pieces of code that I have used, outside of the "big stuff" (various UNIXs, Apache, MySQL, PostgreSQL) are not so great. For a project that lacks glamour, it is hard to attract someone to spend a large amount of time seriously working on it. It is that simple.
Mind you, I am not against open source or free software whatsoever! I use it all of the time in my day-to-day life, especially FreeBSD, Apache, MySQL, and Perl. But I also use a lot of paid and/or closed source software as well, like Windows, IIS, Oracle, Microsoft Office and so on. Some of my favorite pieces of software are simple shareware applications: Notetab Pro and ThumbsPlus immediately come to mind. It is very rare that I have ever wanted or needed to "look under the hood" of a piece of software. Tomcat/Jakarta required me to do so to find out why it was not behaving as documented. Indeed, most of the time that I have had to look at source code, it was to compensate for poor documentation, not to actually make any change or satisfy a curious itch. I was grateful to be able to inspect the source code, but I would have preferred better documentation instead.
Many of the arguments that I hear in favor of open source compare Windows to Linux, or Internet Explorer to Firefox. Windows vs. Linux just shows that the Linux coders are better, smarter, and more well organized than Microsoft's Windows coders. Microsoft has had something like ten years to get Internet Explorer right, and they still have not managed to get it nailed down. This is not news. The fact is, closed source shops consistently crank out many products better than Microsoft’s too. One can just as easily compare OS/2 Warp or BeOS or MacOSX to the version of Windows from the relevant timeframe, and Windows still falls short on many (if not most) benchmarks like security, stability, usability, and so on. I note that it is rare for someone to compare MySQL or PostgreSQL to Oracle or Microsoft SQL Server in an "open source versus closed source" debate. Why do we never hear ".Net versus Mono?" Even comparing Apache to IIS is difficult, because IIS is a significantly more ambitious piece of software than Apache.
Open source, in and of itself does not produce better code. Better coders and better testing produce better code. It is that simple. When a closed source shop has the better coders and better testing, they write the better software. When an open source project has better coders and better testing, they write better software. To think that just because a piece of code can be modified or inspected by anyone and everyone means that the best coders and testers will be modifying and testing that code is just not correct
--Article Written by J.JA
Every now and then, I will see a "dispelling the myths of open source" type of article, blog, discussion, or whatever come my way, and it always seems to come around to the "more eyeballs means less defects" idea. For whatever reason, many open source proponents seem to believe that there is this rear guard of closed source folks spreading FUD about open source (even Microsoft has toned down their rhetoric lately). I think that less than 10% of the knowledgeable people out there actually claim that closed source is inherently more secure than open source. It definitely seems that most people (at least amongst those that voice an opinion) believe that open source software is inherently more secure than close source software.
In reality, what matters much more than "open" or "closed" source, is who is writing and reviewing the code, why they are doing it, and how long they are doing it. If I compare OSS project "Project A" to closed source project "Project B", and "Project A" is being written by five 15 year olds who just wrote "Hello World" last week for the first time, and "Project B" is being written by twenty crusty old timers, and "Project A" has a three person "community" and "Project B" has zero community inspecting the source, I still guarantee that "Project B" will blow "Project A" out of the water. Open source, closed source, it really does not matter.
Another thing that I find fallacious about this argument is the continual assumption that "open source" means "free." The two are not mutual ideas, not by a long shot. Nor are they mutually exclusive. Historically speaking, UNIX is "open source," but hardly "free." Indeed, the original BSD386 project was due to the desire for there to be a free UNIX. One of the reasons why so much System V source code has ended up in various UNIXs over the years is precisely because Sytem V was open source, and SCO’s lawsuits exist because System V was not free! On the other hand, there is plenty of free software that is not open source. Just got to any shareware repository and find a piece of freeware that is pre-compiled and that does not include source code.
What really matters is who is writing and reviewing the code, and money tends to attract the continued writing and review of code much better than whatever it is that actually motivates FOSS coders. Sure, some FOSS projects (Apache, Linux, BSD, MySQL, etc.) attract top talent, but just taking a look at Source Forge shows that the vast majority of Open Source projects go nowhere. To decide that FOSS is the best possible method of development and quality control based on Windows vs. Linux or Oracle vs. MySQL or IIS vs. Apache or PHP vs. Java, or whatever is silly. That is like saying that "a Dodge will always be faster than a Chevy" based upon a comparison between the Viper and the Corvette.
One of the reasons why these projects are able to attract such a large pool of developers and testers has less to do with the fact that they are "open source," but the fact that they are free. Only a minute percentage of Linux users ever touch their source code, let alone look at it (or even care about it). They are attracted by its phenomenal price/performance ratio. The same can be said for any FOSS project. Thanks to the widespread usage of various package managers, it is fairly uncommon for most mainstream Linux users to even compile from source, let alone modify compiler flags or make changes to source code. If these packages were closed source but still free, most of their users would still use them and be testing them.
The vast majority of lines of code are written under the radar of most people and do not get any attention. Try comparing a small sample of each type of software. Take a few dozen random items from Source Forge that are in at least a "release quality" state and compare them to a few dozen freeware applications. Then evaluate the difference between closed source and open source. I really cannot tell you what the results will be, but I do know that many of the open source pieces of code that I have used, outside of the "big stuff" (various UNIXs, Apache, MySQL, PostgreSQL) are not so great. For a project that lacks glamour, it is hard to attract someone to spend a large amount of time seriously working on it. It is that simple.
Mind you, I am not against open source or free software whatsoever! I use it all of the time in my day-to-day life, especially FreeBSD, Apache, MySQL, and Perl. But I also use a lot of paid and/or closed source software as well, like Windows, IIS, Oracle, Microsoft Office and so on. Some of my favorite pieces of software are simple shareware applications: Notetab Pro and ThumbsPlus immediately come to mind. It is very rare that I have ever wanted or needed to "look under the hood" of a piece of software. Tomcat/Jakarta required me to do so to find out why it was not behaving as documented. Indeed, most of the time that I have had to look at source code, it was to compensate for poor documentation, not to actually make any change or satisfy a curious itch. I was grateful to be able to inspect the source code, but I would have preferred better documentation instead.
Many of the arguments that I hear in favor of open source compare Windows to Linux, or Internet Explorer to Firefox. Windows vs. Linux just shows that the Linux coders are better, smarter, and more well organized than Microsoft's Windows coders. Microsoft has had something like ten years to get Internet Explorer right, and they still have not managed to get it nailed down. This is not news. The fact is, closed source shops consistently crank out many products better than Microsoft’s too. One can just as easily compare OS/2 Warp or BeOS or MacOSX to the version of Windows from the relevant timeframe, and Windows still falls short on many (if not most) benchmarks like security, stability, usability, and so on. I note that it is rare for someone to compare MySQL or PostgreSQL to Oracle or Microsoft SQL Server in an "open source versus closed source" debate. Why do we never hear ".Net versus Mono?" Even comparing Apache to IIS is difficult, because IIS is a significantly more ambitious piece of software than Apache.
Open source, in and of itself does not produce better code. Better coders and better testing produce better code. It is that simple. When a closed source shop has the better coders and better testing, they write the better software. When an open source project has better coders and better testing, they write better software. To think that just because a piece of code can be modified or inspected by anyone and everyone means that the best coders and testers will be modifying and testing that code is just not correct
--Article Written by J.JA
Friday, May 05, 2006
Blogger's Introduction
An Indian by birth and a Bengali by choice, I believe diversity can be a source of strength rather than division, which is why I chose this profession- technical writing. As a technical writer I not only get a chance to write and work on diverse products and services but get a chance to mingle with various like minded folks from various communities. Knowledge shared is knowledge gained, and to a large extent my blog’s objectives is to share and learn technical writing knowledge amongst various quarters.
To speak a bit about myself: I am currently pursuing an Executive degree in Management from Alliance Business school, Bangalore and have a degree in Communications from Bangalore University. I started my career as a content writer for a portal called Indiainfo.com; my job responsibilities included planning, creating and managing portal news, editing articles and writing features for the portals’ Movies and Eves. I graduated myself from content writing to technical writing mainly due to my interest in technology related services. The first manual that I worked on was on a pocket calculator; it brought me a job and the company who took me on their hold was Xora Software Systems. I was with Xora for a year and a half wherein I learnt the intricacies of technical writing mainly the processes. During my stint in Xora, I developed user manuals, administrative guides, release notes, online help, marketing papers, build docs etc.
Success brings a lot of responsibilities, and my proactive nature was noticed by folks to entrust me to lead Bangalore Technical Writers Meetup. I took the onus and have been leading the group for a year and half now. It involves me in scheduling the meeting venues, topics, speakers, emailing the mailing list servs, managing the meetup website etc. Refer the meetup website for further details http://techwriter.meetup.com/2/; we are a group of more than 550+.
With two and half year of work experience, I find myself with Infosys Technologies as a Technical Communicator doing documentation alongside with Usability Testing. Also, I have done some work on Usability Testing of Documentation too. Apart from all this, I am a quizmaster and run the quizzing shows in Infosys, compose poems etc. Various articles of mine have been published online. In case, you are interested to have a brief look into my portfolio, please tinkle me sometimes. You can find me at holypriest@gmail.com
Happy Blogging!
To speak a bit about myself: I am currently pursuing an Executive degree in Management from Alliance Business school, Bangalore and have a degree in Communications from Bangalore University. I started my career as a content writer for a portal called Indiainfo.com; my job responsibilities included planning, creating and managing portal news, editing articles and writing features for the portals’ Movies and Eves. I graduated myself from content writing to technical writing mainly due to my interest in technology related services. The first manual that I worked on was on a pocket calculator; it brought me a job and the company who took me on their hold was Xora Software Systems. I was with Xora for a year and a half wherein I learnt the intricacies of technical writing mainly the processes. During my stint in Xora, I developed user manuals, administrative guides, release notes, online help, marketing papers, build docs etc.
Success brings a lot of responsibilities, and my proactive nature was noticed by folks to entrust me to lead Bangalore Technical Writers Meetup. I took the onus and have been leading the group for a year and half now. It involves me in scheduling the meeting venues, topics, speakers, emailing the mailing list servs, managing the meetup website etc. Refer the meetup website for further details http://techwriter.meetup.com/2/; we are a group of more than 550+.
With two and half year of work experience, I find myself with Infosys Technologies as a Technical Communicator doing documentation alongside with Usability Testing. Also, I have done some work on Usability Testing of Documentation too. Apart from all this, I am a quizmaster and run the quizzing shows in Infosys, compose poems etc. Various articles of mine have been published online. In case, you are interested to have a brief look into my portfolio, please tinkle me sometimes. You can find me at holypriest@gmail.com
Happy Blogging!
Subscribe to:
Posts (Atom)