Assignment 2 - SatyaVinay/OpenSource GitHub Wiki
###Project 1: Glimpse###
As a beginner, new to the open source project, I have chosen “Project Glimpse”, which gives me an opportunity to work on both ‘Coding’ and also the ‘Documentation’. Glimpse is a web debugger and diagnostic tool for ASP.Net under the Apache 2.0 license. It is a very popular and successful open source project, however not very well known to many people. It helps to improve web applications by inspecting web requests as they happen, providing insights and tooling that reduce debugging time. Link to detailed information on this project can be obtained at http://getglimpse.com/
#####Evidence of developer interest:
The original developers behind Glimpse are Nik Molnar and Anthony van der Hoorn. There is also a dedicated and enthusiastic team behind this successful project. The team can be reached through E-mail, OR joining google groups, blog and GitHub. The details can be found at http://getglimpse.com/Community/
The blog is regularly updated with new releases and information about the project. The blog can be visited via http://blog.getglimpse.com/
#####Evidence of user’s interest (i.e. do people use it?):
Many people are using this tool with average 77 downloads per day and the statistics of must have score is around 14.2. There is evidence that people using this tool are highly satisfied and can be verified by visiting http://www.hanselman.com/blog/IfYoureNotUsingGlimpseWithASPNETForDebuggingAndProfilingYoureMissingOut.aspx
#####Appropriateness of document:
The documentation is well maintained with project and technical details. There are screenshots and step by step procedures of the project are explained in detail. There is an issue tracker on GitHub where the contributors can report the bugs/issues and also Wiki where one can edit/contribute to the project.
#####Readability and maintainability of the code:
The codes listed have well defined classes and very detailed comments which makes it easier to read. However, a few of the codes have no comments, and this makes it difficult to understand. It would have been useful if all the codes had comments. The codes are available on GitHub https://github.com/Glimpse/Glimpse
#####Evidence of other appropriate software engineering practices:
There is no documentation to conclude if agile methodology is being followed? The issue tracker on GitHub shows the defects /issues are constantly being addressed, and the new releases are updated regularly.
#####Opportunities to contribute to the project (technical and/or other needs, besides financial):
There are many ways one can contribute to this project. Glimpse maintains several issues that can be addressed by the beginners. The link to the jump in on GitHub is https://github.com/Glimpse/Glimpse/issues?labels=Jump+In&milestone=&page=1&sort=updated&state=open
They are looking for people who are interested to help improve their documentation by editing, introducing various tutorials and concepts of API. All of these can be done on GitHub Wiki. People can report issues, fix the bugs, join their developer’s team and contribute their ideas through GitHub issue tracker.
###Project 2: MCT – Mission Control technologies###
When doing my research for this class, I really got very curious with this particular project from NASA, which is part of ‘Government Applications’. The MCT project was developed at the NASA Ames Research Center for use in spaceflight mission operations and also could be used in any other data monitoring and control applications. Since it uses an open architecture and open standards, it can be customized to any environment, workflow and operating requirements by simply adding new objects, views or data sources. It is a platform-independent Java application licensed under Apache 2.0. The MCT framework was released to the open source community on May 9, 2012. The link for the website is below https://sites.google.com/site/openmct/
#####Evidence of developer interest:
The GitHub repository shows 13 contributors. The background of this architecture was developed as a generic framework for developers and deployed with a specific set of modules as an application at Johnson Space center. User composition empowers users to make rapid changes to the software, within the constraints of organizational policy, without the need for code changes from platform service providers. In turn, platform service providers have the capability to provide certified, yet flexible systems. More information can be found at https://sites.google.com/site/openmct/learn-more/background
#####Evidence of user’s interest (i.e. do people use it?):
The MCT was deployed in the Johnson Space Center Mission Control Center, where it is certified for International Space Station operations. The initial MCT deliveries provide functionality for telemetry and monitoring, providing flight controllers with a user interface that allows them to build their own monitoring displays, and provide developers with a toolkit for adding functions onto MCT’s modular architecture. Although it was used for space station operations, MCT platform is easily adaptable to other users and domains, both inside and outside the aerospace community. The existing MCT platform is especially well suited to data monitoring tasks and can be extended with plugins to perform control functions.
#####Appropriateness of document:
The documentation is very limited. Although, they have enclosed a lot of useful information, it could have been more detailed and user friendly. Link to the documentation can be found at https://github.com/nasa/mct/wiki
#####Readability and maintainability of the code:
The code is well commented at some segments but lacks explanation at other sections. The code can be found on GitHub at https://github.com/nasa/mct
#####Evidence of other appropriate software engineering practices:
The issue tracker for this project on GitHub is active. Looking at the history they had a couple releases in which they fixed and closed the defects. Looking at the current discussion board, the new opened bugs could be fixed in upcoming releases, which has no due date. The issue tracker and project’s milestone can be found at https://github.com/nasa/mct/issues?milestone=6&state=open
#####Opportunities to contribute to the project (technical and/or other needs, besides financial):
They have mentioned that interested contributors are welcome to participate in bug fixes and feature enhancements. Personally I feel, documentation can be made more detailed and user friendly, and use of detailed comments in all code segments. It will be interesting to learn, how this platform can be implemented in other projects.
###Project 3: Swot###
The first time I purchased my laptop, it was very interesting to see how an academic discount was processed in the apple store just with my .edu mail address here in the USA. However, my cousins were not able to process academic discounts in spite of being students in a reputable university in India. I stumbled on the SWOT project doing research for this homework assignment. I feel this project has a need for improvement in all aspects including coding, documentation, testing etc. Swot is a community-driven library for verifying the domain names and email addresses which are tied to a legitimate university or college - more specifically, an academic institution providing higher education in tertiary, quaternary or any other kind of post-secondary education in any country in the world. It is developed using ruby and made use of Ruby gem software. And licensed under MIT.
#####Evidence of developer interest:
There are 24 contributors to this project. They have maintained an active issue tracker. There is no information regarding the developer’s interest and they have not mentioned anything about the project summary. Below is the link to the issue tracker https://github.com/leereilly/swot/issues?state=closed Evidence of user’s interest (i.e. do people use it?): Since there is no information of any users or documentation for this project, we can assume that it’s still in its developing stage. With more contributors, it will likely develop into a full scale open source project.
#####Appropriateness of documentation:
There is no documentation created by the developers’ or the contributors. Documentation plays a significant role in understanding the technical part as well as the project details. Also, the developers have not specified the details of required information to the potential contributors.
#####Readability and maintainability of the code:
More comments can be added to the code so that it becomes easier to read and understand the steps and function of the code. The code is on GitHub at this location https://github.com/leereilly/swot
#####Evidence of other appropriate software engineering practices:
It is very difficult to understand or work on this project as it lacks documentation and still in the developmental stage. The project summary does not mention the technical details of the project. They have established an issue tracker. By looking at the issues that has been fixed, we can understand that the group (contributors and developers) are active.
#####Opportunities to contribute to the project (technical and/or other needs, besides financial):
In project summary we can see that they have mentioned known issues that needs to be addressed.
- You can search the library only by email and domain names and not by IP addresses.
- The email address that are affiliated to the universities / college could belong to a student, faculty, staff member, alumni, or a contractor.
- There could be false positives in the code, missing institutions and typing errors.
This project certainly needs help with documentation, detailed explanation on the objectives and advantages of the project. It also needs a website so that all information can be complied and reached easily in one place.