Introduction to Programming in C

Level: Open to students entering grades 11 or 12 or freshman year of college in fall 2013.

Session: I, June 24-July 12, 2013

Days & Time: Monday-Friday, 10:00 AM-12:00 PM and 2:00 PM-4:00 PM

Instructor(s): Ang Cui, Jonathan Voris,

Prerequisites: No previous programming experience is required.

"I learned many of the key concepts to programming in C and enjoyed the college-type classroom setting."

- Oliver Owen Spohn Gellert, 2012

Course Description

An intensive course designed to develop logic and programming skills through immersion in the fundamentals of C. Programming projects involving mathematical problems, word games, and graphics challenge students to develop their logical reasoning, systematic thinking, and problem-solving skills. Students learn the structure and features of a fundamental programming language as they implement solutions in C.

Participants are expected to bring laptops for this class. There are no particular hardware or software requirements and either a PC or a Mac is acceptable.

Instructor(s)

Ang Cui

Ang Cui holds B.S. and M.S. degrees in computer science from Columbia University, where he is currently a computer science Ph.D. candidate. As a senior member of the Columbia Intrusion Detection Systems lab, he works in developing novel offensive and defensive technologies in the field of cyber security. Prior to entering the Ph.D. program, Ang worked as a network security specialist within the financial sector. He has published numerous papers and journal articles advocating the defense of vulnerable embedded systems, which constitute a significant portion of our critical technological infrastructure.

Jonathan Voris

Jonathan Voris obtained his M.S. in computer science from Stevens Institute of Technology and his Ph.D. in computer science from Polytechnic Institute of New York University. He is currently a postdoctoral research scientist at Columbia's Intrusion Detection Systems Lab. Jon is interested in improving security and privacy, particularly that of wireless, ubiquitous, and embedded systems, and has recently been developing techniques to combat insider threats. Prior to his academic career, Jon worked as a software engineer and network manager for companies in the New York metropolitan area.

Specific course information, such as hours and instructors, are subject to change at the discretion of the University.