98-222: Intro to iOS Development

This is the course website for the CMU Student Led Course (StuCo) 98-222: Introduction to iOS Development. In this very brief and fast-paced course, we will teach you the basics of Swift, Xcode, and Cocoa Touch, as well as how to use some 3rd-party iOS APIs. We do not require any prior iOS experience, though some object-oriented programming experience is strongly recommended. By the end of the course, all students will have built their very own feature-complete iOS app from scratch-- in past semesters some students have even successfully deployed their apps to the App Store. No iOS device is required, but all development will be done on a Mac computer. If a student does not own a Mac, he or she can use one of the Mac labs on campus to complete assignments.

Even though this course has a tougher curriculum than most StuCo's, we want it to be a very fun, open-ended, and creative experience. Topics covered in the second half of the semester are mostly chosen by students, and we try to incorporate new and upcoming APIs and technologies into our course, such as the Apple Watch. Students should enter this course with an open mind and a desire to learn and become independent with a new, very marketable skill.


Lecture and Office Hours

Grading Policy

This course is pass/fail: students will either receive a P or an N on their transcript. However, we will internally use the following simple grading scale:

The midterm project and the final project are mandatory. Not doing these projects will automatically guarantee a grade of an N.

Late Assignment Policy

Late assignments are not accepted, unless there are truly extenuating circumstances. Students are permitted exactly TWO (2) late days to use during the semester. Students can use the late days on any assignment or project, and can use both late days on the same assignment, if the student chooses.

Attendance Policy

At the beginning of class, we will hand out a sign-in sheet that will be passed around to the whole class. All students should make sure they sign the sign-in sheet. As per StuCo policy, students are only permitted to miss up to 2 lectures. This includes midterm and final project presentations. On a student's third absence, he or she will be removed from the course. This policy is applied to all StuCo courses, and is not unique to this course.

If a student must miss a class for any excusable reason (sickness, travel, etc.), that student must email someone in the course staff as soon as possible, and it must be before lecture. Otherwise, it will count as an unexcused absence. Excused absences will not count towards a student's removal of the course, but the student is still expected to make up the material he or she missed.


We traditionally use Facebook in place of Piazza or Blackboard as a common space for students to ask questions. It is, by far, the quickest way to reach the course staff, and almost everybody has a Facebook anyways. Students should treat the course Facebook Group like a Piazza and use it to ask questions and search for project teammates. Students can also message the course staff privately for any private questions.

Students should check the course Facebook Group somewhat frequently for announcements, since it will be our main platform for announcing things.