Lab 1 : Open-source software packages
·
Introduction:
VLC
media player is a free and open-source software which serves as a player for nearly
every multimedia file. It is available for desktop’s operating systems, as well
as in many popular mobile’s operating systems such as Android, IOS, Windows
Phone, etc. The software is developed by the VideoLAN non-profit organization
and is licensed under GPL-2.0 (GNU General Public License).
·
Code contributions
In
order to contribute codes to this open-source software, one must subscribe to
one of the available mailing lists so that secure communications can be
established between developers. The lists' members are hidden to everyone except for the
list administrators. All posts will be available for everyone in the mailing
list to view and comment on. Besides the mailing lists, one can also join the
software’s IRC channel to get help on code development from many developers. Bug-tracking
system for this software is also available for everyone to keep track of the
reported bugs and errors to fix them.
·
Successful code acceptance
The
issue was discussed by three people. The contributor, Felix Paul, gave a short
description of what the problem was and provided a snippet of code that was
supposed to fix the problem. He/she attempted to fix the issue which involved
the loss of information for Digest Authentication due to reconnection. It took
about three days for an active contributor in the community, Rémi
Denis-Courmont, to reply. When I searched for more info about this member, I
found out that Rémi was an online representative of a consulting service
business whose website can be accessed here: https://www.remlab.net/.
Apparently, Rémi is an expertise in the development of this open-source software
for more than fifteen years. The code was quickly handled, since the members
viewed and replied each other’s messages as soon as possible in order to fix
and make changes to the code snippet. In the end, the code was accepted by Thomas
Guillem, another member who was in charge of many development stages for this
software.
The
advantage of this approach is that it’s easy to communicate with all the
developers who are currently active in the community. Whenever a patch is sent
out, everyone can view it and response back to the contributor as soon as they
want. It’s as easy as sending an email to a friend, as all you need to do
subscribe your email to the community’s mailing lists in order to get involved
in the development of this software. The disadvantage is obvious in this kind
of an approach. There will be spam and topics that are completely unrelated to
the software. By subscribing our’s email to the mailing lists, we can also
expose ourselves to virus and malware sent from other members.
·
Introduction:
LibreOffice
is a free and open-source office suite which is a project created by The
Document Foundation. LibreOffice offers many similar features to Microsoft
Office such as word processing, slideshows, diagrams and drawings, spreadsheet
managing, etc. The main key difference between them is that one is free to use
and the other one requires purchase for legal use. LibreOffice is licensed
under Mozilla Public License v2.0.
·
Code Contribution:
This open-source project has a
community for its developers on Gerrit. Gerrit is a free, web-based tool that
is mainly used for code review. It also integrates closely with GitHub, a
distributed version control system. Programmers that are interested in helping
the project will need a Gerrit account in order to submit patches on there for
the core developers to review them. They also need to have access to Bugzilla,
a bug tracking system, in order to assign one or more reported bugs from the
project to themselves so that no one will work on fixing the bug(s) they’ve
chosen. Weekly updates are required for everyone so that they will know if
there’s anyone getting stuck in their bug fixing process.
·
Successful code acceptance
This code review involves four
people. The contributor posted a link to the patch he made as well as a link to
the reported bug related to the code. The problem seems to be that LibreOffice
will crash whenever a database file is opened. The code was reviewed by the
core developers of the project. After one core developer reviewed and verified
that the code was working okay, other core developers would go on to review the
code again and test it to make sure everything was fine.
You could see the “+1”
and “+2” besides the “verified” and “Code Review”. “+1” means that the code run
successfully and “+2” means it will be merged with the project. It usually
takes around one to two days for the code to be reviewed. In this particular
example, the code was reviewed on the same day that it was posted. Finally, the
contributor did one last review and merged the patch. The patch will be
available in the next software’s update.
The advantage of this approach is that all
code contributions are posted and stored on Gerrit. It’s much more secure than
using mail like the previous approach by VLC media player. I see no downside in
using Gerrit for code review. Gerrit is user-friendly and it shares many similar
features to GitHub. This is the kind of approach I would recommend for any kind
of contribution to an open-source software.
Comments
Post a Comment