¿Por qué ha dicho adiós Airbnb a React Native?

Jose Luis Gomez

Uno de los mayores referentes en cuanto a estrategia e implementación de nuevas tecnologías en el mundo del desarrollo de apps móviles ha dado un paso que nos ha sorprendido a todos.

Airbnb, el que probablementes es el mayor benefactor de React Native, la librería de Facebook para desarrollo híbrido de aplicaciones móviles, ha decidido abandonarlo después de dos años como el pilar fundamental de todo lo que ha pasado por sus oficinas.

Airbnb fue uno de los primeros en llevar a React Native a producción y, muy especialmente, a una escala tan importante como la suya. Muy probablemente se trate de la aplicación desarrollada en React Native más utilizada del mundo. Por este motivo, al tratarse de una tecnología tan reciente, han invertido gran cantidad de recursos en su depuración y puesta a punto.
 

¿En qué ha fallado React Native?

 
Los motivos que les han llevado a dar este paso son precisamente los que eran previsibles y ya muchos apuntaban desde sus inicios. React Native es todavía una librería inmadura; muchas de sus actualizaciones rompían partes del código e, incluso, su acceso a los recursos nativos de los dispositivos era inconsistente entre entornos Android e iOS. Por lo tanto, mientras que la idea que sustentaba React Native era poder escribir las aplicaciones una sola vez y poder ser utilizadas en ambos sistemas, la cruda realidad varios años después es que los ingenieros de Airbnb se veían obligados a mantener tres bases de código: una en React.js, otra con las implementaciones concretas para iOS y otra para Android. Por supuesto, cada actualización llevaba a volver a repetir este proceso por triplicado con sus diferencias entre versiones.

Una mujer consulta Airbnb

JavaScript es un lenguaje con asignación dinámica de tipos de datos. Esto quiere decir que no existe un control sobre qué tipo de datos contiene una variable, recibe o devuelve una función, lo cual conduce a problemas de inconsistencia en aplicaciones tan grandes como ocurre en este caso. La alternativa a esto es utilizar TypeScript, un súper conjunto de JavaScript que incluye el tipado estático de datos. No obstante, de nuevo, se trata de añadir un elemento de fallo más a tener en cuenta, complicar la depuración de bugs y, especialmente, llevar a cabo una migración de tecnologías de proporciones poco apetecibles.

A nivel visual y de representación de datos, React Native es más restrictivo en cuanto a la libertad que brindan las aplicaciones nativas, ya que no siempre es factible llegar hasta el punto visual requerido y la experiencia de usuario es, a día de hoy, algo primordial en el triunfo de una app.

Es por todo esto que el equipo de ingenieros encargados de desarrollar las aplicaciones móviles de Airbnb ha decidido dar un volantazo y emplear el tiempo que dedicaban a homogeneizar el desarrollo híbrido en ambas plataformas a todo lo contrario: optimizar la experiencia de desarrollo nativo.
 

Un varapalo para las tecnologías de desarrollo híbridas

 
Desde luego se trata de un mazazo para este tipo de tecnologías híbridas, ya que Airbnb, además de servir de referencia para muchos grupos de desarrollo, ha aportado innumerables horas de contribución a la comunidad de React Native.

Ha empezado a cundir el pánico cuando no tiene por qué. A grandes rasgos, la mejor recomendación que se puede hacer ante una decisión de este tipo se basa en, básicamente, dos parámetros: presupuesto y complejidad. Si se cuenta con un presupuesto bastante holgado y/o la aplicación requiere de funcionalidades muy personalizadas y poco frecuentes, sin lugar a dudas el camino a seguir es el del desarrollo nativo. Aquí la homogeneidad entre las versiones iOS y Android dependerá necesariamente del buen hacer de los ingenieros a su cargo.

Si por el contrario el presupuesto es bajo y no se requiere de ninguna funcionalidad atípica, las plataformas de desarrollo híbridas siguen siendo una muy buena opción para reducir los costes derivados de desarrollar y mantener dos apps con dos grupos de desarrollo diferentes. Al fin y al cabo, no todos somos Airbnb y, especialmente, las necesidades de cada empresa dadas sus circunstancias no tienen por qué ser las correctas para nosotros.
 

¿Cómo podemos ayudarte?

 

Sobre este Autor

Ing. Telemática | CEO B2CODE | CTO Hialucic |

1 Comentario

Puedes enviar comentarios en este post.


  • Typescript es una mierda.

    aa 2 semanas ago Reply


Enviar una respuesta

Aviso de Privacidad.
Los datos facilitados en este formulario, quedarán registrados en un fichero titularidad de SARENET S.A.U., responsable del Fichero cuyos datos se detallan en el Aviso Legal, con la finalidad que los usuarios interesados contacten con los asesores y estos den respuesta a sus dudas e inquietudes en relación a los servicios ofrecidos. Podrás ejercer tus derechos de acceso, rectificación, supresión o limitación de la información personal, así como el de oposición a su tratamiento, mediante comunicación al e-mail: protecciondedatos@sarenet.es. Para más información sobre como tratamos tus datos, visita nuestra Política de privacidad.

No hay comentarios