Diploma in Apple Development ๐ŸŽ๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป: Coding One: Lecture 1: Introduction to the Diploma and Coding One unit.
Back to slide index.
๐Ÿ‘‹๐Ÿป Hi!
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.
This is a brand new course, rewritten completely for the Apple Vision Pro and centred around Spatial Computing. I'd love to hear all your feedback - please please please DM me on Instagram with your thoughts, or email me, via my website, or just message me on the CCI Slack. I'm particularly looking out for good YouTube channels, so please share those if you find them.
We are all going to be learning as we go along, so please be patient with me and Xiaowan and each other. We have three headsets to share, so please return them as you receive them from the technical team. We are in the process of organising Tuesday and Friday afternoon Vision Pro try out sessions. Please meet Pete Mackenzie, who is in charge of the technical team here at CCI, he's helping us set up the try out sessions. Pete?
By the end of this lecture, we'll have learnt about:
First, 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.

Next, let's go around the room and re-introduce ourselves, with how you like to be addressed, how you are feeling today and which BA you are on at UAL.

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?

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 Katie Atkinson: k.atkinson@arts.ac.uk. Katie 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's provided an introduction presentation, let's go through it now.
How you can get support around the cost of living crisis - the following article was recently 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 Friday 25th October. 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 on 10 thoughts for the future.
My expectations of you through this year:
Tutorials - every Monday morning. 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. โ›‘ Cassie Robinson's thoughts
  2. ๐Ÿ’€ Chuck Wendig on being a magic skeleton
  3. ๐ŸŒŠ David Bowie on being out of your depth
  4. ๐Ÿ“ธ Yohji Yamamoto on copying
  5. ๐ŸŒ On going slow
  6. ๐Ÿ™‰ Susan Wendell on hearing disabled people
  7. ๐Ÿฆ† A rubber duck

Cassie Robinson's thoughts on what to think about when you make something.

Chuck Wendig on what to remember.
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.
But what are we going to learn?
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.
Other coding resources:
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:
What are we going to make?
You are going to make two apps, a prototype for a caring app in a group in Satial One and a playful app on your own in Spatial Two (with help from me all along the way). You are also going to make your own ML model in ML Two. BTW, the idea of the playful and caring approach comes from this amazing presentation from David Graeber. More about him in a moment.

My aim is to have our final show in the Apple Headquarters in Battersea! I'm working on that as I speak. Would you like to see 2022/2023 cohort, 2023/2024 cohort projects again?

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 8 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, ARKit, Metal and Vision. 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. ML 1 will explore existing Machine Learning models and ML 2 will take you through making new ones.
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, so things are going to change as we go. We might overrun or underrun 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 publically 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.
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.
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
  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. Find/create your Apple ID, so I can add you to our iOS development team at CCI. It's the same email that you use for your Apple TV or Music account.
  9. Read and watch all of The Steve Jobs archive
  10. Watch the David Graeber play and care video before Spatial One on Friday!
  11. A reminder: your next lecture is on Thursday morning at 0930 in room PR_B501-03 with Xiowan-Yi on Machine Learning. Be nice!
  12. See you this Friday, right here, at 0930.
Thanks!
Back to slide index.