Monday, October 24, 2016

Exploring Open Source


I am on a mission to explore open source and I am learning how to teach it so I can incorporate it in my software engineering senior design project in Spring 2017. This is an account of some of my activities while exploring and learning.

FOSS Field Trip 

Part 1 - Exploring SourceForge

One of the best known of these FOSS project hosting sites is Source Forge (http://sorceforge.net/). I explored projects in SourceForge to gain an understanding of the key characteristics of a FOSS project.
I used the Search feature in the center of the screen to view applications in the area of
"Mountains" because I am a mountain addict.
There were 19 projects in this category?
Five different programming languages are used to write software in this category.
The top two programming languages used to write programs in this category are C++ and Lua, and there were only 3 other programs in other languages.

The meaning the different statuses of an open source project is the following:
Inactive - "no longer actively maintained"
Mature - "well established"
Production/Stable - "ready to promote for wide use"
Beta - "ready for rigorous wide user testing"
Alpha - "test phase by general users, unstable, preliminary release"
Pre-Alpha - "not ready for public, under development"
Planning - "under planning"

Comparing two projects in this category that have two different statuses did not give me a whole lot of choice because most of the projects were rather inactive, but some more than others :)
Project that was the most used was called "Fracplanet" according to the number of downloads (22 last week).
Fracplanet is an interactive application to generate and view random fractal planets and terrain with oceans, mountains, icecaps and rivers, then export them to POV-Ray format or Blender.
The programming language the project is written in is C++ with Qt and OpenGL.
The people who are likely to use the project are 3D modelers, which I take from the categories provided in the description and in the reviews.
The most recent change made to the project was in April 2016.
The project is not very active according to the code repository updates. Furthermore, it has only one committer.

I wouldn't use the project unless it is for a one-time need and fits me well enough, because it is not active enough with one contributor, even though somewhat recently updated.

Part 2 - OpenHub

In this activity, I used OpenHub to gather information about a Humanitarian Free and Open Source project named OpenMRS (https://www.openhub.net/).
For the OpenMRS Core project, I identified when the data in OpenHub was last analyzed and the last commit date. It was analyzed 25 days for the 3 months ago committed code; 2 months ago was the last code pull but no commit.
The main programming language used in OpenMRS Core is Java.
The lines of code of OpenMRS Core are 3,739,232 lines of code.
OpenMRS is written in 15 languages and the second highest number of lines of code is in JavaScript.
Of the programming languages used in OpenMRS, the language that has the highest comment ratio is Java.
The average number of contributors in the last 12 months was about 15.
The Top Contributors have been involved in the project for 3-5 years.
The average number of commits over the past 12 months was about 40 per month, so a little more than one per day.

No comments:

Post a Comment