Blog

Meet our New Core Developers!

We are thrilled to announce that MDAnalysis has elected three new Core Developers to the project: @BradyAJohnston, @marinegor, and @p-j-smith. We thank each of them for the many contributions they have already made to the MDAnalysis project, and look forward to having them help shape the future direction of the project. Keep reading to learn more about Brady, Egor, and Paul, as well as the process behind becoming a Core Developer of MDAnalysis.

Introductions

Brady Johnston (@BradyAJohnston)

Brady Johnston

I originally did my PhD in structural biology at the University of Western Australia. Starting out doing crystallography, I became interested instead with ways to better visualise molecular data instead of collecting it. I created Molecular Nodes (MN) for cinematic visualisation of molecular data inside of the 3D modelling and animation program Blender. Molecular Nodes relies heavily on MDAnalysis for import and handling of molecular dynamics (MD) datasets, with projects going forward also allowing Blender to become a tool for analysing MD trajectories. I have now left academia and do freelance scientific illustration and development full time. You can contact me on on BlueSky, GitHub, Discord and LinkedIn as @bradyajohnston, or see my website. I’m always excited to chat about anything related to Blender and data visualisation.

Egor Marin (@marinegor)

Egor Marin

I started my career as a scientist from macromolecular crystallography, and during my PhD slowly moved towards structural bioinformatics and relevant machine learning methods.

I am currently employed at ENPICOM B.V. as Machine Learning Scientist, and continue contributing to open-source as much as I can.

You can find me as @marinegor almost everywhere, and check out marinegor.dev for some short-form tech posts about my research and open-source work.

Paul Smith (@p-j-smith)

Paul Smith

I did my PhD in computational biophysics at King’s College London, using molecular dynamics simulations to study the biophysics of lipid membranes. During my PhD, I began contributing to open-source scientific software, including MDAnalysis. I created LiPyphilic - an open-source Python package for analysing simulations of lipid membranes, built on top of MDAnalysis.

I’m now a Research Software Engineer at University College London, working on projects broadly related to medical imaging. I’m excited to join the Core Developer team, and always happy to chat about biophysics and open-source software. You can get in touch with me on LinkedIn or GitHub.

Becoming a Core Developer

MDAnalysis is a dynamic, ever-changing community, with many new contributors joining continuously. It is important to us that the leadership of MDAnalysis reflects the community that builds it. Therefore, the MDAnalysis Core Developer team regularly holds elections for new core developers, as described in our governance section. While this voting process is conducted in private, we are publishing and formalizing what we consider when voting, in the interests of transparency.

Firstly, potential Core Developers are identified based on their past contributions to MDAnalysis and potential to move the MDAnalysis project forward. Contributions we account for include both those that are technical in nature, and also less quantifiable ones which add value to the MDAnalysis organization. Examples include:

  • Fixing bugs
  • Adding features
  • Adding or fixing documentation
  • Reviewing pull requests (PRs)
  • Interacting with the community on GitHub or our Discord server
  • Participating in discussions in PRs and issues
  • Organizing workshops or events
  • Mentoring either in an official capacity (e.g., Google Summer of Code) or unofficially (e.g., through reviewing PRs)
  • Promoting a culture which reflects the core values of MDAnalysis, as detailed in our Code of Conduct (e.g., promoting diversity and inclusion within our community)
  • Involvement in ongoing community projects (e.g., applying for grants) and liaising with other organisations, such as our fiscal sponsor, NumFOCUS

If a candidate has shown a history of participating in these activities, they are put forward for election. The Core Developer team reviews the candidate and votes on whether or not they wish to elect an individual, following our standard voting procedures.

Finally, being an active Core Developer requires some amount of active participation in meetings, decisions, and other administrative business. As MDAnalysis does not have any guaranteed long-term funding, this work is usually unpaid. Therefore, the final decision to accept or decline the election is left to the developers themselves: do they have the time and willingness to keep contributing?

If you are interested in becoming a Core Developer, we highly encourage you to participate in some of the activities listed above, especially reviewing pull requests and mentoring other developers. Learn more about the many roles MDAnalysis community members take on to move the project forward on our MDAnalysis team page, and reach out to us on our GitHub discussions forum or Discord server (join the server using the invitation link, https://discord.gg/fXTSfDJyxE. On our end, the MDAnalysis Core Developer team will, to the best of its abilities, aim to offer mentorship and other opportunities to people who express an interest in becoming a Core Developer.

Being a Core Developer is work, but it’s also a fantastic opportunity to work with and for a wonderful and welcoming community. As part of our mission, we welcome anyone who cares for this community and wants to help it grow.

@MDAnalysis/coredevs

Technical Writer for Streamlining MDAnalysis Docs and Resources

NumFOCUS Foundation

Thanks to the support of a Small Development Grant awarded to MDAnalysis by NumFOCUS, MDAnalysis is excited to start working with Namir Oues (@namiroues) as the Technical Writer for the funded project, “Unified and comprehensive documentation and learning resources for MDAnalysis”, with the goal to make it easier for new users to find the right resources to be productive with MDAnalysis.

MDAnalysis has an ever-expanding international community of users and developers. Part of our mission is to “educate our users to make best use of the tools that we produce, to enable them to become contributors to our community and code bases” and therefore we make thorough documentation and extensive learning resources – such as tutorials and online workshop materials – publicly available to users under open source licenses. However, a considerable amount of overlap between the many resources (e.g., website, user guide, docs, GitHub wiki) can make it somewhat difficult for self-learners to find the information they need.

Namir will consolidate the main website and additional MDAnalysis learning resources to guide users through a more streamlined workflow by removing duplication and outdated materials and more clearly delineating between developer-focused and user-focused content. A primary objective of this project is to enhance the user experience for newcomers to MDAnalysis and encourage continued growth in our user and developer communities.

Meet Namir Oues

Namir Oues

I am a Bioinformatics Researcher with a background in Mathematics and Computer Science. I recently submitted my PhD thesis in Computational Protein Design at Brunel University London, where I developed automated computational methods for redesigning protein dynamics using biomolecular simulations and machine learning techniques. The three tools I developed, MDSubSampler, MDAutoMut, and MDAutoPredict, were built on top of MDAnalysis.

Previously, I worked as a Research Software Developer at the Clinical Practice Research Datalink (CPRD) of the Medicines and Healthcare Products Regulatory Agency (MHRA), where I developed scalable applications for healthcare data analysis and interfaced with multiple data sources to support medical research. I also have experience teaching High-Performance Computing (HPC), Artificial Intelligence (AI), and Machine Learning at the MSc level.

Outside of research and programming, I enjoy playing tennis and hiking, which help me balance work with an active lifestyle.

Follow Along with this Project

We encourage you to see how this work is progressing and to share your thoughts and feedback. There are many ways to get involved, including joining the developers and documentation channels on our Discord server (join using this invite link), engaging with the GitHub issue trackers for the main MDAnalysis repo and MDAnalysis User Guide repo, and interacting on the GitHub Discussions forum. Ultimately, the goal of this project is to meet the needs of our community, so please do chime in with your input!

Google Summer of Code (GSoC) 2024 Wrap-Up: Large Project

Google Summer of Code

As we enter the new year, we at MDAnalysis are still reflecting on and grateful for the work of our contributors in 2024. Namely, we would like to recognize the completion of Luna Morrow’s (@lunamorrow) Google Summer of Code (GSoC) project with MDAnalysis, Extend MDAnalysis Interoperability with OpenBabel — read more about this incredibly useful enhancement of MDAnalysis’s interoperability with other packages in the field in Luna’s blog post.

We have enjoyed watching Luna navigate the full cycle of planning, designing, implementing, testing, and documenting a software solution and look forward to seeing what she accomplishes next!

We also thank Google for supporting this project and continuing to support MDAnalysis as a GSoC organization since 2016.

Looking ahead to GSoC 2025

The MDAnalysis community remains enthusiastic about continuing to participate in the GSoC program. Given that there is an application process for organizations — such as MDAnalysis — to participate, there is no guarantee that MDAnalysis will be selected by Google as a participating GSoC organization. Once we know more, we will share updates on our #gsoc Discord (join using this invite link) and #GSoC Discussions GitHub Discussions channels.

In the meantime, we welcome you to start learning MDAnalysis and familiarizing yourself with the project through our introductory videos. To dive into the code base, check out the MDAnalysis User Guide; we suggest starting by installing the MDAnalysis package and working through the Quick Start Guide. Once you are a bit familiar with the MDAnalysis package, you can look at the User Guide sections explaining how to contribute.

Please note that in addition to code contributions, we highly value participating in the MDAnalysis community in other ways, including submitting general feedback and issues via the GitHub issue tracker and/or engaging in discussions on the MDAnalysis Discord server (join using this invite link) and GitHub Discussions forum.

@cbouy @hmacdope @IAlibay @jennaswa @richardgowers @xhgchen @yuxuanzhuang (GSoC 2024 mentors and org admins)