Asynchronous vs synchronous

Hey there,

Funny language note which got me confused at first:

Just saw a few times on the forum that in programming parlance people use the word asynchronous to mean synchronous when talking about workflows. Asynchronous means “not happening at the same time” and synchronous “happening at the same time”. In the case of Bubble, workflows are in fact synchronous.

A better wording and probably less ambiguous would actually be “non-sequential”.

:nerd_face:

1 Like

I would consider it more confusing if Bubble changed industry standard wording (asynchronous and synchronous) with another word :slight_smile:

I do agree though that in the beginning when I first heard about the concepts I mixed them up quite a lot too.

1 Like

The whole workflow might be synchronous (in that the front end waits for it to complete) but each individual action is more likely to be asynchronous (in that one step does not wait for the previous one to complete).

API Workflows are asynchronous (fire and forget). But still can happen all at the same time.

And yes, it is confusing :slight_smile:

Oh I didn’t suggest a change. Just pointing out at this language use.

This said when I’m trying out to have my actions executed at the same time and look at the logs I see they are done sequentially. Which surprised me and was quite inconvenient because it lead to time outs. :thinking: So I’m still not clear on how this all works in fact.

:+1: hmmmm

It is not always clear. My workflow is as followed:

  1. Check if a certain thing is already uploaded in the database (it checks for name, date, etc).
  2. When the thing isn’t already in the database a new thing is created.

So far so good, but when I wanted to check something with the step-by-step function it failed.
When running step for step action 1 always said the thing is already uploaded in the database, even if it was empty before launching the workflow. I think this can only be the case if action 2 is already executed before action 1 (in the step-by-step module). When in run-mode it works fine…