Mirando varios años hacia el futuro, los constructores digitales desbloquearán algunas de las innovaciones más emocionantes. Seis tendencias tecnológicas están posicionando a los desarrolladores de JavaScript para aprovechar las recompensas de una sociedad cada vez más hambrienta de aplicaciones de IA.
Python ha sido sinónimo de tareas de IA y aprendizaje automático durante años y sigue siendo el lenguaje principal de elección. El ecosistema de Python está lleno de potentes bibliotecas de código abierto, como TensorFlow, Keras, Pandas y Numpy, diseñadas específicamente para abordar el procesamiento de datos complejos y las tareas de IA.
Dicho esto, los cambios que examinaremos en esta publicación permiten a los desarrolladores de JavaScript construir aplicaciones que conectan múltiples servicios de IA y despliegan estas experiencias a nivel mundial en cualquier dispositivo, desde ordenadores de sobremesa hasta tabletas y paneles de vehículos eléctricos, con una velocidad increíble.
1: El Edge se está expandiendo, aumentando la demanda de aplicaciones que combinan capacidades de IA y se ejecutan en cualquier dispositivo
Edge comprende teléfonos inteligentes, robots, cortadoras de césped autónomas, enjambres de drones, sensores y el Internet de las cosas. A medida que más dispositivos y usuarios se conectan, la red global de datos e inteligencia se expande, lo que requiere nuevos paneles de control y paneles de visualización de datos.
El diseño web responsive permite a los desarrolladores construir una aplicación web que funciona bien en pantallas grandes como televisores o ordenadores de sobremesa, pantallas medianas como portátiles y tabletas, y pantallas pequeñas como teléfonos móviles. JavaScript es ideal para construir experiencias web responsive accesibles en cualquier dispositivo porque los marcos de JavaScript modernos proporcionan esta funcionalidad de forma nativa.
2: Los clústeres de cálculo de alta capacidad en la nube están disponibles a través de APIs.
Los centros de datos en la nube pueden entrenar y alojar los modelos de IA más potentes.
Los modelos que conocemos hoy en día, que nos ayudan a codificar, razonar tareas complejas y generar textos, imágenes y audio bajo demanda, pueden hacerlo porque han sido entrenados y se están ejecutando en grandes clústeres de supercomputadoras altamente especializadas, a un costo enorme.
En un futuro previsible, es probable que la nube siga siendo el hogar de la maquinaria necesaria para soportar el desarrollo continuo y el funcionamiento efectivo de las capacidades de IA que conocemos hoy en día.
Para todos, excepto los actores más prominentes en el mercado tecnológico, tiene más sentido recurrir a servicios basados en la nube según sea necesario para realizar tareas intensivas en GPU, como ajustar modelos o realizar predicciones con modelos existentes.
¿Cómo se accede a estas potentes máquinas colosales según sea necesario? A través de la tercera tendencia tecnológica: poderosas interfaces de programación de aplicaciones (APIs).
3: Los desarrolladores de JavaScript conocen a fondo las APIs. Las APIs conectan el Edge y la nube centralizada.
Las APIs son bloques de construcción potentes de funcionalidad que los desarrolladores pueden combinar para producir experiencias ricas sin ser expertos en todas las disciplinas de ciencias de la computación que fueron necesarias para construir las APIs en primer lugar.
Es esta capa de abstracción la que hace que las APIs sean tan poderosas. Un desarrollador solo necesita entender el uso de las APIs para aprovechar el almacenamiento avanzado, el reconocimiento de imágenes, la búsqueda semántica, el razonamiento lógico, el procesamiento de datos y las capacidades de recuperación de alta velocidad sin tener que leer un solo artículo de investigación. Las APIs permiten a los constructores componer rápidamente experiencias ricas.
La comunidad mundial de desarrolladores ha desarrollado décadas de herramientas, mejores prácticas, libros, charlas, documentación y patrones, lo que hace de la creación y el consumo de APIs una habilidad básica para casi todos los desarrolladores web que trabajan hoy en día.
Dado que las APIs son la lengua franca de Internet y sus constructores, se puede ver una decisión, como la de OpenAI, de poner sus potentes modelos a disposición a través de una API como lo que es: un empoderamiento disruptivo de los desarrolladores de software y sus usuarios finales.
Todos los lenguajes de programación pueden llamar a APIs, pero JavaScript tiene patrones bien establecidos para manejar la naturaleza asíncrona de las llamadas a APIs basadas en REST y JSON de manera eficiente. Las mejoras de sintaxis recientes siguen simplificando la combinación de múltiples operaciones asíncronas. A veces, JavaScript incluso puede ser elegante.
JavaScript se vuelve cada vez más fácil de usar. Los desarrolladores se unen en torno a los patrones que les permiten producir experiencias ricas rápidamente.
JavaScript posiciona de manera única a sus desarrolladores para construir el frontend y backend de sus aplicaciones en un solo lenguaje, lo que les permite conectar clientes en el Edge con los servicios de IA de alta capacidad de ejecución en la nube. Considera las posibilidades cuando los desarrolladores de JavaScript combinan interfaces que sus usuarios pueden tocar, arrastrar y hablar con los modelos de IA más potentes de hoy y mañana.
4: Los marcos de JavaScript incorporan los patrones de desarrollo más efectivos. Las plataformas de alojamiento cambian para implementar los marcos directamente.
Maros como Next.js codifican años de aprendizaje ganado con esfuerzo sobre las formas más rápidas y efectivas de construir e implementar aplicaciones web. Los proveedores de alojamiento están optimizando su infraestructura para implementar directamente los marcos de JavaScript, lo que requiere cero configuración o conocimientos de DevOps para poner una aplicación full-stack en producción.
Los desarrolladores de JavaScript pueden iterar rápidamente en su aplicación localmente, luego realizar un comando de git push para implementar su aplicación en una infraestructura que se escalará para admitir millones de usuarios.
Esta canalización de implementación permite a los desarrolladores modernos de JavaScript aprovechar la ley de iteración de Boyd's a su favor: "La velocidad de iteración supera la calidad de la iteración".
Para los desarrolladores de JavaScript, el ciclo que comienza con una idea asombrosa de una aplicación que ronda en su mente y termina con un prototipo en vivo que pueden mostrarle a su gerente en el lado opuesto de la Tierra nunca ha sido más corto.
5. Los constructores digitales que componen servicios de inteligencia artificial e iteran rápidamente escribirán las próximas aplicaciones destacadas.
Las próximas aplicaciones destacadas compondrán tuberías de servicios de inteligencia artificial para realizar hazañas de productividad e inteligencia que antes no eran posibles. Imagina combinar API de visión por computadora que identifiquen objetos en una transmisión de satélite con un modelo de lenguaje avanzado y grande que pueda razonar sobre la escena y una base de datos de vectores como la de Pinecone para recuperar contexto de memoria a largo plazo.Las aplicaciones podrían escanear incendios forestales mortales cuando recién están comenzando, buscar activos de respuesta a emergencias geográficamente más cercanos al inicio del incendio y guiarlos evitando el tráfico para ayudar a los humanos a sofocar un incendio devastador antes de que alcance su máxima fuerza, todo mientras emiten alertas a los teléfonos inteligentes de todos los que viven en el área para que puedan poner a salvo a sus familias y mascotas.
Estas soluciones avanzadas y otras que aún no podemos concebir pertenecerán a los constructores digitales que puedan componer servicios de inteligencia artificial de manera más rápida, probar localmente, iterar e implementar globalmente en todos los factores de forma, desde teléfonos inteligentes hasta paneles de drones y tableros de vehículos eléctricos.
Cuando los desarrolladores pueden unir rápidamente los últimos servicios de inteligencia artificial y acceder a redes globales de sensores, fuentes de datos y dispositivos controlables de forma remota, ven el Edge (el límite entre la red y los dispositivos) como una extensión programable de su imaginación. Pueden conectar agentes inteligentes para realizar trabajos que son demasiado peligrosos o tediosos para los humanos. Verdaderamente es un momento extraordinario para estar vivo. Y es un momento perfecto para aprender a programar en JavaScript.
Pero si aún te sientes incómodo al mencionar que JavaScript impulsa servicios complejos en producción, considera las empresas que ya han utilizado Node.js como parte de su pila tecnológica de producción, como Netflix, PayPal, LinkedIn, Walmart, Uber, eBay e incluso la NASA, por nombrar algunas.
6. JavaScript continúa recibiendo inversiones, mejoras en herramientas y bibliotecas robustas de inteligencia artificial.
Transformers.js es una biblioteca de JavaScript funcionalmente equivalente a la biblioteca de transformers de HuggingFace en Python. Transformers.js permite a los desarrolladores incluir procesamiento de lenguaje natural (NLP), capacidades de visión por computadora, reconocimiento de voz, clasificación y más en JavaScript puro. Esta biblioteca es solo un ejemplo de cómo el ecosistema de JavaScript continúa recibiendo poderosas herramientas de inteligencia artificial que inicialmente eran exclusivas de las bibliotecas de Python.La base de datos de vectores totalmente administrada de Pinecone, que proporciona memoria a largo plazo para la inteligencia artificial, está disponible a través de JavaScript y Python.
LangChain es uno de los marcos de código abierto más populares para trabajar con LLMs (Modelos de Lenguaje Grande y Avanzado) y construir aplicaciones generativas de inteligencia artificial. Es importante destacar que está disponible tanto en Python como en JavaScript.
TypeScript recientemente ha proporcionado seguridad de tipos a JavaScript, permitiendo a los desarrolladores refactorizar bases de código grandes con mayor confianza y construir aplicaciones grandes con un equipo de manera más efectiva.
Herramientas orientadas a desarrolladores continúan recibiendo una inversión tremenda de la comunidad de código abierto y de patrocinadores importantes. Dada la popularidad permanente y el aumento constante de las capacidades de este lenguaje, no vemos indicios de que esta inversión disminuya.
¿Qué significa todo esto para los desarrolladores de JavaScript y Python de hoy y mañana?
¿Desaparecerá Python? No. Proyectos como Mojo mejorarán la experiencia de desarrollo e implementación para la comunidad de Python.Pero el creciente apetito por aplicaciones ricas en datos que pueden ejecutarse en cualquier lugar, la accesibilidad de capacidades avanzadas de inteligencia artificial a solo una llamada de API y la continua combinación de marcos poderosos de JavaScript con plataformas de implementación altamente optimizadas representan un empoderamiento sin precedentes para los desarrolladores de JavaScript. Es un excelente momento para ser un desarrollador de JavaScript que construye en el espacio de inteligencia artificial.