diff --git a/index.html b/index.html index d6d4e92..26e7c80 100644 --- a/index.html +++ b/index.html @@ -55,7 +55,7 @@

Coordinates

Our TAs also provide an additional 15h of office hours each week; see details in the calendar.

The instructors have an open door policy: If the instructors' office doors are open and no-one else is meeting with us, we are happy to answer any course-related questions. Feel free to email us for appointments; we are also available over Zoom.

Course Calendar

- +

Schedule

The schedule below reflects our current plans, but will be updated throughout the semester.

@@ -88,7 +88,7 @@

Schedule

Tue, Jan 23 - IDEs, Build system, Continuous Integration, Libraries + IDEs, Build system, Continuous Integration, Libraries Required: Effective Java, Items 15 and 16 @@ -98,7 +98,7 @@

Schedule

Thu, Jan 25 - Specifications and Unit Testing, Exceptions +
Specifications and Unit Testing, Exceptions Recommended: Java Precisely (Ch 3, 4, 9, 10, 11); JavaScript: The Good Parts (Ch. 3, 4, 9), TypeScript Handbook (Basics, Everyday Types, Object Types) @@ -110,73 +110,73 @@

Schedule

Tue, Jan 30 - Test case design + Test case design Unit Testing Best Practices Wed, Jan 31 - Lab 3 Unit testing + Lab 3 Unit testing Thu, Feb 1 - Object-oriented analysis and UML + Object-oriented analysis and UML Mon, Feb 5 - HW 2 due Testing + HW 2 due Testing Tue, Feb 6 - Responsibility assignment + Responsibility assignment UML and Patterns, Ch. 9-11, 15-16 Wed, Feb 7 - Lab 4 Design and UML + Lab 4 Design and UML Thu, Feb 8 - Inheritance & Delegation + Design for Reuse: Inheritance and Composition Tue, Feb 13 - Design Patterns + Design Patterns UML and Patterns, Ch. 17-18 Wed, Feb 14 - Lab 5 Inheritance and Delegation + Lab 5 Inheritance and Delegation Thu, Feb 15 - Refactoring and Anti-patterns + Refactoring and Anti-patterns Mon, Feb 19 - HW 3a due Santorini: Intro to Design + HW 3a due Santorini: Intro to Design Tue, Feb 20 - Introduction to GUIs and Concurrency + Introduction to TypeScript Design Patterns Explained or Refactoring Guru on Observer and Decorator Wed, Feb 21 - Lab 6 Anti-patterns and Refactoring + Lab 6 Anti-patterns and Refactoring @@ -193,16 +193,16 @@

Schedule

Tue, Feb 27 - Asynchrony in JavaScript + Introduction to GUIs Wed, Feb 28 - Lab 7 GUI intro + Lab 7 Intro to TypeScript Thu, Feb 29 - Concurrency and Hazards + Concurrency and Asynchrony in TypeScript Concurrency model and the event loop + How JavaScript works @@ -226,21 +226,21 @@

Schedule

Tue, Mar 12 - HW 4 due Refactoring + HW 4 due Refactoring Tue, Mar 12 - Concurrency: Reactive Programming + Concurrency and Hazards Wed, Mar 13 - Lab 8 Concurrency & Promises + Lab 8 Concurrency & Promises Thu, Mar 14 - Distributed Systems -- Events everywhere + Reactive Programming @@ -252,34 +252,34 @@

Schedule

Tue, Mar 19 - Design for Robustness & Distributed Systems + Local Parallelism Wed, Mar 20 - Lab 9 ReactJS + Lab 9 Intro to GUIs Thu, Mar 21 - Libraries and Frameworks + Designing and Testing for Robustness in Large & Distributed Systems Mon, Mar 25 - HW 5 due Concurrency + HW 5 due Concurrency Tue, Mar 26 - TBD + Libraries and Frameworks Wed, Mar 27 - Lab 10 Test Double (Fakes, Mocks & Stubs) + Lab 10 TicTacToe Client/Server @@ -308,7 +308,7 @@

Schedule

Tue, Apr 9 - HW 6a due Santorini: User Interface + HW 6a due Santorini: User Interface @@ -318,7 +318,7 @@

Schedule

Wed, Apr 10 - No lab, Carnival + Lab 12 Test Double (Fakes, Mocks & Stubs) @@ -334,7 +334,7 @@

Schedule

Wed, Apr 17 - Lab 12 Cloud Deployment + Lab 13 Cloud Deployment @@ -351,12 +351,12 @@

Schedule

Wed, Apr 24 - Lab 13 Design Pattern Review + Lab 14 Design Pattern Review Thu, Apr 25 - HW 6b due Santorini: God Cards + HW 6b due Santorini: God Cards @@ -367,7 +367,7 @@

Schedule

- TBD + Mon, May 6
8:30-11:30am Final exam @@ -427,7 +427,7 @@

Grading and DeadlinesFor quizzes, we will drop up to four missed/failed solutions during the semester.
  • For labs, we will drop up to four missed/failed solutions during the semester.
  • For homework deadlines you have 5 free late days for the semester. You can exceed each deadline by up to three days (unless explicitly specified otherwise in the assignment, check carefully), for a penalty of 10% per day once you run out of free late days. Note that some homework assignments have multiple milestones with separate deadlines; there are typically around 9 homework deadlines in a semester – late days are assessed for each deadline independently.
  • -
  • For a single homework deadline during the semester, you can redo and resubmit your work after it was graded. It will be regraded as if it was the first submission and you can regain all lost points. Each student can only do this once. We accept resubmissions until the Dec 16, 11:59pm. (While we do not recommend it, you can use this as arbitrary late days for a single deadline, receiving 0 points for missing the initial deadline and then resubmitting later).
  • +
  • For a single homework deadline during the semester, you can redo and resubmit your work after it was graded. It will be regraded as if it was the first submission and you can regain all lost points. Each student can only do this once. We accept resubmissions until April 26th, 11:59pm. (While we do not recommend it, you can use this as arbitrary late days for a single deadline, receiving 0 points for missing the initial deadline and then resubmitting later).
  • Any work submitted beyond the flexibility provided by these mechanisms will receive feedback but no credit unless explicit accommodations were provided.


    @@ -470,7 +470,7 @@

    Time management

    This is a 12-unit course, and it is our intention to manage it so that you spend close to 12 hours a week on the course, on average. In general, 4 hours/week will be spent in class, 1 hour on labs, and 7 hours on assignments. Please feel free to give the course staff feedback on how much time the course is taking for you.


    Research to Improve the Course:

    -

    For this class, we are conducting research on teaching and learning. This research will involve some student work. You will not be asked to do anything above and beyond the normal learning activities and assignments that are part of this course. You are free not to participate in this research, and your participation will have no influence on your grade for this course or your academic career at CMU. If you do not wish to participate, please send an email to Chad Hershock (hershock@andrew.cmu.edu). Participants will not receive any compensation. The data collected as part of this research will include student grades. All analyses of data from participants’ coursework will be conducted after the course is over and final grades are submitted. The Eberly Center may provide support on this research project regarding data analysis and interpretation. The Eberly Center for Teaching Excellence & Educational Innovation is located on the CMU-Pittsburgh Campus and its mission is to support the professional development of all CMU instructors regarding teaching and learning. To minimize the risk of breach of confidentiality, the Eberly Center will never have access to data from this course containing your personal identifiers. All data will be analyzed in de-identified form and presented in the aggregate, without any personal identifiers. If you have questions pertaining to your rights as a research participant, or to report concerns to this study, please contact Chad Hershock (hershock@andrew.cmu.edu).

    +

    For this class, we are conducting research on teaching and learning. This research will involve some student work. You will not be asked to do anything above and beyond the normal learning activities and assignments that are part of this course. You are free not to participate in this research, and your participation will have no influence on your grade for this course or your academic career at CMU. If you do not wish to participate, please send an email to Chad Hershock (hershock@andrew.cmu.edu). Participants will not receive any compensation. The data collected as part of this research will include student grades. All analyses of data from participants’ coursework will be conducted after the course is over and final grades are submitted. The Eberly Center may provide support on this research project regarding data analysis and interpretation. The Eberly Center for Teaching Excellence & Educational Innovation is located on the CMU-Pittsburgh Campus and its mission is to support the professional development of all CMU instructors regarding teaching and learning. To minimize the risk of breach of confidentiality, the Eberly Center will never have access to data from this course containing your personal identifiers. All data will be analyzed in de-identified form and presented in the aggregate, without any personal identifiers. If you have questions pertaining to your rights as a research participant, or to report concerns to this study, please contact Chad Hershock (hershock@andrew.cmu.edu).


    Collaboration policy and academic integrity

    The usual policies apply, especially the University Policy on Academic Integrity. We expect that your work on assignments, projects, and exams will be your own work. The key guiding principle of academic honesty in this course is: "You may not copy any part of a solution to a problem that was written by another student (in this or prior iterations of the class), or was developed together with another student, or was delegated to another person. You may not look at another student's solution, even if you have completed your own, nor may you knowingly give your solution to another student or leave your solution where another student can see it." Note that this implies that you cannot publicly post your solutions on GitHub (e.g., as part of a portfolio during job applications). We also expect and respect honesty when communicating with the course staff.

    @@ -507,9 +507,9 @@

    Your health matters

    Please take care of yourself. Do your best to maintain a healthy lifestyle this semester by eating well, exercising, avoiding drugs and alcohol, getting enough sleep and taking some time to relax. This will help you achieve your goals and cope with stress.

    All of us benefit from support during times of struggle. You are not alone. There are many helpful resources available on campus and an important part of the college experience is learning how to ask for help. Asking for support sooner rather than later is often helpful.

    If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. Counseling and Psychological Services (CaPS) is here to help: call 412-268-2922 and visit their website at http://www.cmu.edu/counseling/. Consider reaching out to a friend, faculty or family member you trust for help getting connected to the support that can help.

    -

    If you are worried about affording food or feeling insecure about food, there are resources on campus who can help. Email the CMU Food Pantry Coordinator to schedule an appointment: cmu-pantry@andrew.cmu.edu

    +

    If you are worried about affording food or feeling insecure about food, there are resources on campus who can help. Email the CMU Food Pantry Coordinator to schedule an appointment: cmu-pantry@andrew.cmu.edu

    Respect for diversity. It is our intent that students from all diverse backgrounds and perspectives be well served by this course, that students’ learning needs be addressed both in and out of class, and that the diversity that students bring to this class be viewed as a resource, strength and benefit. It is my intent to present materials and activities that are respectful of diversity: gender, sexuality, disability, age, socioeconomic status, ethnicity, race, and culture. Your suggestions are encouraged and appreciated. Please let us know ways to improve the effectiveness of the course for you personally or for other students or student groups.

    -

    Accommodations for students with disabilities. If you have a disability and have an accommodations letter from the Disability Resources office, we encourage you to discuss your accommodations and needs with us as early in the semester as possible. We will work with you to ensure that accommodations are provided as appropriate. If you suspect that you may have a disability and would benefit from accommodations but are not yet registered with the Office of Disability Resources, we encourage you to contact them at access@andrew.cmu.edu.

    +

    Accommodations for students with disabilities. If you have a disability and have an accommodations letter from the Disability Resources office, we encourage you to discuss your accommodations and needs with us as early in the semester as possible. We will work with you to ensure that accommodations are provided as appropriate. If you suspect that you may have a disability and would benefit from accommodations but are not yet registered with the Office of Disability Resources, we encourage you to contact them at access@andrew.cmu.edu.


    Informal feedback on this course

    We are planning many changes to this course in this semester and not everything will work out smoothly the first time. We’d like you to provide ongoing feedback on your experience in the course, so that we can take into account your experience and adapt our practices to make the course work for you.