Skip to content

CSC 418/587: Modern Web Applications Using Server-Side Technologies

  • Instructor: Linh B. Ngo
  • Office: UNA 138
  • Office Hours:
  • Monday and Wednesday: 1:00PM - 3:00PM
  • Tuesday and Thursday: 11:00AM - 12:30PM
  • Email: lngo AT wcupa DOT edu
  • Phone: 610-436-2595

Course Information

  • The course runs from December 16, 2024 until January 19, 2025. It is an 100% online asynchronous course.

Required Materials:

  • Jonathan Wrexler. Get Programming with NodeJS. Manning Publications, 2019.
  • You can get this textbook throuch Inclusive Access or from the publisher's website

Prerequisites:

  • Permission from the instructor for graduate students.

Course Description

This 100% Distance Education course provides training in the area of building web applications using Node.js (with Express, and MongoDB) for the backend and EJS for the front-end user interface. JavaScript has been a client-side script programming language until later in 2009 when Google combined it’s V8 search engine with Node.JS. Since then, JavaScript has become a full-stack scripting language from the client-side to the server-side. Starting from building a web site without programming, students will be guided with hands-on labs and develop a website using Node.JS and EJS for the front- end, and MongoDB for the backend.

Learning Objectives

Course Student Learning Outcomes (CSLO)

  1. To describe the basic principles and structure about the Node.js architecture.
  2. To develop server-side scripts applying the asynchronous web technologies.
  3. To describe the principles of web app development using Node.js.

BS in CS Program Objectives (CSPO):

  1. Be able to apply theory, techniques, and methodologies to create and/or maintain high quality computing systems that function effectively and reliably in the emerging and future information infrastructure. (CSLO 1, 2)
  2. Perform well in a computer science graduate program or a career in computer science and have the communication skills and quantitative/analytical skills necessary for career advancement. (CSLO 3)

ABET Objectives (APO):

  1. ABET 1: Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
  2. ABET 2: Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.
  3. ABET 6: Apply computer science theory and software development fundamentals to produce computing-based solutions.

Assessments and Grading:

Method of Evaluation

Assessment % of Final Grade Course Objectives Assessed Program Objectives Assessed ABET Objectives Assessed
Projects 50% 1, 2, 3 1, 2 1, 2, 6
Quizzes 50% 1, 3 1, 2 1,

Grade Scale:

Grade Quality Points Numeric Interpretation
A 4 100-93 Excellent
A- 3.67 92-90 -
B+ 3.33 89-87 Superior
B 3 86-83 -
B- 2.67 82-80 -
C+ 2.33 79-77 Average
C 2 76-73 -
C- 1.67 72-70 -
D+ 1.33 69-67 Below Average
D 1 66-63 -
D- 0.67 62-60 -
F 0 <= 60 Failure

Refer to the Undergraduate Catalog for description of NG (No Grade), W, & other grades.

Assessments:

  • Individual Assignments: Technical tasks or writing assignments that require significant reflection on procedural and technical aspects of software development and teamwork.
  • Team Project: Major development projects, most likely with external clients.
  • Class Participation: Being in class and participating in discussion of reading assignments.
  • Quizzes: Short online quizzes to test students on key concepts.

Lateness Policy:

Individual assignments that are late are assessed a 10% per day late penalty. Saturday and Sunday are each days. There is no late acceptance for team-based milestones.

University Policies

Academic & Personal Integrity

It is the responsibility of each student to adhere to the university’s standards for academic integrity. Violations of academic integrity include any act that violates the rights of another student in academic work, that involves misrepresentation of your own work, or that disrupts the instruction of the course. Other violations include (but are not limited to): cheating on assignments or examinations; plagiarizing, which means copying any part of another’s work and/or using ideas of another and presenting them as one’s own without giving proper credit to the source; selling, purchasing, or exchanging of term papers; falsifying of information; and using your own work from one class to fulfill the assignment for another class without significant modification. Proof of academic misconduct can result in the automatic failure and removal from this course. For questions regarding Academic Integrity, the No-Grade Policy, Sexual Harassment, or the Student Code of Conduct, students are encouraged to refer to the Department Undergraduate Handbook, the Undergraduate Course Catalog, the Ram’s Eye View, or the University Website.

Accomodations for Students with Disabilities

West Chester University is committed to providing equitable access to the full WCU experience for Golden Rams of all abilities. Students should contact the Office of Educational Accessibility (OEA) to establish accommodations if they have had accommodations in the past or if they believe they may be eligible for accommodations due to a disability, whether or not it may be readily apparent. There is no deadline for disclosing to OEA or for requesting to use approved accommodations in a given course. However, accommodations can only be applied to future assignments or exams; that is, they can’t be applied retroactively. Please share your letter from OEA as soon as possible so that we can discuss accommodations. If you have concerns related to disability discrimination, please contact the university’s ADA Coordinator in the Office of Diversity, Equity, and Inclusion or 610-436-2433

The University’s Americans with Disabilities policy is available on the website. If you encounter an area of this course that is not accessible to you, please contact me.

University-Excused Absences Policy

Students are advised to carefully read and comply with the University-Excused Absences Policy, including absences for university-sanctioned events, contained in the WCU Undergraduate Catalog. In particular, please note that the responsibility for meeting academic requirements rests with the student, that this policy does not excuse students from completing required academic work, and that professors can require a fair alternative to attendance on those days that students must be absent from class in order to participate in a University-Sanctioned Event.

Reporting Incidents of Sexual Violence

West Chester University and its faculty are committed to assuring a safe and productive educational environment for all students. In order to comply with the requirements of Title IX of the Education Amendments of 1972 and the University’s commitment to offering supportive measures in accordance with the new regulations issued under Title IX, 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 the WCUPA Sexual Misconduct website.

Inclusive Learning Environment and Anti-Racist Statement

Diversity, equity, and inclusion are central to West Chester University’s mission as reflected in our Mission Statement, Values Statement, Vision Statement and Strategic Plan: Pathways to Student Success. We disavow racism and all actions that silence, threaten, or degrade historically marginalized groups in the U.S. We acknowledge that all members of this learning community may experience harm stemming from forms of oppression including but not limited to classism, ableism, heterosexism, sexism, Islamophobia, anti-Semitism, and xenophobia, and recognize that these forms of oppression are compounded by racism.

Our core commitment as an institution of higher education shapes our expectation for behavior within this learning community, which represents diverse individual beliefs, backgrounds, and experiences. Courteous and respectful behavior, interactions, and responses are expected from all members of the University. We must work together to make this a safe and productive learning environment for everyone. Part of this work is recognizing how race and other aspects of who we are shape our beliefs and our experiences as individuals. It is not enough to condemn acts of racism. For real, sustainable change, we must stand together as a diverse coalition against racism and oppression of any form, anywhere, at any time.

Resources for education and action are available through WCU’s Office for Diversity, Equity, and Inclusion (ODEI), DEI committees within departments or colleges, the student ombudsperson, and centers on campus committed to doing this work (e.g., Dowdy Multicultural Center, Center for Women and Gender Equity, and the Center for Trans and Queer Advocacy).

Guidance on how to report incidents of discrimination and harassment is available at the University’s Office of Diversity, Equity and Inclusion.

Emergency Preparedness

All students are encouraged to sign up for the University’s free WCU ALERT service, which delivers official WCU emergency text messages directly to your cell phone. For more information, visit https://www.wcupa.edu/wcualert. To report an emergency, call the Department of Public Safety at 610-436-3311.

Electronic Mail Policy

It is expected that faculty, staff, and students activate and maintain regular access to University provided e-mail accounts. Official university communications, including those from your instructor, will be sent through your university e-mail account. You are responsible for accessing that mail to be sure to obtain official University communications. Failure to access will not exempt individuals from the responsibilities associated with this course.

Resources for Student Success

Expectations for Student Success in Distance Education

An online course uses technology to provide you, the student, with greater flexibility regarding when and where you learn. To be a successful online learner you must capitalize on this increased flexibility by doing the following.

  • Self-Motivation and Self-Discipline: Active participation in online activities is expected. This means that you login to the course frequently, engage with the provided materials, and read and respond to communications in a timely and thoughtful manner. Online courses require you to take more responsibility for your learning.

  • Planning and Organization: You will need disciplined work habits, effective time management skills, and the ability to work both alone and collaboratively if you wish to be successful in an online course. You should expect to devote 9 to 12 hours per week to this course.
    You may find that you need to work harder than you would in a traditional lecture class.

  • Communication Skills: In an online course communication takes place primarily through the written word. You need strong English reading and writing skills to express your thoughts. Online courses also expect you to proactively reach out to your instructor for assistance when you need it. Finally, pay attention to communication guidelines and be respectful of your fellow students when you communicate.

Minimum Student Technical Skills

You are expected to be competent in the use of computers, the World Wide Web, and commonly used software programs such as the Microsoft Office Suite of applications and Adobe PDF readers. In addition, you should be able to utilize a web-camera and microphone. You should have a basic understanding of how to use the common elements of the university learning management system.

Students without experience using the university’s learning management system (Desire2Learn) can contact the Student Help Desk to arrange instruction, can contact Distance Education Support, or can complete tutorials in Navigating Digital Learning.

Hours for support services may vary. Check their websites for times of operation.

  • General Technical Support: Contact the WCU IT Helpdesk at 610-436-3350 or email helpdesk@wcupa.edu
  • Distance Education Support: Contact The Office of Digital Learning & Innovation at 610-436-3373 or email distanceed@wcupa.edu
  • Additional technical support information will be provided for tools as needed throughout the course.

Accessibility Policies, Privacy Policies, and Support Site Information:

This course uses a variety of tools. To access a tool’s accessibility and privacy policy, navigate to the Distance Education Accessibility and Privacy Policies website.

Student Academic and Support Services

Student academic and support services provided by the university can be found on the Ram’s Eye View Services website.

Distance Education Support

  • Contact Distance Education Services:
    • Phone 610-436-3373
    • Email distanceed@wcupa.edu
  • Additional technical support information will be provided for tools as needed throughout the course.

Library Resources for Distance Education Students

The West Chester University Library makes resources available to distance education students. Please review their Library Services for Distance Students website for specific information.

Course Topics and Schedules (subject to modification)

Week Topic Assessments
1: Dec 16 Install Docker -
Setup Node.JS, VSCode, JavaScript -
Node.js Project 1 Assigned
EJS -
Express.JS Quiz 1
2: Dec 30 MongoDB Project 1 Due, Project 2 Assigned
Quiz 2
3: Jan 06 Building a user model Project 2 Due, Project 3 Assigned
4: Jan 13 Building an API (REST) -
Quiz 3
Jan 19 Project 3 Due