The world’s leading publication for data science, AI, and ML professionals.

A one-character MLflow pull request

Last week I was tasked with writing a document about best practices for a team of data scientists to coordinate experiments using MLflow, a…

Last week I was tasked with writing a document about best practices for a team of data scientists to coordinate experiments using MLflow, a tool that tracks parameters and results for data science experiments. At that point, I had only used MLflow for about a day, so the task was mostly reading documentation and leaning on my years of experience with Domino Data Lab, a similar, proprietary data science platform.

One MLflow paragraph I wanted to quote had a small typo:

:-
:-

For whatever reason, this typo reminded me of conversations I’ve had with colleagues about how inaccessible it feels to contribute to open source projects. I remember that feeling when I was starting out. It feels like the only "worthy" contributions to popular projects involve discovering revolutionary changes, and that’s better left to "the experts that maintain the projects".

Nothing could be further from the truth. Open source projects thrive on small contributions from individuals, and there is no change too small from a well-intended newcomer. Small contributions from many people keep projects thriving. Everyone is welcome to participate. I decided to use the MLflow typo to demonstrate a quantum change to a well known project, with the hope of making open source contributions seem more accessible to my peers.

The change was quick to make and came in this form:

I opened a pull request politely introducing myself as a new contributor and asked whether this change was ok. It was pointed out that I needed to follow more directions involving the commit, which I fixed. The next day, the change was approved and committed to master.

Don’t be intimidated about opening a pull request to an open source project. People I’ve worked with, as well as myself, have made local changes to big projects and sat on them out of uncertainty about contributing back. The moral is not to scour READMEs and start fixing typos, but to try submitting local contributions you make back to master. You will probably have to fix a test or conform to comment conventions, but that iterative process is part of an important developer experience and will make you a stronger technical contributor.

Mlflow merged my one-character change to a README. Any change you submit to your favorite project that is more substantial than that has a great chance of being merged, and hopefully be the start of many more of your contributions in the future.


Ryan Duve is a Data Scientist at Corvus Insurance. He’s also a physicist, Linux hacker and a bad barista.


Related Articles