teaching
CMSC 226
Principles of Computing Systems (S2020)
overview | logistics | schedule | assignments | presentations | resources
| |
Class: Mon & Wed 3:10pm-4:30pm (RKC 107)
Office Hours: Mon 1pm-2pm, Tue 11am-12pm, and by appointment (RKC 204)
Required Texts
- The Linux Programming Interface: A Linux and UNIX System Programming Handbook by Michael Kerrisk. No Starch Press. 2010.
- 21st Century C (2nd Edition) by Ben Klemens. O'Reilly. 2015.
- Bite Size Command Line by Julia Evans. Computer Wizard Industries. 2018.
- Bite Size Linux by Julia Evans. Computer Wizard Industries. 2018.
- ARM assembler in Raspberry Pi by Roger Ferrer Ibáñez. 2013.
- C Programming Language (2nd Edition) by Brian Kernighan and Dennis Ritchie. Prentice Hall. 1988. ISBN: 0131103628.
- Operating Systems: Three Easy Pieces (Version 0.90) by Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau. Arpaci-Dusseau Books. 2015.
- Midterms (40%): Two paper & pencil exams
- Assignments (20%): Programming assignments
- Homework & Quizzes (20%): Shorter assignments (almost every class)
- Project (20%): A large project worked on for approximately one third of the term
- Attend class.
- Be on time.
- Participate.
- Complete all assignments and start early.
- Check Google Classroom & this class website.
- Come to class prepared. Make sure to have read the required reading BEFORE class.
- When reading, studying, and listening, be active by taking notes, writing and asking questions.
- Be respectful of your fellow classmates; my rule of thumb for judging whether a response is worthwhile: Is it Nice? Is it True? Is it Necessary? Pick at least two.
- Adhere to the Code of Ethics and Professional Conduct for the Association for Computing Machinery.
- Network outages and other computer problems are not valid excuses for missing deadlines; take this into account in your planning.
- Cooperate, but don't copy.
- Credit work, including all sources you used from the web, other books, etc.
- Sharing ideas is encouraged, but blatantly copying work without attribution will be treated as scholastic dishonesty and receive no credit.
- Be prepared to demonstrate the theory of your program (Peter Naur)
- Keep your assignment and lab work private, a USB flash drive is recommended.