Programming is a way of organizing a task so that it is replicable by something else—a computer. If you have ever given someone directions, or written down a recipe, you have some experience with programming. Learning more about programming will help you develop the skills of thinking systematically about a task and breaking it down into manageable pieces, which can be applied in many disciplines.
This class contextualizes the task of programming by focusing on media, such as images, audio, and interactive systems. By doing so, we hope to put programming in a relevant context. For example, iteration is a programming concept that is essential to creating negative and grayscale images. You will learn algorithms for blending two images together and how to hierarchical relationships are used to organize elements of a user interface.