In this chapter, we discuss the relationship of open source to components and frameworks. We also explore how open source can be of benefit in framework development, and how and why to draw the line between the open-source world and the commercial software world in the right place for your particular project. Although Chapter 8 concentrates on understanding, selection, and use of components and frameworks, this chapter deals with their development and ongoing evolution, specifically in relation to the open-source community.
OVERVIEW OF OPEN SOURCE
First, let us examine what open source is all about. We examine what the term means, how the concept translates into reality, and its impact on the software industry.
What is Open Source?
Open source is a term that is widely used in today's software industry, but it is not always clear what it exactly means. Many people have a specific idea in mind when they hear the term, but misconceptions abound.
Open source seems to imply free of cost, and often this is the case (although not necessarily). Many believe it means complete freedom to do what they wish to do with the software: to copy it, redistribute it, and so forth. This is not necessarily true at all.
Many people also have a negative reaction to open-source software, believing that some aspects of it will be harmful to their business or organization. Interestingly enough, they are sometimes right – though more often wrong.