diff --git a/asset-manifest.json b/asset-manifest.json index dd75f0d..1be1819 100644 --- a/asset-manifest.json +++ b/asset-manifest.json @@ -1,25 +1,25 @@ { "files": { "main.css": "/static/css/main.d5b19f31.css", - "main.js": "/static/js/main.3a39e3b5.js", - "static/media/hw6.md": "/static/media/hw6.ae4be711a8dde6343fb1.md", - "static/media/hw3.md": "/static/media/hw3.e3708735d6979313799d.md", - "static/media/hw8.md": "/static/media/hw8.a57ecb6e2bdb0c2da4bd.md", - "static/media/hw1.md": "/static/media/hw1.5159640be4c562786267.md", - "static/media/hw4.md": "/static/media/hw4.00eb6055a995f6b1345a.md", - "static/media/hw2.md": "/static/media/hw2.7b15123fddb5c19ef348.md", - "static/media/hw7.md": "/static/media/hw7.5a9c31dbb856b69c74bd.md", - "static/media/hw5.md": "/static/media/hw5.f0299d01eb416fdf3f8e.md", - "static/media/hw9.md": "/static/media/hw9.f8c988d80fcd07763f67.md", - "static/media/lab1.md": "/static/media/lab1.96719204e855f4db2fdb.md", - "static/media/spec-final-project.md": "/static/media/spec-final-project.bce2cd0316a7e3a9f415.md", - "static/media/lab2.md": "/static/media/lab2.ebfe3b09b0e15a6636e2.md", + "main.js": "/static/js/main.5c541bc5.js", + "static/media/hw6.md": "/static/media/hw6.bbfec2fdf4c97dd22ac0.md", + "static/media/hw3.md": "/static/media/hw3.3d6afb25f26f1c837e03.md", + "static/media/hw8.md": "/static/media/hw8.b1287d1ca768ba50dd3f.md", + "static/media/hw1.md": "/static/media/hw1.a2544324a33f89d4d236.md", + "static/media/hw4.md": "/static/media/hw4.3cd721eabf7429cff5aa.md", + "static/media/hw2.md": "/static/media/hw2.e3f35bbc669c98ca8f49.md", + "static/media/hw7.md": "/static/media/hw7.784fbdc731953979f656.md", + "static/media/hw5.md": "/static/media/hw5.273c0e913ad8bbd0b4fa.md", + "static/media/hw9.md": "/static/media/hw9.2b38650321151fe30447.md", + "static/media/lab1.md": "/static/media/lab1.9481edd640b8fb24e51d.md", + "static/media/spec-final-project.md": "/static/media/spec-final-project.4545851ab9f7336836f2.md", + "static/media/lab2.md": "/static/media/lab2.d2b57759e405362ffd8f.md", "index.html": "/index.html", "main.d5b19f31.css.map": "/static/css/main.d5b19f31.css.map", - "main.3a39e3b5.js.map": "/static/js/main.3a39e3b5.js.map" + "main.5c541bc5.js.map": "/static/js/main.5c541bc5.js.map" }, "entrypoints": [ "static/css/main.d5b19f31.css", - "static/js/main.3a39e3b5.js" + "static/js/main.5c541bc5.js" ] } \ No newline at end of file diff --git a/assets/hw2/dev-tools-1.png b/assets/hw2/dev-tools-1.PNG similarity index 100% rename from assets/hw2/dev-tools-1.png rename to assets/hw2/dev-tools-1.PNG diff --git a/assets/hw2/dev-tools-4.png b/assets/hw2/dev-tools-4.PNG similarity index 100% rename from assets/hw2/dev-tools-4.png rename to assets/hw2/dev-tools-4.PNG diff --git a/assets/hw2/dev-tools-6.png b/assets/hw2/dev-tools-6.PNG similarity index 100% rename from assets/hw2/dev-tools-6.png rename to assets/hw2/dev-tools-6.PNG diff --git a/assets/hw2/google-fonts-1.png b/assets/hw2/google-fonts-1.PNG similarity index 100% rename from assets/hw2/google-fonts-1.png rename to assets/hw2/google-fonts-1.PNG diff --git a/assets/hw2/skeleton-hw2.png b/assets/hw2/skeleton-hw2.PNG similarity index 100% rename from assets/hw2/skeleton-hw2.png rename to assets/hw2/skeleton-hw2.PNG diff --git a/content/course-info.md b/content/course-info.md index d7e277b..ded39aa 100644 --- a/content/course-info.md +++ b/content/course-info.md @@ -1,10 +1,10 @@ **Course Designation:** CS 198-075, CS 198-750 -**Facilitators:** Steffi Tan, Tyler Sameshima, Tony Hong +**Facilitators:** Andy Huang, Jessica Ng, Madhav Varshney -**EECS Dept. Sponsor:** Professor John Denero +**EECS Dept. Sponsor:** Justin Yokota -**Course Catalog:** Spring 2023 +**Course Catalog:** Fall 2023 ## Course Overview @@ -14,11 +14,21 @@ Central to many aspects of software engineering, full stack web development usin The course content is split into lectures, optional labs, homework, and a final project. Your final project will be in teams of up to 4, so you can team up with friends or find teammates in lab and lecture. We will also have an option for random groupiings for those who don't have groups. -## Lectures (Tuesdays 5-6pm PT) +## Course Requirements + +_Prerequisites_ + +For the web track, we are targeting those with little to no coding experience. This means that while you can take the course as someone with experience, you may find it a bit slow. For the iOS track, we recommend that you have some prior coding experience and/or take some introductory programming course before or while you’re enrolled in Cubstart — e.g. CS61A. + +_Textbooks and Required Materials_ + +If participating in the iOS track, you’ll need a MacBook with macOS 12.5 (Monterey) or later that can run Xcode 14. If your Mac is mid-2012 or newer, you should be fine. Older Macs may have performance issues. + +## Lectures The weekly lectures are intended to give an introduction to the contents covered by the homework due the following week. The general structure will be a conceptual overview of the highlighted topics, use cases, and real-life examples. Attendance will be recorded. -## Labs (Thursday 5-7pm PT) (Optional but Recommended) +## Labs (Optional but Recommended) Labs are a fun way to learn and practice the content in a more hands-on way! They are recommended for those starting out in programming and web development, who want to put what they've learned in lecture into practice. We have all sorts of exciting exercises for you to make your own demos and small apps. @@ -29,7 +39,10 @@ You do not need to attend these labs if you feel comfortable that you can comple ## Learning Goals - Tackling detailed project specs - Project ideation and developing software in a team -- Achieving full stack web development proficiency +- Crafting a project proposal as well as setting and meeting checkpoints +- Designing application mockups +- Achieving full-stack web development proficiency + ## Grading Breakdown @@ -40,11 +53,13 @@ You do not need to attend these labs if you feel comfortable that you can comple | 5% | Final Project Checkpoint: Design Mockup | | 45% | Final Project: Demo Day | -This course is fast-paced and highly cumulative. Your success will depend on your active and consistent participation. However, we understand that emergencies and personal matters do come up, so you are allowed up to **2 unexcused absences across lectures**. If you have an extenuating circumstance and have used up your 2 unexcused absences, please make a private Ed post on [EdStem](https://edstem.org/us/join/k4UPks). +This course is fast-paced and highly cumulative. Your success will depend on your active and consistent participation. However, we understand that emergencies and personal matters do come up, so you are allowed up to 2 unexcused absences across lectures. If you have an extenuating circumstance and have used up your 2 unexcused absences, please make a private Ed post on EdStem. **More than 2 incomplete homeworks will result in a NP and a failure to complete the final project will result in a NP.** -## Homeworks (Assigned Thursdays, Due the Next Friday) +**If an individual receives unanimously poor peer evaluations from their final project teammates, their grade will be impacted, and consistently low effort will result in a NP.** + +## Homeworks The weekly homeworks are mini-projects that have a detailed, step-by-step spec for you to follow. @@ -56,12 +71,22 @@ The last 4 weeks will be dedicated to your final project, which is ideating and ## Late Work -Each student is allowed up to **3 slip days** throughout the semester. Slip days are applicable to the homeworks. Each slip day is equivalent to a 24-hour extension. You may use multiple slip days back-to-back. Using a slip day does not require any notice; they will simply be applied at the end of the semester to maximize your overall grade. Slip days will be subtracted from each student on the team at the same time. Outside of slip days, late work will receive a 10% grade deduction for every day after the deadline that the work is submitted. +Each student is allowed up to **3 slip days** throughout the semester. Slip days are applicable to the homeworks. Each slip day is equivalent to a 24-hour extension. You may use multiple slip days back-to-back. Using a slip day does not require any notice; they will simply be applied at the end of the semester to maximize your overall grade. Slip days will be subtracted from each student on the team at the same time. Outside of slip days, late work will receive a 10% grade deduction for every day after the deadline that the work is submitted. There are no slip days for Final Project: Demo Day, as your project must be completed and ready by the presentation date. ## Academic Honesty You may only work with your teams on the projects. Respect licenses of libraries that you use, and do not sabotage other students (there is no curve). Follow UC Berkeley’s Honor Code. +## Accomodations + +If you need any accommodations, please contact the course staff (cubstart@calhacks.io) with the subject line “[CUBSTART] ACCOMMODATIONS REQUEST -YOUR FULL NAME.” Please include your letter of accommodations and in your own words, a description of what you need to be successful in this course. Additionally, please state which track you are enrolled in. + ## Other Inquiries -Email cubstart@calhacks.io for any other questions. +Any other inquiries should be directed to Edstem or cubstart@calhacks.io with “[CUBSTART]” in the subject line. + +## Resources & Tools +- Edstem - Forum to discuss course content and assignments with your peers. +- Website - View course content and deadlines. +- Gradescope - Submit assignments + diff --git a/content/ios/schedule-page.md b/content/ios/schedule-page.md index 0ee2415..9ad83ab 100644 --- a/content/ios/schedule-page.md +++ b/content/ios/schedule-page.md @@ -1,27 +1,23 @@ -Lecture: Tuesday 5:00pm-6:00pm @ VLSB2060 +Lecture: Mondays 4:00pm-5:00pm @ Soda 306 -Lab: Thursdays 5:00pm-7:00pm @ VLSB2060 - -[Attendance Form](https://forms.gle/fZcaDStASixSnMiz7) +Lab: Fridays 4:00pm-6:00pm @ Soda 306 ## Announcements Welcome to the iOS development track. -Join the [EdStem](https://edstem.org/us/join/cw4Evx). - | Week | Lecture | Lab Section | Homework/Project | | ---- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- | ------------------------------------------------- | -| 1 | Introduction, Git, Designing an iOS App w/ Figma [Slides](https://docs.google.com/presentation/d/1XNysgMNXDp1SQ-brEi6VXpvslDjAaCb-Ff4mEzl97gU/edit?usp=sharing) [Recording](https://youtu.be/EWQUF9ZkVwo) | Team Formation Activities and XCode/GitHub Set-up | [HW 1: Mobile Bookstore](/#/hw/ios/hw1) | -| 2 | Swift/SwiftUI Crash Course [Slides](https://docs.google.com/presentation/d/195ObUWuP-sX3mCZpxWNBfUz9G0iaAD15yWLk9Zk3zFM/edit?usp=sharing) [Recording](https://youtu.be/e0PlOyde1BM) | [Playing with Git](/#/lab/ios/lab1) | [HW 2: Make Your Own Profile Page](/#/hw/ios/hw2) | -| 3 | Wrappers, Objects, and Bindings in SwiftUI [Slides](https://docs.google.com/presentation/d/17MLVb17e9cwhlZnUGs-vNjXoGlrIfg54Eq_hGKVRO-U/edit?usp=sharing) [Recording](https://youtu.be/hxfpYZUMZnk) | Project OH/Checkoff | [HW 3: Coffee Shop Menu](/#/hw/ios/hw3) | -| 4 | NavigationLinks, TabViews, and Custom Cells in SwiftUI [Slides](https://docs.google.com/presentation/d/1ySBDc6uDeNfrIbNZDF5xSR4nYzImFHaWZQ5p8fqBKcw/edit?usp=share_link) [Lecture Recording](https://www.youtube.com/watch?v=xegPiD0oaz0) [Demo Recording](https://www.youtube.com/watch?v=MfGAkA8g0Lc) | Project OH/Checkoff | [HW 4: Maze Game](/#/hw/ios/hw4) | -| 5 | Sheets, Forms, and Tables in SwiftUI [Slides](https://docs.google.com/presentation/d/1zN28rT4tKRx-V4K9JD1kSI_YHk0FDXDYTIzhM1t-_8I/edit?usp=sharing) [Recording](https://youtu.be/xRYu3SiAHFs) | Project OH/Checkoff | [HW 5: Biography](/#/hw/ios/hw5) | -| 6 | Alerts, Notifications, and API Integration [Slides](https://docs.google.com/presentation/d/13sQ4lIpJ3fNXQaeC0WOHgqpGyEm8gF10iZLt-p967W8/edit?usp=sharing) [Recording](https://youtu.be/q_ZLHcI6Wow) | Project OH/Checkoff | [HW 6: Guess the Dog!](/#/hw/ios/hw6) | -| 7 | Firebase, Firestore [Slides](https://docs.google.com/presentation/d/1r-oNpM56royNNyQB8AZX1f3OEuG64L_UD0jq68fmY4E/edit?usp=sharing) [Recording](https://www.youtube.com/watch?v=LjoXQkgP2gs) | Project OH/Checkoff | [HW 7: Berkeley Spots](/#/hw/ios/hw7) | -| 8 | No Class (Spring Recess) | | | -| 9 | Animations and MVVM [Slides](https://docs.google.com/presentation/d/1H9chkPDsTZm49SMcVf72fOjhT2JYaHQ7AHNWs7UnrQg/edit?usp=sharing) [Recording](https://www.youtube.com/watch?v=JoKE7E_8gDY) | Project OH/Checkoff | [HW 8: Coin Toss](/#/hw/ios/hw8) + Due 4/7: Figma Prototype | -| 10 | Guest Lecture | Final Project OH/Checkoff | | -| 11 | Guest Lecture | | Due 4/21: Final Project Checkpoint | -| 12 | Final Project OH | Final Project OH | Prep for Demo Day! | -| 13 | No Lecture (Demo Week) | Demo Day: TBD | Due 5/1: Final Project (App + Slide deck) | +| 1 | Introduction, Git, Designing an iOS App w/ Figma | Team Formation Activities and XCode/GitHub Set-up | HW 1: TBD | +| 2 | Swift and SwiftUI Fundamentals | [Playing with Git](/#/lab/ios/lab1) | HW 2: Tic-Tac-Toe | +| 3 | Dataflow, MVVM, and Lists | Discussion 1/OH | HW 3: Checklist | +| 4 | Navigation and Presentation | Discussion 2/OH | HW 4: TBD | +| 5 | Intro to Animations | Discussion 3/OH | HW 5: Coin Toss | +| 6 | API Integration | Discussion 4/OH | HW 6: Guess the Dog! | +| 7 | Swift Data | Discussion 5/OH | HW 7: TBD | +| 8 | Firebase | Discussion 6/OH | HW 8: TBD | +| 9 | Multiplatform Support | Discussion 7/OH | HW 9: TBD | +| 10 | Publishing to the App Store | Final Project OH | HW 10: Review | +| 11 | No Class (Thanksgiving Holiday) | | Due TBD: Final Project Checkpoint | +| 12 | Guest Lecture | Final Project OH | Prep for Demo Day! | +| 13 | No Lecture (Demo Week) | | Due TBD: Final Project | diff --git a/content/web/schedule-page.md b/content/web/schedule-page.md index a582775..96cdbba 100644 --- a/content/web/schedule-page.md +++ b/content/web/schedule-page.md @@ -1,14 +1,10 @@ -Lecture: Tuesday 5:00pm-6:00pm @ McCone Hall 141 +Lecture: Mondays 5:00pm-6:00pm @ Soda 306 -Lab: Thursdays 5:00pm-7:00pm @ Wheeler 212 - -[Attendance Form](https://forms.gle/hhrjxXDXsHa9tGKeA) +Lab: Fridays 4:00pm-6:00pm @ Physics 3 ## Announcements Welcome to the full-stack web development track. -Join the [EdStem](https://edstem.org/us/join/k4UPks), [Discord](https://discord.com/invite/RfGp5zDrtC) and the [Gradescope](https://gradescope.com) (Join Code: J3JBB5). - | Week | Lecture | Lab Section | Homework/Project | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------|---------------------------------------------------------------------------------| | 1 | Introduction to HTML and the Web [Slides](https://docs.google.com/presentation/d/19vGc47fYunPBSALIEE1Omj7y3T8KDrNYOlz1imfURq0/edit?usp=sharing) [Demo](assets/lecture1demo.html) [Recording](https://drive.google.com/file/d/1LaoVcslRvGMQnjzI0hQxN-pcSilnZuL0/view?usp=sharing) | No lab | [HW 1: HTML Basics](#/hw/web/hw1) | diff --git a/index.html b/index.html index 4dbfb60..35c9a73 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -