Welcome to CSE131/501N

From your instructors Dennis Cosgrove and Ron Cytron

Welcome to CSE131 or CSE501N, and for many of you welcome to Washington University. We write with some information about the course, so please read the rest of this email carefully. We apologize for the length of this missive, but it should answer questions you may have.

Also, at the end, it points to your first assignment which you should try to do before the semester starts, perhaps even before you come to campus.

First, we commend you on your decision to study computer science. Students in this course are from all schools and all levels. We are excited to be your guides as you start any studies in computer science. Some of you may major in comp sci, some may minor, and some may just take the intro course. Whatever your current or developing goals in that regard, students report that this course changes the way you "think".

We now have a Department FAQ and it has lots of information about our department and courses.

Please click here for the FAQ section there on CSE131.

I am on a lab wait list, what should I do?

We have extra room in all of our labs not reflected in the registration seating capacity.

131 vs 501N: What is the difference?

The assignments and conceptual material are the same. However:

Exam Dates

The exam dates and times are published on our home page and on piazza.

We offer no make-up exams but we drop your lowest of the four exams, counting three of them.

Is this a weed-out course?

Most certainly not! Our motto is that you belong here, and we mean that: To quote a colleague, this is a weed-in course.

There is absolutely no curve for the course, and any student can earn an A in the course. Information about grading can be found here.

Your grade is typically based on participation, studio work, completed labs, completed extensions, and exams. You have access to prior course evaluations, in which students report that they work hard, but earn an A by doing so.

Placement exam if you have previous experience

If you have a 4 or 5 on the CS AP test, then you can ask in Engineering Student Services (Lopata 303) that credit be issued for CSE131. We actually prefer that you not take the course unless it is necessary.

You can enroll in something else this semester and we might ask you to TA the course both to help us out and to make you familiar with what we cover in the course.

Otherwise, if you have any prior background in the study of computer science or programming, we ask you to take the placement exam which will be given on Sunday, August 27, from 2:45 to 4:15 PM, in Lopata 101.

That test is diagnostic in nature and the outcome for most students is NOT to take CSE 131 but to make up some work on your own. Additionally, we may ask you to TA the course if you place out, so as to meet students in your class and to get a handle on all of the course material. We feel very strongly about you NOT taking this course if you have sufficient background. This course is meant for those with no background, and if I am sitting next to you and am a beginner, it is discouraging for me to see you blazing through the work. Please take the placement exam if you have any background at all.

If you are unsure about how to register for courses, have two plans: one if you take 131 and one if you pass out of it after the placement exam. Go ahead and register for all courses you need for either plan, and then you can withdraw once you have the placement exam results.

Lecture-free? What's up with that?

A 3 unit lecture class typically consists of 3 hours of lecture per week. This course is quite different, in that it uses active learning for most of the material you will study.

Each week generally consists of the following:

Thus, you spend 1.5 hours in lecture (but not in a lecture hall, because you are watching videos and doing exercises), but 3 hours working in much smaller groups to learn the materail for this course.

What do we do outside of lecture-free videos and exercises?

You still meet in labs and studio sessions during the week. This is the "letter" section in which you are registered. At the same time on Tuesdays and Thursdays, you show up and work in a room of some 40-60 people, but in a small group of 2-4 students. The studio sessions are scripted and intended to teach material beyond what you see in "lecture", and the lab sessions are for working on and demoing the lab and extension assignments for the course. If the lettered section is full and you are on the waiting list, show up anyway at the time prescribed for you. We should have room. If you need to switch times, that's fine too - again we should have room. But plan on coming the same time each week on Tuesdays and Thursdays so you have the same TAs helping you.

The labs and studios are staffed by undergraduate TAs, a head TA (Adam Kern), a graduate student, and the instructors for this course. We all work closely with you in these sessions, and for us this is the quality time we get to spend with you on this material.

We will offer help sessions during the week and also by Google Hangouts. These will be reflected on the TA Schedule.

What is CSE131R?

If you are interested in majoring or minoring in computer science, or if you want some exposure to the research and practice of computer science, then I encourage you to sign up for CSE131R. This 1-unit pass/fail section will mostly consist of guest talks about computer science research, talks from (mostly former WU) students who have graduated and are practicing computer science in the field, and some additional topics I may cover that should interest you. This session is scheduled for Mondays, 4-5:30, room TBA.

Is there a textbook?

The syllabus for this course is based mostly on a book by Robert Sedgewick, Introduction to Programming in Java: An Interdisciplinary Approach. No assignments are given from the text, but to prepare for quizzes and exams, some sample problems will be referenced. Students have reported they have found the text online, but I leave that up to you. The bookstore has ordered copies of the text.

Finally

Thanks for reading to this point. This is as large class, but you will find that I will get to know you by working with you in labs and studios. I stand ready to offer the help you need to succeed in this course, and I look forward to meeting you soon.

Lab 0

Your next task is to look at the course syllabus. It has links to more information and to the your first assignment (called Lab&bnsp;0) that you should complete before you show up at our first lab session.