{"componentChunkName":"component---src-templates-generic-template-js","path":"/","webpackCompilationHash":"041090671d318979d692","result":{"data":{"markdownRemark":{"htmlAst":{"type":"root","children":[{"type":"element","tagName":"h3","properties":{"id":"important-links"},"children":[{"type":"element","tagName":"a","properties":{"href":"#important-links","ariaLabel":"important links permalink","className":["anchor"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Important Links"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":" "},{"type":"element","tagName":"a","properties":{"href":"course-info"},"children":[{"type":"text","value":"Course Information"}]},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n"},{"type":"element","tagName":"a","properties":{"href":"https://piazza.com/class/jzyj6cmx2x04vh?cid=3"},"children":[{"type":"text","value":"Piazza"}]},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n"},{"type":"element","tagName":"a","properties":{"href":"https://classroom.github.com/classrooms/54724585-cs-312-fall-2019"},"children":[{"type":"text","value":"Class GitHub"}]},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n"},{"type":"element","tagName":"a","properties":{"href":"https://www.gradescope.com/courses/60802"},"children":[{"type":"text","value":"Gradescope"}]},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n"},{"type":"element","tagName":"a","properties":{"href":"https://b.socrative.com/login/student/"},"children":[{"type":"text","value":"Socrative"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"schedule"},"children":[{"type":"element","tagName":"a","properties":{"href":"#schedule","ariaLabel":"schedule permalink","className":["anchor"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Schedule"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"This is a living schedule and subject to change"}]}]},{"type":"text","value":"\n\n   \n    \n  "},{"type":"element","tagName":"table","properties":{"className":["table","table-sm","table-bordered"]},"children":[{"type":"text","value":"\n  "},{"type":"element","tagName":"thead","properties":{},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"col"},"children":[{"type":"text","value":"Week"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"col"},"children":[{"type":"text","value":"Date"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"col"},"children":[{"type":"text","value":"Topic"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"col"},"children":[{"type":"text","value":"Assignments"}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n  "}]},{"type":"text","value":"\n  "},{"type":"element","tagName":"tbody","properties":{},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 1 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":2,"scope":"row"},"children":[{"type":"text","value":"1"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"09/10"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n        "},{"type":"element","tagName":"a","properties":{"href":"lectures/lecture1-intro"},"children":[{"type":"text","value":"Introduction"}]},{"type":"text","value":" ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/5ea6010aa1461352af760449f24117cf/lecture1-intro.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":") and "},{"type":"element","tagName":"a","properties":{"href":"lectures/lecture1-js"},"children":[{"type":"text","value":"JavaScript"}]},{"type":"text","value":" ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/3754890c7a915be75ca6b24d43d57eb0/lecture1-js.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"href":"https://forms.gle/CAEt3PiDEvAEk4qi8"},"children":[{"type":"text","value":"Attendance"}]},{"type":"text","value":", \n        "},{"type":"element","tagName":"a","properties":{"href":"resources/getting-started"},"children":[{"type":"text","value":"Getting Started"}]},{"type":"text","value":" \n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"09/12"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"href":"lectures/lecture2-devtools"},"children":[{"type":"text","value":"Node, npm, Unit testing, Linting"}]},{"type":"text","value":" ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/5bfaaf6b01ab62f16c69bf48a8f0cc7b/lecture2-testing.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n        "},{"type":"element","tagName":"a","properties":{"href":"practicals/practical01"},"children":[{"type":"text","value":"npm practical"}]},{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"https://forms.gle/e19trX6THSHJRJbt5"},"children":[{"type":"text","value":"Attendance"}]}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 2 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":3,"scope":"row"},"children":[{"type":"text","value":"2"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"09/17"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"href":"lectures/lecture3-dom"},"children":[{"type":"text","value":"JavaScript and the DOM"}]},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n        "},{"type":"element","tagName":"a","properties":{"href":"practicals/practical02"},"children":[{"type":"text","value":"DOM practical"}]},{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"09/19"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"href":"lectures/lecture4-react"},"children":[{"type":"text","value":"React, Design patterns (MVC)"}]},{"type":"text","value":" ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/e04c67c7593b3e0d80545f311d20a472/lecture4-react.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n        "},{"type":"element","tagName":"a","properties":{"href":"https://github.com/csci312-f19/example-react-color-picker"},"children":[{"type":"text","value":"React Color Picker example"}]},{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"09/20"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"assignments/assignment01"},"children":[{"type":"text","value":"Assignment 1"}]},{"type":"text","value":" due"}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 3 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":2,"scope":"row"},"children":[{"type":"text","value":"3"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"09/24"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n       "},{"type":"element","tagName":"a","properties":{"href":"lectures/lecture5-react2"},"children":[{"type":"text","value":"More React, Styling, Composition vs. inheritance"}]},{"type":"text","value":"("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/4355d884dbabe08a3df1d846cf55145d/lecture5-react2.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n       "},{"type":"element","tagName":"a","properties":{"href":"https://github.com/csci312-f19/example-filmexplorer-standalone"},"children":[{"type":"text","value":"FilmExplorer-Standalone"}]},{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"09/26"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"href":"lectures/lecture6-devops"},"children":[{"type":"text","value":"DevOps"}]},{"type":"text","value":"("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/0a03cf5854c78989336f55d5c9e96df8/lecture6-devops.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 4 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":3,"scope":"row"},"children":[{"type":"text","value":"4"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"09/30"}]},{"type":"text","value":"\n     "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"assignments/assignment02"},"children":[{"type":"text","value":"Assignment 2"}]},{"type":"text","value":" due"}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/01"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"href":"lectures/lecture7-rest"},"children":[{"type":"text","value":"AJAX, Promises, Consuming REST APIs"}]},{"type":"text","value":" ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/37c4630b5980e6a983ad125a05e8ba60/lecture7-rest.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n        "},{"type":"element","tagName":"a","properties":{"href":"practicals/practical03"},"children":[{"type":"text","value":"Fetch practical"}]},{"type":"text","value":"\n        "}]},{"type":"text","value":"\n        "},{"type":"element","tagName":"td","properties":{},"children":[]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/03"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"lectures/lecture8-enzyme"},"children":[{"type":"text","value":"React testing"}]},{"type":"text","value":" ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/ad5879668e654bdd3f0e797d4f1e0041/lecture8-enzyme.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"href":"practicals/practical04"},"children":[{"type":"text","value":"React TDD practical"}]},{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 5 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":3,"scope":"row"},"children":[{"type":"text","value":"5"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/07"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"assignments/assignment03"},"children":[{"type":"text","value":"Assignment 3 due"}]}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/08"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"href":"lectures/lecture9-bdd"},"children":[{"type":"text","value":"Behavioral testing, User stories, Lo-fi Mockups"}]},{"type":"text","value":" ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/0f9ede9deb7f227a4193578700f4eac7/lecture9-bdd.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n        "},{"type":"element","tagName":"a","properties":{"href":"practicals/practical05"},"children":[{"type":"text","value":"React BDD practical"}]},{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"href":"project/proposal"},"children":[{"type":"text","value":"Project proposals"}]},{"type":"text","value":" due 5p\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/10"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"href":"lectures/lecture10-agile"},"children":[{"type":"text","value":"Agile development processes"}]},{"type":"text","value":" ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/721a671b8fbe54684664de0c81bd4c59/lecture10-agile.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n        "},{"type":"element","tagName":"a","properties":{"href":"practicals/practical06"},"children":[{"type":"text","value":"Feature practical (optional)"}]},{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 6 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":3,"scope":"row"},"children":[{"type":"text","value":"6"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/15"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Sprint 0 planning\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/17"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"href":"lectures/lecture11-servers"},"children":[{"type":"text","value":"Servers, Creating REST APIs, Models (M in MVC)"}]},{"type":"text","value":" ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/0f572717e98c2e17e78115b4daf047fa/lecture11-server.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"\n        "},{"type":"element","tagName":"a","properties":{"href":"practicals/practical07"},"children":[{"type":"text","value":"Server practical"}]},{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/18"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"assignments/assignment04"},"children":[{"type":"text","value":"Assignment 4 due"}]}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 7 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":3,"scope":"row"},"children":[{"type":"text","value":"7"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/22"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{"colSpan":"2"},"children":[{"type":"text","value":"\n        No Class - Fall break\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/23"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"project/guidelines#project-setup-or-sprint-0-deliverables"},"children":[{"type":"text","value":"Sprint 0 deliverables"}]},{"type":"text","value":" due"}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/24"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Sprint 1 planning\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 8 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":2,"scope":"row"},"children":[{"type":"text","value":"8"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/29"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Databases, Models, Associations, RDBMS ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/f73360a25eeec9a8494f5243fc049891/lecture12-rdbms.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"element","tagName":"a","properties":{"href":"practicals/practical08"},"children":[{"type":"text","value":"RDBMS practical"}]}]},{"type":"text","value":"\n      \n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"10/31"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"practicals/practical08"},"children":[{"type":"text","value":"RDBMS practical (cont.)"}]},{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 9 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":3,"scope":"row"},"children":[{"type":"text","value":"9"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"11/05"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      Sprint 1 demos, retrospective\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      Sprint 1 deliverables due\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"11/05-7"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{"colSpan":"2"},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Take home midterm"}]},{"type":"text","value":"\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"11/07"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      Sprint 2 planning\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 10 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":2,"scope":"row"},"children":[{"type":"text","value":"10"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"11/12"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"NoSQL (and MongoDB) ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/80aaaa870dbfb7ee8b65c4d52245aa14/lecture13-mongo.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"element","tagName":"a","properties":{"href":"practicals/practical09"},"children":[{"type":"text","value":"MongoDB practical"}]},{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"11/14"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"practicals/practical10"},"children":[{"type":"text","value":"Login practical"}]},{"type":"text","value":"\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 11 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":2,"scope":"row"},"children":[{"type":"text","value":"11"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"11/19"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      Sprint 2 demos, retrospective\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      Sprint 2 deliverables due\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"11/21"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Sprint 3 planning\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 12 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":2,"scope":"row"},"children":[{"type":"text","value":"12"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"11/26"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Beyond correctness ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/d72c1a06d4f1bf22dc61d1530d09be08/lecture14-beyond-correctness.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"11/28"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{"colSpan":"2"},"children":[{"type":"text","value":"\n      No class - Thanksgiving\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 13 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":2,"scope":"row"},"children":[{"type":"text","value":"13"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"12/03"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"The moral developer ("},{"type":"element","tagName":"a","properties":{"href":"/~candrews/classes/cs312-f19/5164996f8790fdccfad1d7379d0e4e23/lecture15-moral-developer.pdf"},"children":[{"type":"text","value":"slides"}]},{"type":"text","value":")\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"12/05"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Wrap up\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[]},{"type":"text","value":"\n    "}]},{"type":"text","value":"\n    "},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"comment","value":" Week 14 "},{"type":"text","value":"\n      "},{"type":"element","tagName":"th","properties":{"rowSpan":1,"scope":"row"},"children":[{"type":"text","value":"14"}]},{"type":"text","value":"\n     "},{"type":"element","tagName":"th","properties":{"scope":"row"},"children":[{"type":"text","value":"12/09"}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Presentations 1:30\n      "}]},{"type":"text","value":"\n      "},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"\n      "}]},{"type":"text","value":"\n    "}]}]},{"type":"text","value":"\n"}]}],"data":{"quirksMode":false}},"frontmatter":{"path":"/","title":"CS 312 - Software Development","name":"Home"},"parent":{"__typename":"File","id":"d173d622-171d-56d2-be8b-009cde643d69","name":"index","modifiedTime":"Dec 4 2019 21:55"}}},"pageContext":{"isCreatedByStatefulCreatePages":false}}}