Intended for students who have no prior programming experience. Students taking this course will be taught the process of incrementally developing small (200-500 lines) programs along with the fundamental Computer Science topics. These topics include: problem abstraction and decomposition, the edit-compile-run cycle, using variables of primitive and more complex data types, conditional and loop-based flow control, basic testing and debugging techniques, how to define and call functions (methods), and IO processing techniques. This course also teaches and reinforces good programming practices including the use of a consistent style, and meaningful documentation. Pre-Reqs: Satisfied Quantitative Reasoning (QR) A requirement.