Software Communities
Software communities are groups of people involved in the development or improvement of a piece of software, but can also be focussed on a programing language (model). This makes software communities a broad term. For this research, the focus will be put on Software Development Communities, communities centered around software development/improvement.
A software development community can be divided into two groups: developers and users. Developers create software, wich is used by the users. The users are able to give feedback about the software, wich the developers can use in the next version of that piece of software.
Users sometimes discuss the (lack of a certain) functionality in a software program on dedicated forums. This creates a feedback loop for the programmers. A smaller feedback loop is the bug-reporter. Organisations, like Apache and Mozilla, often have a part of their software dedicated to enabling the users to submit bugs[10]. This enables the developers to fix problems with the software in a much faster way than searching for feedback.
One special community is the Open Source Software community. Open Source means that the source-code of the software program is publicly available on the internet and that everyone can download and use the software for free[11]. Because the code is publicly available, it enables users who understand the code to look in the code for the source of bugs and failures and give feedback related to a piece of the code. It also enables other programmers to expand the program based on it's source code.