THE OPEN SOURCE MOVEMENT

WHAT IS OPEN SOURCE?

Open Source is a software available for free in which the users are able to read, add to, and modify the code. It was first invented by the Scandinavian hacker Linus Torvald. In a blog Torvald wrote “I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones.” which grew into a mainstream operating system called LINUX.

Linus Torvald

Linus Torvald

FREE AND OPEN SOURCE SOFTWARE MOVEMENT

It is a social movement that supports the use of open source licences among some or all software. It was started by the programmers who believed that the codes and software should be available for free for public use. The open source project publish all the source codes on the Internet under licence that allows free redistribution and contribution. Free software and access to open source codes would advance computer science at an exponential rate.

OPEN SOURCE ADVENTAGESD AND DISADVENTAGES

Adventages

Open source software has a lot of advantages. First of all it is free to use and share. It Minimizes computer bugs and computer security risk. It quickly eliminates the problems because a lot of people analyze the codes and try to spot, and fix some glitches and bugs as soon as they occur. The open source software is not dependent on any company and it doesn’t require complex licences. This is beneficial for new analytic start-up companies as they don’t have to worry about the legal issues of analytic programs they using throughout an office building.

Disadventages

The disadvantage of open source software is that it is not regulated or protected. Some users who access the source code might not have enough knowledge to modified it but still try to do it. Some other users can easily infect malware and harm other users. Another problem can occur when somebody removes the package that you based all your project on. There is nobody you could address this problem to.

OPEN SOURCE VS PROPRIETARY SOURCE

The Differences Between Proprietary and Open Source Software

Open Software Proprietary Software
Purchase with its code source Purchased without its source code
User can get open software for free of charge User must pay to get the proprietary software
Users can modify the software Users cannot modify the software
Users can install software freely into any computer User must have a license from vendor before installing into computer
No one is responsible to the software Full support from vendor if anything happened to the software

HOW DO OPEN SOURCE SOFTWARE DEVELOPERS MAKES MONEY?

Open source software is available to use, modify and distribute for free. It is used by individuals as well as companies. People who create the open source software have to invest a lot of effort to write or fix the codes. They surely love programming but there is also a number of ways to make a living out of coding:

  1. Open support and services - one method is to provide a service with the open source software:
  • compiled binaries
  • maintenance services
  • lectures and workshops
  1. Self instructional material - The developer of a package is also the expert of this package, they can offer the software for free but if the software is complicated or popular, they might offer paid educational materials:
  • Documentation (PDF files, books, etc)
  • Tutorials and examples
  1. Paid Plugins and Enhancements - The developer can offer only half of the software for free use or can add paid extensions to the basic software:
  • paid extensions
  • enterprise versions
  • R is an example of this method
  1. Source corporate sponsors - Some companies might want to hire the inventor of a genius software to work in their company or to create a special software exclusively for the company.

PACKAGES

The users and programmers create packages for open source software which makes programming easier and more comfortable. The number of packages changes everyday and it grows rapidly. For example the number of packages for R is currently 11344, they are available in the CRAN database.

CRAN Packages Overtime - Creating an R graph using “ggplot2”.

The data used to create the data frame “packs” and a graph was derive from this link

num_pack<- c(100, 300, 700, 1300, 2050, 3500, 5000, 11300)
years<- c(2002, 2004, 2006, 2008, 2010, 2012, 2014, 2016)
packs= data.frame(years, num_pack)
packs
##   years num_pack
## 1  2002      100
## 2  2004      300
## 3  2006      700
## 4  2008     1300
## 5  2010     2050
## 6  2012     3500
## 7  2014     5000
## 8  2016    11300
#install.packages("ggplot2") #to create graphs
library(ggplot2)
ggplot(packs, aes(x=years, y=num_pack)) + geom_point() + geom_line() + labs(x="Years",y="Number of Packages", title="CRAN Packages Overtime")

This graph shows the sharp increase of R pakages on CRAN over the past 15 years! It has increased from 100 packages to over 11,000. It is amazing what people will think of next.