Blog

Nuestro grupo de expertos en diferentes disciplinas, te actualizan sobre las tendencias y temas relevantes en Marketing Digital.

A menos que aun uses tu pc solo para aplicaciones de oficina y tu teléfono móvil no tuviese conexión a internet, es poco probable que no hayas interactuado con una aplicación creada con JavaScript, más específicamente con una Single-Page Application. Pues es 2017 y JavaScript no es lo que era antes del 2010. Los usuarios no esperan menos que respuestas casi inmediatas a sus interacciones, no importa si es un niño de 2 años utilizando un iPad o la abuelita viendo su novela en Netflix, el mundo demanda aplicaciones más fluidas y con mejor tiempo de respuesta.

Crecimiento de Java Script

Desde el inicio del internet la navegación web ha funcionado de la siguiente manera:
El navegador solicita una página en particular “http://google.com/” provocando que un servidor en algún lado del internet genere una página HTML y la envié. Esto ha funcionado bien desde entonces, pero en esos tiempos los navegadores no eran tan potentes y las páginas web eran más que nada paginas estáticas y aisladas (no tenían dependencias externas). La creación de JavaScript permitió crear páginas más dinámicas, pero no ofrecía más que sliders y widgets de calendario.

Luego de años en avance tecnológico en computación personal (laptops, teléfonos móviles, etc.) la web fue empujada a sus límites, provocando que los navegadores evolucionaran a este mismo ritmo. Fue entonces que JavaScript, junto nuevos a estándares con HTML5 permitieron a los desarrolladores explotar el potencial de la web y crear aplicaciones que antes eran solo posibles en plataformas nativas, es decir aplicaciones para Windows, macOS, etc.

Las Single-Page Apps

No tomo mucho tiempo para que los desarrolladores empezaran a crear aplicaciones para navegadores dadas las nuevas ventajas que el entorno web ofrecía. Aplicaciones como Gmail (la cual es el típico ejemplo de una aplicación Single-Page) podían responder inmediatamente a las interacciones del usuario, ya no eran necesarias largas esperas para respuestas desde el servidor, solo para renderizar una nueva página.

Todo gracias a la capacidad de renderizar las páginas web en el cliente, el navegador del usuario. Además de tener la ventaja de poder comunicarnos con el servidor el cual puede estar escrito con los lenguajes que hemos usado por algunos años (Ruby, Python, Java o PHP). Poder crear aplicaciones con código más universal, permitiendo la facilidad del desarrollo multi plataforma.

JavaScript

¿Existe alguna desventaja al utilizar JavaScript?

Toda tecnología sufre de limitaciones, y JavaScript sufre en temas de SEO, dado que los bots que indexan nuestras páginas web buscan la información que los motores de búsqueda necesitan para facilitar que los usuarios lleguen a nuestra web en nuestro HTML una vez es renderizado.

Por suerte para nosotros y para el usuario, Google nos asegura que mientras sus bots puedan acceder a nuestro JavaScript y CSS, nuestra página será renderizada por ellos tal cual lo hace un navegador, proporcionándoles la información necesaria para indexar nuestra aplicación web.

Por otro lado si el servidor tiene que esperar por el cliente a renderizar la web, el usuario podría experimentar algunos segundos con una página en blanco, los cuales pueden ser críticos. Muchos estudios demuestran el drástico efecto negativo que tiene una página lenta en los usuarios y en las ganancias de las empresas. Según Amazon por cada 100ms que reducimos en tiempo de carga los beneficios aumentan un 1%

Al final de cuentas lo que queremos y necesitamos es una solución hibrida, que nos ofrezca el mejor resultado en SEO y la velocidad y flexibilidad de una aplicación del lado del cliente con aplicaciones que se renderizan tanto en el cliente (ReactJS, VueJS, Angular) como en el servidor (NodeJS o alternativas basadas en Python).

Y aún hay más

JavaScript no solo ha impactado la velocidad con la que navegamos, la diversidad del contenido y la flexibilidad en el desarrollo de las páginas web.

Crear aplicaciones web es solo una parte de lo que es posible con JavaScript, gracias a Electron un framework para desarrollo multi plataforma nuestra aplicación web puede estar disponible para los distintos sistemas operativos disponibles para computadoras, aunque podríamos creer que esto es muy mala idea, empresas como Spotify han demostrado que el usuario puede pasar por alto que la aplicación de escritorio que tanto usa es en realidad una aplicación web.

Más la verdadera Revolución de JavaScript ha sido el poder extender una aplicación web a una aplicación móvil nativa. Esto es gracias a Facebook y su proyecto Open Source React Native, similar a lo que sucede con la aplicación de escritorio de Spotify, los usuarios no logran distinguir si es una aplicación nativa del sistema operativo de su Smartphone o una aplicación web adaptada para ese sistema operativo.

Esto no quiere decir que se desarrolle una sola aplicación y se pueda usar sin más en web, escritorio y móvil. Ya que lo que JavaScript y Frameworks como React y Vue nos ofrecen es un desarrollo más centralizado, en el cual todo el núcleo de nuestra aplicación está desarrollada bajo un mismo lenguaje.

Conclusión

JavaScript ha impactado a lo largo de los años el desarrollo tanto de páginas web, aplicaciones webs y ahora aplicaciones para los distintos sistemas operativos, sean móviles o de escritorio.

Mas no se trata nada más de seguir tendencias, querer usar una tecnología o un lenguaje porque todos lo hacen, JavaScript nos ofrece una gran cantidad de ventajas, pero también querer utilizar todas puede no ser lo correcto, cada proyecto puede requerir de un acercamiento distinto.