Top-notch video tutorials for Swift developers

Thousands of developers use NSScreencast to stay on top of iOS development.

ExxonMobil
Venmo
Thoughtbot
The Working Group
Medium

Updated Regularly

Bite-sized videos on iOS development.

The iOS landscape is large and changes often. With short, bite-sized videos released on a steady schedule, NSScreencast helps keep you continually up to date.

Up to date with Xcode 15 and iOS 17

We cover the latest and greatest to get you up to speed quickly.

UIKit, SwiftUI, SwiftData, and macOS

In our catalog you'll find a wide variety of topics and UI frameworks.

Swift Language

Increase your knowledge of the Swift language and take advantage of new Swift language features as they are developed.

High Quality Videos

We stress the details. Each screencast is carefully produced in HD quality.

Short and Focused

We don't want to waste your time. Most videos are between 10 and 20 minutes long.

Any Device

Stream on the web or use our native apps for iOS or the tv.

Team Plans

Get NSScreencast for your whole team. Discounts start at 5 seats
Steven Tolton

Have I mentioned lately how awesome NSScreencast is? No? Worth the subscription. Check it out if you’re an iOS developer. Or even if you’re not and you want an example of how to do coding screencasts well.

Foster Bass

Got tired of dead-end googling so I checked to see if @NSScreencast had covered what I was looking for. Of course he had, 4 years ago. Should have checked there first.

Aijaz Ansari

One 13-minute episode of @NSScreencast just paid for the yearly subscription fee in amount of time saved. Do it.

Sam Soffes

Seriously great stuff even for seasoned developers. I’ve learned a good amount from Ben’s videos.

James Dempsey

You can really expand your development horizons in just a few minutes a week with NSScreencast.

Alexis Gallagher

Random PSA for iOS developers: @NSScreencast is a great resource, and worth every penny. It’s high quality, practical, and honest.

Nate Armstrong

Can’t say enough good things about @NSScreencast There is gold in the Road Trip DJ Series.

Karl Oscar Weber

I just reuppped my subscription to @NSScreencast. [An] indespensible resource if you’re into iOS or Mac Development.

Marcus Ziadé

Just finished @NSScreencast series on Modern CollectionViews. Strongly recommended. Programmatic UI, nicely structured code, easily approachable explanation style. 👌

Showing episodes 529 - 552 of 573 in total
  • Validating IAP Receipts

    #45

    Here we continue on with our In App Purchase example, but this time we take the receipt given to us by StoreKit and we send it to our custom rails server to be validated with Apple.

  • In App Purchases

    #44

    In this episode I dive into the world of IAP (In App Purchases) using StoreKit. I start by creating a product in iTunes Connect, retrieving that product on the device, and emulating the App Store buy confirmation buttons using a handy CocoaPod.

  • AVAudioPlayer

    #43

    The iOS SDK has numerous ways to play back audio. In this episode we take a look at how to play a local mp3 file using AVAudioPlayer. We add play/pause support, volume, and show the song progress in a UISlider. We finish it off by monitoring the audio levels using a custom view.

  • Retrying HTTP Requests

    #42

    We pick up where we left off in Episode 41 and implement a mechanism to automatically detect expired authentication tokens, re-login the user automatically, and retry the original request. This takes a bit of refactoring and use of blocks, but allows for transparent HTTP retries.

  • Authentication with AFNetworking

    #41

    Many APIs require some sort of authentication. In this episode, we explore the use of an API that authenticates with a username and password, and returns an authenticated token that has an expiration date. You'll see use of AFNetworking to deal with the request, attaching the authenticated token as an HTTP Header to outgoing requests, as well as the use of SSKeychain to abstract away the lower level Keychain API.

  • Shine Effect

    #40

    Creating an animated shine effect, similar to what you see on the slide to unlock screen on the iPhone. In this episode, I show how to achieve this effect with CALayers, layer masks, and a CABasicAnimation.

  • Smart JSON Parsing

    #39

    Parsing JSON responses into Objective-C Objects can be tedious. In this episode, we start development on a smart JSON parsing class that can alleviate some of the mundane work usually required for this functionality.

  • Class Introspection

    #38

    In this episode I create an application to introspect classes to list out methods and instance variables using Objective-C's runtime features. Bonus: Can you spot the memory leak?

  • Xcode Tips & Tricks

    #37

    In this episode I cover some of the Xcode tips & tricks that help me be effective. I cover many keyboard shortcuts for keeping my hands on the keyboard, as well as a couple of useful plugins for Xcode for Vim key bindings and picking colors.

  • Searching in UITableView

    #36

    Using UISearchDisplayController you can quickly add searching behavior to a UITableView. In this episode we start off with a CoreData model of products, displayed in custom UITableViewCells and add search to filter the products in the table.

  • Autolayout Fun

    #35

    In this episode I dive into the complex world of auto layout. Autolayout is an important and powerful new layout system in iOS 6, but it definitely takes some practice to understand fully. Even after practicing this episode a few times I ran into a couple of snags, however I hope this intro to Autolayout provides useful.

  • Upgrading to iOS 6 and iPhone 5

    #34

    Now that iOS 6 is out, and the iPhone 5 is only a day away, it is important to update our applications to make sure there are no issues. In this episode, I convert a rudimentary application to support the taller screen of the iPhone 5 and support iOS 6.

  • Core Graphics: Polygons

    #33

    We continue our journey into Core Graphics. This week, we'll draw a polygon with a dynamic number of sides, learn how to use CGMutablePathRef, shadows, clipping paths, and a bit of math.

  • Core Graphics: Gradients

    #32

    Core Graphics is a complex topic, but can be very handy to create designs without using images, as well as maintaining resolution independence. In this episode I show how to create a couple of simple gradients using Core Graphics.

  • Posting Multi-part Forms with AFNetworking

    #31

    In this episode, I take an existing app and add the ability to post information to a server, including photo uploads. We report on the progress of the upload and configure AFNetworking to do a proper muliti-part HTTP form post. In addition, I cover how to build a standalone static TableViewController to represent a form using Storyboards.

  • Parse

    #30

    In this episode I build an app with Parse, a service that provides custom data storage, files, push notifications, a geolocation support.

  • RubyMotion

    #29

    RubyMotion is a toolkit that allows you to write native iOS applications using Ruby. Normally I'm pretty skeptical of these alternative frameworks, but RubyMotion is actually quite interesting. In this episode I build a small application and talk about the pros & cons of using the toolkit.

  • Creating a Cocoapod

    #28

    In this episode, we'll create a CocoaPod out of the modal picker view component we created in episodes 25 & 26. We'll see how to tag & push our code to a github repository and create a podspec so that others can use this component in their projects.

  • New Objective-C Syntax

    #27

    The latest version of the LLVM compiler supports some excellent new syntax additions to the Objective-C language. In this episode, I cover what the new syntax is, how to use it, and a few caveats to look out for.

  • Building a Custom Picker Component - Part 2

    #26

    In this episode, I continue where I left of in episode 25. I add a nice animation to present & dismiss the picker, as well as a backdrop view that allows you to tap anywhere to cancel.

  • Building a Custom Picker Component

    #25

    In this episode, we'll talk about how to extract code from a view controller into a reusable component. We'll create a simple class that combines a UIPickerView with a toolbar for making quick selections from a small list of values. This ran a little long, so it is broken down into 2 parts.

  • Pull to Refresh

    #24

    In this episode, I cover how to implement Pull to Refresh on UITableView using an easy open source project called SSPullToRefresh, by Sam Soffes. I cover the basics, as well as creating a custom loading panel, drawn with Core Graphics.

  • Intro to Storyboards

    #23

    In this episode I dive into Storyboards to lay out view controllers and transitions. I start out by converting a blank slate project to use storyboards, then move on to transitions, dynamic table view prototype cells, and cover static table views at the end. It's a slightly longer video than normal, but if you haven't gotten into storyboards yet, this one's for you.

  • Customizing UITabBar

    #22

    In this episode, I continue deconstructing Foursquare's custom UI. This time I focus on how to customize the UITabBar with the iOS 5 customization APIs.