This course proposes a deepened survey of current practices in generative arts and computational creativity with an emphasis on the formal paradigms and algorithms used for generation. In this advanced class, we study how evolutionary computing, neural networks, and procedural generation can produce novel and valuable artifacts. We survey advances in search-based methods and procedural generation. We look at how to formalize aesthetic measures and learn how creative systems can be evaluated.We illustrate how these algorithms have been used in numerous examples of past and current productions in visual art, new media, music, poetry, literature, design, architecture, games, moving images, and robot-art. Students get to practice these algorithms first hand and develop new generative pieces through assignments and projects in MAX.Finally, we discuss the societal and ethical implications of the automation of creative tasks, from the fear of artificial intelligence to the algorithmic bias, and from the most technophobic visions to the most technophilic ideals.