The web is asynchronous by design, and it has to be. But, there is a slight problem that asynchronous programming has a slight tendency to make people's heads explode. And people really don't like when their heads explode. To get out of the pickle, we need to handle the asynchrony somehow. This talk will explore the reasons for the design of the web, and will try to offer some solutions, from the worst possible to the current state of the art. Topic covered: Asynchrony, XHR, events, callbacks, Promises, Observables, async/await