This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
chaoss:gsoc-ideas [2018/02/16 18:45] GeorgLink |
chaoss:gsoc-ideas [2018/03/21 15:56] (current) GeorgLink |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | [[chaoss:start|<< Back to CHAOSS start page]] | + | [[chaoss:start|<< Back to CHAOSS start page]] ] |
{{:chaoss:chaoss_logo_pantone_2_.png?400|}} | {{:chaoss:chaoss_logo_pantone_2_.png?400|}} | ||
====== Ideas for Google Summer of Code projects ====== | ====== Ideas for Google Summer of Code projects ====== | ||
+ | ===== Idea #1: Support of Standard CHAOSS Formats for Description of Projects ===== | ||
+ | [ [[https://github.com/chaoss/grimoirelab/issues/71|Micro-tasks and place for questions]] ] | ||
- | ===== Idea #1: Reporting of CHAOSS Metrics ===== | + | Currently, GrimoireLab uses its own format for describing a project, including the data sources (repositories to retrieve information from), the internal organization of the project (e.g., in subprojects), and specifics about how the data is to be presented. For this information, some standard formats already exist, that can be directly used, or used with some modifications. Among them, [[https://en.wikipedia.org/wiki/DOAP|DOAP]] is one of the most interesting ones, but there are many others. |
+ | This idea is about identifying formats used by projects to describe themselves and adding support to GrimoireLab. This includes not only static formats, but also APIs. | ||
+ | |||
+ | The aims of the project are as follows: | ||
+ | |||
+ | * Supporting DOAP, by either converting it to the current GrimoireLab format, or more likely, directly supporting it in Mordred or some related tools. | ||
+ | * Testing the implementation with large projects supporting DOAP, such as Apache Server. | ||
+ | * Exploring other formats used to express information related to projects (repositories, people, affiliations). This may include specific formats used by some large projects (such as Eclipse or OpenStack), affiliation and unique identities formats (such as the gitdm format). | ||
+ | * Exploring other APIs used to express information related to projects, such as those provided by software development forges (e.g., GitLab, BitBucket), or tools supporting software development. | ||
+ | |||
+ | The aims may require modifications to Mordred and other related tools | ||
+ | to make them modular and simplify the implementation of support for | ||
+ | future formats or APIs. | ||
+ | |||
+ | * //Difficulty:// easy/medium | ||
+ | * //Requirements:// Python programming. Willingness to understand GrimoireLab internals. | ||
+ | * //Recommended:// Experience with Python HTTP and XML libraries would be convenient, but can be learned during the project. | ||
+ | * //Mentors:// Jesus M. Gonzalez-Barahona, Valerio Cosentino | ||
+ | |||
+ | |||
+ | |||
+ | ===== Idea #2: Reporting of CHAOSS Metrics ===== | ||
+ | |||
+ | [ [[https://github.com/chaoss/grimoirelab/issues/70|Micro-tasks and place for questions]] ] | ||
Currently, [[https://grimoirelab.github.io/|GrimoireLab]] includes a tool for reporting: Manuscripts. This tool reads data from a GrimoireLab ElasticSearch database, and produces with it a PDF report with relevant metrics for a set of analyzed projects. Internally, Manuscripts uses some Python code to produce charts and CSV tables, which are integrated into a LaTeX document to produce the final PDF. Other approaches, such as producing Jupyter notebooks, will be explored too. | Currently, [[https://grimoirelab.github.io/|GrimoireLab]] includes a tool for reporting: Manuscripts. This tool reads data from a GrimoireLab ElasticSearch database, and produces with it a PDF report with relevant metrics for a set of analyzed projects. Internally, Manuscripts uses some Python code to produce charts and CSV tables, which are integrated into a LaTeX document to produce the final PDF. Other approaches, such as producing Jupyter notebooks, will be explored too. | ||
Line 27: | Line 52: | ||
- | ===== Idea #2: Prototype New CHAOSS Metrics ===== | + | |
+ | ===== Idea #3: Prototype New CHAOSS Metrics ===== | ||
+ | |||
+ | [ [[https://github.com/OSSHealth/ghdata/issues/82|Micro-tasks and place for questions]] ] | ||
Create a library that can be used by CHAOSS Community Software projects like GHData to express open source software project level similarities. There are two components: A set of algorithms for integrating similarity measures on an array of project data and implementation of visualizations using our existing framework and possibly adding to the framework. | Create a library that can be used by CHAOSS Community Software projects like GHData to express open source software project level similarities. There are two components: A set of algorithms for integrating similarity measures on an array of project data and implementation of visualizations using our existing framework and possibly adding to the framework. | ||
Line 55: | Line 83: | ||
- | ===== Idea #3: Support of Standard CHAOSS Formats for Description of Projects ===== | ||
- | |||
- | Currently, GrimoireLab uses its own format for describing a project, including the data sources (repositories to retrieve information from), the internal organization of the project (e.g., in subprojects), and specifics about how the data is to be presented. For this information, some standard formats already exist, that can be directly used, or used with some modifications. Among them, DOAP is one of the most interesting ones, but there are many others. | ||
- | |||
- | This idea is about identifying formats used by projects to describe themselves and adding support to GrimoireLab. This includes not only static formats, but also APIs. | ||
- | |||
- | The aims of the project are as follows: | ||
- | |||
- | * Supporting DOAP, by either converting it to the current GrimoireLab format, or more likely, directly supporting it in Mordred or some related tools. | ||
- | * Testing the implementation with large projects supporting DOAP, such as Apache Server. | ||
- | * Exploring other formats used to express information related to projects (repositories, people, affiliations). This may include specific formats used by some large projects (such as Eclipse or OpenStack), affiliation and unique identities formats (such as the gitdm format). | ||
- | * Exploring other APIs used to express information related to projects, such as those provided by software development forges (e.g., GitLab, BitBucket), or tools supporting software development. | ||
- | |||
- | The aims may require modifications to Mordred and other related tools | ||
- | to make them modular and simplify the implementation of support for | ||
- | future formats or APIs. | ||
- | |||
- | * //Difficulty:// easy/medium | ||
- | * //Requirements:// Python programming. Willingness to understand GrimoireLab internals. | ||
- | * //Recommended:// Experience with Python HTTP and XML libraries would be convenient, but can be learned during the project. | ||
- | * //Mentors:// Jesus M. Gonzalez-Barahona, Valerio Cosentino |