CSE 121
CSE 121
  • Home / Calendar
  • Syllabus
  • Assignments
  • Resubmissions
  • Exam
  • Getting Help
  • Course Staff
  • Grading Rubrics
  • Resources

  • Course Tools
  • EdStem
  • Grade Calculator
  • Anonymous Feedback
  • Acknowledgements

Attention!

This website is still under development. More information will be added soon and all content is subject to change.

Introduction to Computer Programming I

Spring 2025

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
I.S. by 11:59pm PT
Week 2
Tue 04/08
SEC 01 Printing; Strings; Variables
Wed 04/09
LES 02 Datatypes; Expressions
Released
P0
Cornbear's Cafe
I.S. by 11:59pm PT
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
I.S. by 11:59pm PT
Thu 04/17
SEC 04 for Loops
Released
R0
Resub 0
C0, P0 Due 11:59pm PT
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
I.S. by 11:59pm PT
Thu 04/24
QUIZ 00 Quiz 0: printing, datatypes, expressions, variables, Strings, for loops
Released
R1
Resub 1
C0, P0, C1 Due 11:59pm PT
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
I.S. by 11:59pm PT
Thu 05/01
SEC 08 Methods; Parameters; Scope; Returns Day 2
Released
R2
Resub 2
C0, P0, C1, P1 Due 11:59pm PT
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
I.S. by 11:59pm PT
Thu 05/08
SEC 10 while Loops
Released
R3
Resub 3
P0, C1, P1, C2 Due 11:59pm PT
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
C1, P1, C2 Due 11:59pm PT
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
I.S. by 11:59pm PT
Thu 05/22
SEC 14 Reference Semantics
Released
R5
Resub 5
P1, C2, P2 Due 11:59pm PT
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
I.S. by 11:59pm PT
Thu 05/29
QUIZ 02 Quiz 2: Conditionals, while Loops, User Input (Scanner), Arrays, Reference Semantics
Released
R6
Resub 6
C2, P2, C3 Due 11:59pm PT
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
C0-P3 (ALL!) Due 11:59pm PT
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

Search

Search the class website; related sections and pages will appear below. Note: this search is not as forgiving with typos as other search engines.