Skip to content
Oliver Beckstein edited this page Mar 22, 2021 · 55 revisions

Frequently Asked Questions for Google Summer of Code with MDAnalysis.

Please read

We grouped questions and answers in broad categories:

  1. Contact
  2. Choosing projects
  3. Preparation
  4. Proposal

If you have questions that are not answered here contact us on the developer mailing list and ask. We are happy to answer your questions.


Contact

How do I contact MDAnalysis?

All communication regarding GSoC is carried out publicly on the developer mailing list https://groups.google.com/forum/#!forum/mdnalysis-devel. The email address is mdnalysis-devel@googlegroups.com.

(You can also initially contact us on the user mailing list but we will eventually move conversation to the developer list.)

Note

  1. Initial emails are screened by moderators so first posting will only happen after a delay of a few hours.
  2. All replies go to the mailing list and not your private email address.
  3. Read the email replies through the public web interface https://groups.google.com/forum/#!forum/mdnalysis-devel or subscribe to mdnalysis-devel to get the emails.
  4. Please do not email other developers/mentors privately, we prefer that communication be done publicly.

We also have a discord: MDAnalysis server: sign up with https://discord.gg/fXTSfDJyxE

This discord is there to supplement, but not replace, the mailing list. We would ask that formal discussions (especially regarding project ideas) happen on the mailing list where possible. This helps us better keep records of what was discussed with each student. The discord is suitable for less formal discussions, however we ask that it not be used for private communication with the developers.

I never got a reply to my email!

All replies go to the developer mailing list and not your private email address.

Read the email replies through the public web interface https://groups.google.com/forum/#!forum/mdnalysis-devel or subscribe to mdnalysis-devel to get the emails.

Do you want to see my work and learn more about me?

Yes, please!

  • Tell us a bit more about your background, e.g., have you worked on other open source projects, have you used Python/C/C++, have you used pull requests with reviews on GitHub, have you experience with writing tests, have you participated in GSoC before ...
  • What interests you in working in the area of computational physics/chemistry/materials?
  • Tell us about your scientific experience (e.g., if you used molecular dynamics simulations or MDAnalysis or other related software).

Choosing projects

Projects are listed in the Project Ideas List together with approximate estimates of effort.

Can I do multiple projects?

We do not recommend doing multiple projects from the list. They are all designed to be tractable in the 10 week / 175h time frame of GSoC but doing more than one will unlikely be feasible. We rather have you do quality work than quantity. If you think you will get ahead of schedule, include some optional/stretch objectives in your proposal.

Do I have to pick a project from the list?

No, you don't have to pick from the list. We are open to your own project proposal.

We suggest that you discuss your idea with us so that we can give you more insight into where your idea would fit into the broader requirements of the MDAnalysis project. You can also start with our project ideas and modify. In any case, we're happy to refine your idea together with you.

Preparation

What should I do for a successful proposal?

  1. Become familiar with MDAnalysis: What is it used for, how is it used.

    Are you familiar with computer simulations of atoms and molecules? If not, learn a little bit about "molecular dynamics simulations". You can also watch our introductory videos.

    Work through the MDAnalysis Quick Start Guide and get a feel for how MDAnalysis is used.

    We understand that making you use our software is a sizable initial ask but on the other hand, MDAnalysis is relatively complicated software that is used in research by many people. We are happy to help answer questions as you go along.

  2. Interact with us: contribute some code and go through the pull request/review/merge process, ask relevant questions on the mailing lists. Note that one of our hard requirements is that you must have code merged to be eligible to apply for GSoC with MDAnalysis (see also Will I be selected based on my proposal alone?).

We are happy to work with you on refining your project ideas, based on your experience.

How do I find out how to contribute code?

Read Contributing to MDAnalysis. Then find something to work on:

  • Check our issue tracker and find something to work on (e.g., from issues marked "GSoC starter").
  • Alternatively, if there's code you want to contribute or if you find a problem and you want to fix it just go ahead: open an issue and follow up with a pull request that references the issue.

Can I claim an issue to work on?

If you want to work on an issue then submit a PR that references the issue. We will prioritize work over intent, i.e., we will typically only review the first PR that addresses a issue and ignore any other PRs that have been submitted after the first one; we will and other students should ignore issue comments along the lines of "I will work on this".

This means that you don't need to announce that you will work on an issue. Please ask questions if you need to know details to get started but ultimately, showing your work counts.

Can I work on multiple issues at the same time?

No.

We strongly discourage opening multiple PRs in parallel. For a start, we want to see issues closed and you will impress us much more if you can solve problems quickly instead of spreading your effort thin. If you're a fast worker, solve a few issues in quick succession and you'll soon be highly valued by the whole developer team!

Secondly, because of the "first PR = only reviewed PR" rule above we do not want students "squatting" or "reserving" issues by having multiple PRs open.

If there are situations that look as if an open PR prevents other students from doing work or if no progress has been made on an open PR for a few days then we will try to resolve the situation through communicating with all parties but ultimately reserve the option to just close PRs.

Should I start a PR for a project that I am writing my proposal for?

No.

We are NOT looking for students to open PRs on any GSoC projects before having been accepted. As a matter of policy and fairness, we will not look at any PRs directly targeted at GSoC projects. We'd like students to write a good proposal first. We want to see that students understand the problem and that they can plan ahead (amongst other things). Overall, we will follow our evaluation criteria. This policy applies to all potential GSoC students equally.

Can I contact you about the proposal before I submit it?

Yes, definitely, you should contact us!

You are encouraged to share draft proposals with us so that we can help you refine the proposal. The idea is that it is best for you and us if the proposal is crystal clear about what you are going to do. Vague proposals are of no use to anyone. Lots of detail and technical discussions are good in a proposal! Show us that you understand the problem and you have an idea how to solve it during GSoC.

Our ideas list is a starting point. We look forward to hear more from you and how you think you can improve MDAnalysis. We are happy to work with you to formulate the key ideas of your proposal.

How should I contact you for feedback on my proposal?

We keep all communications public as transparency and openness are some of the core values of our community. Share a link to a Google doc on the mailing list so that we can comment on a draft. (Don't include edit permissions, only you should be able to edit the doc.)

(If you’re worried about being plagiarized: Once we have read your proposal and we suddenly see a second one pop up that looks like yours, we know who has been plagiarizing. Plagiarism is a major ethical breach and in all cases where we detect it or any other unethical behavior we will consider reporting the case to Google.)

Do I need to have knowledge of molecular simulations?

A developer without knowledge of molecular simulation can do a GSoC project with us. We recommend you research your project proposal thoroughly and demonstrate to us that you are willing to learn. ("Demonstrating" in the proposal and in interactions with us means "showing evidence in the form of research and work", not just stating that you are willing to learn). Our experience shows that the most successful students are the ones who want to use the tools that they are writing.

See also Am I experienced enough?.

Proposal

GSoC applicants will have to submit a proposal (your written application that you submit through the GSoC website) for their planned work through Google. MDAnalysis mentors will evaluate proposals.

Will I be selected based on my proposal alone?

  1. No.
  2. No.
  3. No.

If you don't actively engage with us prior to submitting a proposal (and if you don't have at least one accepted pull request with merged code) we will just reject your proposal, no matter how good it sounds. We need to know that we can work together.

What needs to be in a proposal?

See our How to write a great application for our detailed requirements and familiarize yourself with our evaluation criteria.

See also Google's GSoC Guide: Writing a proposal.

Remember, we are happy to work with you to make your proposal great and a good fit for MDAnalysis!

How long is a proposal?

We would expect a proposal to be at least a few pages of a structured document (at least 1,000 – 1,500 words, more is ok) that outlines what problems you are addressing and how you are going to solve them, with examples that gives us some idea what you will actually do. Detail is good as it allows us to make more informed decisions and shows us that you can familiarize with a new topic efficiently.

Include a time line that demonstrates feasibility.

Include references (citations to scientific papers, links to web pages and repositories).

A proposal needs to be more than a few bullet points. It needs to clearly convey your ideas and your approach so that we can easily evaluate it.

What are your evaluation criteria?

We are interested in students that demonstrate to us commitment and convince us that they can be successful with their proposed project.

Ultimately, your proposal has to convince us of the following:

  1. You propose work that will substantially improve the user's experience with MDAnalysis (i.e., it will have impact).
  2. The work is feasible (i.e., you have the experience to successfully complete your project in the time frame of GSoC).
  3. Your project makes good use of the provided resources provided by GSoC (e.g., appropriate for the time frame that you get a stipend for, good use of mentors' time, ...)

Additionally, we take into account how you interacted with us before you submitted the proposal as part of discussions on the mailing lists and during the process of merging your code into MDAnalysis.

I want to use existing code – should I mention this in the proposal?

Yes, absolutely. You need to include

  1. original source of the code (url, repository, …)
  2. the license under which the code can be used

Check that the license is compatible with GPL v2 and state it in the proposal.

Do I really need to have merged code? I have a great proposal!!!

We will ignore proposals from any applicant who has not met our requirements, in particular the requirement to have code merged into MDAnalysis.

The interaction between applicant and developers over actual code is an important component in our proposal evaluation.

Clone this wiki locally