A Web App is application software that runs remotely on a server on the world wide web and is delivered locally to users on their browsers. The application consists, broadly speaking, of three main software layers. A presentation layer delivered to the browser using HTML and JavaScript (or other browser compatible scripting language). An application layer, usually written in a scripting language like Python, that resides on the remote server and encapsulates the logic (“smarts”) of the app. And a database layer where application data is stored. Since the advent of the web and web browsers, web apps have become the single most important means of b2c and b2b communication and the goal of this class is to give you a working knowledge of what it takes to assemble the three layers into a web app. We will learn the basics of JavaScript and HTML and will use the python-based web framework, Django, to build an application. About 50% of the class time will be devoted to a group project where you will, in small groups, build a web app (assisted by TAs) that you will present to the class at the end of the week. While the course is programming heavy (though we will, briefly, review the basics of Python, some prior exposure to Python is necessary) the focus is on understanding what goes into building web applications and thinking creatively about your app rather than on mere technical perfection. STUDENTS WILL NEED TO COMPLETE AN INTRODUCTORY PYTHON CLASS (https://courseworks2.columbia.edu/courses/152704) OR PASS THE BASIC PYTHON QUALIFICATION EXAM (https://www8.gsb.columbia.edu/courses/python#basic_qual) BEFORE THE FIRST DAY OF CLASS. SEE gsb.columbia.edu/courses/python FOR DETAILS
Division: Decision, Risk and Operations
Curriculum Pathway: Data Analytics, Product Management

Spring 2024

B8126 - 001