Instructor: Gustavo Dietrich Semester: Fall 2017 Phone: 665-2618 Office: EENGR 3.249 Email: gustavo.dietrich@utrgv.edu Web: http://faculty.utrgv.edu/gustavo.dietrich/ Class Meeting Times: MW 1:40 pm-2:55 pm Room: EACSB 2.113 Office Hours: MWTR 8:15 am - 9:15 am and by appointment Course Description: The course presents the UNIX file system, the commonly used utilities, editors, shell programming and scripting. It includes instruction in software development in the UNIX/Linux environment. In addition, a brief overview of the internal components of the operating system will be covered. Text and other Materials: Michael Palmer, Guide to UNIX Using Linux, Fourth Edition. Course Technology Incorporated, 2008, ISBN 1-4188-3723-7. You may want to check www.bookfinder.com for used books or www.chegg.com for book rentals, among other sites. Prerequisites: Students are expected to have completed CSCI 1370 (Computer Science I). Course Topics: The specific topics covered in this course are those listed in the detailed class schedule shown below. Course Objectives: The course presents the UNIX file system, the commonly used utilities, editors, shell programming, and scripting. It includes instruction in software development in the UNIX /Linux environment. In addition, a brief overview of the internal components of the operating system will be covered. This is a practical, hands-on course that teaches the fundamentals of the UNIX operating system concepts, architecture and administration. These concepts are taught using Linux, a free, PCcompatible UNIX clone that is an ideal teaching tool for many basic and advanced UNIX commands. The power, stability, and flexibility of UNIX has contributed to its popularity in mission-critical business and networking applications. Course Grading Policies: Tests 45% (15% per exam) Lab Projects 45% (see LAB/HOMEWORK ASSIGNMENTS EVALUATION CRITERIA) Homework assignments 10% (see LAB/HOMEWORK ASSIGNMENTS EVALUATION CRITERIA) Team Work Incentive up to 5% (see LAB/HOMEWORK ASSIGNMENTS EVALUATION CRITERIA) ---------- Total possible score (max): 105% Important: Please read very carefully the content of pages 4 and 5 to understand how your final grade will be calculated. I DO NOT do extra credit so make sure you get good grades in tests and assignments in order to get a good final grade. Your final grade will be based on the following scale: A: 90-100% B: 80-89% C: 70-79% D: 60-69% F: 0-59% General Course Policies: Attendance. I assume that you will attend class, be punctual, remain on task, and stay through the entire class meeting. If you miss more than 10% of the classes without a valid excuse you will be reported to the Early Warning System program. UTRGV s attendance policy excuses students from attending class if they are participating in officially sponsored university activities, such as athletics; for observance of religious holy days; or for military service. Oher acceptable excuses include (but are not limited to) the death of an immediate family member, or an illness requiring a physician's attention. Completion of exams and assignments. You must take all exams and turn in all assignments on time. If you miss any of the work for the course, you must speak to me as soon as possible so that I can determine if I will allow you to make up the missed work. Depending on the excuse provided, make-up exams may result in automatic loss of points. All exams must be taken to be able to pass the course, missing anyone will result in an F as a final grade. Scholastic integrity. As members of a community dedicated to Honesty, Integrity and Respect, students are reminded that those who engage in scholastic dishonesty are subject to disciplinary penalties, including the possibility of failure in the course and expulsion from the University. Scholastic dishonesty includes but is not limited to: cheating, plagiarism, 1 of 5
and collusion; submission for credit of any work or materials that are attributable in whole or in part to another person; taking an examination for another person; any act designed to give unfair advantage to a student; or the attempt to commit such acts. Since scholastic dishonesty harms the individual, all students and the integrity of the University, policies on scholastic dishonesty will be strictly enforced (Board of Regents Rules and Regulations and UTRGV Academic Integrity Guidelines). All scholastic dishonesty incidents will be reported to the Dean of Students. Course drops. According to UTRGV policy, students may drop any class without penalty earning a grade of DR until the official drop date (see Important dates below please). Following that date, students must be assigned a letter grade and can no longer drop the class. Students considering dropping the class should be aware of the 3-peat rule and the 6- drop rule so they can recognize how dropped classes may affect their academic success. The 6-drop rule refers to Texas law that dictates that undergraduate students may not drop more than six courses during their undergraduate career. Courses dropped at other Texas public higher education institutions will count toward the six-course drop limit. The 3-peat rule refers to additional fees charged to students who take the same class for the third time. You are responsible for saving and backing up your own assignment files. If you lose a file, you must start the assignment over again. I will give NO special consideration or extensions for lost files. Assignments Policies: Assignments must be submitted using the specific tool provided by Blackboard (sorry but no email attachments). Late assignments will be accepted with a penalty of 10% if submitted within 24 hours after its deadline. An assignment may be accepted afterward but the student will get 0 points for it. Students must work in two-member teams to develop the solution for the assignments. All lab assignments are expected to be the teams own work. Giving and receiving major sections of code is considered cheating and will be dealt with on an individual basis (beginning with total loss of points followed by formal action). They are also encouraged to seek help with identifying syntax and run-time errors from the instructor during office hours. Expectations: I am committed to quality teaching and to providing you a meaningful experience in this course but learning is your responsibility so please do your part in order to receive the maximum benefit from the course. For this class, I expect you to: Have your electronic devices (cell phones, notebooks, music players, etc.) OFF at all times (tests, lectures and labs). Attend each class, arrive on time and remain in the classroom throughout the entire class meeting. If you have a legitimate and important reason for needing to leave early, please let me know before class starts. Complete all assignments and submit them on time (this is very important for you!). Interact respectfully with me, the course assistants, and your other classmates. Participate in class discussions and activities. Remain on task and focused during class (i.e., no doing homework, engaging in side conversations, web-surfing, reading e-mail, Facebooking, chatting, IMing, etc. during class). Access your Blackboard account frequently to get information on course policies, assignments, tests, grades, etc. All information posted on it will be assumed to be known by the student 24 hours later. Do Not bring food or drinks into the lab please. This is a real issue around computers. Come speak to me IN PERSON and IMMEDIATELY at the first sign that you are having trouble with the class or if you miss assignments so I can try to help you. Communication IMPORTANT NOTICE: It is UTRGV policy that all electronic communication related to university activity/business must use university systems. Thus, you MUST communicate with me through Blackboard Messages or (if Blackboard is not available) through your UTRGV e-mail account. Whether you send a message in Blackboard or an e-mail through your UTRGV account, please ensure that all your messages have the following: o Descriptive subject line. o Your name, course number and section (if e-mailing from your UTRGV account), and a clear statement of your question or problem. If you send an attachment, please explain it. o An e-mail is a relatively formal communication, so please ensure your language reflects that fact (be polite, avoid acronyms, use punctuation marks, capitalize, etc.). For example, fyi tina (For your information, this is not acceptable). Special Problems/Note to students with disabilities: If you have a documented disability (physical, psychological, learning, or other disability which affects your academic performance) and would like to receive academic accommodations, please inform your instructor and contact Student Accessibility Services to schedule an appointment to initiate services. It is recommended that you schedule an appointment with Student Accessibility Services before classes start. However, accommodations can be provided at any time. Brownsville Campus: Student Accessibility Services is located in Cortez Hall Room 129 and can be contacted by phone at (956) 882-7374 2 of 5
(Voice) or via email at ability@utrgv.edu. Edinburg Campus: Student Accessibility Services is located in 108 University Center and can be contacted by phone at (956) 665-7005 (Voice), (956) 665-3840 (Fax), or via email at ability@utrgv.edu. SEXUAL HARASSMENT, DISCRIMINATION, and VIOLENCE: In accordance with UT System regulations, your instructor is a responsible employee for reporting purposes under Title IX regulations and so must report any instance, occurring during a student s time in college, of sexual assault, stalking, dating violence, domestic violence, or sexual harassment about which she/he becomes aware during this course through writing, discussion, or personal disclosure. More information can be found at www.utrgv.edu/equity, including confidential resources available on campus. The faculty and staff of UTRGV actively strive to provide a learning, working, and living environment that promotes personal integrity, civility, and mutual respect in an environment free from sexual misconduct and discrimination. Mandatory Course Evaluation Period (November 15 - December 6): Students are required to complete an ONLINE evaluation of this course, accessed through your UTRGV account (http://my.utrgv.edu); you will be contacted through email with further instructions. Online evaluations will be available November 15 - December 6, 2017. Students who complete their evaluations will have priority access to their grades. Tentative Schedule: Week MONDAY LECTURE WEDNESDAY LECTURE WEDNESDAY LAB starting (75 minutes) (25 minutes) (50 minutes) 28-Aug Introduction to the course. The Essence of UNIX 4-Sep LABOR DAY HOLIDAY Exploring the UNIX File System and File Security Lab 1 11-Sep Exploring the UNIX File System and File Security UNIX Editors Lab 2 18-Sep UNIX Editors UNIX Editors 25-Sep UNIX File Processing UNIX File Processing Lab 3 2-Oct Advanced File Processing TEST 1 (CH: 1,2,3) 43017 Advanced File Processing Advanced File Processing Lab 4 16-Oct Introduction to Shell Script Programming Introduction to Shell Script Programming Lab 5 23-Oct Advanced Shell Programming Advanced Shell Programming Lab 6 30-Oct Exploring the UNIX Utilities Exploring the UNIX Utilities Lab 7 6-Nov Exploring the UNIX Utilities TEST 2 (CH: 4,5,6,7) 13-Nov Perl and CGI Programming Perl and CGI Programming 20-Nov Perl and CGI Programming Developing UNIX Applications in C and C++ Lab 8 27-Nov Developing UNIX Applications in C and C++ The X Window System Lab 9 4-Dec The X Window System Test 3 (CH: 8,9.10) Important dates: Monday 9/4/17: Labor Day Holiday; university closed Wednesday 9/13/17: Last day to drop a class before it appears on the transcript and counts toward the 6-drop limit. Last day to receive a 100% refund for dropped classes (other policies apply when a student is withdrawing from all classes). Wednesday 11/15/17: Drop/Withdrawal Deadline; last day for students to drop the course and receive a DR grade. After this date, students will be assigned a letter grade for the course that will count on the GPA. Thursday 11/23/17-Saturday 11/25/17: Thanksgiving Holiday; university closed Course Learning Outcomes: ABET Learning Outcomes: (a) An ability to apply knowledge of computing and mathematics appropriate to the program s student outcomes and to the discipline (b) An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution (c) An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs (d) An ability to function effectively on teams to accomplish a common goal (i) An ability to use current techniques, skills, and tools necessary for computing practice. 3 of 5
Detailed learning outcomes: Upon successful completion of this course, students will be able to: a. understand the objectives and functions of Unix/Linux operating systems b. understand how operating systems have evolved over time from primitive batch systems to sophisticated multi-user systems c. understand Unix/Linux file system, file processing, and file security d. use basic and advance Unix commands e. use Unix/Linux utilities f. use basic editors, such as vi or emacs, on Unix/Linux environment g. program with shell script languages h. develop Unix/Linux applications in C/C++ HOMEWORK ASSIGNMNENTS EVALUATION CRITERIA This is individual work. Students will have to answer online 10 questions (in 10 minutes) extracted at random from the set of review questions found at the end of each chapter. Students are recommended to make sure they can answer all the review questions from the textbook before taking the online homework in order to ensure a good performance. LAB ASSIGNMNENTS EVALUATION CRITERIA 1) Students must work in two members-teams (pair programming). The team MUST work together for at least three assignments. Switching of team members MUST be authorized by the instructor. 2) It is expected that BOTH members of the team work together on EACH problem, not each member on a separated problem. Both partners are equally responsible for the completion and submission of the assignment. Note: Partners are there to learn teamwork and motivate/help each other. The best way to learn something is by teaching it to somebody else but it is not expected that one partner has to carry the other. 3) Teams can share ideas on the general solution of the problem but cannot share actual code. If this situation is detected, BOTH teams (the one given the code as well as the one receiving it) will get 0 (ZERO) points and a warning from the instructor. A second instance of copying will be dealt according to the HOP (Handbook of Operating Procedures) specifications, that is, report to the Dean of Students and whatever action derives from that. Students/teams can provide LIMITED help to other classmates/teams. Providing full sections of the solution is NOT allowed. Examples of accepted of types of help are: a) Pinpointing syntax errors. b) Mentioning a missing component of a command. c) Describing the wrong use of data types in an expression. d) Discussing the general type of structure to be used in the solution. For example, you can indicate what command can be used but providing the full syntax of the command is forbidden. If you have any doubts, consult with the instructor. 4 of 5
ASSESSMENT QUESTIONS There will be in every test questions assessing your participation in the solution of lab assignments. Thus, it is important that you and your partner clearly understand what was done in every solution submitted. These questions will ask you to do something similar to what you did for your lab assignments. Their grade (AG: Assessment Grade) will range from 0.0 to 1.0 and will be used to calculate your final grade according the formula shown below. GRADING CRITERIA The following general criteria will be used to grade programming assignments: 1) Non-working solutions (do not execute or do not do what are supposed to do): -100 points. This is equivalent to not submitting anything. 2) Incomplete solution: from -5 to -100 points depending on how much is missing. 3) Late submission: -10 points. These general criteria may be modified under particular circumstances. As the semester progresses, more criteria may eventually be added to the above. Your final grade will be calculated using the following formula: FG = TGA*.45 + LGA*.45*OAGA + HGA*.1 + 5*OAGA*PAGA FG: Final Grade TGA: Tests Grade Average (0-100) LGA: Labs Grade Average (0-100) HGA: Homework Grade Average (0-100) OAGA: Own Assessment Grade Average (0.0-1.0) PAGA: Partner Assessment Grade Average (0.0-1.0) The last term in the formula (5*OAGA*PAGA) can add up to 5 points to your final grade and it will depend on yours and your partner s assessment grades in tests. It is called Team Work Incentive. Notice your lab assignments component will be affected by your own assessment grade in tests. 5 of 5