This course is the continuation of CS 041, and it builds on the concepts and skills students acquired in the first course. The main focus in this course is programming for the internet. Most modern web applications are built on three interacting building blocks: (1) Client programs that run locally in the user’s web browser, (2) server programs that run on machines in data centers, and (3) databases for information storage. In this course students will learn how to write client and server code, and become familiar with database usage to build simple web applications. It is not the goal of this course to teach how to build graphically attractive web programs but rather to teach the mechanics underpinning modern web applications.