Probablemente a estas alturas ya estarás hasta las narices de que te hablen de Inteligencia Artificial (a todos nos pasa) ya que desde diciembre del año pasado no se habla de otra cosa. Pero es que estamos inmersos en mitad de una auténtica revolución, un tsunami tecnológico. Si quieres estar al dia sin ahogarte en este maremágnum informativo, apúntate a nuestro boletín y recibirás directamente en tu bandeja de entrada nuestra selección de novedades.
Este pasado mes han tenido lugar los principales eventos de las grandes tecnológicas: desde el Microsoft BUILD hasta Google IO (que hay quien dice que debería pasar a llamarse Google IA 😆). Y es que hemos asistido a un verdadero torrente de novedades relacionadas con la IA, a pesar de ser eventos para desarrolladores, no para el público en general. Hoy mismo será el de Apple y seguro que vemos mucho de lo mismo...
Por ejemplo, el resumen del BUILD de Microsoft podría ser: "Microsoft quiere que todos los desarrolladores sean desarrolladores IA". Se anunciaron inversiones significativas en herramientas para democratizar el desarrollo de este tipo de aplicaciones para la "nueva era de la IA". Destacan ONNX Runtime y Olive, dos herramientas que ayudan a los desarrolladores a integrar experiencias impulsadas por IA en sus aplicaciones de Windows. Ciertos socios relevantes de Microsoft, como NVIDIA, Qualcomm, AMD o Intel, están trabajando para mejorar específicamente el rendimiento de los modelos de IA (de todo tipo, no solo modelos grandes de lenguaje, LLMs) en dispositivos con Windows. También se está integrando GitHub Copilot X en Windows Terminal...
Para encontrar novedades "puras" de desarrollo tradicional hay que bucear mucho por las presentaciones:
- Dev Drive: se trata de un nuevo sistema de archivos para Windows que está optimizado para las cargas de trabajo de los desarrolladores dando mucho más rendimiento que el sistema de archivos convencional. Se incluirá con Windows a finales de este año y está disponible para pruebas ahora si estás en el programa Windows Insider. Junto con Dev Home son las dos grandes novedades. En breve haremos un artículo específico para el blog para contártelo con más detalle.
- Windows Terminal Preview 1.18: esta versión agrega Tab Tearout, que permite arrastrar pestañas fuera de la terminal a diferentes ventanas (ya era hora). También recarga las variables de entorno al abrir nuevas pestañas o paneles.
- CLI para desarrolladores de Azure: esta herramienta ayuda a los desarrolladores a controlar sus configuraciones de Azure con prácticas recomendadas de seguridad y nube. Es compatible con Visual Studio Code, GitHub Codespaces, Visual Studio, Bicep, Terraform y más.
- Azure Cosmos DB: este servicio de base de datos agrega nuevas características para la elasticidad, como capacidad de ráfaga (burst), claves de partición jerárquicas y vistas materializadas para NoSQL.
Y el evento de Google se asemejó al anterior de Microsoft de hace unas semanas, con una inundación de asistentes basados en LLMs en todas partes. Su asistente para desarrolladores se llamará Codey en vez de Copilot, pero es esencialmente lo mismo, aunque prometen que se podrá entrenar con la base de código privada de la empresa. Para ofimática el asistente se llama Duet (Microsoft le llama también Copilot en un alarde de originalidad y de ganas de confundir a la gente, como siempre). Algo interesante es Tailwind (sí, como el framework CSS, otros cracks del marketing 🤦🏻) que es un tutor interactivo basado en chat para ayudar a los estudiantes. Han presentado nuevas versiones de sus LLMs (PaLM 2 y Gemini) que a ver cómo se comparan con GPT-4 a la hora de la verdad. También presentaron el Generative AI Studio, una plataforma para crear, entrenar y afinar generadores sintéticos de información. Y si buscas algo de programación "tradicional", pues lo único reseñable fue que han liberado la nueva y esperada API de rutas de Google Maps.
El resumen es que estamos ante una oleada imparable. La IA será cada vez más importante en todo lo que hacemos como desarrolladores. Y ojo, no solo me refiero a los modelos grandes de lenguaje, que son el "Hollywood" de la disciplina y están dominados por las 2 o 3 empresas que tienen la capacidad de crearlos. Los modelos, ya "tradicionales", de aprendizaje automático tienen mucho que aportar todavía a todo tipo de empresas e industrias. Son "el mundo real" del Machine Learning y es muy importante conocerlos. ¿A qué estás esperando?
La verdad es que se nos ha ido un poco la mano con la introducción, pero espera, espera, que todavía hay más aquí abajo: 👇🏻👇🏻👇🏻
🌐 Desarrollo Web
Nueva iniciativa Baseline de Google
Baseline es una iniciativa anunciada por Google en I/O 2023 para ayudar a los desarrolladores a ver si una función o API es "segura" para ser utilizada en su sitio o aplicación web. Su objetivo es abordar el problema de mantenerse al día con los rápidos cambios en los navegadores y saber cuándo es "seguro" usar una función (en el sentido de que no va a fallar ya que va a estar soportada). Pretende ser una "línea en la arena" que nos ayude a decidir si podemos dar por adoptada una determinada funcionalidad, en un mundo de navegadores "evergreen" que se actualizan solos todo el tiempo.
El resumen es que todo lo que sea compatible con las dos versiones más recientes de los principales navegadores formará parte de Baseline. Baseline será una línea en continuo movimiento, con nuevas funciones que se convertirán en parte de ese conjunto cada mes. Y cada año se publicará un informe enlazable de las funciones que forman parte de Baseline en un momento dado, sacando versiones a as que podemos referirnos.
Es un intento de que digamos adiós a CanIUse.
El icono del candado, condenado a desaparecer
El icono del candadito que aparece en la barra de direcciones en los navegadores, indica que un sitio se carga a través de HTTPS y que por lo tanto la comunicación con el servidor es segura. Originalmente se usó para llamar la atención sobre la seguridad adicional proporcionada por HTTPS, pero hoy en día HTTPS es la norma y el icono de candado ya no es tan relevante como antes.
Además, y más importante, muchos sitios de phishing usan HTTPS y muestran el icono de candado, lo que puede llevar a confusiones ya que muchos usuarios básicos lo asocian con que el sitio es seguro.
Por todo esto, Google va a eliminar este icono en Chrome para pasar a utilizar otro, relacionado con los ajustes, que será mucho más claro y con mayor valor para los usuarios. Si tienes la versión "Canary" de Chrome ya lo puedes activar desde los ajustes avanzados.
Por supuesto, si Google hace esto, los demás irán detrás. Y si no, Chrome sigue teniendo un porcentaje brutal del mercado...
PWAs: una UI de instalación mejorada en el escritorio
Las Aplicaciones Web Progresivas o PWAs permiten convertir a las aplicaciones Web en algo muy parecido a aplicaciones nativas, pudiendo trabajar sin conexión, y pudiendo ser instaladas como aplicaciones normales (es transparente para el usuario que por debajo son apps Web y trabajan en el navegador). Con las últimas mejoras de Chrome en la forma de definir su instalación puedes conseguir más instalaciones con muy poco esfuerzo.
Cómo creé una extensión de Chrome con Copilot desde cero
Este interesante artículo muestra el proceso completo que siguió un desarrollador de GitHub para crear desde cero una extensión funcional para Chrome usando GitHub Copilot. En solo 7 pasos y sin saber más que un poco de CSS (para ponerla bonita). Parte de una pregunta inicial a Copilot Chat (todavía en beta cerrada) para empezar a aprender sobre el tema y luego utiliza una serie de comentarios (eso sí, muy detallados) para que su copiloto haga todo el trabajo. Muy revelador y nos da una idea de la potencia y los beneficios de este tipo de tecnologías para los programadores, a saber: nos hacen mucho más productivos, reducen nuestro miedo a cometer errores y hacen mucho más fácil aprender sobre tareas de programación concretas sin salir siquiera del entorno de desarrollo 😯
👩💻 Lenguajes y Plataformas
Microsoft está rescribiendo el kernel de Windows con Rust
Bueno, no todo, que sería inviable, pero sí algunas partes importantes. Rust es el lenguaje del que están enamoradas muchas organizaciones ya que aúna la potencia de lenguajes de "bajo nivel" como C y C++, con la seguridad de memoria de Java o C#.
Linux ha lanzado ya una versión de su kernel con partes escritas o rescritas con Rust. Y ahora Microsoft anuncia que lleva 2 años trabajando en secreto en rescribir varias partes del de Windows con el mismo lenguaje (aunque aquí ya lo habíamos comentado hace bastante tiempo).
En concreto el nuevo kernel tiene 32.000 líneas ya escritas con Rust, mientras que la biblioteca DirectWrite Core ¡tiene 152.000! Incluso han añadido un syscall al kernel con ese lenguaje.
Sigue siendo una gota de agua en el inmenso océano del código de Windows, pero dice mucho sobre este lenguaje...
Serverless fue un gran error... dice Amazon
La gente de Amazon Prime Video, en un alarde de transparencia, publicó hace poco un artículo explicando cómo se ahorraron un 90% de costes de AWS (sí, su propio servicio cloud) convirtiendo su arquitectura de microservicios de nuevo a un monolito 😱
Es cortito, muy interesante y deberías leerlo, pero más interesante es el análisis que hace Jeff Delaney del canal de YouTube Fireship. En este vídeo nos habla del artículo, los cambios que hicieron para mejorar, pero también de cómo debemos afrontar un proyecto en el cloud, como un conjunto de equilibrios entre necesidades y opciones.
En conclusión: ¿quiere decir que debemos huir de los microservicios y volver a los monolitos? Pues depende... Tendrás que ver estos dos estupendos recursos 😉
👩💻 Dev Life
Un hombre con parálisis vuelve a caminar con una interfaz activada por sus pensamientos
El holandés Gert-Jan sufrió hace 10 años una lesión medular a causa de un accidente de bicicleta y se quedó paralizado de medio cuerpo para abajo. Ahora, ha recuperado el control natural de sus piernas paralizadas con la ayuda de un "puente digital" que restablece la comunicación entre el cerebro y la médula espinal y transforma el pensamiento en acción. Este ingenio médico combina biología, neurología, electrónica, mecánica e Inteligencia Artificial, y es un hito que puede tener gran impacto en el futuro, ya que estiman que podría utilizarse una estrategia parecida para restablecer las funciones de brazos y manos, así como aplicarse a otros problemas neurológicos, como la parálisis debida a un ictus. La investigación la han liderado investigadores de Escuela Politécnica Federal de Lausana (Suiza).
15 minutos al día para mejorar tu salud
Si pasas mucho tiempo frente a una pantalla, es importante que cuides tu salud física y mental. Un plan de ejercicios diario puede ayudarte mucho a mejorar tu postura, tu circulación, tu estado de ánimo y tu rendimiento. Este plan te llevará tan solo 15 minutos al día, y se ha hecho viral en Hacker News hace poco porque parece que funciona. ¡Está también en español!
⚙️ Herramientas
Ya puedes probar gratis GitHub Copilot
GitHub Copilot se lanzó hace casi 2 años ya. Durante los primeros meses era gratuito (con lista de espera) para que lo probases y, de paso, les ayudases a afinarlo. Una vez que se lanzó definitivamente solo se puede acceder pagando. Ahora, por fin, tiene una versión de prueba gratuita accesible para todo el mundo. Puedes probarlo durante un mes y comprobar sus bondades. Creo que es lo más inteligente por parte de GitHub ya que. una vez que lo pruebas en serio no creo que quieras prescindir de él (consejo: invierte un rato en ver cómo se usa bien para poder sacarle partido).
Yo llevo usándolo casi desde que lo lanzaron y la verdad es que no he mirado atrás: es tan impresionante y te potencia tanto en el trabajo que vale cada céntimo que pagas por él. A veces parece que te lee el pensamiento (da miedo). Ahora puedes comprobarlo por tu cuenta si no lo hiciste en si momento 😉
De todos modos, un día de estos os hablaré de algunas alternativas gratuitas (que no sé cuánto durarán así)...
El nuevo buscador de GitHub abierto a todos
Después de dos años en desarrollo y un periodo en el que solo unos pocos podían acceder a probarlo, ahora ya podemos usarlo todos. La verdad es que es una pasada lo que se puede hacer con todos los operadores y filtros que ofrece para localizar código entre millones de repositorios públicos. Incluso te ayuda con autocompletado para que vayas más rápido. Échale un vistazo.
Protección Push de GitHub: evita fugas de claves y secretos
GitHub ha lanzado una nueva función de seguridad llamada Protección Push, que tiene como objetivo evitar que los desarrolladores filtremos inadvertidamente claves y otros secretos en nuestro código. Esta funcionalidad escanea los repositorios en busca de secretos fácilmente identificables antes de hacer un commit y te avisa para evitar que los envíes. Parece que no te va a pasar nunca, pero desde que se lanzó como beta en abril de 2022 dicen que ha evitado más de 17.000 filtraciones accidentales de secretos. La función es gratuita y está disponible, por el momento, en todos los repositorios públicos. Para habilitarla vete a Configuración > Code Security and Analysis y habilítala allí.
Nueva herramienta para explorar y probar las APIs de Google Workspace
Google ha lanzado Workspace APIs Explorer, una herramienta que permite explorar y probar las APIs de Google Workspace sin tener que escribir código. Se trata de una forma visual de interactuar con las APIs y puede ayudar a crear los fragmentos de código que necesitas, solucionar problemas y ver los resultados de las solicitudes de API en tiempo real. Al estar autenticados para poder usarla, la herramienta actuará sobre datos reales, así que hay que tener cuidado al usarla, pero puede resultar muy útil.
🤖 Machine Learning y datos
Azure AI Studio: crea tus propios "Copilots"
Microsoft ha lanzado Azure AI Studio, una nueva capacidad dentro del servicio Azure OpenAI. Permite a los desarrolladores basar los modelos de Azure OpenAI Service en sus datos de forma segura sin ni siquiera tener que ver esos datos ni tener que entrenar un modelo con los mismos. Esto facilita a los clientes la creación de sus propios "copilotos" impulsados por IA utilizando herramientas en Azure y modelos de aprendizaje automático de OpenAI (por debajo utilizan GPT-4 y otros modelos, directamente en Azure).
El proceso de construcción del copiloto comienza con la selección de un modelo de IA generativa como GPT-4 y dándole un "meta-mensaje", o una descripción básica del rol del copiloto y cómo debería funcionar. Luego se le agrega almacenamiento cloud para poder realizar seguimiento de las conversaciones con los usuarios y responder con el contexto apropiado. Los "copilotos" también se pueden extender con plugins para permitir que accedan a datos de terceros y a otros servicios.
Microsoft cree que Azure AI Studio permitirá a las empresas aprovechar los modelos de OpenAI en sus propios datos, de conformidad con sus políticas organizacionales y derechos de acceso, sin comprometer aspectos como la seguridad, las políticas de datos o la clasificación de documentos. Se pueden integrar datos internos o externos, incluyendo datos estructurados (bases de datos), no estructurados (documentos) o semiestructurados (XML, JSON).
La IA generativa afectará a 300 millones de empleos en las principales economías
Según un estudio de Goldman Sachs, la IA generativa podría automatizar "una cuarta parte del trabajo realizado en Estados Unidos y la eurozona". El banco de inversión afirma que los sistemas de IA generativa como ChatGPT podrían aumentar el PIB mundial un 7% en 10 años, pero también exponer a la automatización a 300 millones de trabajadores a tiempo completo, especialmente abogados y personal administrativo.
La investigación utilizó datos sobre las tareas que suelen realizarse en miles de ocupaciones y partió de la base de que la IA podría realizar tareas como cumplimentar declaraciones de impuestos, evaluar reclamaciones de seguros o documentar escenas de crímenes.
En muchos puestos de trabajo (por ejemplo, en programación) la automatización será parcial y complementará al trabajo de la persona, mejorando su productividad. Pero no hay que quitar ojo la evolución de las herramientas Low Code / No Code que van a experimentar un gran avance con los LLMs y sí podrán sustituir mucho trabajo de programación convencional para aplicaciones sencillas.
Es importante señalar que esta investigación es más conservadora que la mayoría de los estudios.
El CEO de OpenAI dice que la era de los LLMs ya ha terminado
No se sabe si fue un desliz, una salida de tono o tan solo algo para despistar a la competencia, pero Sam Altman, el CEO de Open AI ha dicho cosas muy importantes en una charla en el MIT el otro día. Lo recogen en este artículo en la revista Wired.
Según él estamos ante el principio, pero también el fin de la era de los LLMs tal y como la conocemos. Según Altman, hacer los modelos de más tamaño todavía (entrenar a GPT-4 costó 100MM de dólares) tendría ganancias muy marginales en cuanto su efectividad. Hasta ahora Open-AI ha utilizado las mismas técnicas para construir sus diferentes modelos: simplemente los ha hecho más grandes y con más datos. Y hay multitud de empresas haciendo lo mismo en la actualidad tratando de alcanzarlos.
Pero parece ser que no es cuestión de echar más datos y más dinero al modelo, sino que mejorarlos va a requerir nuevas líneas de investigación y mejorar mucho los Transformers en los que se basan, para conseguir mejores modelos con menor tamaño. Así que queda mucho por hacer y, en realidad, casi toda la innovación que se ha producido en el campo en los últimos meses viene de la comunidad Open Source.
Por eso, precisamente, Open AI quiere regular la IA a toda costa: les favorece a las grandes empresas como ellos, y echará atrás a cualquier competidor pequeño o a los mantenedores de proyectos de código abierto.
🤦♂️ Gambadas
Si proteges tu Android con huella dactilar... date por hackeado
Investigadores de Tencent Labs y de la Universidad de Zhejiang han presentado un nuevo ataque llamado "BrutePrint", que ataca mediante fuerza bruta las huellas dactilares en los smartphones Android para saltarse la autenticación del usuario y tomar el control del dispositivo. Se aprovechan de varias vulnerabilidades combinadas para, por un lado conseguir infinitos intentos de desbloqueo, y por otro para simular millones de huellas dactilares en el sensor. Con esto consiguen desbloquear el móvil en muy poco tiempo: entre 3 y 14 horas si hay una sola huella registrada, y mucho antes si hay más de una. La biometría es muy cómoda, pero viene con un problema muy grave de serie: si la clave se ve comprometida no la puedes cambiar, porque la clave eres tú...
Fallo grave en el servicio Cloud SQL de Google expuso datos confidenciales
Se ha revelado un nuevo fallo de seguridad en el servicio Cloud SQL de la plataforma Google Cloud (GCP) que podría haber sido explotada para obtener acceso a datos confidenciales. La empresa de seguridad en la nube israelí Dig descubrió que esta vulnerabilidad podría haber permitido a un actor malintencionado escalar desde un usuario básico de Cloud SQL hasta un administrador de sistema completo en un contenedor 😱, obteniendo acceso a datos internos de GCP como secretos, archivos sensibles, contraseñas y datos de clientes. Google solucionó el problema en abril de este año, después de una divulgación responsable en febrero.
PyPI bajo ataque: se detuvieron nuevos usuarios y cargas de paquetes
El Python Package Index (PyPI), el repositorio principal de paquetes de Python del que depende básicamente todo el mundo, tuvo que deshabilitar temporalmente las suscripciones de nuevos usuarios y las cargas de paquetes debido a un aumento de usuarios y proyectos malintencionados. La decisión se tuvo que tomar porque, llegado un punto, los administradores de PyPI no fueron capaces de dar respuesta al volumen de actividad maliciosa que estaban sufriendo. No se revelaron detalles adicionales sobre el malware o los autores de amenazas.
Esto de los ataques a repositorios de paquetes empieza a ser ya un clásico (nefasto) y un grave problema del sector, perpetrado por actores maliciosos internacionales que intentan envenenar las cadenas de suministro de software de millones de usuarios y empresas.
👾 Frikadas
Aventuras con un driver para webcam de 1999
Cuando compramos algún dispositivo tenemos que claro que no nos va a durar toda la vida (aunque debería). Lo más responsable ecológicamente sería que una webcam que compramos en 1999, y que sigue funcionando perfectamente, pudiésemos usarla en el equipo que acabamos de comprar 24 años después. Lo malo es que, aunque el hardware siga funcionando, si no tenemos los controladores adecuados: ¡mala suerte! Nos quedamos sin poder usarla.
Un friki llamado "benjojo" dijo que no podía ser. Así que se lio la manta a la cabeza y se puso a "arreglar" el último driver disponible (para Windows XP) para lograr que funcionase en Windows 10. Esta es la historia de su fascinante viaje...
Spoiler: la cámara funcionó, pero la calidad de imagen era... de 1999, claro 😆