In a groundbreaking first, Apple at this year's WWDC conference in June published an iTunes U course that provides educators with first party tools to teach the Swift programming language to high school students.
As CEO Tim Cook highlighted during the keynote, student interest in developing for the iOS platform has continued to grow over the past few years. At last year's WWDC, the youngest developer to win a student scholarship to the developer conference was 13 years old, and this year Cook noted that the youngest developer was 12 years old. For high school iOS instructors, this momentum is exhilarating.
However, until now those in the field have lacked a common set of learning outcomes, curriculum sequence and set of projects to use in teaching students how to develop apps. "Teaching App Development with Swift for High School Instructors" will prevent teachers from having to reinvent the pedagogical wheel and provide standardization in Swift programming instruction, which will benefit the entire developer community.
As an educator, I can't overstate how significant this is for me and other teachers who have been putting curriculum together from scratch. With this new course, Apple has systematized and provided materials for various aspects of app development, and all of those resources are now available to anyone for free.
Lesson plans, project files and GitHub sample code will now all be conveniently located in the iTunes U section of iTunes on the Mac or in the iTunes U app on iOS. And because it is an official Apple course, both teachers and students can be confident that best programming practices will be emphasized.
Reflecting the most successful trends in S.T.E.M. (science, technology, engineering and math) education today, this course has been designed around a pedagogical method known as "project-based learning." The curriculum is divided into five levels of instruction, with each aimed at a different and specific learning outcome.
Each level has several projects from which instructors can choose according to their own particular class needs. At the end of the course — designed to be taught in one semester over 15 weeks — students will be able to achieve 10 specific learning outcomes, from defining basic terminology to building a fully functional iOS app written in Swift. These goals are progressively achieved as students progress through each level's projects, which each have dedicated lessons that are designed to teach particular concepts through hands-on learning with Xcode.
In adfition, the lessons and exercises support particular College Board AP Computer Science standards as well as the ACM Computer Science Teachers Association.
Apple's course assumes that the teacher is familiar with building basic iOS apps and is comfortable with Swift. It also assumes that students have had some experience with object-oriented programming, such as Java, Python, or C++. Students are not, however, required to have prior experience with Swift. Yong Bakos, Professor of Computer Science at Southern Methodist University, is the iTunes U instructor.
Apple's release of a high-school focused iOS app development curriculum for Swift dovetails with its more recent educational partnership with IBM and signals that Cupertino is not only strengthening its commitment to student education, but ensuring that high school iOS teachers are well-equiped to train the next generation of developers.