GSoC Proposal Guidelines 2024

DeepChem is applying for Google Summer of Code as a standalone organization for the first time this year! As part of our application, we are posting a guide for how to write a strong proposal for a DeepChem contribution.

  • Use the Template: We have put together a template google doc (https://docs.google.com/document/d/1bdfWYkWYL_v7bg0rbXWNncDZWTiEM-Ji775S-rKJqnw/edit?usp=sharing) that you should use to organize your proposal. Make sure to address all the questions in the template document.
  • Seek Feedback Early: Potential applicants should plan to attend our office hours to solicit early feedback. Office hours are every MWF at 9am PST (Announcing the DeepChem Office Hours). If attending office hours is not feasible, please make sure to get an account on our discord (join at https://discord.gg/RYTrUY8Ssn) and reach out to deepchem developers early for feedback.
  • Plan for Review to Take Time: The biggest mistake new developers can make is underestimating the difficulty of review. Code review for DeepChem can be a difficult and complicated process. Passing the CI tests takes considerable effort. Familiarize yourself with the CI process. Not all tests pass, so make sure to track the current status of the CI and know what errors are expected and which are not.
  • Write Documentation and Unit Tests: Code without proper tests and documentation will not be merged into DeepChem. Plan accordingly. Make sure you’ve run lint. Make sure you have documentation in the appropriate (numpydoc) style. Have unit tests of the form expected.
  • Make Small Pull Requests: The difficulty of merging code scales nonlinearly with the size of the pull request. As a new contributor, plan to make small pull requests (< 50 lines of code) until you gain significant familiarity with DeepChem development. You may see seasoned DeepChem developers merge in large PRs with hundreds or even thousands of lines of code. This does not mean a new developer will be able to do the same. Start small and work your way up.
2 Likes