Syllabus

Welcome to Intro to Android Development!

Hello and welcome to the class! We are your instructors for this course, Emily and Maxwell, and we’re incredibly excited to help you learn how to make Android apps this semester. It wasn't too long ago that we were learning the intricacies of Android ourselves, and now we wish to pass on the knowledge we've learned to you! It’s going to be a great semester and we can’t wait to get started!

Course Staff

Name
Role
Emily Hu
Course Instructor
Maxwell Pang
Course Instructor
Corwin Zhang
TA
Justin Guo
TA
Aarushi Singh
TA
If you have a question for the course staff, ask a private question on Ed Discussion or schedule a meeting during office hours.

Course Schedule

This schedule is tentative and subject to changes to Cornell's Spring 2023 academic calendar.
Lectures will be held in Gates 114 at 8:35-9:25pm every Monday and Wednesday.
Lectures will be held on Mondays whereas discussions will be held on Wednesdays. Discussions are meant to supplement what is being learned in lecture that week but will not introduce anything "new" in the sense that what's learned is an integral part to Android development.
All lectures will be recorded and posted to AppDev's YouTube channel after the lecture.
Towards the end of the course, you'll be participating in the 2-week Hack Challenge alongside students from other AppDev courses, to create a full-fledged mobile application.
Outlined below is a schedule of our lectures, discussions, and projects (with their due dates).
Class Dates
Lecture Topic
Discussion Topic
Project
Project Due Date
2/20, 2/22
Intro to Editor and Views
Views & Debugging Demo
P1
3/5
2/27, 3/1
Cancelled due to Feb break
Bonus Lecture (TBA)
have fun!
3/6, 3/8
XML, Input, and ViewGroups
Listeners and Layouts Demo
P2
3/12
3/13, 3/15
Intent and Permissions
Intent and Location Access Demo
P3
3/19
3/20, 3/22
ListView and RecyclerView
RecyclerView Demo
P4
3/26
3/27, 3/29
Fragments and Navigation
Fragments and Navigation Demo
P5
4/9
4/3, 4/5
Cancelled due to Spring break
Cancelled due to Spring break
have fun!
4/10, 4/12
Networking, Data, and Persistent Storage
Networking, Data, and Persistent Storage Demo
P6
4/16
4/17, 4/19
Jetpack Compose Networking (Bonus Lecture)
(Office Hours)
Hack Challenge Team Formation
(Bonus HW assignment due 4/30)
4/24, 4/26
Hack Challenge KickOff!
(Office Hours)
Hack Challenge Submission
(Bonus HW assignment due 4/30)
5/1, 5/3
Game Development (Bonus Lecture)
(Office Hours)
Hack Challenge Submission
5/8
Hack Challenge Finale
-
-
-

Grading

Note: for Spring 23, you can take this course for up to 2 credits, in the event of credit overload. However, regardless of the number of credits you're signed up for, you are still expected to complete 2 credits worth of work.
This is a 2 credit S/U course and grading will be determined by all projects, with more emphasis on the Hack Challenge final project.
Each project is worth 10-12 points, and the final project is worth 20 points: 10 points for the midpoint submission and 10 points for the final submission. Each project (with the exception of the first) will have extra credit opportunities for you to challenge yourself and dive deeper into Android development.
To pass this course, you will need >= 70 points by the end of the semester.
Assignments
Weight
P1 - Hello World
10
P2 - Trichromatic
12
P3 - Trichromatic Extended
12
P4 - Spotify Playlist
12
P5 - Wallpaper Gallery
12
P6 - Notes App
12
Hack Challenge
20
Participation
10
Total
100
Passing Score
70

Attendance

Attendance is required for all students of the course for the lectures, and are permitted at most 1 absence (not including bonus lectures which do not require attendance). This is subject to change based on the status of Cornell's campus and COVID guidelines. Attendance will be taken through a Google Form, a QR code for which will be displayed only to students during lecture.
For the discussions, we ask that you make it to 4 out of the 6 of the discussions slated to receive full credit for attendance.

Late policy

You are given 6 slip days that you can use on any of the assignments aside from the Hack Challenge project. Each assignment will be opened for late submissions for an extra 2 days after the regular deadline. If you submit an assignment late and run out of slip days, assignments will be automatically docked 2 points.

Note on grading for assignments:

If you are unable to finish the project as a result of an error, please add a note in a README.txt file explaining:
  1. 1.
    the error that you are encountering
  2. 2.
    the suspected cause of the error (doesn't have to be correct!)
  3. 3.
    the solutions you have attempted to resolve the error
This helps out the grader quickly find and debug errors and give partial points for effort!
It is also helpful to leave broken code in your project (but have it commented out). This will allow us to better understand your thought process and give you partial points for missing features.

Course Help

  • If you ever need help, you can always post on the course Ed Discussion. We will be monitoring the class feed to be helping you! For more complicated questions, try to attend office hours if at all possible.
  • Office hours are held at multiple times throughout the week by instructors and TAs. See the schedule below for details.
We are here to help you succeed! Our number one goal is for you to LEARN Android development and we will be with you each step of the way to make sure that happens 👏.
Name
Hours
Location
Justin Guo
Sunday 3-4 PM
Hollister 312
Sophie Meng
Monday 6-7
Hollister 362
Maxwell Pang + Zach Seidner
Tuesday 3-4 PM
Hollister 206
Emily Hu
Wednesday 7:15-8:15 PM
Upson 225
Aarushi Singh
Thursday 5:45-6:45 PM
Hollister 368
Corwin Zhang + Ram Peddu
Friday 5-6 PM
Hollister 312

Hack Challenge

At the end of the course, you and up to three other members of AppDev courses (Intro to Digital Product Design, Intro to Backend Engineering, Intro to iOS) will have the chance to work in a group and apply all that you’ve learned in the course to create a functional, polished app.
Participation in the Hack Challenge is required as the final project for this course. The course staff will judge the best apps and there will be sponsored prizes! Last semester’s winners won Google Homes, bluetooth speakers, Echo Dots, or Chromecasts. This could be you this semester, so start brainstorming ideas!

Academic Integrity & Collaboration

As with any other course at Cornell, the code of academic integrity will be enforced in this class. All individual projects must be done by yourself. All University-standard Academic Integrity guidelines should be followed. This includes proper attribution of any resources found online, including anything that may be open-sourced by AppDev. The University guidelines for Academic Integrity can be found here.
We encourage using the internet to learn more about Android development, but again, any code you submit must be written by you!