Overview
This course emphasizes developing apps for musicians on the iPad. The course will culminate in a final project where students would demonstrate their abilities through developing a number of prototype apps. The class will start with the Objective-C programming language and the iOS SDK. Music theory and music notation will also be emphasized early in the course. Students will learn how to access microphone data and low-level audio features, how to write directly to the display (for real-time rendering of the musical notes), utilize the APIs for storage, WebKit, geolocation, push button notifications, networking, data management, and multitouch. Prerequisites: COMP 40, Music literacy, AP Music Theory, MUSIC 10, 11, 64, or by permission. This course will meet on Tuesdays and Thursdays, 4:30 - 5:45 PM in Granoff 251.
Course Staff
- Instructor: Ming Chow (mchow@cs.tufts.edu)
- Instructor: Paul Lehrman (paul.lehrman@tufts.edu)
- Teaching Assistant: Garth Griffin (gwg@cs.tufts.edu)
News
Lecture Notes and Examples
Syllabus
| Date | Topic | Notes |
|---|---|---|
| Thursday, January 19th | Course Overview and Expectations (PDF) | |
| Tuesday, January 24th and Thursday, January 26th | Objective-C | |
| Tuesday, January 31st and Thursday, February 2nd | Music Theory, Music Notation, and Sheet Music | |
| Tuesday, February 7th | iOS SDK | App 1: The Soundboard |
| Thursday, February 9th | Guest Lecturer: John McCann, Tufts University Department of Music | |
| Tuesday, February 14th | User Interface and User Interaction (continued) | |
| Thursday, February 16th | Testing on Hardware, Gestures | |
| Tuesday, February 21st | Survey of Existing iOS Music Apps (Paul) | |
| Thursday, February 23st | NO CLASS | |
| Tuesday, February 28th | Project Proposals | Music App Group Project |
| Thursday, March 1st | Guest Lecturer: Paul Lamere, Director of Developer Platform at The Echo Nest | |
| Tuesday, March 6th | iOS Development Seminar in Halligan 111B from 3 - 6 PM. Please register at http://tinyurl.com/iOS5dev (it goes to a Google Doc) | |
| Thursday, March 8th | 2D Drawing and Networking | App 2, EXTRA CREDIT: The Echo Nest API Hackathon |
| Tuesday, March 13th | Multiple Views, Tables | |
| Thursday, March 15th | The Accelerometer | |
| Tuesday, March 27th | Data Persistence and Core Data | |
| Thursday, March 29th | Project Check-In | |
| Tuesday, April 3rd | Project Check-In | |
| Thursday, April 5th | Concurrency | |
| Tuesday, April 10th | Nested Views | |
| Thursday, April 12th | Core MIDI Framework | References |
| Tuesday, April 17th | Digital Signal Processing (DSP) and Filters (PowerPoint)
|
Guest Lecturer: Brian Tracey, Research Professor, Tufts University Department of Electrical Engineering |
| Tuesday, April 24th | Performance and Responsiveness Tuning, App-to-Production Preparation (PDF) | |
| Thursday, April 26th | Second Review of Your App | LAST DAY OF CLASS |
| Wednesday, May 9th | Steinway Visit and Final App Presentation | Time: 3:30 - 5:30 PM |
References
Grading
- (20%) 4 - 5 individual programming assignments
- (75%) A team-developed app. Apps must adhere to App Store Review Guidelines.
- (5%) Class participation and subjective factors