CS108: UNIX

When: MW 9-10am, August 24 - October 19, 2011
Where: BUR 216
Instructor: John Edwards
Email: john.edwards@utexas.edu
Office Hours: Tuesday 3-4pm in the ENS Intel lab Room 1, ENS basement
Office: North end of ACES 2.100 by the window
Prerequisite: CS 307, 313E, 314, 314H, or EE 422C (or 322C) with a grade of at least C-
Book (required):
A Practical Guide to Linux by Mark Sobell
i>clicker (required):
i>clicker available at the CO-OP and online (NOT i>clicker version 2)
UTCS Account:
UTCS account creation (get one ASAP!)
Course website:
cs.utexas.edu/~edwardsj/teaching/2011fall/cs108/

Schedule

  Date Reading Topic Assignments
1 Aug 24 149-173 Introduction, vim I <pdf>  
2 Aug 29 173-184, 29-31, 33-35 vim II, commands <txt> <cpp> <script>  
3 Aug 31 47-66 Utilities <script> hw1 due 9am
  Sept 5 * LABOR DAY *    
4 Sept 7 78-96 Filesystem I <script> hw2 due 9am
5 Sept 12 99-101, 108-110, 118-125 Filesystem II, Shell I <script>  
6 Sept 14 126-141 Shell II <script>  
7 Sept 19 206-221 Emacs I  
8 Sept 21 225-243 Emacs II hw3 due 9am
  Sept 26 * NO CLASS *    
9 Sept 28 290-296, 306-314, 324-329 Bash <script>  
10 Oct 3 531-541 AWK <script>  
11 Oct 5 565-570 sed <script> hw4 due 9am
12 Oct 10 397-406, 410-413, 427-429, 431-433 Bash scripting I <script>  
13 Oct 12 434-444, 447-450, 460-462 Bash scripting II <script> hw5 due 9am
14 Oct 17 485-486, 518-523 Perl <script>  
15 Oct 19 349-350, 828-832, 810-811 Misc hw6 due 9am

Course Overview

The purpose of this course is to provide some exposure to Linux. Topics we will cover are listed in the schedule. This is not an operating systems class nor a Linux internals class; it is a practical class that will put students on the road to becoming productive users in a UNIX environment. No prior knowledge of UNIX/Linux is assumed, though some basic level of computer literacy and computer programming will be necessary.

Grading

CS108 is offered on a Pass/Fail basis only. For undergraduates, the University defines a passing grade as being equivalent to a D (60%) or higher, so that standard will be used for this course. Students need at least 60% credit in order to pass the course. Credit is calculated based on the following:
Type Number Points
Quizzes Best 10 10x4 = 40
Assignments 6 4x25 + 2x30 = 160

All assignments are worth 25 points except for the final two assignments which are worth 30 points each.

Quizzes - We will have daily quizzes at the beginning of class (really). No quiz will be given the first or second day of class, making a total of 13 quizzes. The bottom 3 quiz scores will be dropped. The quizzes will be on the daily reading assignment. This doesn't mean that you must have a perfect understanding of everything you read. It just means that you need to have a grasp of what is being talked about, why it is important, etc. Quizzes cannot be made up.

Quizzes are given using the i>clicker, which allows you to electronically respond to the quiz questions. The clickers will also be used for in-class participation. You will need to get an i>clicker from the CO-OP or elsewhere by the second class day. You're welcome to buy a used i>clicker or even borrow one from a friend. You will register your clicker remote in class on the second class day. You are responsible for bringing your clicker remote to class every day.

Assignments - There will be one assignment per week, for a total of eight. These assignments make up the majority of the grade. Assignments are made available one week before they are due. All assignments are due on Wednesdays at 9:00am. No late assignments will be accepted. Assignments are graded and returned on Mondays.

Assignments are graded using the CS UNIX machines. I strongly advise that students do their assignments on CS UNIX machines. Sign up for a CS UNIX account if you don't have one already. Do this early because it often takes a couple of days to process and you won't be able to turn in any assignments until this account is active. Programming assignments will be turned in with the UNIX-based turnin. The web-based turnin will not work. Public labs are available.

Assignments are available on John's UTCS account. For example, assignment #1 is at ~edwardsj/cs108/hw1. Here is help on getting started on the first assignment.

Blackboard - Scores will be maintained on Blackboard.

Late Work Policy

Again, late assignments are not accepted. Daily quizzes cannot be made up.

Academic Honesty

Assignments must be done individually. You may not work in pairs or groups. You should also use either the vim or emacs editor to write up assignments. This is unenforceable, so we'll rely on the honor system. See also the department's code of conduct.

While you cannot consult with other students on the assignments, you may (and are encouraged to) use the internet.

Acknowledgements

Portions of this course were adapted from previous instances of CS 108 taught by Eric Rozner, Lilyana Mihalkova, Matt Alden, and Matt Taylor.