This course will teach you the cognitive science background and the programming bases to design robots and virtual agents capable of autonomous cognitive development driven by their intrinsic motivation.