Exploring Open-Ended Creative Coding Assignments in Introductory Computer Programming