From Foss2Serve
Jump to: navigation, search

Charles (Chuck) Dierbach is an Associate Professor of computer science in the Department of Computer and Information Sciences at Towson University outside of Baltimore Maryland. He received his Ph.D. in computer science from the University of Delaware.

Dr. Dierbach has been teaching at the university level for over thirty years. He regularly teaches introductory computer science courses, as well as an undergraduate and graduate course in object-oriented design. He has also co-developed and taught a computational thinking course for non-majors. He is the author of an introductory computer science textbook using Python.

The research interests of Dr. Dierbach include analogical reasoning and computer science education.

POSSE Activities

Part A

Introduction to IRC
How so the people interact?
By just jumping in.
What is the pattern of communication?
Generally back-and-forth between two or three individuals at a time.
Are there any terms that have special meaning?
Yes - vm, git, opencv
What advantages might IRC have over other real-time communication methods? Are there potential disadvantages?
Main advantaged of IRC is that a log of the conversation can be kept. Advantages of real-time methods would mainly be more time efficient
Other observations?
How much help participants are to each other in real time
Join and Observe Channel Discussion
The Sugar Labs Project
The Contacts section of the three teams looked at are designed to list coordinators and people on the project, as well as means of communication of the team. However, only one team current has coordinators (the Activity Team, while the Development and Documentation teams have vacancies for these position. For communications, two use an IRC channel and a mailing list, while one (the Development Team) lists only an IRC channel. For the Documentation Team, a list of editors is provided.
The types of tickets found on the Sugar Labs bug tracker are "defect" and "enhancement". Information for each ticket includes a ticket number, summary of the issue, status (either "new", "assigned", or "reopened"), the priority (either "urgent", "high", "normal", "low", or "unspecified"), and a possible reference to the milestone number that the ticket is associated with.
The Sugar Labs project uses a local repo rather than a web-based common repository. This is evidenced by its use of Git. The Roadmap of the project is updated at the beginning of each release cycle.
The Sahana Eden Project
In the Developers page of the "Want to Contribute?" section of the project there are clear instructions on how to communicate within the community, with slides providing technical training, instructions on how to install the project, and provided developer guidelines. The Testing page also provides some information for potential contributors. The Designers page lists ideas for tasks that may be attempted, including the development of themes and usability testing.
Comparing the pages of the Sahana Eden project to the Sugar Lab project, the Sahana pages are more welcoming to new contributors, whereas the Sugar Labs project pages provide more detailed information organized for those already familiar with the project.
The organization of bug tickets in the Sugar Labs project is organized in a table format, in which the rows can be sorted by any of the ticket attributes (ticket number, status, etc.). The tickets in the Sahana Eden project are grouped in separate tables organized in various ways. The types of tickets include "defect/bug", "documentation", "enhancement", and "task". Information for each ticket includes a ticket number, summary of the issue, component and version that it applies to, the priority (either "major", "minor", or "trivial), the owner, " status (either "new", "accepted", or "reopened"), and the date created.
The Sahana Eden project uses a web-based common repository, indicated by its use of GitHub. Information about the roadmap and release cycle includes milestones (that are both numbered and named), with the number of closed and active tickets given numerically and graphically, and bullet lists of changes.

Part B

FOSS Field Trip: Forges and OpenHub
Searched for projects related to music. 3539 projects came up, involving 15 different programming languages, the top four being C++, Java, C, and C#. Most used projects were Midi Sheet Music and OBS music stream player. This was determined by the number of weekly downloads. The Midi Sheet Music project plays and displays both the sheet music and piano keyboard of midi files. It is written in C# and Objective-C. Potential users are amateur and professional musicians. Can tell this from the comments in the user reviews.
The project was last updated 7-31-2013. The project is not very active, based on the date of last update, and the unresolved postings in the bug report. Could not find a list of committers for this project. I am interested in trying to use this software.
The main language used in the OpenMRS project is Java. The project consists of nearly four million lines of code (according to the Nutshell summary) but just over six millon lines according to the Languages page.
The project is written in 15 different languages. JavaScript is the language with second-most number of lines of code (after Java). The Java code has the highest comment ratio. Average 12-month commits from top contributors was 56. The average number of commits from all contributors is much lower given the large number of contributors with one or two commits.
Possible HFOSS Activities in My Classes
I plan to explore the Sahana Eden project for use in my Object-Oriented Design class. Specifically, I would like to find activities that would make students aware of the use of design patterns. This might include identifying the use of design patterns within the project code, finding places where design patterns may be used, documenting the use of design patterns within the project, etc.
Bug Tracker Activity

In the Bugzilla activity Report given to review, the ID column provides a ticket number; the Product column contains one of a large number of Gnome-related projects; the Status column contains either UNCONFIRMED, CONFIRMED, IN_PROGESS (if open bug) and RESOLVED or VERIFIED (if closed bug); the Resolution column is either empty (if an open bug), or one of FIXED, INVALID, WONTFIX, DUPLICATE, or WORKSFORME (for closed bugs); and the Summary column contains a description of the bug. While this particular report did not show the remaining column to identify, they include Sev (Severity), a description of how sever the bug is; Pri (Priority), a description of the priority; and OS, the operating system that the bug was observed on. Found this information by clicking on the Reports link at the top of the page.

The bugs on the Bugzilla report page observed were listed in the following order by their status: unconfirmed, new, assigned, reopened, and need. This list includes status values not found in the documentation.

Looked at ticket 689378 - Memory leak. There does not appear to be recent discussion about it. Last comment was in 2013. The ticket is labeled as "NEW", so I assume that it is a current bug. The bug is currently assigned to "gnome-shell-maint". To fix this, would have to look in the code. There are various languages used in this project, and I cannot find the language related to this bug (although I would guess it is C++).

Also looked at ticket 517888 - Missing events of buttons 4 and 5. There also does not appear to be recent discussion about this issue either. The last comment was in 2013, although the ticket is labeled NEW. The ticket is assigned to "At-spi maintainer(s)". I assume that this involve Java code in Swing. So would need to investigate the event handling used in the Swing framework.

Personal tools
Learning Resources
HFOSS Projects