MeDIC

From research to practice: improving a bioinformatics tool

Context

A NUTRISS team developed an analysis tool called MeDIC (Metabolomic Dashboard for Interpretable Classification). This software makes it possible to apply machine learning algorithms to untargeted metabolomics datasets acquired by liquid chromatography coupled with mass spectrometry.

The goal is to extract the most important features, as they represent potential new biomarkers. The interface is designed to be easy to use and intuitive, even for those with little or no experience in programming and artificial intelligence.

Our contribution: making MeDIC more accessible

We were asked to optimize the project’s code. After constructive discussions with the NUTRISS team, we identified several key areas to improve the tool and prepare it to be shared with a wider community.

Achievements

Streamlined distribution 

We created a Python package on PyPI (medic-ml) and a Docker image (elinaff/medic), reducing the installation of MeDIC to a single command. 

Cross-platform compatibility

We improved the installation process on Windows, Linux and macOS, making the tool easier to use for more researchers, regardless of their operating system. 

				
					# With Python
pip install medic-ml

# With Docker
docker run elinaff/medic:latest
				
			

Stability and maintenance 

Adding a logger made it easier to track operations and improve debugging. We also fixed several bugs and implemented improvements to make MeDIC more stable and reliable. 

Improved 
user experience 

Aware of the importance of user experience, we enhanced it with the following improvements :

  • Smoother navigation when the user moves between the application’s tabs. 
  • Immediate parameter validation to warn the user if the requested experiment is invalid, preventing errors after lengthy processing. 
  • Automatic saving of parameters and results in unique time-stamped files, with the file location displayed to the user.

The result

The result: toward a scientific publication

Our work helped make MeDIC a tool that is not only high-performing, but also easier to install and use. These improvements were essential for the student in charge of the project, allowing her to focus on writing a scientific paper and preparing the publication of her tool for the research community.

This project shows how collaboration between software development and scientific research can help improve and share technological tools.

Collaborators