Topic
- Learning Objectives for Introduction to Media Computation
- Students will be able to read, understand, and make functional alterations to small programs (less than 50 lines) that achieve useful communications tasks.
- Students will appreciate what computer scientists do and the key concerns of that field that relate to students' professional lives.
- Students will recognize that all digital data is an encoding or representation, and that the encoding is itself a choice.
- Students will understand that all algorithms consist of manipulating data, iteration (looping), and making choices -- at the lowest level, about numbers, but we can encode more meaningful data in terms of those numbers.
- Students will recognize that some algorithms cannot complete in reasonable time or at all.
- Students will appreciate some differences between imperative, functional, and object-oriented approaches to programming
- Students will appreciate the value of a programming vs. direct-manipulation interface approach to computer use and will be able to describe situations where the former is preferable to the latter.
- Students will be able to identify the key components of computer hardware and how that relates to software speed (e.g., interpretation vs. compilation)
- Students will develop a set of usable computing skills, including the ability to write small scripts, build graphs, and manipulate databases -- not necessarily using the common tools, but in a manner that exposes concepts and enables future learning.