iOS Decal

iOS Decal

Fall 2021

Week Lecture Lab Assignments
Sep 6 - Sep 13 Swift Basics
Sep 13 - Sep 20 Xcode and the View Lifecycle Lab 1: Swift Basics
Sep 20 - Sep 27 Autolayout & Programmatic Constraints Lab 2: View Lifecycle
Sep 27 - Oct 4 MVC Architecture and Reusable Views Lab 3: Snapchat Login
Oct 4 - Oct 11 Delegation, Table Views & Collection Views Buffer Project 1: Hangman
Oct 11 - Oct 18 Core Data Lab 4: Todo List
Oct 18 - Oct 25 API Integration Lab 5: Score Setup Project 1 Due
Oct 25 - Nov 1 Buffer Buffer Project 2: Score
Nov 1 - Nov 8 TBA Sampler Lab 1
Nov 8 - Nov 15 TBA Sampler Lab 2 Project 2 Due
Nov 19 - Dec 5 TBA Sampler Lab 3 Final Project

Course Staff

(Contact course staff by reaching out on LinkedIn or emailing



Course Info


The iOS Decal is a fun, fast-paced course teaching introductory application programming for iOS devices.

Each week, we'll have two class meetings -- one lecture and one lab. During lab, students will work on a mini-assignment relating to the content taught during that week's lecture. By the end of the semester, students will have gained concrete experience using countless Apple frameworks, application types, and 3rd party libraries in order to developed a custom app of their own which they present as their final project.


Zoom Meeting Room


Each week, we will have one lecture and one lab office hours. Lecture attendance is not required as they will be presented asynchronously. Recordings will be posted to the course website. Lab attendance is not required, but is intended for students to receive help and have their questions answered.

Prerequisites/ Requirements

  • Courses: CS 61A (prior) and CS 61B (prior or concurrent). We will be assuming that students are familiar with essential programming skills such as for-loops, recursion, object-oriented programming, etc.
  • Hardware: MacBook running macOS 10.14.3 (Mojave) or later. Older laptops may run into performance issues during development but being able to run Xcode 12 is the only requirement. Devices from mid-2012 and newer should be fine.


  • Labs (30%): Labs will be small, self-contained assignments designed to reinforce lecture material. Only 5 need to be completed for full credit. Labs will be graded on effort and completion.
  • Projects (40%): Projects will be an opportunity to fill out major features of an app. Projects will be graded on completion & correctness.
  • Final Project (30%): The final project will be a 4-week effort culminating in the completion of an App-Store ready product. The final project will be graded on effort and completion.
Do not stress about this course! Please let us know if you're feeling overwhelmed or lost, we will be happy to grant extensions & provide further support!

Course Advisor

Dan Garcia
2001 - current

Former Facilitators

Michael Zhu
sp '20
Aneesh Konda
sp '20
Jackson Chui
fa '20
Arman Vaziri
fa '20
Lauren Go
fa '20
Nikhil Yerasi
fa '19, sp '20
RJ Pimentel
sp '19, fa '19, sp '20
David Xiong
David Xiong
sp '19, fa '19, sp '20
Nithi Narayanan
sp '18, fa '18
Daniel Phiri
sp '18
Chris Zielinski
Chris Zielinski
fa '17, sp '18
Paige Plander
sp '17, fa '17, sp '18
Akilesh Bapu
sp '17
Lucy Xiao
fa '16
Gene Yoo
fa '15, sp '16
Shawn D'Souza
fa '15, sp '16
Hosted by the OCF
We are a student group acting independently of the University of California.
We take full responsibility for our organization and this web site.