User:Marcos
(→FOSS in Courses 2 (Instructors)) |
(→FOSS in Courses 2 (Instructors)) |
||
Line 319: | Line 319: | ||
2. List the revised activities on your wiki page. For each activity/topic: | 2. List the revised activities on your wiki page. For each activity/topic: | ||
− | + | # Identify some possible learning outcomes that should be fulfilled with the activities/task. | |
− | + | # Describe any prerequisite knowledge needed to complete the activity. This does not need to be a complete list. | |
− | + | # 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. | |
− | + | # Think about possible input required from the HFOSS community. How much input is required and what kind? | |
− | + | # If the result of the activity is contributed back to the HFOSS project, describe the contribution and its usefulness. | |
− | + | # 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? | |
− | + | # List any questions or concerns that you have about the activity/task. | |
− | + | # List any stumbling blocks or barriers to carrying out the activity/task. | |
Line 406: | Line 406: | ||
2. None, we expect them to be able to program in some of the available languages | 2. None, we expect them to be able to program in some of the available languages | ||
− | 3. | + | 3. 8h -10h instructor - 20h or more students. At least this first year we would look for activities that do not need synchronization |
− | 4. | + | 4. It is crucial at this point |
− | 5. Aprox 30% of the final grading. Team. No assessment from the community. It is desirable the work be accepted | + | 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 | ||
|- | |- |
Revision as of 17:25, 26 June 2017
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
- How many repositories are there in this category? 13,373 repository results
- 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
- 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.
- How many repositories are there in this category? 300
- Locate the HTBox/crisischeckin project. When was the last update? 04/22/17
- 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
- https://www.openhub.net/
- In the search space, enter: education´
- 347 pages - 3470 projects
- KDE Education should be the second result. Is any of the code located on GitHub? The SCM type for all projects is Git
- How many similar projects are listed? 10
- Information about the project? Name of project and whether it is active, the programming language and the license
- Perform searches for both humanitarian and disaster management.
- 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
- Most of them have activity information not available, I think there is a bug with the activity.
- Click on Organizations.
- 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
- Search for OpenMRS.
- When was the last commit for OpenMRS Core? About two months
- Go back to GitHub and search for OpenMRS Core.
- When was the last commit? June, 8 2017
- 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 ...
- 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/
- Click on the “Reports” link on the top of the page.
- Click on the "Summary of Bug Activity for the last week".
- How many bug reports were opened in the last week? How many were closed? 118 reports opened versus 51 closed
- 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
- 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:
- Identify some possible learning outcomes that should be fulfilled with the activities/task.
- Describe any prerequisite knowledge needed to complete the activity. This does not need to be a complete list.
- 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.
- Think about possible input required from the HFOSS community. How much input is required and what kind?
- If the result of the activity is contributed back to the HFOSS project, describe the contribution and its usefulness.
- 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?
- List any questions or concerns that you have about the activity/task.
- 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. Copiar lo que dice la Heidi
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 |