SI 539, Fall 2014 Complex Web Design Lecture: Friday: 1:00pm 3:00pm *Must leave by 3:15 Discussion Sections Varies Office Hours*: Tues: 11:35 12:35 Wed mornings *Please check my Google Calendar for updates http://collemc.people.si.umich.edu/ Instructor: Dr. Colleen van Lent (collemc@umich.edu) Office: NQ 3441(There isn t a number on my door though.) Contact Hours: In addition to the office hours above, I am available for individual appointments with prior notice. I will be cutting back on the number of hours of email interaction. GSI: Yang Liu (owenliu@umich.edu) GSI Hours: Tuesdays 3:30-5:00pm and Thursdays 10-11:30am at NQ4352. Course Email: I have established a class email via CTools: si539- f14@ctools.umich.edu. Messages sent to this address will go to the entire class. Please use this email sparingly, and instead use Piazza for clarifying questions on assignments, study groups etc. Do not send answers, code, personal information, etc. Course Description In the first half of this course we will look deeply into the ideas and concepts behind web design; particularly recent changes to HTML and CSS standards, as well as the importance of responsive web design. In the second half we will look at using standard software tools, javascript, and PHP. Learning Objectives This course is aimed at students with no technical background and is a prerequisite for SI 664, Database Design. The purpose of this course is to provide students with all necessary skills for building and deploying web sites as well as utilize exiting software tools. The Learning Objectives for SI- 539 are to help students develop solid competency in: Understanding the use of programming to solve problems and develop web resources Understanding the importance of standards- based practices in web development Understanding the importance of separating structure and semantics from presentation, as well as how this is accomplished in professional web development Creating web pages using Hypertext Markup Language (HTML) Styling web pages using Cascading Style Sheets (CSS) Understanding the interactions between web browsers and web servers using Hypertext Transport Protocol (HTTP) Using PHP in programming to control the view of large- scale projects After completing SI- 539, students will have a working personal portfolio website in production.
Materials 1. (Optional) Textbook: Learning PHP, MySQL, JavaScript, and CSS: A Step- by- Step Guide to Creating Dynamic Websites (Second Edition) Author: Robin Nixon. ISBN- 10: 1449319262 ISBN- 13: 978-1449319267 http://oreilly.com/catalog/0636920023487 http://www.amazon.com/learning- MySQL- JavaScript- Step- - - Step/dp/1449319262 2. A laptop. You will need a laptop for this course, and you must bring it to class. Tablets are not sufficient as a programming environment. 3. Software. The software used for the course is 100% free. All necessary software will be available for both the PC and Macintosh. You must download the following software to your laptop. i. MAMP/WAMP/XAMP ii. A text Editor (I recommend Sublime or Notepad++) Using the Course Mailing List and CTools Much of the communication for the course will be handled through CTools and Piazza. Students are expected to keep up with all email that comes to them from the course mailing list and check the forums on a regular (1x week minimum) basis. Piazza is the preferred place to get help in the class and you must post there before emailing a question to the GSI or me. It is completely acceptable and encouraged for a student in the course to attempt to help other students in the forums. The instructional staff will read all posts and correct any incorrect advice that one student gives another. Academic Integrity: All students in this course will be held to high standards of scholarship and integrity. Personal responsibility and integrity are assumed, and all forms of academic dishonesty and misconduct are prohibited. Academic dishonesty may be understood as any action or attempted action that may result in creating an unfair academic advantage for you or an unfair academic advantage or disadvantage for any other member or members of the class. The instructor will not tolerate any conduct, without regard to motive, that violates the academic integrity and ethical standards of the University community. Issues of academic integrity will be handled according to the policies established by LSA. http://www.lsa.umich.edu/academicintegrity/procedures/index.html. Learning technical material can be challenging. We move quickly through a wide range of topics. Our goal is for you to succeed in the course, and we encourage you to get help from peers, online repositories, etc. You may get help even in completion of assignments. However, you are responsible for learning the material, and you should make sure that all of the assistance you are getting is focused on gaining knowledge, not just on getting through the assignments. If you receive assistance on an assignment, please indicate the nature and the amount of assistance you received. If the assignment is computer code, add a comment crediting sources (as in any academic paper) or indicating who helped you and how. If you are a more advanced student and are willing to help other students, please feel free to do so. Just remember that your goal is to help teach the material to the student receiving the help. It is always appropriate to ask for and provide help on assignments via CTools or during the open lab portions of class. Students with Disabilities:
The University of Michigan provides reasonable accommodations for all students with disabilities. To ensure that your needs are met in a timely manner, please contact the instructor with any requests for accommodation as early in the term as possible. For additional information on services and support, visit UM Services for Students with Disabilities at: http://www.umich.edu/~sswd/. Scoring Breakdown Prep Homework 15% Discussion Section assignments 30% Exam 15% Group Project 30% Final Project 10% Prep Homework Prep homework will allow you to take part in lectures. Typically, these will be code academy badges or CTool quizzes. No late submissions will be accepted. During the first part of the semester you should expect a prep homework before every lecture. Discussion Section Assignments There will be assignments approximately every week during the first half of the semester. Most of the time these assignments will be due by the end of discussion section. If an assignment is up to 24 hours late, it will be given a 20% penalty. Beyond one day late, no points will be given. These assignments will reinforce concepts that we have already covered. However, there will often be some small component that will require you to do some investigation to find the answer. You cannot submit individual work for a group project; you must work as a group. Exams There will be one exam in this course. The exam is closed book/closed note and based on lecture material, the class readings, end of chapter questions, and any assignments. Group Project The final project is cumulative throughout the course of the year and requires a presentation during the last week of class. You will demonstrate the functionality, accessibility, and usability of your site. The final projects will be the only ranked assignment, where submissions are judged comparatively to others. Final Portfolio Every student must submit a final web portfolio of at least 3 pages. You may borrow heavily from your group project work. Attendance/Participation You will be expected to attend class whenever there is an invited speaker or group presentations. The dates for these will be confirmed at least one week in advance. A preliminary set of dates is posted below. You will not receive points for showing up, but two points for each absence will be deducted from your overall grade for missing. Getting an A+ You may earn an A+ by exceeding requirements throughout the semester. You must have receive at least 95% on the exam and have a 98% overall. You must contribute weekly to the Piazza message boards. In addition you must submit a one page written explanation as to why you feel you went above and beyond expectations. This page is due December 5 th at the end of class.
Grading A 94% and above B- 80% and above A- 90% and above C+ 77% and above B+ 87% and above C 70% and above B 84% and above D 60% and above
***TENTATIVE****Course Outline (subject to change with prior notice) I will do my best to post any slides before class, and post notes afterward. The schedule is subject to change, but any changes will be posted immediately. Some topics (e.g. Accessibility, Responsive Design and Developer Tools) will reoccur throughout the semester though only the first reference is noted below. Wk Discussion Date LECTURE TOPIC 1 2 3 4 5 6 Editors and File Upload Create and validate site Style a site with Sept 5 Sep 12 Sept 19 Intro Request- Response Cycle Agile Development HTML5/validation Developer Tools Evaluate a site Sept 26 More CSS Responsive Design Create a responsive page Organize into groups Discuss Project ideas Oct 3 Oct 10 Accessibility speaker Mandatory Attendance Bootstrap 7 Begin a form Oct 17 JavaScript 8 9 Apply JS (or jquery) to form Demo form Group work Oct 24 Oct 31 Forms/Request- Response Cycle Validation and Error Handling EXAM 10 TBD Nov 7 PHP 11 Process your Nov 14 Accessibility speaker Mandatory Attendance Form 12 Group Work Nov 21 TBD: Custom Data Attributes 13 Group Work Nov 28 Thanksgiving No class 14 Group Work Dec 6 Group Demonstrations Dec 16 Personal Portfolios Due