Python bindings for WebGraph (internship)

From Software Heritage Wiki
Revision as of 09:38, 14 December 2020 by StefanoZacchiroli (talk | contribs) (create internship topic on webgraph python bindings)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Context: Software Heritage is an ambitious research project whose goal is to collect, preserve in the very long term, and share the whole publicly accessible Free/Open Source Software (FOSS) in source code form.

Description: Software Heritage uses the WebGraph framework for graph compression. This allows to manipulate the huge archive Merkle DAG in RAM efficiently, via the swh-graph component. WebGraph being written in Java, we would like to have Python bindings for both Software Heritage needs and to allow researchers used to the Python scientific ecosystem to analyze and exploit the compressed representation of the Software Heritage archive. The goal of this internship is to design and implement efficient Python bindings to the WebGraph framework, using the most appropriate bridge technology between the two languages.

Desirable skills to obtain this internship:

  • Java development
  • Python development

Will be considered a plus:

  • experience with system programming in the C language

Workplace: on site at Inria Paris (contact mentors for remote opportunities)

Environment: you will work shoulder to shoulder with all members of the Software Heritage team, and you will have a chance to witness from within the construction of the great library of source code.

Internship mentors:

  • Antoine Pietri
  • Sebastiano Vigna
  • Stefano Zacchiroli <zack@upsilon.cc>

See also