Hi, my name's Sam Selikoff, and I'm really excited to share this series on Ember Concurrency with you.
I knew I wanted to teach this library because so many people were asking about it. What I didn't know is how drastically it would come affect my everyday development.
Concurrency is everywhere in Ember apps, from standard bread-and-butter actions like saving a model to more sophisticated UI patterns like autocomplete search boxes, retrying failed AJAX requests, hover menus that disappear after a short delay and more. These types of interactions are difficult to build and test, and before I used Ember Concurrency it was hard to even know where to start.
Now I have a much better mental model for how to think about concurrency, and new tools to tackle these challenges head-on. My asynchronous code is way easier to read, I've eliminated an entire class of bugs from my apps, and all of those delightful UI features that I used to struggle with? Now they make it into my interfaces.
I work with a lot of folks and I see them struggle with these same issues. This series is not about walking you through the library's API. Instead, my goal is to develop your understanding of concurrency, and give you the confidence and tools you need to build out rich interaction patterns with ease.
We'll start by discussing why we need this library in the first place. Then we'll go through some basic examples; do an in-depth discussion of Generators and Yield, the awesome ES6 feature that powers this library; work through a more sophisticated feature involving concurrency; and finish with some important notes on testing.
I guarantee that working through this series and learning this library will change the way you think about Ember development. Any library that does that is worth your time.
Alright, let's get started!