Event-driven programming
When we use sequential programming to write our apps, we know exactly how our app is going to behave. We usually use this kind of programming paradigm when our app has no interaction with external agents. In web development, we need to use the event-driven programming paradigm because it is the end user who is going to lead the flux of the application.
Even though we haven't talked about events earlier, we know what they are because we have been using one of the most important events in web development, the click event.
There are many events that users can throw. A click event, as we mentioned earlier, is where the user can press a key on the keyboard; we can also receive events from the computer like the ready event to notify us that DOM elements are all loaded. Nowadays we also have touch events, if our screen is touchable.
We can also define our custom events. This is useful if we want to communicate to entities but we don't want to create a dependency between them...