|Instructor(s)||Almhana, Rafi (ralmhana)|
|Meeting Times||Wednesday 5:30pm - 8:30pm|
|Fulfills||Elective Specialization - Application Development (APP-1)|
This course is intended to prepare students with a general programming background to work on teams producing modern web applications. Students will learn a strong foundation of core web technologies and protocols, an overview of the major design patterns in the history of web development, and a detailed introduction to the current industry standard. We will have an emphasis on learning from publicly-available documentation so that students are equipped to learn new techniques and frameworks in this rapidly-evolving field.
This course uses agile software techniques to build real, working software each week. We will work as closely as possible on how software is developed in the industry, and all work is asynchronous, open-note, and open-internet, with collaboration, encouraged.
Tentative Weekly Course Schedule
Week 1 (Exercise #1):
Week 2 (Exercise #2):
Week 3 (Exercise #3):
Week 4 (Exercise #4):
Week 5 (Exercise #5):
Week 6 (Exercise #6):
Week 7 (Exercise #7):
Week 8 (Exercise #8):
Week 9 (Exercise #9):
Exercises: Students will be expected to complete:
Grades are not curved in this class, and instead are based on the sum of all points students have earned on their participation, exercises, and final project:
Exercises and quizzes are due the day before the class. Late Exercises are accepted but penalized 1 point per hour.
Students must be fluent in at least one programming language, preferably an object-oriented language.
This course requires competency in Unix, Linux, and GitHub. If you attended the MPCS Unix Bootcamp you covered the required material. If you did not, please review the UChicago CS Student Resource Guide here: https://uchicago-cs.github.io/student-resource-guide/.
This class is scheduled at a time that conflicts with these other classes: