Introduction
  • Introductions - Course outline
Intro to hacking with macOS - Notes for iOS developers
  • Intro to hacking with macOS part 1 - Notes for iOS developers
  • Intro to hacking with macOS part 2 - There Is More Than One Way To Do It
Whats new in Swift 4
  • Whats new in Swift 4
Project 1 - Storm Viewer
  • Intro - Storm viewer
  • Part 1 - Setting up
  • Part 2 - Adding custom controllers
  • Part 3 - Introducing outlets
  • Part 4 - Showing some table rows
  • Part 5 - Loading our images
  • Part 6 - Responding to table selection - finishing touches
Project 2 - Cows and Bulls
  • Intro - Cows and Bulls
  • Part 1 - Designig our User Interface
  • Part 2 - Filling in the table view
  • Part 3 - Setting up the game
  • Part 4 - Marking guesses
Project 3 - Social Media
  • Intro - Social Media
  • Part 1 - Setting up
  • Part 2 - Wrap up
Project 4 - Grid Browser
  • Project 4 Intro
  • Part 1 - Setting up - Starting with the toolBar
  • Part 2 - Layout with stack views
  • Part 3 - App Transport Security
  • Part 4 - Creating and destroying web views
  • Part 5 - Whats selected
  • Part 6 - Handling navigation
  • Part 7 - Adding Touch Bar controls
  • Part 8 - Adding Touch Bar controls continued
Project 5 - Capital Cities
  • Project 5 Intro
  • Part 1 - Setting up - Creating a map view
  • Part 2 - Dropping pins
  • Part 3 - Keeping score
Project 6 - Auto Layout
  • Project 6 - Intro
  • Part 1 - Setting up - Visual Format Language
  • Part 2 - Auto Layout anchors
  • Part 3 - Stack Views
  • Part 4 - Grid views
Project 7 - Photo Memories (Currently being updated to Xcode 11.3.1 and Swift 5)
  • Project 7 - Intro
  • Part 1 - Setting up - Designing with collection views
  • Part 2 - Selecting items
  • Part 3 - Loading images from disk
  • Part 4 - Importing files
  • Part 5 - Re-arranging photos
  • Part 6 - Deleting key presses with keyUp
  • Part 7 - Optional content if you want to continue - Core Animation
  • Part 8 - Making a video composition
Project 8 - Odd One Out (Currently being updated to Xcode 11.3.1 and Swift 5.1)
  • Project 8 - Intro
  • Part 1 - Setting up - Creating a grid of buttons
  • Part 2 - Generating layouts
  • Part 3 - Click to win
  • Part 4 - Game over
  • Part 5 - Finishing touches
Project 9 - GCD (Currently being updated to Xcode 11.3.1 and Swift 5.1)
  • Project 9 Intro
  • Part 1 - Performing selectors in background - Running arbitrary code on differen
  • Part 2 - Running delayed code - Concurrent execution
Project 10 - WeatherBar (Currently being updated to Xcode 11.3.1 and Swift 5.1)
  • Project 10 - Intro
  • Part 1 - Setting up - The art of nothingness
  • Part 2 - Creating a settings screen
  • Part 3 - Saving and loading settings
  • Part 4 - Parsing JSON
  • Part 5 - Updating the User Interface
  • Part 6 - Creating more menu items
Project 11 - Bubble Trouble (Currently being updated to Xcode 11.3.1 and Swift 5
  • Project 11 - Intro
  • Part 1 - Setting up - Cleaning up the Xcode template
  • Part 2 - Bubbles bubbles everywhere
  • Part 3 - Setting the universe in motion
  • Part 4 - Adding some difficulty
  • Part 5 - Gotta pop em all
Project 12 - Animations (Currently being updated to Xcode 11.3.1 and Swift 5.1)
  • Project 12 Intro
  • Part 1 - Setting up - Constructing a test environment
  • Part 2 - Basic animator proxy use
  • Part 3 - Animating layers
  • Part 4 - Advanced layer animation
Project 13 - Screenable (Currently being updated to Xcode 11.3.1 and Swift 5.1)
  • Project 13 Intro
  • Part 1 - Designing the user interface
  • Part 2 - Designing the user interface continued
  • Part 3 - Populating the popup buttons
  • Part 4 - Drawing images and gradients
  • Part 5 - Rendering the caption
  • Part 6 - Importing a screenshot
  • Part 7 - Exporting the finished product
  • Part 8 - NSDocument and NSCoding
  • Part 9 - NSDocument and NSCoding continued
Project 14 - Shooting Gallery (Currently being updated to Xcode 11.3.1 and Swift