The Futures are Calling and I Must Choose
Explore the intricacies of various Future types and Task abstractions in Scala programming through this 39-minute conference talk from Scala Days Chicago 2017. Delve into the differences between Scala Futures, Twitter Futures, Java CompletableFutures, and Guava ListenableFutures, as well as Task abstractions from libraries like Scalaz, Monix, and FS2. Learn how these variants relate to each other, when to use one over another, and how to interoperate between different types. Starting with the basics of each variant, gain insights on selecting the best option for your codebase, making them work together, and avoiding common pitfalls. Discover additional techniques for leveraging these abstractions when combined with other effects. The talk covers topics such as the Reactive Manifesto, apply and promise methods, callbacks, map and flatmap operations, execution contexts, cancellation, type interfaces, and recommendations for working with Futures and Tasks in Scala.