User:Marcos

From Foss2Serve
Jump to: navigation, search

Marcos Sanchez-Elez is a Assistant Professor at Arquitectura de Computadores y Automatica Department at Complutense University (UCM), SPAIN. And Computer Engineering Degree coordinator. Marcos is deeply involved in all aspects of the Computer Science program including content, review, and assessment. Moreover, he is part of the university free and open software advisory council, it promotes the usage of FOS in the subjects and.

- ResearchGate Profile [1]

Contents

Part A

Intro to FOSS Project Anatomy

The Sugar Labs Project

  • Community

The roles that I think would be most applicable for my students are:

- Educator: They are used to study through digital media and interetsing in teaching digital concepts. Moreover, the teaching activity ensures that the students who explain the concepts to a third party acquire those concepts better.

- Translator: They could translate technical and non technical concpet to Spanish

- Developer: they can programn in Python, C, and JavaScript, they know about web app development and GNU/Linux system administration.

  • Tracker:

The general process for submitting a bug:

1) If you would like to find a bug, first check if that part of the project is beeing modified

2) Then download the last version

3) Finally visit the issues tab of the repo, and hit the big green button to report your issue (https://github.com/sugarlabs/sugar/issues)

Indicate the types/categories of tickets listed on this page as well as the information available for each ticket.

The types of tickets are: defect, enhancement, task. It is also necessary to indicate the priority (Low, Medium, High, ...).

Inside each ticket you have to indicate severity, bug status, version, description ...

  • Repository

Record the date of the last commit: June 5 2017

  • Release cycle

Describe how the release cycle and roadmap update are related.

The Release cycle and the Roadmap updated are related because the roadmap is aupdate at the beginning of each release cycle. Then the roadmap includes detailed schedule of release dates while the realse cycle have to ensure that all the module releases are available by this scheduled.

  • Communication

IRC: https://wiki.sugarlabs.org/go/Internet_Relay_Chat

Mailing lists: http://lists.sugarlabs.org/

Blog: http://planet.sugarlabs.org/

Wiki: http://wiki.sugarlabs.org/go/Welcome_to_the_Sugar_Labs_wiki


The Sahana Eden Project

  • Community

Developers, Testers, Bug Marshals, Newsletter Report Writers, Documenters, Translators, Designers, SysAdmin and GIS Specialists.

Broadly speaking, the two projects have the same roles but with different names. However, there are three specific roles related with bug, test and SysAdmin that in Sugar-Lab project is inside the Developer role. In sugar-lab project there is a people person role that should have more social skills and have more responsibility than the role of Newsletter Report Writers

The roles that would be most applicable for my students are developers, testers, translators and Bug Marshals

  • Tracker

There are more information than in the Sugar-Lab page, I found the component column very interesting. Inside each ticket the information is very similar in the two analayzed projects.

The types are: enhancement, task, documentation, and defect/bug

  • Repository

Record the date of the last commit: June 5 2017

  • Release cycle

There are three different roadmap, related with three different milestone. But the roadmap schedule is not as clear as in the case of sugar-labs project.

  • Communication

IRC: http://eden.sahanafoundation.org/wiki/Chat Mailing lists:

Wiki: http://wiki.sahanafoundation.org/community/mailing_lists

Google Groups: https://groups.google.com/forum/?fromgroups#!forum/sahana-eden

Part B

FOSS Field Trip (Activity)

Part 1 - GitHub

https://github.com/

  1. How many repositories are there in this category? 13,373 repository results
  2. Click on the first project. Click on Graphs, then Commits. What information does this page provide? The commits stored by date. You can also access to the two branches. You can also check the colosed pull request and the closed issues. 28 commits, 2 branches
  3. Go back to the main page and use the Search feature to look for humanitarian applications. Type the word humanitarian in the search box and click Search.
    1. How many repositories are there in this category? 300
    2. Locate the HTBox/crisischeckin project. When was the last update? 04/22/17
    3. Use the Search feature to look for disaster management applications. Type the phrase disaster management the search box and click Search. How many projects are there in this category? 150

Part 2 - OpenHub

  1. https://www.openhub.net/
  2. In the search space, enter: education´
    1. 347 pages - 3470 projects
    2. KDE Education should be the second result. Is any of the code located on GitHub? The SCM type for all projects is Git
    3. How many similar projects are listed? 10
    4. Information about the project? Name of project and whether it is active, the programming language and the license
  3. Perform searches for both humanitarian and disaster management.
    1. How many projects were returned for each search? 34 Humanitarian projects and 54 disaster management projects, the last page of the search results only have 4 pages in both cases
    2. Most of them have activity information not available, I think there is a bug with the activity.
  4. Click on Organizations.
    1. What information is provided on this page? Most active organizations, Newest organizations, Organizations by 30 Day Commit Volume and stats by four sector with more commits/affiliate volume
  5. Search for OpenMRS.
    1. When was the last commit for OpenMRS Core? About two months
  6. Go back to GitHub and search for OpenMRS Core.
    1. When was the last commit? June, 8 2017
    2. Why do you think these sites have different information? I think github is mainly designed for developers, there are more information about branches, pull request ...
    3. What would be the benefits/drawbacks of using both GitHub and OpenHub to search for a project?

Project Evaluation

Evaluation Factor Level (0-2)

Aspect Score Comments
Licensing 2 Copyleft License
Language 1 Java
Level of Activity 2 Last quarter very good activities
Number of Contributors 2 It seems that there are only 6 contributors really active
Product Size 1 Not sure
Issue Tracker 0 No issue tracker found
New Contributor 2
Community Norms 1 Not very easy to locate
User Base 2 https://atlas.openmrs.org/
Total Score 13

Intro to Copyright and Licensing (Activity)

Identify the license for the following projects:

Project License
https://github.com/openmrs/openmrs-core Mozilla 2.0 Free
https://github.com/apache/incubator-fineract Apache 2.0 Open
https://github.com/regulately/regulately-back-end It seems (c)

FOSS in Courses

This work is the result of a very nice discussion with Sara Roman with whom I share an Ethics and Law course at UCM (Course wiki in English (created by the students))

The contents of this course deal with Social and Ethical issues in Computer Science Professional Practice. Our students have to develop a Social Impact group Project as part of the course. We encourage them to participate in a FOSS project and we think that any of the HFOSS projects we are reviewing are very suitable for them.

We believe our students could participate in the following activities:

  • Activities related with their programming background (they are in their last year of CS):

Diagnose a bug

- Test a beta or release candidate

- Fix a bug. For very motivated students only

- Report bugs

- Run usability studies

  • Non-technical activities in which their technical background is very valuable:

- Suggest new features and options

- Build a glossary of technical terms (already done projects like this)

- Package the application for a particular Linux distro (or other OS)

- Read relevant standards and make sure the program follows them

  • Non-technical activities that we believe they would enjoy to collaborate with:

- Translate the documentation (and program text) to another language

- Correct spelling and grammar mistakes in documentation – Check the information pages in Spanish

- Submit graphics (icons, backgrounds) to use in the program. For very motivated students only

- Provide training to new Linux users (already done projects like this)


   Furthermore, before graduate the student will be required to complete a  Degree Final Project, wherein any HFOSS project suit perfectly

Part C

Collective Reports

These results have been obtained from https://bugzilla.gnome.org/

  1. Click on the “Reports” link on the top of the page.
  2. Click on the "Summary of Bug Activity for the last week".
  3. How many bug reports were opened in the last week? How many were closed? 118 reports opened versus 51 closed
  4. What was the general trend last week? Were more bugs opened than closed or vice versa? Apart from the above calculations performed, the color code indicates more open reports (amber) than closed (green), so the tendency is that of growing reports about bugs
  5. Who were the top three bug closers? Why is this important to know?
Name #Bug closed
Nick Wellnhofer 34
Jeremy Bicha 15
Florian Müllner 9

6. Who were the top three bug reporters? Are these the same as the top three bug closes? What is the overlap in these two lists?

Name #Bug reported
Jeremy Bicha 10
Bastien Nocera 9
Jo 8

7. Who are the top three contributors of patches?

Name #Contributions
Debarshi Ray 16
Rui Matos 13
Jeremy Bicha 11

8. Who are the top three reviewers of patches? What is the overlap between these lists and the bug closers and bug reporters? What is the overlap between patch contributors and patch reviewers?

Name #Patches
Florian Müllner 32
Georges Basile Stavracas Neto 30
Rui Matos 25

Figures generated

FOSS in Courses 2 (Instructors)

1. Recalling your list of activities/topics from FOSS in Courses 1 (Instructors), identify the ways that these FOSS activities/topics can be structured. Possibilities include:

  • Lectures: Free and Open SW
  • In-class activity: Git-hub activity + check project issues + evaluate different projects -> Choose a project
  • Homework: No
  • Stream of related activities: Tutoring students in groups
  • Project: Motivate them to carry out their class project based on some of the POSSE projects (We do not impose the project to do because we want them to find something that really motivates them, however, as they often do not know what to do, we will show them the infinite possibilities they have when working with any of the POSSE projects.)

2. List the revised activities on your wiki page. For each activity/topic:

  1. Identify some possible learning outcomes that should be fulfilled with the activities/task.
  2. Describe any prerequisite knowledge needed to complete the activity. This does not need to be a complete list.
  3. Estimate the time required for instructor prep, for student completion and elapsed calendar time. Are you going to have to synchronize your activity with the community or can the activity/topic be covered independent of the HFOSS community schedule.
  4. Think about possible input required from the HFOSS community. How much input is required and what kind?
  5. If the result of the activity is contributed back to the HFOSS project, describe the contribution and its usefulness.
  6. Describe the assessment/grading approach - What will the basis for grading be? Will this be a team activity or individual? Is there a role for the HFOSS community in helping assess student work? For instance, must the work be committed or otherwise accepted by the community?
  7. List any questions or concerns that you have about the activity/task.
  8. List any stumbling blocks or barriers to carrying out the activity/task.


Activity #Description
FOSS Lecture 1. Understanding free software basics. Understand the implications of the different software licenses. Highlight the role of the community in FOSS.

2. None

3. The activity/topic be covered independent of the HFOSS community schedule. For the instructor is not extra time since it is already prepared from previous years. Four hours in class plus two hours invited lecturer.

4. None

5. None

6. Individual: one question at the final Test. Team: find the special features of several FOSS companies/foundations (Apache, Cannonical, Bitergia, RedHat ...) and Licensing evaluation of selected projects in GitHub (evaluated as class mark)

7. None

8. None

FOSS field trip 1. Search for FOSS projects by category on GitHub, and find a project that motivates them to participate and that fits their skills.

2. None

3. Instructor prep time 3-4 h. Students 1 class hour.

4. None

5. Deliver a summary of student impressions about the project visited (How easy it is to participate in the Project taking into account their backgrounds)

6. Team, evaluated as class mark

7. None

8. Language

Intro to GitHub 1. Install Git. Configure Git. Fork a GitHub repository. Make changes to a repository. Commit changes to a GitHub repository

2. None as they are CS students

3. 1 h – 1.5 h

4. None

5. None

6. No grading, it is a basic activity that all the students must do

7. None

8. None

FOSS selection trip 1. Identify a part/task of the HFOSS project to be completed during the semester

2. The student are in the CS last course, we think they have knowledge enough to find an appropriate project (programming language, implications, available time, …)

3. Instructor 4h; Students 1 class hours and other 1-2h at home. It is convenient that the activity is synchronize with the HFOSS community schedule

4. Availability/interest of different tasks for students in the selected projects

5. None

6. None (the grading will depend on the results of the FOSS Project activity)

7. Communication with the community once the students have selected a project

8. None

FOSS Project 1. Producing a large software project is a complex and challenging process, The studentes have to be used to work in a large software projects, and POSSE project are perfect because they are well documented (since development is often messy). This creates challenges for students and instructors, but, as POSSE wiki says, "also creates wonderful opportunities for learning".

2. None, we expect them to be able to program in some of the available languages

3. 8h -10h instructor - 20h or more students. At least this first year we would look for activities that do not need synchronization

4. It is crucial at this point

5. The purpose is to contribute to the project in different degrees (we expect different useful results)

6. Aprox 30% of the final grading. Team. No assessment from the community. It is desirable the work be accepted

Personal tools
Namespaces
Variants
Actions
Events
Learning Resources
HFOSS Projects
Evaluation
Navigation
Toolbox