COMP1720: Art and Interaction Computing

From Hitchhiker's Guide to CS
Jump to navigation Jump to search


Runs Second semester
Languages JavaScript (taught)
Lecturers Charles Martin (formerly Ben Swift)

COMP1720 (previously "Art and Interaction in New Media") is a course centred around using the p5.js JavaScript library to create interactive digital art that can be run in the browser.

The course has several projects, each increasing in scope and complexity, ranging from a simple "name tag" all the way to a full art piece designed for periods of interaction with an audience (Which can be viewed here for 2021 or here for 2020.

Previous programming knowledge is not required for this course, and while it may require a steeper learning curve without knowledge of things like basic control structures and basic object orientation, the courses outcomes and assessments are primarily focused on what you make, not so much how you make it. A project that uses an incredibly clean and maintainable code structure with multiple classes combined to produce an artwork, will for the most part, be marked similar to a cobbled-together monolithic function, that produces the same output. Due to this, students who have never programmed before and who have years of experience should both be able to complete this course, and benefit from the elements of art and design that are taught, and/or the use of programming techniques to achieve that. The programming skills necessary for the course are all taught within it, as well as the related art concepts and ideas.

Also, the course, being primarily taken as an elective, focuses on more a more enjoyable experience, rather than a strictly goal/outcome-driven one where learning is the only goal. It offers a chance to explore and develop at your own pace, and as such can often be very enjoyable and refreshing, especially when compared to other first year COMP courses such as COMP1600.

Students who enjoy this course may be interested in DESN2004, a SoAD course run by Mitchell Whitelaw. It continues with p5.js as well as other libraries such as JSCAD, and introduces many computational design concepts such as cellular automata, particle systems, and more. It allows students to deeply explore the possibilities of creating computational design systems that allow users to create designs in collaboration with a computer program.