Last Updated: 2022-01-17 Mon 14:59

CSCI 2021: Machine Architecture and Organization

Welcome to CSCI 2021 Lec 001 and 010

Essential links are below.

  • Course Schedule and Materials: topics, slides, code, rough deadlines, projects, labs
  • Discord: attend office hours, get synchronous help. The course intro video briefly surveys Discord usage. Find our guild invite link on Canvas
  • Gradescope: submit assignments, get grades on assignments/exams, request regrades
  • Piazza: class discussion board for Q&A
  • Canvas Site: take quizzes, get grades
  • Syllabus: know our contract
  • Mirror Site: to access course materials if CSE Servers are down

Staff and Office Hours

Name Email Role Office Hours Location Piazza
Chris Kauffman Prof See Canvas Discord Everyday
Joon Kim GTA 50% See Canvas Discord  
Charles Rude GTA 50% See Canvas Discord  
Louis Wang GTA 50% See Canvas Discord  
Ruolei Zeng GTA 50% See Canvas Discord  
Allen Liao UTA See Canvas Discord  
Andrew Pan UTA See Canvas Discord  
Aniket Nuthalapati UTA See Canvas Discord  
Anthony Di Biaggio UTA See Canvas Discord  
Austin Casey UTA See Canvas Discord  
Caroline Heine UTA See Canvas Discord  
Christopher Liu UTA See Canvas Discord  
Connor Goetz UTA See Canvas Discord  
Dat Luong UTA See Canvas Discord  
David Mahannah UTA See Canvas Discord  
Davis Everson-Rose UTA See Canvas Discord  
Edward Shipp UTA See Canvas Discord  
Erin Collins UTA See Canvas Discord  
Evan Voogd UTA See Canvas Discord  
Lucas Olsen UTA See Canvas Discord  
Marcus Rana UTA See Canvas Discord  
Matthew Chandra UTA See Canvas Discord  
Narek Ohanyan UTA See Canvas Discord  
Nicholas Gable UTA See Canvas Discord  
Swati Rampalli UTA See Canvas Discord  
Tarik Merzkani UTA See Canvas Discord  
Vayam Agarwal UTA See Canvas Discord  
Name Email Role Office Hours Location Piazza



Meeting Day / Time Location Staff
Lec 001 MWF 1:25 PM - 2:15 PM Bruininks Hall 220 Prof: Kauffman
Lab 02 Wed 08:00 AM‑08:50 AM Walter B28 GTA: ??? UTAs: David, Swati, Vayam
Lab 03 Wed 09:05 AM‑09:55 AM Walter B28 GTA: ??? UTAs: David, Swati, Vayam
Lab 04 Wed 10:10 AM‑11:00 AM Walter B28 GTA: ??? UTAs: Edward, Narek, Nicholas
Lab 05 Wed 10:10 AM‑11:00 AM Keller 1-250 GTA: ??? UTAs: Connor, Dat, Marcus, Matthew
Lab 06 Wed 11:15 AM‑12:05 PM Walter B28 GTA: ??? UTAs: Allen, Aniket, Narek
Lab 07 Wed 11:15 AM‑12:05 PM Keller 1-250 GTA: ??? UTAs: Andrew, Connor, Dat, Nicholas
Lab 08 Wed 12:20 PM‑01:10 PM Walter B28 GTA: ??? UTAs: Davis, Lucas, Tarik
Lab 09 Wed 12:20 PM‑01:10 PM Keller 1-250 GTA: ??? UTAs: Allen, Aniket, Anthony, Edward
Lec 010 MWF 3:35 - 4:25 PM Bruininks Hall 230 Prof: Kauffman
Lab 11 Wed 08:00 AM‑08:50 AM Keller 1-250 GTA: ??? UTAs: Andrew, Caroline, Erin, Lucas
Lab 12 Wed 09:00 AM‑09:50 AM Keller 1-250 GTA: ??? UTAs: Caroline, Erin, Marcus, Matthew
Lab 13 Wed 12:20 PM‑01:10 PM Keller 1-262 GTA: ??? UTAs: Austin, Caroline, Christopher, Connor
Lab 14 Wed 01:25 PM‑02:15 PM Keller 1-250 GTA: ??? UTAs: Anthony, Christopher, Evan, Swati
Lab 15 Wed 02:30 PM‑03:20 PM Keller 1-250 GTA: ??? UTAs: Austin, Davis, Evan, Tarik

Getting Started

Review the Course Syllabus

This will be our "contract" for the semester and contains tons of information on the flavor the course.

Make sure you can access a Unix/Linux Environment

Some information on how to get access if you are not familiar is here:

Set up Discord
We will use the Discord communication platform for Office Hours and potentially other meetings if needed. It will allow you to do text and voice chat with staff along with sharing your screen and viewing the screen of others. Install the stand-alone Discord application to get the best experience.
Initialized your CSE Labs Account

You'll need access to the Labs machines during the semester:

Examine the textbook website here:

Computer Systems: A Programmer's Perspective, Third Edition by R. Bryant, D. O'Hallaron, Pearson, 2016.

This required book has a lot of resources associated with it so it is worth examining the textbook website as well.

C Programming resources

C programming will play a major role in this class so start exploring.

Beej's Guide to C Programming
Humorous, irreverent, reasonably complete and ad free
Wikibook on C Programming
Beginning to advanced features with some pictures to supplement tricky concepts like arrays/pointers.
LinkedIn Learning C Video Tutorials

Covers decent stuff, available for free through the UMN Library (through 4/15/2022 after which LinkedIn Learning resources will be unavailable).

  1. Sign into the UMN's linked in learning
  2. Try the Basic C Programming Course first
  3. Later try the Advanced C Programming Course

You might also examine some videos on Learning the Linux Command Line and Learning SSH as this is helpful for our course and LOTS of other courses.

The GNU C Programming Tutorial by Mark Burgess and Ron Hale-Evans, PDF or HTML
A little scattered but decent.
Learn C Programming from ProgramIZ
Decent and has a wealth of examples though lots of ads
C Programming Tutorial by Mark Burgess, circa 1999
A bit dated and questionable code style but fairly complete and no ads, single web page

Author: Chris Kauffman (
Date: 2022-01-17 Mon 14:59