The role of technical forums in the progress of open source

Image by opensource.com
I am a huge advocate of the concept of open source software. As a society, we are at a point where information sharing is more critical than ever. Technical forums support the mission of open source in multiple ways. First, they allow programmers to work outside of their expertise. Second, forums allow people to share their experiences with software. Last, they allow scientific researchers who are not always (not usually) well-trained programmers to carry out their research with an entire community to help them make design decisions and help them through technical difficulties.
Very frequently situations arise in which people work in a sub-optimal language or framework because they simply are not aware that there is a better choice! Being a member of a technical community by way of a forum allows them to inquire to the tune of "I am trying to do XYZ. I was planning to do this in C++, but it seems quite awkard. How would you proceed?" Answers to this type of question allow the person to eventually work in the "correct" language or framework. They can also feel comfortable doing so even if they don't know the language very well (or at all!) because they know that if (when!) they run into a problem, there are literally hundreds of thousands of people that they can call out to for help.
Sharing experiences with open source software
A typical conversation may go something like the following:
Question: I've been trying to use OpenGL to render a sphere, and I am running into XYZ problem
Answer: OpenGL is a very low-level language that you should probably not be using for this application. Instead, you should check out the VTK project, which is a layer on top of OpenGL that allows you do things like you are trying to do very simply.
You may be thinking, "Couldn't the person have found this project using a search engine?" Well, probably in this case. But there are many cases in which the open source tool has not yet gained a lot of notability but can still be exactly what someone needs. This pointer from a fellow programmer can help lead people in the right direction and may provide exactly the spur they need to start working on an open source project!
Allow scientific researchers to focus on their research rather than technical issues
My formal training is in electrical engineering. There was not much need for any serious programming skills outside of a little bit of MATLAB. When I decided to pursue a PhD in computer vision, I quickly realized that the language of choice in this field is C++. I found that the better I was with C++, the faster I could turn ideas/concepts into experiments. After many web searches turning up less-than-adequate answers to my questions, I decided to try out the concept of posting/asking questions on forums. I signed up for a handful of them, though DaniWeb.com from the start looked the most professional and seemed to have the most activity.
I wear two hats at DaniWeb. First, my learner hat. The quality of answers I have received in my time at DaniWeb is outstanding. There are several members who are true experts of the art and science of programming, and they have helped me immeasurably. The fact that access to these experts is provided for free via their will to share and spread information is absolutely a treat to be a part of.
As I work primarily in C++, I'd say about 95% of my DaniWeb activity is in the C++ forum. However, it is very convenient that DaniWeb hosts forums for almost all languages because occasionally I will need to do something in a language that I am not comfortable with. Instead of having to go looking for a new forum, signing up, figuring out how to use their system, wondering if the people will be nice/helpful/etc, I can simply hop over to one of the other DaniWeb forums, and the environment is the same great environment I am used to in the C++ forum. This last 5% is often the most helpful because it is typically a question well outside of my expertise.
I'd say the best part about DaniWeb is the sheer volume of the user base that it has amassed. It's definitely a chicken-or-the-egg problem--if you build a nice website, people will come to it. If you have a lot of people, it is motivating (psychologically and financially) to build a good website. Their large user base (over 900,000 registered users) allows for a wide variety of knowledge to be brought to the table. It also allows for questions and discussions to evolve very quickly, as there are always (24/7) people browsing the forums, asking and answering questions. That, again, certainly encourages people to join and participate on DaniWeb.
From helping students and researchers, to fostering a sense of community among programmers, to allowing people to work as efficiently as possible, forums are an amazing asset. I encourage everyone to take some time to give back communities such as these to ensure that the cycle continues.






3 Comments
http://stackoverflow.com/
Daniweb is not the best choice for open source enthusiasts. StackOverflow is 10 times better. I mean, I've seen some answer on daniweb and most of them are either completely wrong or posted by someone who has no clue about the topic. I like my questions to be answered by real pros and fast. When an article mentions only one tech forum and completely omits StackOverflow it really sounds like an advertising.
Yes, StackOverflow certainly has its place. I use it as well. While I have certainly received excellent answers there, I don't feel nearly the same sense of community.
I did not intend this article to be a comparison of forums - rather to share my experience and attempt to explain how this type of experience can be beneficial to programmers, particularly ones who work on open source.
www.daviddoria.com