Screenshot of a basic program from the course.

Media Programming[Enter Course]

Overview:

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.

This introductory course has no particular prerequisites and is primarily designed for non-computer science students.

Additional Course Details

Topics Covered:
Loops and Arrays, Nested Loops and Two-Dimensional Arrays, Conditionals and Drawing, Creating Classes, Graphical User Interfaces, Event Handling, Documentation, Style, Java, Dr. Java, Flex.
Additional Software or Materials Required:
You will need Java 1.4 or above and DrJava (a Java editor) installed on your computer and Flash Player installed in your Web browser. These programs are free. More detailed information is provided in the course under “Test and Configure Your System.”
Maintenance Fee (per student):
Free for both independent learners and academic students.

In-Depth Description

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.

This course is based on a well tested course for non CS students—the Media Computation course taught at Georgia Tech and developed by Mark Guzdial and Barbara Ericson. Students in their course have gone from an average of 72% success rate in CS1 (but as low as 49% for majors such as management science) to an average success rate of 84%.