Machine learning is a hot topic in academia and industry
Mathieu Nayrolles
How does this specific image (above) relate to your research at Concordia?
This is a presentation I did at an internal workshop organized by Ubisoft at their headquarters in Paris. Lead programmers, experts and architects gathered to discuss how we can improve our code quality in order to better maintain complex software over the long run. My presentation demonstrated how my PhD thesis could be applied at Ubisoft and to what extent.
What is the hoped-for result of your project? And what impact could you see it having on people's lives?
Software development and maintenance is heavily influenced by human activity. Software systems tend to contain many bugs after they are released despite all efforts spent on testing. In fact, fixing defects is one of the most time-consuming tasks in software development.
Automating this process can help companies produce better and more reliable systems at lower costs, enable software developers to focus on developing new features that add value to customers, improve their reputation in the market, and give users access to reliable and safe software systems.
What are some of the major challenges you face in your research? What are some of the key areas where your work could be applied?
One word: data. Machine learning is a hot topic in academia and industry. but it requires huge quantities of data to be accurate. As a researcher, you can model and validate your approaches on open-source data but it's also important to test them on industrial data.
What person, experience or moment in time first inspired you to study this subject and get involved in the field?
My first industrial experience was in Saint-Gobain, France, the world leader in the habitat market. I saw how hard it was for experienced developers to produce qualitative software in a geographically dispersed team and with very constraining hardware requirements. Following this experience, I decided to focus my efforts on making things easier for my fellow programmers.
How can interested STEM students get involved in this line of research? What advice would you give them?
Learn as many programming languages as you can and how people build large software systems. I recommend consulting the Pragmatic Bookshelf, as well as the Architecture of Open Source Applications series.
What do you like best about being Concordia?
The excellence of the academic personnel, the melting pot of nationalities and past experiences within the student community.
Are there any partners, agencies or other funding/support attached to your research?
The project is funded by the Natural Sciences and Engineering Research Council of Canada (NSERC). I also receive funding from the Fonds de recherche du Québec - Nature et technologies (FRQ-NT) and Mitacs.
Ubisoft developers helped improve the tool and provided us with valuable feedback throughout the entire project. The management of Ubisoft Laforge, particularly Yves Jacquier and Olivier Pomarez, supported every step of the project from day one.
Learn more about Concordia's Department of Electrical and Computer Engineering.
Watch a video about Ubisoft's Commit Assistant, which relies on algorithms developed in Nayrolle's research.