Participants will learn fundamental concepts and advanced approaches to reconstruct the demographic history of populations and infer natural selection, using both classic and machine learning-based techniques. Participants will also learn the essential and advanced programming skills required to run the analyses related to the concept presented, with a special focus on machine learning.