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 505 - 528 of 581 in total
  • TDD Money with Specta and Expecta

    #77

    In this episode I walk through Kent Beck's Money example from his book, Test Driven Development by example. We'll start off by setting up to use Specta & Expecta for our tests, and then drive out an implementation test-first. We'll see opportunities for refactoring and use our tests to guide us.

  • Extracting Data From Strings

    #76

    In this episode I cover a few techniques on how to pull information out of strings. We start of by using regular expressions via NSRegularExpression, then take a look at NSDataDetector, and wrap up by examining the lexical structure of sentences using NSLinguisticTagger.

  • A Tale of UIScrollView Customization

    #75

    In this episode I attempt to implement a custom scroll view behavior, where a table view can grow while scrolling to eventually encompass the entire screen. The implementation, while mostly functional, has drawbacks and the code is complicated. After taking a break, I approach the problem anew, and implement it much cleaner.

  • OAuth2

    #74

    In this episode we cover how to authenticate with an OAuth2 provider for user authentication. As an example, we authenticate with Instagram using the Client Profile, which is most suited to a mobile application.

  • SSL Pinning

    #73

    In this episode I show how you can self-sign a certificate in Charles to inspect and modify requests & responses to an API. Using a technique called SSL Pinning, we can prevent this type of man in the middle attack and make our applications more secure.

  • Objective-C Collections

    #72

    Choosing the appropriate collection for your use case is important, not only for ease of implementation but for performance. In this episode, we'll examine the performance characteristics of various collections such as NSSet, NSArray, NSOrderedSet, and NSDictionary.

  • NSNumberFormatter

    #71

    In this episode I take a look at NSNumberFormatter, which is a useful class for getting various string representations of numbers. We then use this to add live number formatting to a UITextField.

  • Autolayout with Cells

    #70

    Autolayout can be very powerful tool to provide layouts that are responsive to changes. In this episode we'll visit a case with UITableViewCells that makes using auto-layout somewhat frustrating, where constraints are applied to the cell itself instead of the cell's contentView.

  • NSFetchedResultsController

    #69

    In this episode we take a look at how to correctly detect & respond to underlying changes in an NSManagedObjectContext and insert, update, move, and remove UITableView rows with the proper animations.

  • Xcode Project Templates

    #68

    In this episode we dive into the undocumented world of Xcode project templates. By studying the existing templates, we can learn how to make our own templates that better match our style or needs.

  • Map Overlays

    #67

    In this episode we take the shape file data we parsed in episode 66 and use it to draw outlines around US States. We do this using the MKPolygon overlay in combination with MKPolygonView, which allows us to fill & stroke the provided vertices.

  • Processing Shape Files

    #66

    In this episode I cover how to parse ESRI Shapefiles and their DBF attribute counterparts, in order to get a list of vertices of US State boundaries. This episode covers interacting with a C library (shapelib). The data extracted will be useful in the next episode.

  • Alcatraz Package Manager

    #65

    In this short episode I quickly cover the Alcatraz Package Manager for Xcode, which allows you to easily install many user contributed plugins and color shemes in Xcode.

  • MapKit Annotations

    #64

    In this episode I continue our WhatsAround sample from Episode 63. Using the Foursquare API, we fetch coffee shops near the user's location and display a pin on the map for each using the MKAnnotation protocol.

  • From Scratch

    #63

    In this episode I go over how I typically start new projects. I start off when an empty app template, do a bit of organization with groups to keep things tidy, introduce CocoaPods and a workspace, and wrap it up by setting up a map view controller using Storyboards on both the iPhone and the iPad. This project will be handy to use as a base for future episodes.

  • Mailing Logs

    #62

    In this episode we continue with our example from last week's logging episode, and discuss how you can retrieve your logs out in the field. We use a pod called SSZipArchive to zip up the files as well as MFMailComposeViewController to enable testers to send us detailed logs of what is happening in the app.

  • Cocoa Lumberjack

    #61

    In this episode we take a look at a fast & flexible alternative logging framework for iOS called Cocoa Lumberjack. We take a look at the various loggers that are available and how to write logs to a file.

  • Windows Azure Mobile Services Part 2

    #60

    We continue with our example chat application here and add the ability post a message, poll for updates, and receive push notifications. This episode utilizes a pod calles MessagesTableView controller to present an SMS like interface for the messages.

  • Windows Azure Mobile Services

    #59

    This week we take a look at Windows Azure Mobile Services, a back-end for mobile applications that has first class iOS support. In this episode we begin building a full featured chat application. This is part 1 of 2, in which we set up a new mobile service, wire up the SDK with CocoaPods, set up Twitter authentication and enrich the data using Javascript on the server. This episode has been sponsored by Microsoft.

  • Container View Controllers

    #58

    In this episode I create a container view controller using the UIViewController containment APIs. The container view controller mimicks a style where the starting view controller fades into the background instead of sliding to the left.

  • Facebook Integration

    #57

    In this episode we build on our Social App from episode 56 and add Facebook support. We cover setting up an Facebook application and the requisite permissions required to authenticate & fetch a user's friend list, all using the Social Framework in iOS 6.

  • Twitter Integration

    #56

    In this episode we implement the Social framework in order to integrate with Twitter. Using the provided framework, we issue an authenticated API call to get a list of Twitter followers for a given account, as well as compose a tweet with the new SLComposeViewController.

  • Versioning

    #55

    In this app I cover iOS application versioning. I cover what the purpose of CFBundleVersion and CFBundleShortVersionString are, how to set them, and how to use agvtool to automatically increment build numbers for any distributed build.

  • Pony Debugger

    #54

    In this episode we take a look at Pony Debugger, a fantastic little tool by the fine folks at Square, to inspect HTTP traffic and dive into our Core Data model all via a Chrome inspector pane in the browser.