Sales Ended

Asynchronous Javascript Workshop (1 Day)

Event Information

Share this event

Date and Time

Refund Policy

Refund Policy

Refunds up to 7 days before event

Event description


When should you use callbacks, promises, generators or async/await?
Can you confidently read code using any of those patterns?
How do you even write unit-tests for code that uses these patterns?

Using practical examples this course teaches all the common async patterns, as well as how to test them.

With so many different solutions to choose from, selecting the right asynchronous pattern for your own code can be a daunting prospect. It's doubly difficult when reading other peoples code, since that could have been written in any numer of patterns, so it pays to know them all.

In this course we'll first cover the event architecture itself and then the various asynchronous patterns in depth. Callbacks, promises, generators and the new async/await.

For each of the differnt asynchronous patterns we'll cover practical real-world use cases with plenty of lab time dedicated to practicing what you've learnt.

By the end of the course you will be able to confidently read, write and test asynchronous code using all the common patterns.

Program outline/syllabus


  • What is Asynchronous?
  • What is Event Driven?
  • EventLoops
  • EventEmitter
  • Tasks & Microtasks


  • Syntax
  • Callback Hell
  • Error First Callbacks
  • Unit Testing
  • Common patterns with Callbacks


  • Syntax
  • Immediate Resolution
  • Error Handling
  • Promise.all()
  • Promise.race()
  • Unit Testing
  • Common patterns with Promises


  • Syntax
  • Function syntax and yield
  • Bi-directional message passing
  • Converting Async to Sync code
  • Unit Testing
  • Common patterns with Generators


  • Syntax
  • Async or Sync?
  • Error Handling
  • Async/Await and Promises
  • Unit Testing
  • Common patterns with Async/Await


This workshop will be an online workshop held from 15:00 to 23:00 GMT (please check the time in your local timezone), this is a compromise time to accomodate both EU and US students.

We will be using slack to chat and for the lectures.

This workshop contains a lot of lab time for you to practice what you've learnt and ask questions if you are stuck.

After each lecture you will have a short lab session (10mins+) to try out what you've just learned with a simple example, after each chapter you will have a longer lab session (30mins+) to test your knowledge with a longer real-world use case.

At the end of the workshop you will recieve:

  1. A certificate of completion.
  2. A copy of all the course notes, samples and slides.

By the end of this workshop you will:

  • Understand the eventing architecture of Javasript in both browsers and node.
  • Be able to apply multiple patterns for writing async code; callbacks, promises, generators and async/await.
  • Know how to write unit tests for each of these patterns.

The ideal student for this workshop is:

  • Someone who wants to upgrade their Javascript knowledge in preperation to use a newer webframework like React, Angular or Vue.
  • Someone who has been working on a legacy framework for too long, is scared their Javascript knowledge is old and wants to quickly become relevant again.
  • Someone who perhaps has been coding for a while but has never been very confident in their Javascript knowledge and wants to level up.

What you will need to know beforehand

  • A pretty good understanding of Javascript, must have written at least 1000 lines of Javascript code and been challenged by asyncrhonous code.
  • A computer with Node and Git installed.
  • An account on (this is where we will store the lab work).

Who is going to be teaching you?

My name is Asim Hussain, i'm a developer, trainer and speaker with over 16 years experience working for organisations such as the European Space Agency, Google and now Microsoft, where I am a Senior Cloud Developer Advocate.

I'm also author of the book Angular: From Theory to Practice and I've taught over 50,000 students Angular, JavaScript and Ionic through my site

Date and Time

Refund Policy

Refunds up to 7 days before event

Save This Event

Event Saved