University of Nebraska at Omaha College of Information Science and Technology Department of Computer Science Course Syllabus Class: CIST 1300, Introduction to Web Development Room: CIST 1300-850: Internet-Mediated Instructor: Mr. Robert A. Fulkerson Office: Office Hours: PKI 175E, First Floor, Peter Kiewit Institute See class website for current office hours. Please come to my office prepared to ask your question(s). E-Mail Address: 1300@robertfulkerson.com Please allow 24-48 hours to receive a response to your e-mail if it is related to current lecture material or assignments. Allow longer otherwise. Please include your name and section when sending mail. If you are having problems with the specific syntax of HTML5 or CSS, please either send a snippet of code or send me the URL of your website with an explanation of what you’re trying to do. If your question is related to Perl code, please send a copy of the code you’re having problems with along with an explanation of the issues you’re encountering. I rarely check my UNO e-mail address, so use the above address for more timely replies. I only sporadically check and respond to email on weekends. Some assignments will be due on weekends, however, so please plan accordingly. I will also typically not be able to respond to e-mails sent a few hours before an assignment is due. On-Line Materials: Course materials are managed through the Blackboard system: http://blackboard.unomaha.edu/ Text Book: Recommended: Learning Perl, 6 Edition, Schwartz, Phoenix & foy, 2011 th Recommended: HTML, HTML5 & CSS, 7 Edition, Castro, 2012 Class Overview: In this class, we will cover creating static web pages using HTML5 (HyperText Markup Language), applying styles and formatting to those pages using CSS (Cascading Style Sheets), learning a powerful programming language (Perl), and tying it all together by creating dynamic web pages that use a combination of HTML5, CSS and Perl. Prerequisite: No formal computer background is required. It is assumed that you have worked with a computer before. Students with Disabilities Accommodations are provided for students who are registered with Disability Services and make their requests sufficiently in advance. For more information, contact Disability Services (EAB 117, Phone: 5542872, TTY: 554-3799) or go to the website: http://www.unomaha.edu/disability. Accreditation: The CS and IS programs in the College of IS&T are currently pursuing continued accreditation by ABET, the Accreditation Board for Engineering and Technology. This organization requires that we keep samples of student work. Unless you specify otherwise in writing, I may retain a copy of your exams and assignments (with your name and any other identifying information removed) for accreditation purposes and return the original back to you. Cellular Phone / Wireless Internet Access Policy If you are taking this course on campus, this section applies to you. th Turn all cellular phones off or set them to vibrate so as not to disrupt the class during lecture. If you must take a call, please leave the room as quickly and quietly as possible. Also, please do not surf the web or otherwise play with your wireless phone during class. It distracts me as well as your fellow classmates. If you bring a laptop or other wireless-enabled device and plan to use it during class (for wireless access or not), you are asked to sit in the back row of the room so that you don't distract others in the class. If laptop use becomes disruptive during the semester, they may be banned from the classroom. Class Lectures: For my on-campus class: This class consists of two 75-minute lectures per week. For my online class: This online class consists primarily of pre-recorded lectures. The lectures are narrated PowerPoint slides with live code demonstrations and white board examples to support the material being covered. It is easy to skip through a narrated lecture to try and catch the high points, but I would encourage you to set aside dedicated time every week to listen to each lecture. This online course is treated, lecture-wise, as if you were actually attending the class in a classroom. Lectures typically run between 50 and 90 minutes. You can obviously pause or otherwise remember where you were in a lecture and come back to it later if you don't wish to or are unable to complete an entire lecture in one sitting. Since we discuss quite a lot of code examples, you may wish to follow along with the lectures, pausing them when appropriate and playing with the code yourself. Learning languages like HTML5, CSS and Perl are best done interactively. Whereas some online courses will provide you with access to all of the material at the beginning of the course and let you work through it at your own pace, this course will release lectures and assignments week-by-week as they are covered in on-campus versions of the course. For both classes: You are encouraged to read book material or slides in advance of listening to the lecture covering the material. “Take responsibility for your education by asking questions when you do not understand the material or would like to know more. Silence implies understanding.” – Matt Payne, former IS&T Ph.D. Student Computer Accounts: Each student will receive instructions soon on setting up and using a University-provided Unix account. You do not need to purchase any sort of software to do your homework in this course. Homework: A word processor must be used to answer any non-programming, written homework problems. Failure to do so will reduce your grade on that assignment by 35%. You must follow proper procedures for submitting your completed programs in order for them to be graded. You will be given instructions on how to do that with your first programming assignment. Programs not submitted correctly will not be graded, period. Do not let your lack of planning become my emergency. If you know that a program is due on a certain date at a certain time, allot enough time to accommodate situations such as your Internet connection being down, etc. Grading Scale Grade Distribution A+ A AB+ B BC+ C CD+ D DF 97% - 100 % 93% - 96% 90% - 92% 87% - 89% 83% - 86% 80% - 82% 77% - 79% 73% - 76% 70% - 72% 67% - 69% 63% - 66% 60% - 62% 00% - 59% 4.00 GPA 4.00 GPA 3.67 GPA 3.33 GPA 3.00 GPA 2.67 GPA 2.33 GPA 2.00 GPA 1.67 GPA 1.33 GPA 1.00 GPA 0.67 GPA 0.00 GPA Passing grade for Engineering, Education, Business Passing grade for College of IS&T, Arts & Sciences 70% of your grade will be based on your program/homework/assignment scores 30% of your grade will be based on your exam scores (mid-term, final, quizzes) Plagiarism: Any homework, program, quiz or exam received which looks identical, in part or in whole, to another student’s work or an external source will be considered plagiarism. As per the Department of Computer Science Policy on Cheating and Plagiarism, the instructor of a course is responsible for “assigning an evaluation (or grade point) to the work that is substantially lower than if the work had not been completed at all” for occurrences of plagiarism.” Any offense of plagiarism will result in a -100% grade recorded for the first offense and a grade of “F” for the course for the second offense, both accompanied by a written letter to the Associate Vice Chancellor for Student Affairs, the Associate Directory of Records and Registration, the Dean of the College of IS&T and the chair of both the computer science department and your major's department, and possibly the pursuance of your dismissal from the University. If you are suspected of submitting or enabling a plagiarized assignment, you will have the opportunity to meet with the instructor to discuss your situation before disciplinary actions are possibly pursued. Ignorance of how to properly cite your sources correctly or present work as your own is not an acceptable excuse for plagiarism. You will be provided with instructions on how to cite sources. Please make sure you keep all of your work secured and unavailable from your fellow students. If someone takes your code, even without your knowledge or consent, and submits it in modified or unmodified form, you will both be penalized for plagiarism. * All material should be your own work. You may use code or algorithms from any source in extremely small amounts, but bear in mind that failure to explicitly give proper credit is a form of plagiarism. * “Using code” is including code in your program in either unmodified or modified form. It’s always safer to cite your influences than to take a chance on committing plagiarism by not giving proper credit. * “Using code” does not refer to the wholesale use of someone else’s code for programs or projects without significant work on the student’s part. * “Using code” does not mean you may solicit or submit solutions from websites. The following definitions of plagiarism and related offenses are taken from the University of Nebraska at Omaha Undergraduate Catalog 2010-2011, page 56 (http://j.mp/unouc1011): 1. 2. 3. 4. Honor Pledge: Cheating. Copying or attempting to copy from an academic test or examination of another student; using or attempting to use unauthorized materials, information, notes, study aids or other devices for an academic test, examination or exercise; engaging or attempting to engage the assistance of another individual in misrepresenting the academic performance of a student; or communicating information in an unauthorized manner to another person for an academic test, examination or exercise. Fabrication and falsification. Falsifying or fabricating any information or citation in any academic exercise, work, speech, test or examination. Falsification is the alteration of information, while fabrication is the invention or counterfeiting of information. Plagiarism. Presenting the work of another as one’s own (i.e., without proper acknowledgment of the source) and submitting examinations, theses, reports, speeches, drawings, laboratory notes or other academic work in whole or in part as one’s own when such work has been prepared by another person or copied from another person. Complicity in academic dishonesty. Helping or attempting to help another student to commit an act of academic dishonesty. For each assignment you submit, you will digitally sign an Honor Pledge stating that you have not obtained any code or answers directly from any of your fellow students or other sources, and that any code you have used from elsewhere has been used in small amounts and has been properly cited. Assignments without Honor Pledges or with unsigned Honor Pledges will not be graded. Information regarding the CIST 1300 Honor Pledge will be provided to you during an upcoming class. Grading Notes: PROGRAMS AND ASSIGNMENTS - SECOND CHANCES: If I cannot compile and run your program or otherwise access your assignment from the file you submit or at the web address it is expected to be at, or if your assignment solution is grossly incorrect, it will be returned to you to fix. The maximum grade you will be able to receive on it will be a 70% if turned in by the appropriate extended due date (usually 1 week from the return of your original assignment). If you don’t turn in the assignment by the original due date, you can turn it in by the extended due date (usually 1 week from the return of your original assignment) for 50%. Failure to resubmit an assignment that you have been given a second opportunity on will result in a 0 for the assignment, even if you turned in something by the first due date. There are no third chances. This policy will be explained in more detail when the first assignment is given. GRADE DISPUTES: It is your responsibility to keep track of your grade. You have up to two weeks after you receive the grade for a program, quiz or exam to dispute or otherwise address grades you consider to be recorded incorrectly. After two weeks have passed, grades will stand as recorded. NOTE ON MISSED QUIZZES / EXAMS: A missed quiz or exam is automatically assigned a score of 0, and no make-up quizzes or exams will be given for any reason. Please make arrangements ahead of time if you plan to be out of town for a quiz or exam. NOTE ON MISSED WRITTEN ASSIGNMENTS: Written assignments are to be turned in by the date and time given for each assignment. Late assignments will not be accepted for any reason and will result in a zero (0) being recorded for that assignment. Honors Credit Honors credit can be earned in this course. Only Honors students may take the Honors section of the course. Honors students usually do more programs, more in-depth programs and/or independent research throughout the semester. Each semester there is usually an Honors section of 1300 offered, usually listed as 1300-098, 1300-099 or possibly even 1300-899. If you are an Honors student and are signed up for this section, then you're ready for the course. If you're not signed up for the specific Honors section (usually cross-listed with another, non-Honors section) or if it's not being offered during the current semester, then you can contract for Honors credit. Please obtain an Honors contract from the Honors office or website and bring it to me when you have it filled out. Student Code Examples As the semester progresses, submitted student work may be used for in-class discussion of solutions to the assignments given in class. This will allow us to analyze and discuss good and bad approaches to solving the assignments through relevant, current code. All identifying information (i.e., name, etc) will be removed from the student work before displaying it in class. Additional Information: Additional information sheets, including specifications for each program, program documentation, etc., will be handed out during future classes. This information should be considered to be official extensions to this syllabus. Tentative Coursework Schedule Please note that the schedule below is just a guideline; sometimes the class will move faster and sometimes the class will move slower. DOW stands for “Day of Week”, where MT stands for Monday/Tuesday and WR stands for Wednesday/Thursday. Key for Notes column L indicates new lecture posted under Lectures section A indicates new assignment posted under Assignments section Week of ... 1/12 Topic CATEGORY 2/2 2/9 2/16 2/23 3/2 3/9 3/16 Notes Syllabus Syllabus MT L0, L1, L2 Course Overview, Unix Tutorial and Overview Course Overview / Unix WR Disc. Board, Questionnaire, A1 MT NO CLASSES; MLK Day 1/19 1/26 DOW Overview and Complete Basic HTML5 Page HTML5 WR L3, L-tilde, L-unix , A2 HTML5: Foundations, Part 1: sectioning elements HTML5 MT L4, L5, L-vim HTML5: Foundations, Part 2: sectioning elements HTML5 WR A3, A4 HTML5: Formatting Text HTML5 MT L6, L7, L-FileZilla HTML5: Directories and Images HTML5 WR A5 HTML5: Using video and audio HTML5 MT L8, L9 HTML5: Creating links HTML5 WR A6 HTML5: Lists and tables HTML5 MT L10, L11 CSS: Basics: Inline, Embedded, External CSS WR A7 CSS: Text Formatting CSS MT L12, L13 CSS: HTML5 Shiv, normalizing CSS, multiple external CSS CSS WR A8 CSS: Layout, Part 1 CSS MT L14, L15 CSS: Layout, Part 2 CSS WR A9, A10 Perl: Overview Perl MT L17, L18, L-chmod Perl: Basic Program Structure Perl WR A11 Perl: Arithmetic Perl MT L19, A12 Mid-Term Exam Exam! WR Exam #1 : HTML5, CSS, Unix MT NO CLASSES: Spring break 3/23 Spring Break 3/30 Perl: Selection and Decision Making Perl MT Perl: Boolean Logic Perl WR A13, A14 Perl: Repetition Perl MT L22, L23, L23b Perl: Arrays and Repetition Perl WR A15 HTML5: Forms HTML5 MT L24, L25 HTML5: Forms HTML5 WR A16, A17 Perl: Vanilla CGI CGI MT L26, L27 Perl: Processing Forms with CGI.pm HTML5 / CGI WR A18 TBD TBD MT TBD TBD WR WR 4/6 4/13 4/20 4/27 5/4 L20, L21 MT http://j.mp/unocalendar WR Final Exam : Perl, Forms, CGI