Prerequisites — nothing but a Mac

Scenario. You are about to learn iOS development. The very first question is: do you have what you need? The answer is almost certainly yes, and this 5-minute chapter is here to confirm it.


The hard requirement

You need a Mac. That is it.

iOS, iPadOS, macOS, watchOS, tvOS, and visionOS development all require a Mac. This is not negotiable, not because Apple is gatekeeping, but because Xcode — the IDE you will use for everything — runs only on macOS. The Swift language runs on Linux and Windows; the Apple platforms toolchain does not.

Which Mac?

MacVerdict
Any Apple Silicon Mac (M1, M2, M3, M4)✅ Ideal. Buy a refurb if budget is tight.
Intel Mac from 2018 or later✅ Works. Xcode is slower but everything functions.
Intel Mac from 2016–2017⚠️ Works for now, but Xcode 17 will likely drop it. Plan to upgrade.
Intel Mac pre-2016❌ Cannot run the current Xcode.
Hackintosh❌ Possible but not supported; you will hit weird signing bugs. Not worth it.
Cloud Mac (MacinCloud, MacStadium, AWS EC2 Mac)⚠️ Works but expensive. See Phase 10 — fine for CI, painful for daily learning.

[!TIP] Best practice. If you are buying a Mac specifically to learn iOS development, a refurbished M1 MacBook Air from Apple’s refurb store is the best dollar-per-development-experience purchase in 2026. 8 GB RAM is the minimum; 16 GB is comfortable.

Disk space

Reserve at least 50 GB free. Realistic breakdown:

  • Xcode itself: ~12 GB.
  • iOS Simulator runtimes (you will install several): ~5–20 GB.
  • Your Swift Package Manager build caches and DerivedData: 5–10 GB over time.
  • This book’s labs and capstones: 2–5 GB total.

100 GB free is generous and comfortable.

Operating system

You need macOS Sonoma (14) or newer to run Xcode 16. If you are on an older macOS, run Software Update before continuing.


What you do not need

A common pre-flight panic. Let’s dispel it.

  • You do not need an iPhone. The iOS Simulator runs every iPhone model and OS version on your Mac. You will only need a physical device once you start working with hardware-specific features (camera, Bluetooth, HealthKit, NFC, ARKit) — and not before Phase 7.
  • You do not need an iPad, Apple Watch, Apple TV, or Vision Pro. All have simulators.
  • You do not need a paid Apple Developer account yet. It costs $99/year and you only need it when you start deploying to a physical device or the App Store. That is Phase 10. You can do Phases 0–9 entirely free.
  • You do not need to know any other programming language. This book teaches Swift from absolute zero.
  • You do not need a CS degree. The interview-prep chapters (Phase 12) will fill the relevant gaps.
  • You do not need to know Objective-C. It still exists in legacy Apple frameworks and you will see it occasionally — but you will not need to write any in this book.

What you should already know

Almost nothing. Specifically:

  • Basic computer literacy. Find a file. Open a terminal. Read text on a screen. That is the floor.
  • Comfort with English-language technical writing. All Apple documentation is in English.
  • Willingness to type commands into a terminal. Not “expertise” — willingness. You will learn the commands as you go.

If you do not yet feel comfortable opening Terminal.app and running ls, take 20 minutes to skim the macOS Terminal basics. Then come back.


What you need emotionally

This part is honest.

  • Time. Realistic minimum: 5 hours a week for 4–8 months. Less than this and you will forget what you learned between sessions.
  • Tolerance for being confused. You will not understand Optional<T> the first time you see it. You will not understand @Observable the first time. You will not understand certificate signing the first time. Confusion is the work. Push through.
  • A willingness to type things you do not yet understand. Often you will type a line of code without knowing what every word means. That is fine. Understanding follows usage, not the other way around.

[!WARNING] Gotcha. The number one reason adult learners fail at programming is not aptitude. It is the expectation that things will click immediately. They will not. Plan for confusion. Confusion that resolves over a week of typing and re-reading is normal — not a sign you “don’t have the brain for it.”


Lab Preview

Next chapter, Environment setup, is where the typing starts. By the end of it you will have Xcode, Homebrew, mdBook (this book) running locally, Fastlane, and your Apple ID configured for development. About 30–45 minutes including downloads.