Point-Free Videos

Point-Free Videos

By Brandon Williams & Stephen CelisTechnologyEducation
Download on the App Store

Point-Free Videos episodes

  • Isolation: Actor Enqueuing
    Members Only: Today's video is available only to members. If you are already a member, you can access your private podcast feed by visiting https://www.pointfree.co/account.
    ---
    Using an actor seems to have forced us from a synchronous context to an asynchronous one, but it doesn't have to be this way. We will show how with the proper tools we can squash many `await`s down to a single one, and we will use "serial executors" to better understand how an actor enqueues work behind the scenes.
    31 min
  • Isolation: Actors
    Members Only: Today's video is available only to members. If you are already a member, you can access your private podcast feed by visiting https://www.pointfree.co/account.
    ---
    After fighting with legacy locking and mutexes let's explore a modern alternative: actors. We will refactor our data race-sensitive class to an actor and see just how simple and flexible its implementation can be, and we will grapple with something it introduces that locking did not: suspension points.
    22 min
  • Isolation: Mutex
    Members Only: Today's video is available only to members. If you are already a member, you can access your private podcast feed by visiting https://www.pointfree.co/account.
    ---
    We explore the most modern locking primitive in Swift: `Mutex`. It has some serious smarts when it comes to protecting nonsendable state across threads in a synchronous manner, but it also has a serious bug that you should be aware of.
    25 min
  • Isolation: OSAllocatedUnfairLock
    Members Only: Today's video is available only to members. If you are already a member, you can access your private podcast feed by visiting https://www.pointfree.co/account.
    ---
    It turns out that isolating state with an `NSLock` is not as straightforward as it seems, and we _still_ have a subtle data race. But Apple actually provides a more modern tool that _does_ help prevent this data race at compile time. Let's take it for a spin and get an understanding of how it works.
    25 min
  • Isolation: Legacy Locking
    Members Only: Today's video is available only to members. If you are already a member, you can access your private podcast feed by visiting https://www.pointfree.co/account.
    ---
    We have a data race on our hands, which is exactly what Swift concurrency is supposed to solve for. Let's figure out how we managed to get into this mess, and then we will get our feet wet with an isolation tool that predates Swift concurrency: locking.
    20 min
  • Isolation: What Is It?
    Members Only: Today's video is available only to members. If you are already a member, you can access your private podcast feed by visiting https://www.pointfree.co/account.
    ---
    What _is_ "isolation" in Swift? We define the term based on Swift's open "evolution" process and flesh out an example from the proposal to get an understanding of its purpose, and see how legacy tools can lead to dangerous situations at runtime.
    18 min
  • Beyond Basics: Superpowers
    Members Only: Today's video is available only to members. If you are already a member, you can access your private podcast feed by visiting https://www.pointfree.co/account.
    ---
    We show off some superpowers unlocked by embracing isolation, noncopyable, and nonescapable types by showing how they can be used to add incredible safety and performance to a legacy C API, and we will bring everything together to see how these tools make testing an app that uses Composable Architecture 2.0 and SQLiteData like magic.
    30 min
  • Beyond Basics: Isolation, ~Copyable, ~Escapable
    Members Only: Today's video is available only to members. If you are already a member, you can access your private podcast feed by visiting https://www.pointfree.co/account.
    ---
    It's time to go beyond the basics with a deep exploration of isolation, noncopyable, and nonescapable types. But before we get into all the nitty gritty details we will demonstrate why understanding these topics matters, starting with a preview of isolation in Composable Architecture 2.0.
    32 min
  • The Point-Free Way: Live
    Members Only: Today's video is available only to members. If you are already a member, you can access your private podcast feed by visiting https://www.pointfree.co/account.
    ---
    We celebrate 8 years of Point-Free with a live stream! We take our brand new
    "[Point-Free Way](/the-way)" skill documents for a spin by building a Flashcards app powered by [SQLiteData](http://github.com/pointfreeco/sqlite-data), and we give a sneak peek at "Composable Architecture 2.0," a reimagining of our popular library.
    1 hr 52 min
  • Tour of SQLiteData: Advanced Testing
    Members Only: Today's video is available only to members. If you are already a member, you can access your private podcast feed by visiting https://www.pointfree.co/account.
    ---
    We clean up our test suite and make use of the `expectDifference` helper, for precisely describing changes to state in an exhaustive fashion. We will then rapidly add test coverage using the forthcoming "Point-Free Way" skills documents. Finally, we will achieve the seemingly impossible by writing a test against iCloud sharing!
    21 min

About Point-Free Videos

From the publisher's feed

Point-Free is a hub for advanced topics in Swift. Videos cover complex, real world topics including application architecture, concurrency, persistence, and more.