question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Implement new Concept Exercise: Async/Await

See original GitHub issue

Goal

The goal here is to create a new concept exercise and a new concept from scratch.

Getting started

Here you can read about what Concept Exercises are and how they are structured:

If you have not done so yet, it is probably also helpful to do a couple of “Learning Exercises” (this is how they are called on the site) yourself. You can also look at the code of an existing concept exercise like bird-watcher (concept for-loops) for reference.

Concepts

The following concept needs to be created. You can use the introduction.md file of the concept also as introduction.md file of the exercise. No need to create different content at this point. Additionally, if you want to save some time it is ok to not have an extensive about.md at this point. It can also be mainly the instruction.md content, maybe with some additions you would like to make.

  • async-await

Learning Objectives

In the concepts the student should learn about the following topics and then practice them in the concept exercise.

  • Async functions
  • Await
  • Relation to promises
  • Error handling with try/catch/finally
  • Top level await (incl. a note that it might not yet be available in all environments)

Out of Scope

  • Repeating details about promises

Prerequisites

The following concepts should be assumed and defined as prerequisites for the new exercise:

  • promises
  • errors

Resources

Here some links that might be helpful as a starting point:

Help

You can choose to do this solo-style, or collaborate with multiple people on this. The suggested approach is to

  1. First accept this issue by saying “I’d like to work on this” (no need to wait for a response, just go with it) and optionally request that someone works with you (and wait for a second person to accept your request).
  2. Use this issue to discuss any questions you have, what should be included in the content and what not and to collect reference material.
  3. Create a PR and set “exercism/javascript” as reviewers. Additionally you can write in #maintaining-javascript that your PR is ready for review. Once you incorporated any critical feedback that the reviewer might give you and the PR is approved, it will be merged by a maintainer.

Issue Analytics

  • State:open
  • Created 2 years ago
  • Comments:13 (12 by maintainers)

github_iconTop GitHub Comments

2reactions
SalahuddinAhammedcommented, May 11, 2022

That’s great. I am working on this issue.

1reaction
shubhsk88commented, May 11, 2022

Thanks will start working on it this weekend.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Async/await - The Modern JavaScript Tutorial
In actuality, The `await` keyword breaks the synchronous flow and creates a new promise handler from every subsequent statement in the function; ...
Read more >
How to Learn JavaScript Promises and Async/Await in 20 ...
Let's refactor the handleGuess function a bit using the async/await syntax: const handleGuess = async () => { try { const result =...
Read more >
Asynchronous programming: futures, async, await - Dart
Execution flow with async and await​​ An async function runs synchronously until the first await keyword. This means that within an async function...
Read more >
Introduction - Your Ultimate async / await Tutorial in C#
Currently, it is recommended to only follow the Task-based Asynchronous Pattern whenever you want to have an asynchronous implementation in your application, ...
Read more >
Implement the Async/Await Pattern and be Familiar with the ...
The idea is that we can use the generator to run the async functions and then pause until that function be resolved. The...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found