Course Website: https://webdev.cornelldti.org/docs/introduction
Learn to build and deploy scalable, modern full-stack web applications using best practices in industry's most used tech stacks. This is a student run course by Cornell DTI
Faculty Advisor: Kyle Harms
Instructors: Daniel Wei and Michelle Li
Office Hours Schedule
|Michelle Li||Fridays||4-6pm||Hollister 314|
|Daniel Wei||Mondays||4-6pm||Phillips 213|
|Changyuan Lin||Mondays||12:15-1:15pm||Hollister 368|
|Richard Gu||Fridays||12-1PM||Hollister 320|
Credits and Credit Hour Options
Time and Location
This course meets once a week for 10 weeks for a total of 10 lectures.
We will meet weekly on Mondays from 7:30-8:45pm at Hollister B14. The start of the class will be on 2/20/23.
You can find our course calendar with lecture dates and times, TA office hours with locations, and assignment due dates here.
This class will teach students about modern web development technologies, practices, and industry standards to better equip them for academic work, research, interviews, internships, and full-time employment. By the end of this course, you will gain key experience in designing systems on both the frontend and backend using today's popularly applied technologies, including TypeScript, React, Firebase, and more.
Formally, there are no pre-requisites for this course:
However, we highly recommend that you have taken CS 1110, or have equivalent programming experience.
Apply here by 02/18/2023 at 11:59 PM ET. It includes a general information questionnaire so we have the information necessary for enrollment, as well as a preassessment you must complete (see Pre-Course Assessment below).
We will be distributing enrollment/permission pins soon after the application period closes.
The first lecture is tentatively on 02/20/2023.
Please complete the pre-assessment here. It should take less than an hour! This is not meant as a test, but rather a way of ensuring that you are familiar with the foundational material in the course.
Upload your submissions as a zip to your application here.
This preassessment is mandatory; those who do not submit it will not be admitted in the course.
By the end of the course, a student will be able to:
- Develop dynamic, interactive web applications using frontend frameworks and server side rendering
- Utilize standard API calls and traditional HTTP requests to transmit and retrieve data through the web
- Design and implement various data models and utilize data manipulation techniques to represent data in web applications
- Implement each aspect of a web application from frontend technologies to backend technologies and how to utilize middleware to communicate between the two
- Develop and implement proper authentication methods to encrypt user data
We highly recommend that you have a computer capable of running a modern web browser and text editor, as well as access to a stable internet connection.
Assignments are released after each lecture! There are 5 assignments total, which includes a final project spanning the last few weeks of the class.
You are allowed max 3 slip days (out of 6 total for all assignments and the final project) per an assignment.
The class is scheduled to finish well before finals week.
|Assignment 1||JS, TS, and Basic React||3/15 by 11:59pm|
|Assignment 2||CSS and Complex React||3/25 by 11:59pm|
|Assignment 3||State Management and Conditional Rendering||4/8 by 11:59pm|
|Assignment 4||Connecting to and using Firebase||4/22 by 11:59pm|
|Assignment 5||Final Project||TBD|
Method of Assessing Student Achievement
Basis of Grade Determination
First, we will determine your numerical grade. This will be done by the following:
|Assignment||Percentage of Grade|
|Attendance||20% (based on weekly lecture quizzes, can miss 1 of 9 without penalty)|
|Filling out Feedback||10%|
Your final grade will be determined by your numerical grade calculated above:
Satisfactory (S) - 70% or higher
Unsatisfactory (U) - 69% or lower
Keep in mind that the class is S/U, and that a numerical score of a C- (70%) or higher would allow you to pass with an S grade.
Web Development is a creative process, one that depends heavily on current technologies and how students decide to utilize them towards an end. Because of this, it is unnecessary to assign letter grades to students in this course. Rather, we will assign Satisfactory/Unsatisfactory grades. For a student to receive an Unsatisfactory grade, their numerical grade must be at or below 69% according to the numerical determination outlined above. Otherwise, they will receive a Satisfactory grade.
For the following sections, the word "us" refers to the course staff.
When in contact with us, contact with either of the two primary instructors (Daniel Wei and Michelle Li) is sufficient to qualify as contact with us.
The contact information can be found above in the "Instructors" section.
Each student in this course is expected to abide by the Cornell University Code of Academic Integrity: http://cuinfo.cornell.edu/aic.cfm
Under the provisions of the Code, anyone who gives or receives unauthorized assistance in the preparation of work at home or during tests in class will be subject to disciplinary action. A student's name on any piece of work is our assurance that they have neither given nor received any unauthorized help in its preparation. Students may assist each other on assignments by answering questions and explaining various concepts. However, one student should not allow another student to copy their work directly. All University policies with respect to cheating will be enforced. A student who is found to have cheated on an exam, or any other graded assignment, will receive a "U” in the course.
Students with Disabilities: Your access in this course is important to us! Please request your accommodation letter early in the semester, or as soon as you become registered with Student Disability Services (SDS), so that we have adequate time to arrange your approved academic accommodations.
Once SDS approves your accommodation letter, it will be emailed to both you and us. Please follow up with us to discuss the necessary logistics of your accommodations using the contact information provided in this syllabus. If you are approved for exam accommodations, please consult with us at least two weeks before the scheduled exam date to confirm the testing arrangements.
If you experience any access barriers in this course, such as with printed content, graphics, online materials, or any communication barriers, reach out to us or SDS right away.
If you need immediate accommodation, please speak with us after class or send an email message to us and SDS at firstname.lastname@example.org.
Mental Health and Well-being
Your health and wellbeing are important to us.
There are services and resources at Cornell designed specifically to bolster undergraduate, graduate, and professional student mental health and well-being. Remember, your mental health and emotional well-being are just as important as your physical health. If you or a friend are struggling emotionally or feeling stressed, fatigued, or burned out, there is a continuum of campus resources available to you: https://mentalhealth.cornell.edu/get-support/support-students.
Help is also available any time day or night through Cornell’s 24/7 phone consultation (607-255-5155). You can also reach out to me, your college student services office, your resident advisor, or Cornell Health for support.