Introduction to the techniques and technologies for developing dynamic web sites. Topics include a web server, a server-side scripting language, database, JavaScript and AJAX for enriching web services, and page layout with HTML and CSS. Security concerns will be considered with details for prevention of such vulnerabilities in web applications. This course includes a team project to deploy a dynamic website.
This is an in-person course. The course will meet in Koffler 218 from 9:30-10:45am on Tuesday and Thursday.
The prerequisite is one semester of computer programming, such as CSc 110, ISTA 130, or ECE 175.
There will also be several TAs. See the class website for their contact info.
This will be an in-person course.
Throughout the course, the following teaching methodologies should be applied.
By active learning, I mean that class time won’t be just 75 minutes of me talking. Instead, class meetings will include a number of in-class activities (ICAs) for you to work on individually and/or in a group. Thus, you can spend some time “actively” learn, rather than “passively” listen to the instructor.
By peer-teaching, I mean that you will have opportunities to learn from your classmates, and vice-versa. In many of the in-class activities, you will be able to work on groups and help each-other when necessary.
By flipped-classroom, I mean that you will often be assigned reading or other material to complete before attending each class meeting time. By doing this, you will come to class with (at least some) preparation. This will hopefully result in more class time allocated towards active learning!
This course will provide you with hands-on skills for how to do web programming. Topics will include the basics of how the web works (HTTP, HTTPS, web browsers), client-side web programming (HTML, CSS, and Javasccript) and server-side web development (Javascript, Nodejs, Database). By the time you complete this course, you should be well-equipped to build basic web applications.
A students who completes this course with good grades should be able to do the following:
The means of communication for this course will be either in-class, office hours, email, or via Discord.
The breakdown of grades in this course is as follows:
10% of your grade in this class comes from pop quizzes. There will be somewhere between 8-15 pop quizzes spread out throughout the semester. These will be in-class quizzes. In order to help account for having to miss class at times (for example, if you are sick) your lowest 3 pop quiz grades will be dropped.
There will also be assigned material to read/watch along with each day of class. The general flow of a particular “day” of class should be like so:
There will be a number of programming assignments throughout the course, which will contribute to 35% percent of the student’s grade. These will be individual assignment, unless the instructor specifies otherwise.
There will be three exams throughout the course (including the final), for a total of 35%. The final will be worth 15%, and the others 10%. These exams may cover material from class, the programming assignments, the final project, and the readings.
The instructor and teaching staff will do their best to have grades back to students within 1 week. This includes, but is not limited to, grades for exams, projects, programming assignments, attendance, videos, and quizzes. Once a grade has been entered for a particular item on the digital grade-book, students have at most 5 days (including weekends) to dispute the grade. This includes disputes related to excuses such as sickness, personal matters, dean’s excuses, etc. If 5 days pass and there has not been such a request, the grade is final.
The final project will be a multi-week, team based project and will be worth 20% of your grade. You should expect to put significant effort into this.
The correspondence between percentage grade and numeric grade is as follows:
In this class, you are given 2 late days. What this means is that you are allowed to submit up to 2 programming assignments within 24 hours after the due date throughout the semester, without penalty. You should not burn through all of these free late days on the first few assignments though! Consider saving some for later in the course, when you might be in dire need :).
The final exam will be on May 9th 8-10am. There will be no make-up opportunities for the final exam. You should not schedule any flights, travel plans, or other commitments that conflict with this. You must be in Tucson to take it.
There is not a required textbook for this class. However, there will be a number of required readings to read and other resources, such as videos, to watch. These will primarily be freely available resources, such as online videos, blog posts, articles, etc.
This class is an introduction to web programming. Due to this, you’ll have to own, or have consistent access to a computer that has a reliable internet connection. You’ll also have to have a code or text editor, though I won’t require a specific one. We will also be using mongoDB and NodeJS, so you will have to have a computer capable of running this software locally.
We will be using digital ocean for web hosting. There is a developer pack students can apply to get free dgital ocean credits. If you have already used your credits in the past, you might need to spend between $10-$20 for this course for your web hosting.
The instructor and teaching staff provide a number of opportunities to receive help when you are stuck. The instructor and TAs will have office hours each week. The times of the office hours will happen either in-person of via Discord.
If you are unable to use office hours, You can ask questions either on the class Discord server, or send email to your instructor or TAs. If you are ever stuck, ask for help!
Unless otherwise specified, you may not work in groups on any coursework. This includes exams, programming assignments, projects, videos, and all other coursework. You may not share code, copy/paste code, or look at each-others code. The instructor will be using software to help detect cheating (similar code). If cheating is detected on your work, penalties may include (but are not limited to):
See the schedule page on the class website for the topic and reading schedule.
UA Academic policies and procedures are available at http://catalog.arizona.edu/policies. Student Assistance and Advocacy information is available at http://deanofstudents.arizona.edu/student-assistance/students/student-assistance.
Requests for incomplete (I) or withdrawal (W) must be made in accordance with University policies, which are available at http://catalog.arizona.edu/policy/grades-and-grading-system#incomplete and http://catalog.arizona.edu/policy/grades-and-grading-system#Withdrawal respectively.
The UA’s policy concerning Class Attendance, Participation, and Administrative Drops is available at: http://catalog.arizona.edu/policy/class-attendance-participation-and-administrative-drop
The UA policy regarding absences for any sincerely held religious belief, observance or practice will be accommodated where reasonable: http://policy.arizona.edu/human-resources/religious-accommodation-policy.
Absences pre-approved by the UA Dean of Students (or dean’s designee) will be honored. See https://deanofstudents.arizona.edu/absences
Academic advising: If you have questions about your academic progress this semester, or your chosen degree program, consider contacting your department’s academic advisor(s). Your academic advisor and the Advising Resource Center can guide you toward university resources to help you succeed. Computer Science major students are encouraged to visit https://www.cs.arizona.edu/undergraduate/advising for advisor contact information.
CS Tutor Center: The Department of Computer Science offers FREE tutoring for students enrolled in CSC courses. You can view tutor schedules and sign up for tutoring sessions by visiting our CS Tutoring Page.
Life challenges: If you are experiencing unexpected barriers to your success in your courses, please note the Dean of Students Office is a central support resource for all students and may be helpful. The Dean of Students Office can be reached at 520-621-2057 or DOS-deanofstudents@email.arizona.edu.
Physical and mental-health challenges: If you are facing physical or mental health challenges this semester, please note that Campus Health provides quality medical and mental health care. For medical appointments, call (520-621-9202. For After Hours care, call (520) 570-7898. For the Counseling & Psych Services (CAPS) 24/7 hotline, call (520) 621-3334.
CS Help Desk: The Computer Science IT team can help students with department technology issues including logging into/resetting your Lectura account, printing in the 930 lab, etc. You can submit a ticket for help by visiting the Computer Science Lab Helpdesk (note, requires UA login).
UA Ombuds: The UA Ombuds Office (https://ombuds.arizona.edu/) helps with a wide variety of issues, concerns, questions, conflicts, and challenges. The primary mission of the Ombuds Program is to assist individuals in resolving conflict, facilitating communication, and assisting the University by surfacing issues and providing feedback on emerging or systemic concerns. Communications with the Ombuds Committee are informal and off-the-record. The Ombuds Committee is governed by the following standards: (1) Confidentiality; (2) Impartiality: (3) Informality; and (4) Independence.
Students who register after school has already begun are not guaranteed to be given the opportunity to make up late work.
If you feel sick, or may have been in contact with someone who is infectious, stay home. Except for seeking medical care, avoid contact with others and do not travel.
Notify your instructor(s) if you will be missing up to one week of course meetings and/or assignment deadlines.
If you must miss the equivalent of more than one week of class and have an emergency, the Dean of Students is the proper office to contact (DOS-deanofstudents@email.arizona.edu). The Dean of Students considers the following as qualified emergencies: the birth of a child, mental health hospitalization, domestic violence matter, house fire, hospitalization for physical health (concussion/emergency surgery/coma/COVID-19 complications/ICU), death of immediate family, Title IX matters, etc.
Please understand that there is no guarantee of an extension when you are absent from class and/or miss a deadline.
As we enter the semester, our health and safety remain the university’s highest priority. To protect the health of everyone in this class, students are required to follow the university guidelines on COVID-19 mitigation. Please visit www.covid19.arizona.edu.
The Department of Computer Science is committed to providing and maintaining a supportive educational environment for all. We strive to be welcoming, respect privacy and confidentiality, behave respectfully and courteously, and practice intellectual honesty. Disruptive behaviors (such as physical or emotional harassment, dismissive attitudes, and abuse of department resources) will not be tolerated.
To foster a positive learning environment, students and instructors have a shared responsibility. We want a welcoming environment where we can challenge ourselves to succeed. To that end, our focus is on the tasks at hand and not on extraneous activities (e.g., texting, chatting, reading a newspaper, making phone calls, web surfing, etc.).Students are asked to refrain from disruptive conversations with people sitting around them during lecture. Students observed engaging in disruptive activity will be asked to cease this behavior. Those who continue to disrupt the class will be asked to leave lecture or discussion and may be reported to the Dean of Students.
The UA Threatening Behavior by Students Policy prohibits threats of physical harm to any member of the University community, including to oneself. See http://policy.arizona.edu/education-and-student-affairs/threatening-behavior-students.
At the University of Arizona we strive to make learning experiences as accessible as possible. If you anticipate or experience physical or academic barriers based on disability or pregnancy, you are welcome to let me know so that we can discuss options. You are also encouraged to contact Disability Resources (520-621-3268) to explore reasonable accommodation. Please be aware that the accessible table and chairs in this room should remain available for students who find that standard classroom seating is not usable.
Students are encouraged to share intellectual views and discuss freely the principles and applications of course materials. However, graded work/exercises must be the product of independent effort unless otherwise instructed. Students are expected to adhere to the UA Code of Academic Integrity as described in the UA General Catalog. See http://deanofstudents.arizona.edu/academic-integrity/students/academic-integrity.
The University Libraries have some excellent tips for avoiding plagiarism, available at http://www.library.arizona.edu/help/tutorials/plagiarism/index.html.
Selling class notes and/or other course materials to other students or to a third party for resale is not permitted without the instructor’s express written consent.
Violations to this and other course rules are subject to the Code of Academic Integrity and may result in course sanctions. Additionally, students who use D2L or UA e-mail to sell or buy these copyrighted materials are subject to Code of Conduct Violations for misuse of student e-mail addresses. This conduct may also constitute copyright infringement.
The University of Arizona is committed to creating and maintaining an environment free of discrimination. In support of this commitment, the University prohibits discrimination, including harassment and retaliation, based on a protected classification, including race, color, religion, sex, national origin, age, disability, veteran status, sexual orientation, gender identity, or genetic information. For more information, including how to report a concern, please see http://policy.arizona.edu/human-resources/nondiscrimination-and-anti-harassment-policy
Information contained in the course syllabus, other than the grade and absence policy, may be subject to change with advance notice, as deemed appropriate by the instructor.