CS-420: Advanced compiler constructionStudents learn several implementation techniques for modern functional and object-oriented programming languages. They put some of them into practice by developing key parts of a compiler and run time system for a simple functional programming language. ...
CS-108: Pratique de la programmation orientée-objetLes étudiants perfectionnent leurs connaissances en Java et les mettent en pratique en réalisant un projet de taille conséquente. Ils apprennent à utiliser et à mettre en œuvre les principaux types de collections (listes, ensembles, tables associatives), e ...
BIO-105: Cellular biology and biochemistry for engineersBasic course in biochemistry as well as cellular and molecular biology for non-life science students enrolling at the Master or PhD thesis level from various engineering disciplines. It reviews essential notions necessary for a training in biology-related ...
CS-112(i): Programmation orientée objetL'objectif de ce cours est de développer des compétences de base en programmation. L'accent sera mis sur l'approche orientée-objet laquelle renforce la réutilisabilité, la maintenabilité et la fiabilité des programmes. Des fondamentaux d'algorithmique sero ...
CS-119(c): Information, calcul, communicationL'objectif de ce cours est d'introduire les étudiants à la pensée algorithmique, de les familiariser avec les fondamentaux de l'Informatique et de développer une première compétence en programmation (langage C++). ...
MSE-304: Surfaces and interfacesThis lecture introduces the fundamental concepts for describing, characterizing, and engineering surfaces and interfaces. Students will develop both theoretical and practical understanding of how interfacial phenomena influence surface properties and techn ...
MATH-611: Scientific programming for EngineersThe students will acquire a solid knowledge on the processes necessary to design, write and use scientific software. Software design techniques will be used to program a multi-usage particles code, aiming at providing the link between algorithmic/complexit ...
CS-550: Formal verificationWe introduce formal verification as an approach for developing highly reliable systems. Formal verification finds proofs that computer systems work under all relevant scenarios. We will learn how to use formal verification tools and explain the theory and ...
BIO-373: Genetics and genomicsThe theoretical part of this course covers classical genetics and contemporary genomics. Because bioinformatics has become important for genomic research, the course also includes practical applications to genomic analyses using Python, including group pro ...
ENG-209: Data science pour ingénieurs avec PythonCe cours propose une immersion progressive et complète dans le domaine de la Data Science à travers le langage Python. Il guide les étudiants depuis la manipulation de données brutes jusqu'à la modélisation et l'extraction de connaissances utiles à partir ...
HUM-471: Economic growth and sustainability IThis course examines growth from various angles: economic growth, growth in the use of resources, need for growth, limits to growth, sustainable growth, population growth. Although grounded in economics, it takes up elements from many other disciplines. ...
HUM-275: La biologie évolutive humaineLa psychologie évolutionniste est une discipline située au carrefour de la biologie, de la psychologie, de l'anthropologie, des sciences sociales et naturelles qui examine les traits psychologiques et les comportements humains dans une perspective évolutio ...
DH-406: Machine learning for DHThis course aims to introduce the basic principles of machine learning in the context of the digital humanities. We will cover both supervised and unsupervised learning techniques, and study and implement methods to analyze diverse data types, such as imag ...
CS-452: Foundations of softwareThe course introduces the foundations on which programs and programming languages are built. It introduces syntax, types and semantics as building blocks that together define the properties of a program part or a language. Students will learn how to apply ...
CS-233(a): Introduction to machine learning (BA3)Machine learning and data analysis are becoming increasingly central in many sciences and applications. In this course, fundamental principles and methods of machine learning will be introduced, analyzed and practically implemented. ...
CS-210: Functional programmingUnderstanding of the principles and applications of functional programming, the fundamental models of program
execution, application of fundamental methods of program composition, meta-programming through the construction of
interpreters and advanced progr ...
CS-422: Database systemsThis course is intended for students who want to understand modern large-scale data analysis systems and database systems. It covers a wide range of topics and technologies, and will prepare students to be able to build such systems as well as read and und ...