CSE 231 is an introduction to programming, using Python. Students will learn about the design, implementation and testing of programs to solve problems primarily in engineering, mathematics and science. The emphasis is data manipulation using real-world, practical examples.

Our goal: when a student is presented with a problem their response will be "I can write a program to do that!"

Some topics we cover are: selection and iteration, strings, functions, data structures (lists, dictionaries, tuples), file processing, and user-defined classes.

One way to understand what this course is about is to look at old programming projects in our project archive.

The course is a hybrid (flipped) course with standard lectures replaced by readings and videos. Sections 1-25 will have required, in-person weekly labs; the online Section 730 will do the same labs online.Download and install Anaconda Python 3.6 from here: continuum.io. (IMPORTANT: Choose PYTHON 3.6 -- more precisely Python 3.x for any x>=4)