Fall 2016 CpSc 317: Scripting Languages
Instructor: Dr. David Dailey
Section 01: 3:00 - 3:50 - MWF
Place: AT&SH 224
Instructor's Office Hours: MWF 8 - 9, WF 10-11 or by appointment
Instructor's Office location: ATSH 248
Course Description: This course emphasizes programming using scripting languages for the purpose of collecting and manipulating system information by system administrators and managers. Programming concepts such as data types and control structures will be discussed as well as operating system commands. A variety of languages and utilities will be discussed such as the Bourne shell, Perl, awk, and the Common Gateway Interface. The student is expected to have programming experience and knowledge of the Unix and PC environments.
Prerequisites: CpSc 207, CpSc 217 (yes, there is a reason for this!)
Recommended text: Essential PHP for Web Professionals - Christopher Consentino, Prentice Hall
Required reading: Class web page found at http://srufaculty.sru.edu/david.dailey/cs317/index.htm
Computing labs: The class will primarily use equipment provided in the classroom; other machines on campus may be used as well.
Linux and possibly X-windows
Web-browsers: recent versions of Firefox and Internet Explorer
Web-authoring software: HTMLKit or Notepad++ or others.
Web server software: Apache (possibly others)
Use of e-mail software is also required for most assignments (see below, under Assignments and tasks).
Method of determining final grade: Regular assignments: 35%; two quizzes, each worth 20%; one final project: 25%, due at beginning of last class meeting.
Note: Dr. Dailey is the instructor of record for this class. Only the instructor of record can properly grade coursework and issue midterm and final grades.
Final exam: (based on http://www.sru.edu/Documents/academics/academic-services/academic-records/10035%20Fall%20Final%203-2016.pdf?1471884280700)
Friday December 16th, 1 - 3 pm
Attendance policy: See Slippery Rock University's Attendance Policy.
Late work: Any homework that is turned in late must contain the word LATE at the end of the subject line in e-mail. The grade on an assignment will be dropped by 10% for each week it is late. Assignments more than three weeks late are not accepted.
Make-up exams: It is the student's responsibility a) to notify the instructor beforehand if he or she must miss an exam due to illness, or family emergency and b) to take the initiative in finding a time suitable to the instructor for a make-up exam. Make-up exams should be scheduled within one week following the original exam date.
Academic Integrity: All academic work for this course must consist of your own work. See the University's statement on Academic Integrity . Though it remains the student's responsibility to read and understand the University's expectations here, I wish to emphasize the following excerpts from that statement:
"It is expected that students engage in the following pre-emptive behaviors:
- Students are expected to learn, practice and apply standard techniques for accurately citing resource material. It is the student's, not the instructor's, responsibility to ensure that all material is cited..
- any attempt, or actual, collusion willfully giving or receiving unauthorized or unacknowledged assistance on any assignment (both parties to the collusion are considered responsible.)"
The fact that this course is in Computer Science does not lessen the student's responsibility to make sure that work submitted for a grade is his or her own work. Again, from the University's statement on Academic Integrity:
size="2"> Note that the University's statement on Academic Integrity also includes language pertaining to Intellectual Property law:
Students are expected to understand basic principles of respect and compliance with intellectual property law. Particularly important are those aspects of the Copyright Law of the United States that apply to academic work as well as to the use of University computer resources.
This is particularly relevant in computer science. Using someone else's code or programs is contrary to university policy and, in many cases, contrary to US and/or international law.
Assignments and tasks: Each assignment will be explained in class. Any uncertainties students may have about an assignment should be raised at the time the assignment is made. Students will be required to use e-mail for certain assignments; assignments submitted via e-mail must follow the guidelines explained in class.
Several homework assignments will be given during the semester. Unless otherwise stated, these assignments are to be completed individually by each student. Students may be called upon to present and explain their work to the class or to the instructor and should be consistently and adequately prepared to do so.
As the semester progresses, additional details about assignments may be found on the class web page.
Tentative Schedule of Topics The timeline for this course will need to be adjusted for severe weather events or other unforeseen circumstances. The instructor reserves the right to change the topics covered or the order in which they are covered at his/her discretion.
Assignments shown may vary. Refer to lecture notes and/or course web-site for details.
Assignment: verify e-mail, Windows, and Linux accounts..
Week 3 -- Review of UNIX: basic commands, parameters, devices, scripting.
Week 4 -- Review of UNIX: basic commands, parameters, devices, scripting.
Weeks 5 & 6 -- Server-side UNIX shell scripts. Passing variables through the URL. Probable time for first quiz.
Week 7 --CGI, methods get and post, reading and writing server files.
Week 8 --More with cgi.
Week 9 -- Beginnning PHP.
Weeks 10 - 13 -- SVG and more with PHP and SVG
Weeks 14 & 15 -- more SVG; Final projects.
This course emphasizes programming using scripting languages for the purpose of collecting and manipulating system information by system administrators and managers. Programming concepts such as data types and control structures will be discussed as well as operating system commands. A variety of languages and utilities will be discussed such as the Borne shell, Perl, awk, and the Common Gateway Interface. The student is expected to have programming experience and knowledge of the Unix and Windows environments.
Prerequisites: CPSC 207 and CPSC 217 (3 credits)
This course and its outcomes support the Computing Learning Outcomes of Problem Solving and Critical Thinking (PS&CT) and Communication and Interpersonal Skills (C&IS). These Computing Learning Outcomes are tied directly to the University Wide Outcomes of Critical Thinking and Problem Solving and Communication.
|Learning Outcomes||Assessed Course Objectives|
|PS & CT d. Implement computing solutions that consist of system and application software written in various programming languages||1. Select among available scripting languages and utilities for the most appropriate language and integrate with markup languages.|
|PS & CT e. Create efficient, user-friendly applications appropriate to the computing problems|
|C & IS c. Devise effective user interfaces based on the application||2. Write self-documenting code with an appropriate user interface that meets the style requirements for readability and usability|
|C & IS b. Use written, oral, and electronic communication to convey technical information effectively||3. Oral presentation to convey scripting language features.|
Additional Course Objectives include:
The student will be able to:
Title IX: Slippery Rock University and its faculty are committed to assuring a safe and productive educational environment for all students. In order to meet this commitment and to comply with Title IX of the Education Amendments of 1972 and guidance from the Office for Civil Rights, the University requires faculty members to report incidents of sexual violence shared by students to the University's Title IX Coordinator. The only exceptions to the faculty member's reporting obligation are when incidents of sexual violence are communicated by a student during a classroom discussion, in a writing assignment for a class, or as part of a University-approved research project. Faculty members are obligated to report sexual violence or any other abuse of a student who was, or is, a child (a person under 18 years of age) when the abuse allegedly occurred to the person designated in the University protection of minors policy. Information regarding the reporting of sexual violence and the resources that are available to victims of sexual violence is set forth at: http://www.sru.edu/offices/diversity-and-equal-opportunity/sexual-misconduct-and-victim-resources.