Promises are very useful and convenient pattern for dealing with asynchronous operations. They come very handy when callbacks and events fall short. Even though there are several libraries which implement this functionality, such as like Q, we will reinvent a wheel. That's right, how would you go, if you needed to implement Promise pattern? I think that it's very simple to do. Let's see?