25sp ver.
Note: this is for the Spring 2025 iteration of CSE 121. Looking for a different quarter? Please visit https://courses.cs.washington.edu/courses/cse121/.
Welcome to CSE 121: Introduction to Computer Programming I 🎉
What is this class? What will I learn?
Computing continues to play an ever-increasing role in today’s society. Having an understanding of computing is an essential skill for those in the 21st century; from working in industries more reliant on technology, using computational methods to further scientific understanding, or being an informed citizen in a world with technology all around us.
This course is a first course in computer programming focused on the basics of procedural programming in Java. It assumes students have not taken a previous programming course and do not have substantial other programming experience.
Students with previous experience are encouraged to consider CSE 122 or see the Allen School’s page on introductory courses.
This Week (at a glance)¶
Monday (03/31)
- Nothing!
Tuesday (04/01)
- No quiz sections today!
Wednesday (04/02)
- Lesson 0: Course Policies; Hello World!
Lecture @ 3:30 in KNE 120
Thursday (04/03)
- Section 0: Welcome; More Hello World!
Friday (04/04)
- Pre-Class Material 1 (Complete before class.)
- Lesson 1: Printing; Strings; Variables
Lecture @ 3:30 in KNE 120
Calendar¶
Pre-Class
Anything listed in the “pre-class” materials (PCMs) for a day should be read before attending class that day. The PCMs are a first introduction to the most important terms and concepts for that day of class. It is okay if the PCMs don’t make complete sense as we have the rest of the class day to clarify the concepts, but if you don’t do the PCMs, the class session won’t make any sense.
Topic | Programming / Creative Projects | Resubmissions | ||
---|---|---|---|---|
Week 1 | ||||
Tue 04/01 | No class | |||
Wed 04/02 | LES 00 Course Policies; Hello World! Note: Normally you would complete the Pre-class Work before class. There is nothing you need to complete before class today! | |||
Thu 04/03 | SEC 00 Welcome; More Hello World! | |||
Fri 04/04 | LES 01 Printing; Strings; Variables | |||
Released C0 Hello Bugs | ||||
Week 2 | ||||
Tue 04/08 | SEC 01 Printing; Strings; Variables | |||
Wed 04/09 | LES 02 Datatypes; Expressions | |||
Released P0 Cornbear's Cafe | ||||
Thu 04/10 | SEC 02 Datatypes; Expressions | |||
Fri 04/11 | LES 03 String Methods; char ; More Variables | |||
Week 3 | ||||
Tue 04/15 | SEC 03 String Methods; char ; More Variables | |||
Wed 04/16 | LES 04 for Loops | |||
Released C1 ASCII Art | ||||
Thu 04/17 | SEC 04 for Loops | |||
Released R0 Resub 0 | ||||
Fri 04/18 | LES 05 Nested for Loops; Random ; Math | |||
Week 4 | ||||
Tue 04/22 | SEC 05 Nested for Loops; Random ; Math | |||
Wed 04/23 | LES 06 Methods; Parameters; Scope | |||
Released P1 Election Simulator | ||||
Thu 04/24 | QUIZ 00 Quiz 0: printing, datatypes, expressions, variables, String s, for loops | |||
Released R1 Resub 1 | ||||
Fri 04/25 | LES 07 Methods; Parameters; Return Values | |||
Week 5 | ||||
Tue 04/29 | SEC 07 Methods; Parameters; Scope; Returns Day 1 | |||
Wed 04/30 | LES 08 More Methods Practice Note: No Pre-Class Material for Today! | |||
Released C2 Social Network | ||||
Thu 05/01 | SEC 08 Methods; Parameters; Scope; Returns Day 2 | |||
Released R2 Resub 2 | ||||
Fri 05/02 | LES 09 Conditionals | |||
Week 6 | ||||
Tue 05/06 | SEC 09 Conditionals | |||
Wed 05/07 | LES 10 while Loops | |||
Released P2 Prioritizing Patients | ||||
Thu 05/08 | SEC 10 while Loops | |||
Released R3 Resub 3 | ||||
Fri 05/09 | LES 11 User Input ( Scanner ) | |||
Week 7 | ||||
Tue 05/13 | SEC 11 Scanner (User Input) | |||
Wed 05/14 | LES 12 Putting It All Together Note: No Pre-Class Material for Today! | |||
Thu 05/15 | QUIZ 01 Quiz 1: for loops, nested for loops, Random , Math , Methods, Parameters, Returns, Conditionals, while Loops | |||
Released R4 Resub 4 | ||||
Fri 05/16 | LES 13 Arrays | |||
Week 8 | ||||
Tue 05/20 | SEC 13 Arrays | |||
Wed 05/21 | LES 14 Reference Semantics | |||
Released C3 Dance Dance Arrayvolution | ||||
Thu 05/22 | SEC 14 Reference Semantics | |||
Released R5 Resub 5 | ||||
Fri 05/23 | LES 15 2D Arrays | |||
Week 9 | ||||
Tue 05/27 | SEC 15 2D Arrays | |||
Wed 05/28 | LES 16 Array Patterns | |||
Released P3 2DNArray Sequencing | ||||
Thu 05/29 | QUIZ 02 Quiz 2: Conditionals, while Loops, User Input (Scanner ), Arrays, Reference Semantics | |||
Released R6 Resub 6 | ||||
Fri 05/30 | LES 17 Putting it all together (again)! Note: No Pre-Class Material for Today! | |||
Week 10 | ||||
Tue 06/03 | SEC 17 TA's Choice! | |||
Wed 06/04 | LES 18 Victory Lap! Note: No Pre-Class Material for Today! | |||
Thu 06/05 | SEC 18 Final Exam Review; Wrap-Up | |||
Released R7 Resub 7 | ||||
Fri 06/06 | LES 19 Final Exam Review Note: No Pre-Class Material for Today! | |||
Week 11 | ||||
Tue 06/10 | Finals Week | |||
Wed 06/11 | Finals Week | |||
Thu 06/12 | EXAM Final Exam 2:30pm - 4:20pm | |||
Fri 06/13 | Finals Week | |||