Ruth Anderson 
(rea@cs.uw.edu)

Welcome to CSE 351! We have put the most important links at the top, categorized by what they're for. Please check them out!


Events

Find the weekly calendar and Zoom links for lectures, sections, and office hours on . Here is the: Office Hours Queue.

  • Make sure that "CSE 351 Sp21: The Hardware/Software Interface" is selected in the CALENDARS section on the right, otherwise none of the 351 events will show up.
  • To join the Zoom meeting, click on a calendar event and then click the link in the "Details" section of the pop-out.

Asking Questions, Getting Assistance, Giving Feedback

It is very important to us that you succeed in CSE 351! Outside of lectures and sections, there are different ways to ask questions or discuss course issues:
  1. Visit office hours (see Events above)! In addition, if you need extra time or need to discuss something in private, feel free to email and make an appointment.
  2. Make a public post about course content on the , where they benefit the whole class. If other students can answer your question, you may receive a response more quickly than you would by emailing the course staff. This is the best way of asking questions about homework, labs, and other class-related topics. Before posting, please search through the questions that have already been posted in case someone has already asked the same question.
  3. Make a private post to just the course staff on the with any questions or issues you would prefer to discuss privately. While you can email staff members individually when that makes sense, contacting the whole staff is generally preferred to get a faster response and to let the whole staff see what issues students are having. Alternatively, you may also send email to the staff email list.
  4. Send to the course staff. The instructor will try to address the issue and share it with others only as appropriate, but will not have a way to reply to you without addressing the whole class.

Course Staff

Instructor

(she/her)
Staff Mini-Bio: Ruth
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
- I was born and grew up in North Carolina. I have a BS in Mathematical Sciences with a concentration in CS from the University of North Carolina. I came to UW for my PhD. I worked in Programming Languages, Compilers, and Parallel Computing before doing my PhD in Educational Technology & Pen Computing. I taught at the University of Virginia for 5 years before coming back to UW and have been here ever since. I've worked a bit in applying Computing to problems in the Developing World but mostly these days my research is in Computer Science Education.

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
- Running, Hiking, Backbacking, and generally getting outside.

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
- Once I was on a day hike where I had encounters with 3 different bears.

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
- Teaching two sections of CSE351! Co-leading TA Training! Ask me about the CS Education seminar CSE590E.

CSE 558

Teaching Assistants

Allen Aby
(he/him)
Staff Mini-Bio: Allen
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
- I was born in Seattle and have lived in Issaquah, WA since I was 3 years old. I applied to the UW CS program because I took AP Computer Science in high school and I enjoyed it so much I knew I would have a fulfilling career in the field. I've wanted to teach ever since being a physics TA in high school and got to TA for the first time in the CS department last quarter for CSE 332.

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
- In my free time, I like playing the guitar, listening to music, and working out.

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
- I've seen Katy Perry and Lil Nas X in concert!

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
- I'm taking CSE 421, CSE 473, STAT 391, and MATH 324. I'm also part of the Software team of the Husky Satellite Lab.

abyall19
BB/DB
Joy Dang
(she/her)
Staff Mini-Bio: Place Holder
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
- I was born and raised in Pullman, Washington - and yes, this is the home of WSU and lots and lots of wheat! I'm currently a sophomore studying CS here at UW!

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
- I love playing tennis, painting, baking cookies, and reading!
- I've recently been getting into digital art. I'm still pretty new at it, but the learning process has been super fun!

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
- Back when McChickens were still $1, my friend and I ate 10 of them in one sitting.

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
- I'm taking CSE 473, 452, and 484 this quarter.

jdang14
AA/CA
Alena Dickmann
(she/her)
Staff Mini-Bio: Alena Dickmann
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
- I grew up in Bermuda, a small island in the Atlantic Ocean, and moved to the Seattle area for high school.
- I got into coding through my APCS class junior year!

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
- I like to play the ukulele!
- I've also been getting into video games - Stardew Valley is one of my favorites.

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
- I've been to some pretty cool places around the world!
- The mountains in Switzerland are breathtaking - I would love to go back someday.

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
- I'm taking CSE 344, MATH 308, HONORS 212 and GEOG 310.

adickm
BA/DA
Catherine Guevara
(she/her)
Staff Mini-Bio: TA
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
I was born in the Philippines but came to the US when I was young. I grew up in southeast Washington in the Tri-cities and eventually moved to Seattle to study computer science. I am currently a second-year student in CSE!

HOW MUCH PROGRAMMING HAVE YOU DONE (AND WHAT LANGUAGES)?
I taught myself Java and JavaScript back in middle school and did a bit of game and web development with friends throughout high school. I work mainly in full-stack web development and have lots of experience with JavaScript and Python.

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
Outside of CS, I love drawing and work as a freelance artist. I also enjoy composing music, playing piano, writing, constructing fantasy languages, playing tabletop role-playing games, and making my friends groan with terrible puns.

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
When I visited the UK, I played the theme of BBC Sherlock on Queen Elizabeth's piano!

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
- Teaching CSE351
- Balancing my freelance artist work and other art projects
- I am taking CSE 333, CSE 484, and JAPAN 103 this quarter
cgueva
BC/DC
Corinne Herzog
(she/her)
Staff Mini-Bio: Place Holder
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
- I grew up in Seattle, but lived in Israel for 2 years in middle school. - I first got interested in CS in high school through taking APCS!

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
- I really love musical theatre and listening to musicals, but unfortunately I'm terrible at acting/singing - I like baking a lot, especially in quarentine - I love hiking and going on walks and just being outside in general

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
- One time my friend and I got lost in Spain because we got off on the wrong train stop and wound up in a tiny town where no one spoke English. It was great practice for my Spanish skills to talk to the people at the station and we eventually got on the right train and were able to buy some really amazing churros while we were in the town.

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
- I'm taking CSE 333, physics 121 and a class on broadway musicals (drama 171) in addition to doing research with the Interactive Data Lab and TAing this class. I love 351 and I'm super excited for this quarter and to meet all of you!

herzoc
AB/CB
Ian Hsiao
(he/him)
Staff Mini-Bio: TA
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
I grew up in the Bay Area of California! My father introduced me to programming at a young age and I've pursued CS ever since.

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
- I love skating, video games (League of Legends, Valorant, and Genshin Impact), and Badminton.
- Big fan of cooking and cooking videos.
WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
- I'll be taking CSE 421, 461, and 584.
ijjhsiao
--
Diya Joy
(she/her)
Staff Mini-Bio: Diya Joy
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
- I was born in Bellevue, but spent 1st - 4th grade in Bangalore, India.
- I'm currently pursuing a CS + physics double major!

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
- I played the viola for 9 years (but haven't had time recently to continue).
- I love swimming!
- I like robotics (did FIRST robotics in high school).

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
- Sailing in Croatia was really cool!

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
- I'll be taking CSE 484 (Security) and 452 (Distributed Systems).

diyajoy
--
Jim Limprasert
(he/him)
Staff Mini-Bio: Jim Limprasert
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
- I am from Thailand and I grew up there!
- I did my primary, middle, and high school in Thailand and I came to Seattle for undergraduate study. I am now a junior studying Computer Science. 😄

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
- Surfing the Internet and playing games.
- Watch anime! (feel free to recommend any anime to me haha).
- Socializing and talking to other people! (Pre-Covid) 😊

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
- My instagram picture that I took using UW STLP camera and edited myself got featured on UW official instagram page! It's a picture of a sunset across the UW buildings. 😉

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
- TAing for CSE 351
- Taking CSE 452, CSE 341, and another class.
- Probably organizing some ACM events! 😆

jimsl
AB/CB
Armin Magness
(he/him)
Staff Mini-Bio: Armin Magness
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
I grew up in Seattle and first wanted to become a surgeon, but after doing robotics for many years in middle school and high school, I realized that this was the field for me. I am currently a junior majoring in computer science and hope to one day work in a robotics lab.

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
I love to play volleyball, tennis, and swim whenever the weather in Seattle allows, and in the summer I love to hike and jump in the lake. I have played percussion & drumset since I was 9, playing in jazz bands, orchestras and in the pit for musicals.

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
One time while playing at a jazz gig in a private residence, I met Ringo Starr and Joe Walsh who were there as ordinary guests!

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
Other than TAing CSE 351, I will be taking CSE421, CSE333 and Persian. Outside of classes, I am going to do my best to keep active outdoors.
ajm1
BB/DB
Aman Mohammed
(he/him)
Staff Mini-Bio: Aman
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
I was born and raised here in Seattle with the exception of a three year stint in Washington, D.C.. I came to UW wanting to study something engineering related and first landed in EE. I took the intro series and enjoyed it, but I liked programming more. I am now a junior studying Computer Science.

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
- I cook a mean basil fried rice. Ask me about my special ingredient in section or office hours.
- I spent my spring break working on a stereo amplifier for some bookshelf speakers I had laying around -- I'm a bit of an audio geek.
- Love skiing and playing tennis when I get the time.

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
- I watched an avalanche cover a part of I90 and got stuck in Snoqualmie pass for a few hours while people cleared it up.

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
I'm taking CSE 311, CSE 333, and GWSS 262. HMU if you're in any of these.

amanm4
AA/CA
Monty Nitschke
(he/him)
Staff Mini-Bio: TA
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
I grew up in Spokane WA and Coeur d'Alene ID and have spent my entire life living in both states. I moved to Seattle after transferring to UW from a local community college in Spokane, and I am currently pursuing a masters in computer science.

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
I love to be outdoors hiking and camping. I also really like board games, Catan is definitely my favorite!

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
I was involved in a research project on farm crop diseases where I got to be the first person to see a previously unknown section of DNA.

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
This quarter I am taking CSE M501, the games capstone, and will be TA'ing for this course.

montyn
BC/DC
Allie Pfleger
(she/her)
Staff Mini-Bio: TA
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
I grew up in Washington! I have lived here for most of my life, but I actually moved around a lot before we moved here. Now, I live in Bellevue with my husband, daughter, and our black cat (named Zechs, after the Gundam character).

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
I love playing games, both board and video. I am an avid reader, mostly sci-fi and fantasy, though I have less time to read for fun during school. I also knit and crochet! Every March, I participate in a speed sock knitting competition called Sock Madness.

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
Getting married and having my wonderful daughter are probably the most remarkable and memorable experiences of my life so far :D WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
In addition to TAing this course, I am taking CSE 331, CSE 333, and STAT 391. Also, parenting my 3-year-old!
pflegera
BA/DA
Mara Kirdani-Ryan
(they/them)
Staff Mini-Bio: Mara Kirdani-Ryan
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
I grew up in Rochester, NY. I recieved my BS in Electrical and Compupter Engineering from Carnegie Mellon; I didn't really know what I wanted to do next, so I stayed for a Master's. I started my PhD at UW, focusing in Computer Architecture (compiler optimizations for manycore architectures), but switched to Computing Education at the end of my first year (working with the fabulous Amy Ko). Currently, most of my work centers career decisions made by undergraduate computing students and why so many of y'all end up going to 4 companies, but I'm also doing work adapting CS courses to foster student's political identity.
WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
I've been playing guitar for 22 years, I did a whole lot of running in high school, these days I mostly practice yoga, along with the usual Seattle activities, biking, hiking, bagel making, kombucha brewing.
HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
I've come out 7 different times, each different, each awkward, and, perhaps more remarkably, I've successfully recovered a pair of glasses from the floor of a mosh pit.
WHAT ELSE IS TAKING UP SPACE?
I'll be working on a research paper, an intervention, a book chapter, and preparing for teaching next summer! I'm still figuring out lots of pieces about my identity and I end up spending a fair bit of time trying to detangle who I am from how I've been socialized.
COME TALK TO ME ABOUT
Queer theory, metacognition, surveillance capitalism, career counseling, computing in society, counter-narratives, gender, video games that tear your heart out, and how to craft the perfect bowl of cereal.
marakr
AD/CD
Alex Saveau
(he/him)
Staff Mini-Bio: Alex
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
- Coming soon!

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
- Coming soon!

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
- Coming soon!

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
- Coming soon!

asaveau
--
Sanjana Sridhar
(she/her)
Staff Mini-Bio: Sanjana Sridhar
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
- Born in the Bay Area of California and moved to the Seattle area when I was 4 (with the exception of spending 2nd and 3rd grade in Bangalore, India)
- Fell in love with computer science through summer camps in middle school

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
- Currently working on a series of watercolor flower paintings
- Perfecting my headstand
- Love going on hikes/walks and attempting to identify plants I see
- Used to play competitive volleyball and tennis

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
- When I was at Ebey's Landing on Whidbey Island, I spotted an orca in the water which was really breathtaking.

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
- Taking CSE 461, CSE 344, and Math 324 this quarter
- Part of the Cold Chain Group in the ICTD Lab
- Serving as the Middle School Outreach Co-Director for SWE @ UW
sanjgeek
AC/CC
Amy Xu
(she/her)
Staff Mini-Bio: Amy Xu
WHERE DID YOU GROW UP? WHAT WAS YOUR ACADEMIC PATH?
I grew up in Kenmore (near UW Bothell). Initially, I wanted to major in Molecular/Cellular Biology, but that didn't end up working out. Currently, I'm in my senior year, majoring in History and Computer Science.

WHAT ARE SOME OF YOUR HOBBIES, TALENTS, AND SKILLS?
Outside of school, I enjoy playing video games, spending time outdoors, and trying new food!

HAVE YOU DONE OR EXPERIENCED ANYTHING REMARKABLE OR MEMORABLE?
I built a tiny keyboard over winter break!

WHAT COMMITMENTS WILL BE CONSUMING YOUR CYCLES THIS QUARTER?
Besides TAing for 351, I'm also taking CSE 452, CSE 484, and CSE 478. I'll also be doing research in computer networks and the Dempsey startup competition!

amyxu
AC/CC

Schedule

  • Binary
  • Memory & Data
  • Integers
  • Floating Point
  • x86 Programming
  • The Stack & Procedures
  • Executables
  • Arrays
  • Structs
  • Buffer Overflows
  • Caches
  • Processes
  • Virtual Memory
  • Memory Allocation
  • Java and C
 
#
Day
Topic
Labs
Homework
Introduction, Binary
CSPP: § 1.0-1.10, 2.0-2.1.1 (p. 1-28, 31-39)
Binary, Programming in C
Pointers, Bitwise Operators
Floating Point I
CSPP: § 2.4-2.4.3 (p. 108-119)
Floating Point II
CSPP: § 2.4.4-2.5 (p. 120-127)
Integers, Floating Point
x86 Programming II
CSPP: § 3.6.0-3.6.5 (p. 200-213)
x86-64 Assembly
Procedures & Recursion
CSPP: § 3.7.4-3.7.5, 3.2 (p. 248-255, 169-177)
The Stack & Arrays
Memory & Caches I
CSPP: § 6.0, 6.2 (p. 579-580, 604-609)
Structs & Buffer Overflow
System Control Flow & Processes
CSPP: § 8.0-8.4 (p. 722-756)
Caches
Processes II, Virtual Memory I
CSPP: § 9.0-9.3 (p. 802-810)
Virtual Memory II
CSPP: § 9.4-9.6 (p. 811-825)
Processes & Virtual Memory
Memory Allocation - Lab 5
TA's Choice & Office Hours