๐ The 100 Days of Swift: Your Beginner’s Journey to iOS Mastery
Welcome to your first step toward becoming an iOS developer! Whether you’re new to programming or have tried and failed before, the 100 Days of Swift is designed to guide you, motivate you, and get you building real-world apps โ all in just 100 days. Crafted by Paul Hudson and hosted on Hacking with Swift,…
Welcome to your first step toward becoming an iOS developer! Whether you’re new to programming or have tried and failed before, the 100 Days of Swift is designed to guide you, motivate you, and get you building real-world apps โ all in just 100 days.
Crafted by Paul Hudson and hosted on Hacking with Swift, this free, beginner-focused curriculum mixes daily Swift tutorials, iOS projects, tests, and review sessions. Itโs your structured path to building confidence and skill in Swift programming and UIKit app development.
๐ก Want to learn SwiftUI instead? Consider the newer 100 Days of SwiftUI for a modern take on Swift app building.
๐ Course Philosophy: Learn by Doing, Every Single Day
The formula for success is simple:
- 1 hour of Swift learning every day โ read, code, or watch videos.
- Share your journey daily โ tweet, blog, post, or document your progress publicly.
This consistency fuels momentum and builds a habit of learning. The rest? Taken care of for you.
โ Success Tips from Paul Hudson
Hereโs how to maximize your learning throughout the course:
- ๐ข Pace yourself: Donโt sprint. Build strong fundamentals.
- ๐ธ Avoid shiny object syndrome: No need to jump into paid courses.
- ๐งโ๐คโ๐ง Stay connected: Ask for help! Tweet @twostraws with questions.
- ๐ง Use consolidation days: These let you review, reinforce, and reflect.
- ๐ Bookmark the Swift Glossary: Itโs a goldmine of definitions.
- ๐ฒ Download Unwrap App: Learn on iPhone or iPad with quizzes and exercises.
๐๏ธ The 100-Day Roadmap
Each segment focuses on hands-on projects, punctuated by review milestones to solidify your skills. Letโs break it down:
๐ Days 1โ12: Swift Fundamentals
Start with the building blocks of Swift using quick videos and quizzes.
Day | Topics |
---|---|
1 | Variables, strings |
2 | Arrays, dictionaries, sets |
3 | Operators, conditions |
4 | Loops |
5 | Functions, parameters, errors |
6โ7 | Closures |
8 | Structs, methods |
9 | Access control, static properties |
10 | Classes, inheritance |
11 | Protocols, extensions |
12 | Optionals, typecasting |
๐ Days 13โ15: Swift Consolidation I
Refine your understanding and revisit tricky parts.
๐ฑ Days 16โ22: Your First iOS Apps
Build simple apps using UIKit and your new Swift knowledge.
Project | Focus |
---|---|
1 | Basic app layout |
2 | Interactive app |
3 | Data and logic integration |
๐ Day 23: iOS Milestone I
Review Projects 1โ3. Debug, reflect, and polish.
๐ Days 24โ31: Web Views, Auto Layout, and Input
Dive deeper with three new apps that explore:
- WebKit
- Alerts
- User input forms
- Auto Layout
๐ Day 32: Milestone II
Projects 4โ6 wrapped and reviewed.
๐ก Days 33โ40: Networking & Multithreading
Explore:
- Codable for decoding JSON
- DispatchQueue and GCD
- Asynchronous code
๐ Day 41: Milestone III
Time to reflect on Projects 7โ9.
๐ฎ Days 42โ49: Games & Grids
New interfaces and game logic using:
UICollectionView
SpriteKit
- Saving user data
๐ Days 50โ51: Milestone IV + Expansion
Review Projects 10โ12 and get introduced to new ideas.
๐จ Days 52โ58: Animations & Core Image
Learn:
- Image manipulation
- Animation
- UIKit dynamics
๐ Day 59: Milestone V
Projects 13โ15 in review.
๐บ๏ธ Days 60โ65: Maps and Debugging
Master:
MapKit
- Breakpoints and LLDB
- Debugging strategies
๐ Day 66: Milestone VI
Reflect on Projects 16โ18.
๐ช Days 67โ73: Advanced Challenges
Build powerful tools and handle complexity like a pro.
๐ Day 74: Milestone VII
Review Projects 19โ21.
๐ฐ๏ธ Days 75โ81: Beacons and UI Effects
Dig into:
- iBeacons
CoreLocation
- Bezier paths and animation
๐ Day 82: Milestone VIII
Projects 22โ24 review.
๐ Days 83โ89: Multipeer and Motion
Explore peer-to-peer connectivity and motion sensors.
๐ Days 90โ91: Milestone IX + Redux
Recap Projects 25โ27, and reinforce Core Graphics.
๐ง Days 92โ98: Performance, Face ID, and Mixing Frameworks
Advanced topics:
- Face ID authentication
- SpriteKit + UIKit integration
- Instruments for performance tuning
๐ Day 99: Final Milestone
Review Projects 28โ30, then prep for your final challenge.
๐ Day 100: Final Exam + Epilogue
The ultimate test of your skills! Take the final exam and reflect on your journey. Youโre now ready to explore the next frontier of iOS development.
๐งญ Where to Go From Here?
Now that youโve completed the challenge, here are some paths forward:
- ๐ 100 Days of SwiftUI
- ๐ป Build your portfolio with advanced UIKit
- ๐จโ๐ซ Contribute to open-source Swift projects
See also
- ๐ฑ Swift Language Guide โ Appleโs official reference
- ๐งฉ UIKit Documentation โ Appleโs legacy framework for building UI
- ๐งช Swift Playgrounds โ Learn Swift interactively on iPad or Mac