# CodePath Mobile App Design - 2020 - 8-week course starting February 8 - One weekly session held on Saturdays, from 10am-12pm PST - Goal is to introduce students to building mobile apps and get them excited about coding - Audience is mostly college freshmen - Each class (Android / iOS) will have around 150 people each [Session Types](#Session-Types) [Syllabus](#Syllabus) [ToDos](#ToDos) ## Session Types Each week's session will follow one of these formats: - Lecture + Coding lab - The instructor gives a short lecture on the technical topics covered for the week (and maybe provide a live demo). Students then spend the rest of the class working on the lab in breakout rooms. - Lecture + Group Work (first and last week) - Instructor gives a short lecture, and students spend the rest of the time working in groups to brainstorm and discuss ideas - Themed Panel + Introduction to soft skills - Instructor gives a general overview on a topic (ie : different career paths in software engineering, path to landing a full time job after graduation, day in the life of an engiener, etc) for 30-45 minutes, and then leads a panel of 3-5 experienced engineers, answering questions presourced from students. ## Syllabus #### Week 1: Intro / Orientation + Evaluating Mobile Apps - Intro to course - Why mobile? - Slack, Discussion Forum, Course Portal - General administrative stuff - Walkthrough of schedule for next 8 weeks - Students work in groups to study current mobile apps - What are some of the current trends in mobile apps? - Pick 2-3 apps that you like - what do you like about them? - what are some things you would do to improve the apps? - What are some apps that you use but don't like? - What don't you like about them? - Debugging #### Week 2: Mobile Coding Lab I: Displaying flash cards - Create a new app project - Add different UI views on a screen - Customizing UI - Understand how to debug crashes and log useful messages - Push project to Github Prep work required from instructor: - Try out the code lab - Improve / enhance lab through course portal - Prepare lecture on technical topics covered #### Week 3: Panel (iOS and Android classes combined) - Instructor leads 30 minute "lecture" on path to internship / full time job - Instructor leads 45-60 minute panel discussing different paths to an internship Prep work required from instructor: - Prep lecture on path to internship / full time job - Assist in sourcing panel questions from students. - Prepare panelists for questions beforehand (probably through email) #### Week 4: Mobile Coding Lab II: Creating flash cards - Handling in-app navigation (going from one screen to another) - Passing data around within an app Prep work required from instructor: - Try out the code lab - Improve / enhance lab through course portal - Prepare lecture on technical topics covered #### Week 5: Mobile Coding Lab III: Persisting flash cards - Understand how to save data within an app - Understand how to retrieve saved data within an app Prep work required from instructor: - Try out the code lab - Improve / enhance lab through course portal - Prepare lecture on technical topics covered #### Week 6: Panel (iOS and Android classes combined) - Instructor leads 30 minute "lecture" on the different career paths in the tech industry - Instructor leads 45-60 minute panel on various tech careers Prep work required from instructor: - Prep lecture on different career paths in the tech industry - Assist in sourcing panel questions from students. - Prepare panelists for questions beforehand (probably through email) #### Week 7: Mobile Coding Lab IV: Polishing an app - Understand how and when to implement different types animations within your app - Styling the app! Prep work required from instructor: - Try out the code lab - Improve / enhance lab through course portal - Prepare lecture on technical topics covered #### Week 8: Final Wrap-Up + Mobile App Design Activity - Brainstorming user stories - Creating wireframes - Building prototype with Figma? ## ToDos The previous run of this course was 11 weeks, and had a strong focus on having groups work through the process of bringing an app idea to life. (A bit more about the pros and cons of the previous course format can be found [here](https://hackmd.io/1-HCLNkQRGm3-sjz4ipeSA).) Since we are planning on an 8 week course this time, there are a few things to do in addition to refining the material from the last run. - [ ] Reformat the course portal to follow the new 8 week format - [ ] Weekly sessions need to be restructured to the new syllabus - [ ] Plan / create content for Weeks 3 and 6 - [ ] Plan / create content for Week 8's Mobile App Design group activity - Previously, the mobile app design group activities were spread throughout the 11 weeks of the course. Now we're condensing it all to one session, so we need to think about how to best do this. - [ ] Audit / polish existing coding labs