ClassInfo

IT 231 Web Development I

Craig Miller

Office: CDM 745
Spring 2017-2018
Class number: 34141
Section number: 601
M 10:10AM - 11:40AM
CDM 00218 Loop Campus

Summary

Students design and develop dynamic web applications. Basic skills in programming, databases and web design are reviewed and developed as needed. As the final project, students create a database-backed web application that supports user login and allows users to post content.

We will use the Ruby on Rails framework for web development in this class.

Course Goals

By the end of the quarter, students will be able to:

  • Develop a dynamic web site
  • Explain the different components of a web application
  • Write scripts for accessing a database
  • Write simple page templates using HTML, CSS and dynamic tags
  • Design and implement a web application with multiple tables and access control

Tentative Projects

  • Automatically generated web application. Install Rails. Construct a simple web application with scaffolding.
  • Interactive lab. Add data to database with scaffold. With interactive ruby interpreter, retrieve and modify data in database. Write simple scripts for data manipulation.
  • Creating non-scaffolded controllers and views. Create application with additional controller and views that work with a scaffolded components.
  • Custom web application. Modify all scaffolded MVC components for customized web application.
  • Preliminary project. Develop a web application with multiple tables.
  • Final project. Final web application with multiple tables, user authorization and relations between tables.



Texts

Agile Web Development with Rails 5.1
By: Dave Thomas; David B. Copeland; Sam Ruby
Publisher: Pragmatic Bookshelf
Pub. Date: November 6, 2017
Print ISBN-13: 978-1-68050-251-0
Pages in Print Edition: 496

Text is available online as Safari books through the DePaul Library.


Grading

45% (90 points) Projects
20% (40 points) Midterm exam
35% (70 points) Final exam

Students receiving more than 90% of possible points are guaranteed at least an A-, more than 80% at least a B-, more than 70% at least a C-, and more than 60% at least a D.

Policies

Students are expected to attend every class. Attendance will be informally kept even though it is not a part of the course grade.

Tests and quizzes can be made up with a serious documented excuse (e.g. illness, death in the family) and must be arranged as soon as possible. Arrangements involving other excuses require prior permission from the instructor.

The goal of assignments is to practice the concepts taught in class. You are expected to do your own assignments. However, some collaboration with other students is allowed and even encouraged. The following types of collaboration are allowed:

  • Discussing strategies for solving a problem
  • Explaining why a Web page does not work
  • Reviewing and testing someone else's Web pages
  • Using HTML and JavaScript code provided by the instructor and texts

The following types of collaboration are not allowed:

  • Copying someone else's HTML or Javascript code
  • Literally telling someone what code to write

Engaging in these last two types of collaboration will be considered a violation of the university's policy on academic integrity. Violators will receive a 0 for the corresponding assignment and will be reported as required by the policy.

Late assignments will be accepted up to three days late with a one point penalty. Assignments submitted more than 3 days after the due date will not be accepted without an excused absence cleared by the dean of students office.

Additional assignments for extra credit will not be offered.

All grade challenges must be submitted in writing and include an explanation why the given score or grade should be reconsidered.



Prerequisites

The official course prerequisite is IT 130. Students should be familiar with elementary programming concepts including the use of variables, assignment statements and conditionals (e.g. if statements). Students should also have prior experience formatting web pages using HTML and CSS. This course is not intended for experienced programmers.



Tentative Schedule

Week Topic Reading Assignment Due or Exam
Mar 26 Course overview, Rails installation, MVC Overview, scaffold creation Intro, Ch. 1 - 3 ?
Apr 2 Models, validation, ORM and Rails console Ch. 3, 4, 19, 20 Assignment 1
Apr 9 Ruby overview, arrays, hashes; ORM and console examples Arrays in Ch. 4, Ch. 20 Assignment 2
Apr 16 Adding simple controllers and views, layouts, view helpers Class notes Assignment 3
Apr 23 Forms, Helpers and Parameters Ch. 8 Assignment 4
Apr 30 Exam week Class notes Midterm Exam
May 7 Relations between data models, migrations Ch. 9, 20 ?
May 14 Examples with relations and migrations ? Assignment 5
May 21 Session variables, authentication Ch. 15, 21 ?
May 28 Advanced topics, review No class Monday (Memorial Day), Review notes Assignment 6

Final Exam

The final exam is held Wednesday June 06, 2018, from 8:30 AM to 10:45 AM



School policies:

Changes to Syllabus

This syllabus is subject to change as necessary during the quarter. If a change occurs, it will be thoroughly addressed during class, posted under Announcements in D2L and sent via email.

Online Course Evaluations

Evaluations are a way for students to provide valuable feedback regarding their instructor and the course. Detailed feedback will enable the instructor to continuously tailor teaching methods and course content to meet the learning goals of the course and the academic needs of the students. They are a requirement of the course and are key to continue to provide you with the highest quality of teaching. The evaluations are anonymous; the instructor and administration do not track who entered what responses. A program is used to check if the student completed the evaluations, but the evaluation is completely separate from the student’s identity. Since 100% participation is our goal, students are sent periodic reminders over three weeks. Students do not receive reminders once they complete the evaluation. Students complete the evaluation online in CampusConnect.

Academic Integrity and Plagiarism

This course will be subject to the university's academic integrity policy. More information can be found at http://academicintegrity.depaul.edu/ If you have any questions be sure to consult with your professor.

All students are expected to abide by the University's Academic Integrity Policy which prohibits cheating and other misconduct in student coursework. Publicly sharing or posting online any prior or current materials from this course (including exam questions or answers), is considered to be providing unauthorized assistance prohibited by the policy. Both students who share/post and students who access or use such materials are considered to be cheating under the Policy and will be subject to sanctions for violations of Academic Integrity.

Academic Policies

All students are required to manage their class schedules each term in accordance with the deadlines for enrolling and withdrawing as indicated in the University Academic Calendar. Information on enrollment, withdrawal, grading and incompletes can be found at http://www.cdm.depaul.edu/Current%20Students/Pages/PoliciesandProcedures.aspx.

Students with Disabilities

Students who feel they may need an accommodation based on the impact of a disability should contact the instructor privately to discuss their specific needs. All discussions will remain confidential.
To ensure that you receive the most appropriate accommodation based on your needs, contact the instructor as early as possible in the quarter (preferably within the first week of class), and make sure that you have contacted the Center for Students with Disabilities (CSD) at:
Lewis Center 1420, 25 East Jackson Blvd.
Phone number: (312)362-8002
Fax: (312)362-6544
TTY: (773)325.7296