Students will be able to read, understand, make functional alterations to, and create through assemble 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.
Links to this Page
Announcements-Spring 2003 last edited on 5 August 2003 at 2:28 pm by user-1120spk.dsl.mindspring.com