NEW: Join my free 100 Days of SwiftUI challenge today! >>

Hacking with iOS

Join over 55,000 readers today

Airbnb Apple BBC Cisco eBay GitHub Google IBM Intel Microsoft Nike Salesforce

Master SwiftUI and UIKit with one course

Includes free updates for Swift and SwiftUI – click to read my update policy

Hacking with iOS was designed for absolute beginners who want to learn Swift 5.1 and iOS development with real-world, practical projects. The e-book contains the same projects you can read online, but it's ad-free and available as PDF, ePub, and Kindle. Plus, you get exclusive bonus content: a Swift Quick Tips wall chart, the offline guide book with revision notes and exercises, plus an Xcode tips and tricks video!


100% iOS 13

You can always be guaranteed you're learning the latest, greatest Apple technologies because all my tutorials are written for iOS 13.

100% SWIFT 5.1

Don't waste time with out of date tutorials – here you can learn smart, powerful, and expressive Swift the way it was meant to be written.

100% PRACTICAL

You learn Swift while you make real-world iOS projects, either using the book or over 20 hours of videos that come with your purchase.

100% PROVEN

Exclusive bonus content explains key points in detail, provides challenges for you to complete, and more – it's the fastest way to get to grips with Swift.

What's in the course


Hacking with iOS is the most comprehensive iOS 13 and Swift 5.1 tutorial series in existence, offering all this and more:

  • EXCLUSIVE Swift Quick Tips wall chart: A printable PDF with 20 useful Swift tips you can start using in your code immediately.
  • EXCLUSIVE Xcode Tips and Tricks video: Watch as I walk through some of my favorite features of Xcode, helping you make the most of Apple's integrated development environment.
  • BONUS HD project videos: Watch over 20 hours of videos that walk you through the projects in Xcode.
  • BONUS Swift Knowledge Base: Get 600 tips and tricks for Swift 5.1 and Xcode.
  • BONUS Offline Hacking with iOS guide book: Places milestones at key points in the series that contain revision notes, detailed code discussion, and challenges to help you push your skills further.
  • Introduction to Swift: Learn the basics of the Swift programming language to help jumpstart your development.

UIKit or SwiftUI? You decide!

Your Hacking with iOS purchase includes both the classic projects (teaching UIKit, SpriteKit, Core Graphics, Core Image, and so on) and the all-new SwiftUI projects. Why? Because you'll need both. So, every Hacking with iOS gets both the Classic and SwiftUI projects as part of their purchase, so you can learn either one or learn both.

Classic Projects

Once you complete the introduction, you continue on to develop all these incredible, real-world projects from scratch:

  1. Storm Viewer: Get started coding in Swift by making an image viewer app and learning key concepts.
  2. Guess the Flag: Make a game using UIKit, and learn about integers, buttons, colors and actions.
  3. Social Media: Let users share to Facebook and Twitter by modifying project 1.
  4. Easy Browser: Embed Web Kit and learn about delegation, KVO, classes and UIToolbar.
  5. Word Scramble: Create an anagram game while learning about closures and booleans.
  6. Auto Layout: Get to grips with Auto Layout using practical examples and code.
  7. Whitehouse Petitions: Make an app to parse Whitehouse petitions using JSON and a tab bar.
  8. 7 Swifty Words: Build a word-guessing game and master strings once and for all.
  9. Grand Central Dispatch: Learn how to run complex tasks in the background with GCD.
  10. Names to Faces: Get started with UICollectionView and the photo library.
  11. Pachinko: Dive into SpriteKit to try your hand at fast 2D games.
  12. UserDefaults: Learn how to save user settings and data for later use.
  13. Instafilter: Make a photo manipulation program using Core Image filters and a UISlider.
  14. Whack-a-Penguin: Build a game using SKCropNode and a sprinkling of Grand Central Dispatch.
  15. Animation: Bring your interfaces to life with animation, and meet switch/case at the same time.
  16. JavaScript Injection: Extend Safari with a cool feature for JavaScript developers.
  17. Swifty Ninja: Learn to draw shapes in SpriteKit while making a fun and tense slicing game.
  18. Debugging: Everyone hits problems sooner or later, so learning to find and fix them is an important skill.
  19. Capital Cities: Teach users about geography while you learn about MKMapView and annotations.
  20. Fireworks Night: Learn about timers and color blends while making things go bang!
  21. Local Notifications: Send reminders, prompts and alerts even when your app isn't running.
  22. Detect-a-Beacon: Learn to find and range iBeacons using our first project for a physical device.
  23. Space Race: Dodge space debris while you learn about per-pixel collision detection.
  24. Swift Extensions: Try your hand at improving the built-in data types of Swift.
  25. Selfie Share: Make a multipeer photo sharing app in just 150 lines of code.
  26. Marble Maze: Respond to device tilting by steering a ball around a vortex maze.
  27. Core Graphics: Draw 2D shapes using Apple's high-speed drawing framework.
  28. Secret Swift: Save user data securely using the device keychain and Touch ID.
  29. Exploding Monkeys: Remake a classic DOS game and learn about destructible terrain and scene transitions.
  30. Instruments: Become a bug detective and track down lost memory, slow drawing and more.
  31. Multibrowser: Get started with UIStackView and see just how easy iPad multitasking is.
  32. SwiftSearcher: Add your app's content to Spotlight search and take advantage of the new Safari integration.
  33. What's that Whistle?: Build a crowd-sourced song recognition app using Apple's free platform as a service. CloudKit.
  34. Four in a Row: Let iOS take over the AI in your games using GameplayKit.
  35. Generating random numbers: GameplayKit can help you generate random numbers in ways you soon won't be able to live without.
  36. Crashy Plane: Ever wanted to make a Flappy Bird clone? Now you can do it in under an hour thanks to SpriteKit.
  37. Psychic Tester: Are you psychic? Of course not. But what if we could use our coding skills to make a game to fool your friends into thinking otherwise?
  38. GitHub Commits: Get on board with Core Data and learn to read, write and query objects using Apple's object graph and persistence framework.
  39. Unit testing with XCTest: Learn how to write unit tests and user interface tests using Xcode's built-in testing framework.

Classic Edition: Download table of contents

Classic Edition: Download free 24-page sample

SwiftUI Projects

If you want to take the SwiftUI track you also get a huge range of projects to learn from:

  1. WeSplit: Learn the basics of SwiftUI with your first project.
  2. Guess the Flag: Build a game with stacks, images, and alerts.
  3. Views and Modifiers: Dive deep into Swift's rendering system
  4. BetterRest: Use machine learning to improve sleep
  5. Word Scramble: Build a letter rearranging game with List
  6. Animation: Spruce up your UI with springs, bounces, and more
  7. iExpense: Bring in a second view with this expense tracking app
  8. Moonshot: Teach users about space history with scroll views, Codable, and more
  9. Drawing: Use shapes, paths, colors, and more to create custom art for your app
  10. Cupcake Corner: Build an app that sends and receives JSON from the internet
  11. Bookworm: Use Core Data to build an app that tracks books you like
  12. Core Data: Take an in-depth tour of how SwiftUI and Core Data work together
  13. And more!

SwiftUI Edition: Download table of contents

SwiftUI Edition: Download free 24-page sample

The ultimate learning resource

Hacking with iOS really is the fastest way to go from zero to hero in Swift and iOS – buy now and get started with your new iOS career the smart way!