iOS DeCal

CS 198 001 - Fall 2017



Week Lecture (Mon) assignment (Wed) Assignments
Wednesday, 9/6 No class (academic holiday) Logistics and Intro to Swift
Mon 9/11
Wed 9/13
Xcode and MVC Xcode Tutorial Swift Playground due
Mon 9/18
Wed 9/20
AutoLayout Drummer
Mon 9/25
Wed 9/27
Multiview Applications Snapchat Clone Navigation Hangman due 9/29 at 10pm
Mon 10/2
Wed 10/4
Table Views and Collection Views Pokedex
Mon 10/9
Wed 10/11
Networking, Cocoapods, Alamofire Project work day
Mon 10/16
Wed 10/18
Firebase Snapchat Firebase Setup Snapchat Clone Part 1 due
Mon 10/23
Wed 10/25
Data Persistance Custom App Proposal Review Custom App Proposal due 10/23
Mon 10/30
Wed 11/1
No class Mid-Semester Review
Mon 11/6
Wed 11/8
AVFoundation, Location, Mapkit Snapchat Camera Snapchat Clone Part 2 due 11/6
Mon 11/13
Wed 11/15
UI/UX and Programmatic Design Custom App Check In and Objective-C
Mon 11/20
Wed 11/22
Advanced Swift (Guest Lecture) No lab
Mon 11/27
Wed 11/29
ARKit and Core ML Custom App Check In 2 and Markdown
Wed 12/6
Fri 12/8
Custom app due Wed 12/6 at noon Final Presentation
Attendance required
Custom App due

Course Staff


Chris Zielinski

Teaching Assistants

Nithi Narayanan
Nithi Narayanan
Jim Bai
Jim Bai
Sarah Chin
Sarah Chin
Sarah Chin
Jack Connolly
Aspen Hsu
Aspen Hsu
Daniel Phiri
Daniel Phiri
Marisa Wong
Marisa Wong
Alex Yang
Alex Yang
Jianglai Zhang
Teddy Zhang


Time / Location

Each week, we will have one lecture and one assignment, with attendance being required for both. assignments will be split up into three sections, which will be assigned on the first day of class.
Lecture: Mondays, 6:30-8:00pm in HP Auditorium
assignment: Wednesdays, 7:00-8:30pm in 310 Soda, 320 Soda, and 210 Wheeler

Course Description

The iOS DeCal was started by Professor Dan Garcia (now our Faculty Advisor) in 2001 as MS-DOS X, a student-run Objective-C course for OS X (and later iOS) development. Rebooted in the Fall 2015 semester, the renamed iOS DeCal now operates with the latest devices (e.g. iPhone, iPad, Apple Watch, Apple TV). By the end of the semester, students will have created a variety of apps, including one entirely of their own design.


30% Projects
35% assignments
35% Final Project

We allow 3 slip days for homework assignments (including hw1 and hw2). You may not use slip days for any custom app related assignment.
Attendance to both lectures and assignments is based on a pass/fail policy. If you have more than 3 unexcused absences, you will not pass the course.

Prerequisites / Requirements

Courses: CS 61A and CS 61B, or equivalent courses (We will be assuming that students are familiar with Object Oriented Programming)

Hardware: A Macbook running OS X Sierra 10.12.4 or later