❗Participation Comment Due
Software Due, Participation Comment Due | - | Notes
- Lectures subject to change.
- Zoom link will be provided in the LearnSoftware App. You will be given access via email close to the start of the course.
- Not all lectures listed here have a corresponding entry in the presentations page on this site. Some exist as videos only on the LearnSoftware App.
Summary
- Lectures are asynchronous via the Learn Software application
- We will try to bring in some guest speakers
- 1 AI + Data Tutorial
- 2 discussions (1 includes short demos)
- 4-5 class working periods
- 1 Intro
- 4 Demo periods (part class each time)
Your software
To help you keep on track, here are some general recommendations and guidelines on milestones and goals you should aim for throughout the term. While most of these aren’t mandatory (unless enforced by assignments), following these will help ensure your success and avoid stress and chaos in the last 2 weeks of the course.
- You should start a skeleton hello world application as soon as you choose your base tech (Flask, Rails, iOS, etc)
- You should start building out a developer environment, CI setup, test infra, and production setup by the end of January
- You should start building out functionality no later than mid-February
- Your models should also be started no later than mid-February
- You should have demoable content by the first week of MArch
- You should have significant demoable content by the last demo
- You should be at the point of adding no new major features in April. This should be reserved for polish and bug fixes
Demos
Here is an example of the progress I would expect for each demo slot:
- Demo 1: Decisions and Tech Stack, at minimum a Hello World application in your chosen language/platform
- Demo 2: Your application running on CI, which means some basic tests (at minimum). It should also be launched onto the web / mobile
- Demo 3: Minimal front end, mobile, and back end (as applicable). Starting code for any data models. Some functionality
- Demo 4: Full software, general functionality, note any shortcomings or areas to improve. Identify all main use cases implemented
Assignments
Please see the assignments section.