This course is an introduction to programming concepts. Emphasis will be placed on algorithms, test-driven design, development, and structured programming in the Python language. Topics include program development, modularity, variables and data types as numbers, strings, arrays and lists, plus the basic programming concepts as conditionals and Boolean algebra, loops, I/O operations, classes, and objects, abstract data types, sorting algorithms, and recursion. Credits: 4