Diploma in Apple Development ๐ŸŽ๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป: Coding 1: Lecture 1: Introduction to the Diploma and Coding One unit.
Back to slide index.
๐Ÿ‘‹๐Ÿป Hi! I'm Joel. My pronouns are he/him. I'm 45 and I live in London near Epping Forest with my fiancรฉe Jess and cat Dave.
If any of you have any questions at any time, just put your hand up and ask them. No such thing as a stupid question - I guarantee that others will be thinking the same thing!
Welcome to the Creative Computing Institute!
Welcome to the Diploma in Apple Development ๐ŸŽ๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป!
Before we begin, I wanted to announce that you are all worms now! Apple worms that is! ๐ŸŽ๐Ÿชฑ. I want you to burrow inside of Apple over the next year and make beautiful things.
We are all going to be learning as we go along, so please be patient with me and each other. We have three headsets to share, so please return them as you receive them from the technical team - charged please! With that in mind, please meet Pete Mackenzie, who is in charge of the technical team here at CCI. Pete?
Thanks Pete! Before I continue this lecture, I'd like to introduce Bella Bacon and Elsa Farmer, last year's two course representatives for the Diploma in Apple Development. Bella, Elsa, what would you tell these students knowing what you know now? Worms, what questions do you have for Bella and Elsa?
By the end of this lecture, we'll have learnt about:
The lecturers on the Apple Diploma
There are two lecturers on the Apple Diploma, me and Xiaowan-Yi. She'll be teaching you all about Machine Learning (ML). Let's go through my website and Xiaowan's.
Let's go around the room and introduce ourselves. Please say how you'd like to be addressed, what course you are coming from and what you are interested in making this year.
A vibe check.
Now it's time for a vibe check. I'm going to make a commitment to be here in person all day, every Tuesday and Friday, ready to start at 0930. I'd like you to make the same commitment too (for Thursdays too!) - to each other as much as to me. We all have different needs and different commutes. Is it possible? Let's talk it over. Why might it be hard to get in at 0930?
What people have made on this course before.
Let's take a look at the results of the last three years of the Apple Diploma, from the end of year shows:
A discussion about cringe.
Next, I saw this Instagram post over the summer. Let's watch it. Any thoughts?
Are you all on the CCI Slack? If so, let's move on to confirming your attendance in this class! This will be your responsibility to do in every class that you attend. If you miss classes, you will be contacted by the CCI admin team. This is important not just for your learning, but most importantly for your welfare.
  1. Download the Seats Mobile app from the iOS app store.
  2. Login with your UAL ID.
  3. Say yes to all the permission requests - notifications, Bluetooth (make sure it's turned on) and location.
  4. Then you should be able to simply check in.
  5. If you get stuck, message me on Slack for Student Guide or a video guide.
Let's take a look at the Diploma homepage, GitHub readme.md and finally the GitHub wiki. Please send me your GitHub ID's on Slack and I'll add you to the GitHub, so that you can edit your own introduction. Don't forget to find your Wu-Tang name! I'll demonstrate how to do that now. Is everyone on Slack? Where would you go to find out how to get on it if you aren't already?
This is a brand new course, rewritten completely for the Apple Vision Pro for the second time this summer and centred around Spatial Computing. I'd love to hear all your feedback - just message me on the CCI Slack. I'm particularly looking out for good YouTube channels, so please share those if you find them.
How to make use of the Disability services at CCI. You'll have already seen this on the GitHub readme.md. Don't wait until to your Masters to get support like I did. Support is available - make use of it, you'll be glad you did. Our main contact for the Apple Diploma is Caroline Huntley: c.huntley@arts.ac.uk. Last year's disability advisor, Katie Atkinson, has prepared a short 3 minute video, let's watch it together now.
How to make use of the Library services at CCI. You'll have already seen this on the GitHub readme.md - but I just wanted to say that Benelia is amazing! Make use of the library - you'll be glad you did. She'll be taking you on a tour of the library at 1400 (2pm)next Tuesday 7th October - do you all know where the library is?
How you can get support around the cost of living crisis - the following article was posted by UAL management. If you are finding it tough, financially, physically, mentally or psychically, please don't hesitate to get in contact with me directly or the UAL student advice service. They are great. The sooner you ask, the more support we can give. Don't suffer in silence. London can be a lonely place. The hardship fund is something I'd recommend applying to if you even think you might need extra support. The support team at UAL have made an intro video, let's watch it together now.

Are any of you interested in becoming the course rep? We must recruit two as soon as possible. Who's interested? Slack me if you are - great for your CV. No voting, just volunteering.

This is the link to register, but please DM me on Slack first. The deadline for nominations is Wednesday 15th October 2025. The course rep team asked me to say: "they will be asked to "purchase" a Course Rep membership on our website (but don't worry, it's free!)".

As a break, a presentation I gave recently for Eye Magazine on "Code is dead (long live code!)".
My expectations of you through this year:
Tutorials are every Monday morning from 1030-1300 on the CCI Slack. They are 20 minutes long and can be about anything you like - the course, how you are, challenges you are having, ambitions, career advice, music selections. Whatever you like. I've got over 20 years of experience doing interesting things with computers, so make use of that! Let's look at the schedule for next Monday and the one after.
Important methods for succeeding on this course (and in general)
Some things to keep in mind:
  1. ๐ŸŒŠ David Bowie on being out of your depth
  2. ๐Ÿ“ธ Yohji Yamamoto on copying
  3. ๐ŸŒ On going slow
  4. ๐Ÿ™‰ Susan Wendell on hearing disabled people
  5. ๐Ÿฆ† A rubber duck
Just a little out of your depth is the right place to be.
Yohji Yamamoto is right. Copy what you love!
Just try. As soon as you try you are way ahead of most other people.
Susan Wendell wrote powerfully about disability and feminism. What explosion of knowledge could you make with your life?
Rubber duck debugging is a very powerful technique.
My Background
๐Ÿด๓ ง๓ ข๓ ท๓ ฌ๓ ณ๓ ฟ Wales and being bored.
๐Ÿค– 1997 and Neuromancer/OK Computer/Blade Runner.
โœจ Imperial and Star Wars.
โฐ Royal College of Art and being earlylate.
๐Ÿ‡ฎ๐Ÿ‡น Fabrica and not starving.
๐Ÿ” UnitedVisualArtists and feedback loops.
๐Ÿ“– Hellicar&Lewis and open source.
๐Ÿง˜๐Ÿปโ€โ™€๏ธ Teaching and psychic load and meditation.
๐Ÿ‘ฏโ€โ™€๏ธ Universal Everything and people not projects.
What is the Creative Computing Institute (CCI)?
What you are we going to learn in this next year?
We are going to learn about Creative Computing - a blend of Computational Thinking and Creative Coding.
What is Computational Thinking?
Look it up! What did you find?
What is Creative Coding?
I believe all coding is creative, as all life is creative. Specifically, creative coding is about blending creative techniques with software engineering. I want you to learn how to write code but also how you could use computing to change your practice. You can make lots of earth credits writing software, but I'm much more interested in giving you the tools to change yourself, your practice and the world.
Next, a really important diagram.
Jim Campbell's formula for Computer Art. Realise that you can use things without understanding every aspect of them. All that computers do is process inputs into outputs. That's it.
What are we going to learn? What are we going to make? How?
We are going to learn Swift, which is one of the most top paying programming languages in the world as well as audience of over 1.5 billion devices. But it isn't about the money, it's about the impact. I want you to realise that your apps have just as much of a right to be on the home screen as anyone else's. Also, you are going to be amongst the first students in the world to be trained in making apps for the Vision Pro and learning about Spatial Computing.
But What are we going to make? How?
Before we get into that, let's take a look at this article from 2019 from Allen Pike: "The Coming Supremacy of AR".
We are going to make apps for the Apple Vision Pro. We are going make apps by writing code using the Swift programming language. We are going to use Xcode to write Swift and we are going to use Reality Composer Pro to import and author spatial content - images and text and sound and 3D objects. Reality Composer Pro makes spatial content using the Universal Scene Description format (originally from Pixar). We are going to use SwiftUI to build user interfaces for spatial apps and RealityKit to add spatial content to the world around us. We are going to use poly.cam and Blender to make 3D objects. We are going to use ARKit to make anchors for spatial content - hands, images, objects, floors, ceilings, walls and rooms.
Here is a great example of how quickly you can make things with Reality Composer Pro, from Greg Wieber, who also has a great YouTube channel.
You are going to make two apps, a prototype for a caring app in a group in Spatial 1 and a playful app on your own in Spatial 2 (with help from me all along the way). You are also going to make your own ML model in ML 2. BTW, the idea of the playful and caring approach comes from this amazing presentation from David Graeber. More about him in a moment.
We are going to be building apps for visionOS, the operating system of the Apple Vision Pro. Let's take a look at the resources we'll be working through this year: https://developer.apple.com/documentation/visionos.
The aim is to not make this vision of a hyper-reality future come true. The film was made 9 years ago(!) by Keiichi Matsuda. He's a critical designer who has founded a studio called Liquid City. What does Critical Design mean to you?
Apple Vision Pros are pretty large at the moment, with only two hours battery life. Things are going to move fast, see this paper from the team at the Stanford Computational Imaging Lab.
While not part of the course, consider entering The Swift Student Challenge - previous prizes have included a trip to Apple headquarters to see the next World Wide Developers Conference.
There are three units in each Block, lasting half the academic year. Coding, Spatial and ML. Coding 1 will teach you how to write in Swift and make apps using SwiftUI. Coding 2 will continue that process, learning more APIs from Apple, including more SwiftUI, RealityKit and ARKit. Spatial 1 will take you through making a prototype app in a group, learning RealityKit along the way. Spatial 2 will take you through making a full app on your own, learning even more RealityKit and ARKit. ML 1 will explore existing Machine Learning models and ML 2 will take you through making new ones.
The Coding units will be taking a bottom-up approach and the Spatial units will be taking a top-down approach. Does anyone know what that means? Let's see what Wikipedia has to say about it.
Each of my lectures will be structured in the following way: Each hour will be a therapeutic hour - has anyone heard of that before? Apparently Freud didn't invent it. We'll take 10-15 minutes at the end of each hour as a break - a comfort break or whatever you like.
When learning to code and make apps for a brand new platform, there will always be a chicken and egg problem. Meaning I can't teach you everything at once, so sometimes you'll have to take what I say on trust, knowing that we will return to flesh out the details later. As I said before, this is a brand new course, revised for the first time over this summer, so things are going to change as we go. We might over or under run on lectures, I'll keep things up to date from week to week, please be patient with me!
I'd really suggest keeping a diary of your progress and learnings along the way. You could store this information on your GitHub page - ask me how to do this in a tutorial if you are interested. Talking about what you've learnt and sharing that publicly is a great way of proving you know what you say you can do and a great way of getting a job. Here are two great GitHub pages that do just that: https://github.com/bluekamandy/SwiftUI-Cheat-Sheet and https://github.com/bluekamandy/Exploration-of-ARKit. Let's take a look at Blue's homepage. Look at where they are working now. Another person who is great at this is Matt Webb, let's take a look at his homepage and recent projects. I also recommend watching his Things 2024 lecture - it's a brilliant 30 minutes of showing experiments instead of his "thought leadership" - incidentally this is exactly how they do things at Apple - no "vision" only prototypes. Why is this better?
Remember, my main aim is to turn you all into autodidacts that can learn anything for themselves in order to make whatever they want to make. Most of all, I want you to support each other.
Some situating yourself in the world resources:
We are in a stressful time at the moment. Here are some resources for situating yourself in the world, and how to keep going, set up a studio (if you want) and what you (maybe) should be doing:
Some brain exploding resources:
The key milestones of the year are the end of Block One and the end of Block Two. That's when we'll have assessment. The first half of the year will be all about making an app prototype in a group and the second half of the year will be all about making an app for release on your own. We'll have an end of year show with the rest of CCI and a presentation at the Apple UK headquarters at Battersea!
What questions do you have for me?
To finish with, let's watch this brilliant video: "Austin's Butterfly: Building Excellence in Student Work".
Homework, all the homework from the Welcome lecture and some extra parts:
  1. Book in for an Apple Vision Pro demo at the Apple store nearest to you - it's free! 30 minutes and well worth it.
  2. Install Xcode on your computers.
  3. Install Apple Books on your computers and iPhones.
  4. Install the Developer app on your computers and iPhones - it's really helpful for downloading Apple Developer videos to your phone to watch while you are commuting!
  5. Install the Slack app on your computers and iPhones (the app, not the web app)
  6. Sign up for a free account on GitHub - use a non UAL email so you can keep the account after you graduate
  7. Read and watch the GitHub and GitHub wiki resources provided on the Apple Diploma Wiki.
  8. Slack me your UAL email, so I can add you to our iOS development team at CCI. All UAL emails are now Apple IDs too!
  9. Read and watch all of The Steve Jobs archive
  10. Watch the David Graeber play and care video before Spatial 1 on Friday!
  11. A reminder: your next lecture is on Thursday morning at 0930 in room PR_B501-03 with Xiaowan-Yi on Machine Learning. Be nice!
  12. See you this Friday, right here, at 0930.
Thanks!
Back to slide index.