Skip to content

Ideas page for GTSAM Google Summer of Code 2021

Varun Agrawal edited this page Jun 9, 2021 · 3 revisions

Table of contents

Important information for Students

  • GSoC website. It is fundamental to read all rules and documents from Google before writing a proposal.
  • GSoC mailing list: You can ask general questions here.
  • GSoC timeline
  • TBD: Students can apply in this period only!

Being accepted as a GSoC student is a quite competitive process. Please, if you wish to submit a proposal, consider becoming familiar with the involved technologies first. Simply copying and pasting from this page will not be accepted.

How you will be evaluated if you are an accepted student

Student projects will be paid only if:

  • 1st phase (TBD): A pull request is requested that...
    • Builds, ideally in CI
    • Has, at least, stubbed out new functionality
  • 2nd phase (TBD): A pull request is requested that...
    • Same as above, plus:
    • Code has appropriate Doxygen documentation
    • Has a stubbed out example/unit tests that builds/runs without errors
    • It observes the recommendations in "How to contribute", which include "C++ style suggestions".
  • Final phase (TBD):
    • A complete pull request that builds, full Doxygen documentation, unit test if applicable, complete functionality.
    • A video (e.g. on YouTube) demonstrating your code.

Students interested in applying

  • You must already be proficient in the main language of the corresponding project (C++, Phyton, ...).
  • Take your time to learn about GTSAM. Read ...
  • Read carefully about Google's student eligibility rules.
  • Sign up in GSoC and post your project proposal to the GTSAM Organization. Your proposal should include:
    • A coding portfolio of past/current projects.
    • Your GitHub/GitLab/... username.
    • A detailed description of your project proposal, including initial plans for research directions and a list of key and optional features to be coded as time permits.
    • Will you be working full-time on the project during the summer? Will you have other commitments too (a second job, classes, etc)?
    • Why do you feel motivated to undertake this particular project? :-)

Rules say that all communications between students and mentors should happen in public: please, use the GTSAM mailing list or GitHub comments in pull-requests or commits whenever possible, before and during GSoC.


Ideas list for GSoC

*** GTSAM SHORT DESCRIPTION ***

List of potential mentors (pairing of projects to mentors will be done when Google decides the number of slots assigned to GTSAM):


Project #1: Logging and Code Coverage.

  • Brief description: XXXX

  • Expected results:, XXX

  • Knowledge prerequisites: C++,

  • Difficulty level: Middle


Project #2: Refactor Matlab Wrapper

  • There is potential to make the Matlab wrapper generate leaner code for MEX wrapping.

  • This project would involve investigating the MEX file generation and identifying how to reduce boilerplate.

  • Knowledge prerequisites: C++, Matlab

  • Difficulty level: Middle

Project #X:

  • Brief description: XXX
  • Expected results: XXX
  • Knowledge prerequisites: XXX
  • Difficulty level: XXX