Syllabus

Modern Web Programming

In this course, we will take a very practical, hands-on approach to learning how to design, build, and interact with web APIs, back-end server applications, and front-end client apps and interfaces.

We will also focus on learning some “soft skills” that often go by the wayside, including collaborative development workflows, project management, understanding errors, writing documentation, and maintaining healthy work practices. We will discuss licensing and make use of and operate within open source ecosystems.

Given the ongoing COVID-19 pandemic, we will focus our attention on apps and systems that handle public health information. After years of dealing with this crisis, institutions still struggle with collecting, distributing, and managing information about COVID-19. We will work on ways to address that.

Course info

Instructor John D. Martin III
e-mail john.d.martin.iii@unc.edu
Time and days R31/T15:30-5:00/T1H15M/FREQ=WE;BYDY=TU,TH
Dates 2022-01-11/2022-04-26
Spring break no class 2022-03-11/2022-03-21
Wellness day no class 2022-04-14
Exam date 2022-04-30T16:00-5:00/T3H
Location G200 Genome Sciences Building
Zoom live sessions (password in SECRETS repo on GH Org) https://unc.zoom.us/j/96341299758
Archived live sessions UNC Panopto
GitHub organization https://github.com/comp426-2022-spring
Office hours https://github.com/comp426-2022-spring/general-info/blob/main/README.md#office-hours
Grades UNC Sakai
tl;dr
There is a lot of information here. Please enjoy this no-bs summary.
Course objectives
Working through this course should give students a range of skils related to building and implementing web back-end and front-end applications as well competency in collaborative development and project management.
Course structure
Class sessions will be hyflex even when we are running in-person and will combine conceptual discussions and demos. All resources will be made available through the course website. Attendance is expected, but does not have to be in-person all the time. We will be very flexible with how you engage with the class due to COVID-19.
Deliverables and assessments
There will be a series of programming assignments, a final team project to develop a web application, and several assessments.
Grading
Your work in this class will be evaluated in a mostly automated way that gives you immediate feedback. You will also receive qualitative feedback. Grades are reckoned on a 1,000,000-point scale.
Honor Code
The University of North Carolina at Chapel Hill has had a student-led honor system for over 100 years. Academic integrity is at the heart of Carolina and we all are responsible for upholding the ideals of honor and integrity.
Mental health and well-being
It’s important to take care of your emotional and mental health and well-being. You cannot learn things if you are in distress. There are resources available to you and we can help you find them.
Accessibility
The University of North Carolina at Chapel Hill facilitates the implementation of reasonable accommodations, including resources and services, for students with disabilities, chronic medical conditions, a temporary disability or pregnancy complications resulting in barriers to fully accessing University courses, programs and activities.
Title IX
Any student who is impacted by discrimination, harassment, interpersonal (relationship) violence, sexual violence, sexual exploitation, or stalking is encouraged to seek resources on campus or in the community.
Disclaimer
The instructor reserves to right to make changes to the syllabus, including any project due dates, assessment dates, assignments, or other aspects of the schedule and structure.