44-563 Course Syllabus
Area
School of Computer Science and Information SystemsCourse Title
44-563 Developing Web Apps and ServicesCourse Credit
3 hoursPlacement in Curriculum
This course is typically offered in the later years of an undergraduate degree and early, often first semester, in a graduate program.Prerequisites
Undergraduate prerequisites: CSIS 44241 and CSIS 44460, each with a grade of C or better. Graduate prerequisite: CSIS 44542 with a grade of B or better, or concurrent enrollment in CSIS 44542, or consent of instructor. (F,S)Section Details
Fall 2020 - Section 2MWF 11-11:50am CH 1200
Course Description
Technologies and protocols supporting web applications and web services. Students gain experience in client-side and server-side programming.Course Rationale
This course involves an overview of Internet communications and developing applications for the World Wide Web. The course covers web application design, development, and scripting through hands-on, creative implementation exercises using modern tools and techniques for building professional, dynamic, interactive web applications.Student Learning Outcomes
Competency | Program | Program Outcome | Assessment |
---|---|---|---|
Critical Thinking | DM-CS | An ability to analyze a problem, and to identify and define the requirements appropriate to its solution. | Selected assignments |
Critical Thinking | DM-CS | An ability to design, implement, and evaluate a computer-based solution to meet a given set of requirements in the context of the discipline. | Selected assignments |
Teamwork | DS-CS | DSI Students will work as a team to design, implement, and deliver solutions to problems using best practices with contemporary technologies. | Selected assignments |
Additional student learning outcomes include:
Materials
Free Online Textbooks
- Mozilla Developer Network: Getting Started with the Web
- Eloquent JavaScript by Marijn Haverbeke
Supplementary textbooks (recommended)
- Simplifying JavaScript: Writing Modern JavaScript with ES5, ES6, and Beyond by Joe Morgan
- Programming in HTML5 with JavaScript and CSS3 Exam Ref 70-480 by Rick Delorme
- Express in Action: Writing, building, and testing Node.js applications by Evan Hahn
- Web development with Node and Express by Ethan Brown
- Progressive Web Apps by Dean Alan Hume
- Nest.js: A Progressive Node.js Framework by David Guijarro, Adrien de Peretti, Patrick Housley, Greg Magolan, Jay Bell
Required
Students must have access to the following at every course meeting:
- A bound notebook with pencil/pen for taking notes and submitting written content (e.g., pop quizzes)
- Their campus-assigned laptop, in working order, with all required software
- Free Git distributed version control system
- Free TortoiseGit for integrating Git with Windows File Explorer
- Free PuTTY for creating SSH public/private key pairs
- Free BitBucket and GitHub educational accounts
- Free GitHub Education Pack (as needed)
- Free Chocolatey package manager for Windows
- Free Notepad++ text editor
- Free Visual Studio Code integrated development environment
- Free Postman Web API Development Environment
- Free access to Mozilla Developer Network (MDN) and other resources
- Various free, open-source tools, libraries, and hosting accounts as directed by instructor.
- Free account at Typing.com. Typing is a foundational skill for software development.