---
url: 'https://metadrop.net/es/eventos/drupal-mountain-2019-reactive-programming-dealing-with-asynchronicity'
title: 'Reactive Programming: Dealing with Asynchronicity'
author:
  name: 'Ricardo Sanz'
  url: 'https://metadrop.net/es/sobre/ricardo-sanz'
date: '2025-09-25T16:35:26+00:00'
updated: '2026-10-08T09:46:33+00:00'
type: website
summary: 'This session will provide an introduction to Reactive Programming based on the ReactiveX library for JavaScript. Reactive Programming is a way to declare reactions to data change using data flows that transform data that crosses them. Although in a JavaScript environment not all data is asynchronous, most of it indeed is: user interaction, Web Workers, server pushes from WebSockets, AJAX calls or any other asynchronous calls.'
tags:
  - 'Drupal Switzerland (Swiss Drupal Association)'
  - RxJS
  - JavaScript
  - 'Drupal Mountain'
image: 'https://metadrop.net/sites/default/files/styles/full/public/2025-09/drupalmountain.png.webp?itok=D9ZT84RA'
published: true
og:
  site_name: Metadrop
  'image:type': image/webp
  'image:width': '1283'
  'image:height': '740'
  'image:alt': 'Reactive Programming: Dealing with Asynchronicity'
  locale: es_ES
  'locale:alternate': en_US
schema:
  '@context': 'https://schema.org'
  '@graph':
    -
      '@type': Event
      url: 'https://metadrop.net/es/eventos/drupal-mountain-2019-reactive-programming-dealing-with-asynchronicity'
      name: 'Reactive Programming: Dealing with Asynchronicity'
      description: 'This session will provide an introduction to Reactive Programming based on the ReactiveX library for JavaScript. Reactive Programming is a way to declare reactions to data change using data flows that transform data that crosses them. Although in a JavaScript environment not all data is asynchronous, most of it indeed is: user interaction, Web Workers, server pushes from WebSockets, AJAX calls or any other asynchronous calls.'
      eventAttendanceMode: 'https://schema.org/OfflineEventAttendanceMode'
      image:
        '@type': ImageObject
        url: 'https://metadrop.net/sites/default/files/styles/full/public/2025-09/drupalmountain.png.webp?itok=D9ZT84RA'
      eventStatus: 'https://schema.org/EventScheduled'
      startDate: '2019-01-03T23:15:00+0100'
      '@id': 'https://metadrop.net/es/eventos/drupal-mountain-2019-reactive-programming-dealing-with-asynchronicity#event'
      location:
        '@type': Place
        address:
          '@type': PostalAddress
          addressCountry: CH
      performer:
        '@type': Person
        name: 'Ricardo Sanz'
      organizer:
        '@type': Organization
        name: 'Drupal Switzerland (Swiss Drupal Association)'
    -
      '@type': Organization
      '@id': 'https://metadrop.net/#organization'
      url: 'https://metadrop.net/'
      name: Metadrop
      sameAs:
        - 'https://www.drupal.org/metadrop'
        - 'https://x.com/metadrop'
        - 'https://asociaciondrupal.es/partner/metadrop'
        - 'https://www.linkedin.com/company/metadrop'
      telephone: '+34910053180'
      contactPoint:
        '@type': ContactPoint
        telephone: '+34910053180'
        email: hola@metadrop.net
        availableLanguage:
          - Spanish
          - English
        contactType: 'customer service'
      logo:
        '@type': ImageObject
        url: 'https://metadrop.net/modules/custom/metadrop_schema/images/logo-metadrop-500-500.jpg'
        width: '500'
        height: '500'
      address:
        '@type': PostalAddress
        streetAddress: 'Calle Virgen de Nuria 23'
        addressLocality: Madrid
        addressRegion: Madrid
        postalCode: '28027'
        addressCountry: ES
    -
      '@type': ItemPage
      '@id': 'https://metadrop.net/es/eventos/drupal-mountain-2019-reactive-programming-dealing-with-asynchronicity'
      breadcrumb:
        '@type': BreadcrumbList
        itemListElement:
          -
            '@type': ListItem
            position: 1
            name: Inicio
            item: 'https://metadrop.net/es'
          -
            '@type': ListItem
            position: 2
            name: Eventos
            item: 'https://metadrop.net/es/eventos'
      publisher:
        '@type': Organization
        '@id': 'https://metadrop.net/#organization'
---
 1. [Eventos](https://metadrop.net/es/eventos)
 
 # Reactive Programming: Dealing with Asynchronicity

Drupal Mountain

 Suiza 

 

Drupal Switzerland (Swiss Drupal Association)

Jueves 03 de Enero de 2019

 

 [Event](https://drupalmountaincamp.ch/sessions/reactive-programming-dealing-asynchronicity)[Slides](https://rsanzante.github.io/drupalmountain-2019-reactive-programming/slides/) 

 

 

 

This session will provide an introduction to Reactive Programming based on the ReactiveX library for JavaScript. Reactive Programming is a way to declare reactions to data change using data flows that transform data that crosses them. Although in a JavaScript environment not all data is asynchronous, most of it indeed is: user interaction, Web Workers, server pushes from WebSockets, AJAX calls or any other asynchronous calls.

As client-side applications get more complex so does the management of all of this interrelated data. While Promises are an improved approach to manage this complexity than simple callbacks, Observables, operators and other tools from the Reactive Programming are a superior solution that allows creating data pipes that simplify the declaration of application behaviours. This produces a shorter and meaningful code that is easier to understand than other approaches. Because of this, it makes the code more maintainable.

Nowadays much of the application logic is placed in the client, and Reactive Programming is a must when dealing with more than simple applications with a low level of data interrelation and interaction.

RxJS is intensively used in Angular, but can be used by importing a library in combination with other libraries like React or Vue.js, or coding an application from scratch.

For this session, attendees would have some experience building asynchronous applications or have some notions about difficulties building those.

After this session, attendees will understand the basic principles of the Reactive Programming and when they should consider using it in a project.



Speakers

 

 



Ricardo Sanz

CTO