Computational Creativity (part 1)