Skip to content

Lecture slides, wiki and examples from Block 1 of the Creative Coding Institute's 2024/2025 Diploma in Apple Development.

License

Notifications You must be signed in to change notification settings

JGL/DiplomaInAppleDevelopment-2024-2025

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Diploma In Apple Development 2024/2025

Lecture slides, wiki and examples from the Creative Computing Institute's 2024/2025 Diploma in Apple Development 🍎👩🏻‍💻.

Information

  • All term dates - N.B. if you are doing a degree at UAL you are in Higher Education.
  • The Diploma in Apple Development lasts for a full academic year (i.e. from September to June) and is split into two blocks. Block 1 lasts all of the Autumn term (September-December) and the first half of the Spring term (January-March). Block 2 lasts for the second half of the Spring term (January-March) and all of the Summer term (April-June).
  • Location: Creative Computing Institute(CCI), Camberwell, London and online!
  • Led by Senior Lecturer in Creative Computing and Course Leader, Apple Development: Joel Gethin Lewis, who teaches Coding One and Two as well as Spatial One and Two. ML One and Two units are taught by Xiaowan Yi. Contact either of us via the UAL CCI Slack.
  • Weekly schedule:
    • Monday morning: 1030-1300: Slack 1-1 tutorials. For more information and detailed schedule, see the course wiki tutorial page. If your next tutorial is too far away, or you have a more urgent question, please message Joel on the UAL CCI Slack!
    • Monday afternoon: independent study
    • Tuesday morning: 0930-1330, in person at Creative Computing Institute(CCI), Camberwell, London. Room PR_B501F, taught by Joel.
      • Block 1: Coding One: Swift and Swift UI
      • Block 2: Coding Two: Further Apple Frameworks
    • Tusday afternoon: independent study
    • Wednesday morning: independent study
    • Wednesday afternoon: independent study
    • Thursday morning: 0930-1330, in person at Creative Computing Institute(CCI), Camberwell, London. Room PR_B501D, taught by Xiaowan.
      • Block 1: ML One: Introducing Machine Learning with Core ML
      • Block 2: ML Two: Making Models with Create ML
    • Thursday afternoon: independent study
    • Friday morning: 0930-1330, in person at Creative Computing Institute(CCI), Camberwell, London. Room PR_B501F, taught by Joel.
      • Block 1: Spatial One: Individual App Design and Launch
      • Block 2: Spatial Two: Further Apple Frameworks
    • Friday afternoon: independent study
  • You are expected to undertake independent study of about 25 hours per week - spread across all the units of the Diploma in Apple Development.
  • Course Moodle link (UAL access only)
  • Lecture and Workshop slides
  • Please see the course wiki for all non-lecture notes, list of people on the course and other resources.
  • Please email CCI Undergraduate Programme Admin for help with any administrative matters such as ID access, finance, timetable issues, etc. Their email is cci.ug@arts.ac.uk.

Code of Conduct

You can find the UAL Disciplinary Code For Students here: Disciplinary Code For Students.

You can find our code of conduct here: code_of_conduct.md, it was cloned from https://github.com/processing/p5.js/blob/main/CODE_OF_CONDUCT.md.

Golan Levin also offers a useful thought from his children's school:

When communicating, ask yourself:

  • T – is it True?
  • H – is it Helpful?
  • I – is it Inspiring?
  • N – is it Necessary?
  • K – is it Kind?

Course Aims and Learning Outcomes

Course Aims

  • Introduce Apple development as a complementary technical and creative specialism to your main UAL degree.
  • Develop your skills in Swift coding using Apple, tools and frameworks.
  • Develop computational literacies including an ability to describe the technical requirements of Apple development projects with specialist vocabulary.
  • Enhance your ability to work in multidisciplinary digital teams.
  • Develop computational literacies around Machine leaning approaches and functional AI within the Apple ecosystem.

Course Learning Outcomes

  • Produce Apple development outcomes that show both technical and creative accomplishment.
  • Code in Swift and understand the different computational conventions associated with this language.
  • Use Apple development tools to prototype and launch apps.
  • Prototype and pitch software applications and interactive experiences.
  • Understand the opportunities that exist as the intersection of your creative practice and computing.
  • Collaborate and use collaborative tools to develop creative software applications.

Course/Block/Term Structure

As mentioned above, The Diploma in Apple Development is split into two Blocks of teaching. Block 1 takes up the entire Autumn term and half of the Spring term. Block 2 follows on, taking the second half of Spring term and the entire Summer term.

Course Structure Image

Block 1 Structure

Block 1 consists of three units, studied in parallel:

  1. Coding One: Swift and SwiftUI. Drawing on Apple’s "Develop in Swift Fundamentals" curriculum, this unit gives you the opportunity to develop coding skills in the Swift language and introduces the Swift GUI frameworks key to the practice of Apple application development and prototyping. The unit is delivered in weekly coding classes that start with an introduction to coding practice for creatives using Swift. This unit recognises varying levels of coding experience in the diploma cohort and will provide a solid grounding in key computational concepts key to the work in the other units of the diploma. This unit also contains an introduction to assessment via practical exams and tests through formative mock exams and test prior to the final assessment. Unit taught by Joel. Coding One Moodle link (UAL access only). Learning outcomes:
    1. Code application development assets in Swift (Knowledge, Process)
    2. Demonstrate the use of the Swift GUI frameworks for application development (Knowledge, Process)
    3. Use Xcode and online repository tools to collaborate and support your development process and manage your code (Knowledge, Process)
  2. ML One: Introducing Machine Learning with CoreML. The unit is a mix of practical tasks introducing the core Apple Machine Learning (ML) frameworks and seminars that look at emerging practice across the arts and creative industries that employ some level of artificial intelligence. This unit also critically and ethically explores ML and its potential impact on culture and society. From this exploration you will use your new understanding of ML methods and your critical framework to develop ML applications on the Apple platform. Unit taught by Xiaowan. ML One Moodle link (UAL access only). Learning outcomes:
    1. Describe how machine learning works in practice (Knowledge)
    2. Discuss artificial Intelligence as a cultural concept (Enquiry)
    3. Construct applications with the CoreML framework (Process)
  3. Spatial One: Team App Design, User Experience Research and Rapid prototyping. Drawing on Apple’s "Develop in Swift Explorations" curriculum, this unit explores the process of designing apps for the visionOS platform and introduces UX methodologies, collaborative development approaches and high-fidelity prototyping using Apple tools. From this exploration you will be able to move from initial wireframes to interactive prototypes that make use of the affordances of the Apple platform and serve your intended users well. This unit will include an introduction to the history of Spatial Computing. This unit also includes an introduction to concepts of inclusivity and ethical practice within the design of digital systems as well as an introduction to assessment via design presentation through formative presentations prior to the final assessment. Unit taught by Joel. Spatial One Moodle link (UAL access only). Learning outcomes:
    1. Describe and communicate an visionOS app concept (Knowledge, Communication)
    2. Employ relevant methods of user research (Enquiry, Process)
    3. Produce visionOS application prototypes (Realisation)

Block 2 Structure

Block 2 consists of three units, studied in parallel:

  1. Coding Two: Further Apple Frameworks. This unit explores further Apple frameworks for developing on visionOS. With this introduction you will be able to create engaging experiences on the visionOS platform and explore some of the advanced features of the Apple platform such as RealityKit, ARKit and Vision. Unit taught by Joel. Coding Two Moodle link (UAL access only). Learning outcomes:
    1. Identify how games are developed on visionOS (Process)
    2. Employ game development tools and frameworks for visionOS (Enquiry)
    3. Demonstrate foundational concepts of app design (Knowledge)
  2. ML Two: Making Models with CreateML. This unit explores the creation of bespoke Machine Learning models using Apple tools and specifically the CreateML framework. You will explore common ML and AI methods building from scratch functional ML prototypes rather than relying on ones pre-supplied by Apple. This is to give you a functional understanding of the data requirements of ML models, the use of computer vision systems and the process converting models to the Apple platform. The unit will also introduce you to ways of evaluating your models for potential issues of bias and discrimination. Unit taught by Xiaowan. ML Two Moodle link (UAL access only). Learning outcomes:
    1. Describe how to build ML models (Knowledge, Communication)
    2. Demonstrate how to use the CreateML framework (Process)
    3. Describe approaches to evaluate your model for bias and discrimination (Enquiry)
  3. Spatial Two: Individual App Design and Launch. In this unit you will develop the app concept for Apple’s visionOS. This will give you both an understanding of the development process using the standard Apple development tools and build on your Swift learning in an applied context. This unit will also introduce content creation methods for visionOS - including scene creation in Reality Composer Pro and photogrammetry to create 3D content for your apps from real world objects and spaces. The aim of the unit is to expose you to the full App development process including launching on the Apple App Store. Unit taught by Joel. Spatial Two Moodle link (UAL access only). Learning outcomes:
    1. Describe what makes a successful app (Knowledge, Process, Communication)
    2. Describe the process of launching on the Apple App store (Enquiry)
    3. Solve common development problems in app production (Realisation)

Assessment

UAL-wide assessment criteria

Please read UAL's guidance for students on how they will be assessed. TLDR: you will be assessed on the following 5 assessment criteria (quoting from UAL's page):

  1. Enquiry
    • Enquiry is about active learning and reflection. It’s how you explore, research and learn about your subject. Enquiry is central to all creative learning at UAL.
  2. Knowledge
    • Knowledge is about gathering information and enhancing understanding. It’s how you inform your work, explore diverse cultures and connections and appreciate what you do in a wider context.
  3. Process
    • Process is about your journey of learning. It’s how you take risks and experiment. And how you keep the creative momentum going — developing ideas from start to finish.
  4. Communication
    • Communication is about telling the story of your learning and making. It’s how you share your learning with an audience, presenting and explaining your work to different people.
  5. Realisation
    • Realisation is about the work you create and how this reveals what you’ve learned. It’s taking a look back and evaluating the work you’ve produced.

Block 1 Assessment

  • Coding One: Swift and SwiftUI:

    1. Multiple Choice Test: students will be presented with a series of questions relating explicitly to course content. They must choose between up to 4 potential correct answers per question. Test will be sat on Tuesday 21st January 2025, 1000-1200, duration two hours. This test will be worth 50% of your overall unit mark.
    2. Practical Exam: students will be individually asked to write a basic program to demonstrate the application of creative coding to a set problem. Exam will be sat on Tuesday Tuesday 28th January 2025, 1000-1200, duration two hours. This exam will be worth 50% of your overall unit mark.
  • ML One: Introducing Machine Learning with CoreML:

    1. Multiple Choice test: students will be presented with a series of questions relating explicitly to course content. They must choose between up to 4 potential correct answers per question. Test will be sat on Thursday 23rd January 2025, 1000-1200, duration two hours. This test will be worth 50% of your overall unit mark.
    2. Presentation: You will give a presentation around a Apple ML model to your peers and the upload of the ‘slide deck’ from the presentation. Presentation will be given on Thursday 30th January 2025, 1000-1300, duration 30 minutes. This presentation will be worth 50% of your overall unit mark.
  • Spatial One: Team App Design, User Experience Research and Rapid prototyping:

    1. Presentation: You will present your creative work to your peers and upload the 'slide deck' from the presentation. Presentation will be given on Friday 31st January 2025, 1000-1300, duration 30 minutes. This presentation will be worth 100% of your overall unit mark.

Block 2 Assessment

  • Coding Two: Further Apple Frameworks:

    1. Multiple Choice test: students will be presented with a series of questions relating explicitly to course content. They must choose between up to 4 potential correct answers per question. This test will be sat on TBC, duration two hours, 1000-1200. This test will be worth 50% of your overall unit mark.
    2. Practical Exam: students will be individually asked to write a basic program to demonstrate the application of creative coding to a set problem. This exam will be sat on TBC, duration two hours, 1000-1200. This exam will be worth 50% of your overall unit mark.
  • ML Two: Making Models with CreateML:

    1. Multiple Choice test: students will be presented with a series of questions relating explicitly to course content. They must choose between up to 4 potential correct answers per question. This test will be sat on TBC. This test will be worth 50% of your overall unit mark.
    2. Presentation: You will give a presentation around a bespoke ML model to your peers and upload the ‘slide deck’ from the presentation. This presentation will be given on TBC, duration 30 minutes, 1000-1300. This presentation will be worth 50% of your overall unit mark.
  • Spatial Two: Individual App Design and Launch:

    1. Presentation: You will present your creative work to your peers and upload the 'slide deck' from the presentation. This presentation will be given on TBC, duration 30 minutes, 1000-1300. This presentation will be worth 100% of your overall unit mark.

Finally, some tips about how to get the best grades possible:

  • Showing references to where you got information from.
  • Do more than is requested in the brief.
  • Make it personal! Add your own graphics, text or other elements to make an app that only you could make. Make apps that you want to use.

Counselling, Health Advice and Chaplaincy information

Support is available! Complete the team's online form to request support for your physical health, mental health or wellbeing. Appointments are available on college sites in person, online or on the phone.

See: https://www.arts.ac.uk/students/student-services/counselling-health-advice-and-chaplaincy for more information.

Student parent and carer support

Support is available! UAL seeks to create an inclusive environment that is welcoming to parents, carers and their children. UAL’s definition of parenthood includes:

  • Expectant parents
  • Pregnancy
  • Fertility treatment
  • Fostering
  • Baby loss
  • Adoption
  • Abortion of a pregnancy
  • Parents and carers of children

UAL’s definition of caring responsibilities adopts the definition from The Carers Trust UK, which defines a carer as “anyone who cares, unpaid, for a friend or family member who due to illness, disability, a mental health problem, or an addiction cannot cope without their support.”

See: https://www.arts.ac.uk/students/student-diversity/student-parent-and-carer-support for more information.

Disability Service information

The Disability Adviser for Creative Computing Institute is Katie Atkinson. Their contact details are k.atkinson@arts.ac.uk. All appointments are confidential, and can be in-person, on the phone, or on Microsoft Teams. You can also call 020 7514 6156 or email disability@arts.ac.uk.

All appointments are confidential, and can be in-person, on the phone, or on Microsoft Teams.

Who can access support

The Disability Service support students who are disabled according to the Equality Act 2010. This includes students with:

  • Specific Learning Differences (e.g. dyslexia, ADHD)
  • Long-term health conditions
  • Long-term mental health conditions
  • Sensory impairments (e.g. deaf, hard of hearing, blind, visually impaired)
  • Physical impairments
  • Autism
  • Another long-term condition which has an impact on your day-to-day life

Support may include

  • An Individual Support Agreement, which lets your course know practical information about how to support you.
  • Adjusted Assessment, such as additional time for certain assignments, or an alternative submission method.
  • Specialist one-to-one support, which can support with essay writing, research, presentations and time management.
  • Support to apply for Disabled Students’ Allowances, which can fund software and one-to-one support for your studies.
  • Screenings and assessments for Specific Learning Differences.

More information is available at: https://www.arts.ac.uk/students/student-services/disability-and-dyslexia

Library Service Information

The Librarian for Creative Computing Institute is Benelia Salmon. Her email address is b.salmon@arts.ac.uk. She's also on the CCI Slack. You can find all sorts of useful library information here: https://arts.ac.libanswers.com.

Thanks

Thanks 🙏🏻 to Xiaowan Yi, Eric McIntosh, Joy Forbes, Pete Mackenzie, Toad Bakery, Abbie Vickress, Laura Knight, Rocio Rey Aloe, Becca Rose, Naho Matsuda, Cheska Lotherington, Véronique Bolhuis, Brenda Brierley, Lukas Alperowitz, Lise Hansen, Filippo Romeo, Herman Ho, Val Toro, Murad Khan, Matthew Plummer Fernandez, Alex Fefegha, Anna Troisi, Ben Kelly, Cathy Hoste, Charlotte Webb, Julia Makivic, Kenneth Lim, Matt Jarvis, Melisa Simpson, Rebecca Fiebrink, Sheldon Brown, Tom Lynch, Eva Wilkinson, Vali Lalioti, Indira Knight, Alice Stewart, Ben Stopher, Mick Grierson, Georgina Capdevila Cano, Alan Warburton, Rebecca Ross, Jaap de Maat, Lauren McCarthy, Kyle McDonald, Jonathan Harris, Zach Lieberman, Jessica Bland, Rick Walker, Graham Bennett, Toby Milner-Gulland, Liam Walsh, Golan Levin, Greg Smith, Mark Lundin, Xiaohan Zhang, Lia, Joshua Goldberg, Rosa Menkman, Daniel Shiffman, Tega Brain, Caitlin Morris, Harri Lewis and Rune Madsen.

🖖🏻🇬🇧🏴󠁧󠁢󠁷󠁬󠁳󠁿🏴‍☠️🏳️‍🌈🏳️‍⚧️