Ya hacía tiempo que no publicábamos un recopilatorio de actualidad, y lo cierto es que se nota porque este viene cargadito, especialmente en la parte de Machine Learning e IA. Este es un campo que avanza tan rápido que pronto hará palidecer a la propia Skynet. No paran de surgir avances y novedades como PaLM, la nueva IA de Google tres veces más potente que GPT-3, o las continuas mejora de Copilot, pero quien sin duda se lleva la palma en esta ocasión es Dall-E 2 de Open AI.
Suponemos que ya lo habrás visto, pero si no: tienes que verlo. Han presentado la nueva versión de su IA para generar imágenes a partir de descripciones. Así a bote pronto no parece gran cosa, pero lo que puede hacer esta nueva versión es alucinante.
Basta darle un descripción de lo que queremos para que lo genere con una gran calidad y además pudiendo incluso definirle estilos concretos. El CEO de Open AI, Sam Altman, ha pedido frases al azar a la gente de Twitter y ha generado ilustraciones con DALL-E a partir de ellas. Por ejemplo: “Una chimenea templada, en lo alto de un edificio, en una ciudad apocalíptica, con estilo Steampunk”, o “Un conejo detective sentado en un banco en el parque leyendo un periódico en un escenario victoriano”.
Te recomendamos que te veas este vídeo de Dot CSV en el que Carlos Santana desgrana su funcionamiento y sus implicaciones con todo lujo de detalles. Y si después de esto se te ha disparado el hype y quieres subirte a la ola de la IA antes de que sea demasiado tarde, recuerda que nosotros podemos ayudarte.
Pero no te quedes solo ahí, porque tenemos muchas más novedades interesantes a continuación. Y recuerda, si quieres tener estas noticias calentitas y recién sacadas del horno en tu bandeja de entrada, solo tienes que suscribirte a nuestro boletín:
🌐 Desarrollo web
El verdadero motivo por el que existe !important en CSS
Steven Pemberton, uno de los coautores de la especificación CSS original, reveló en Twitter hace poco por qué añadieron la cláusula !Important al estándar: para cumplir con una ley de EEUU que exigía que ciertos textos fuesen de un tamaño muy concreto y fue la manera sencilla que se les ocurrió para lograrlo sin complicarse la vida 🤦🏻 Añadió que, “Cualquier otro uso es probablemente un abuso y una señal de que no entiendes CSS adecuadamente”. Ahí queda eso…
👩💻 Lenguajes y plataformas
.NET MAUI Release Candidate
Ya está disponible la primera release candidate de .NET MAUI, que saldrá oficialmente el mes que viene. Esta versión ya es feature complete, o sea, que ya tiene todo lo que va a llevar en su versión definitiva y solo se modificarán (en teoría) bugs y cosas que aparezcan durante estas semanas de prueba. Con .NET MAUI podremos crear aplicaciones que funcionarán sin cambios en Android, iOS, Windows y macOS con soporte oficial de Microsoft. Para Linux habrá versión de la comunidad, no soportada oficialmente. Por cierto, esta Release Candidate tiene soporte Go Live, es decir, que Microsoft ya da soporte para aplicaciones que vayan a producción con ella.
También han salido la preview 3 de .NET 7, que se centra sobre todo en mejoras de la compilación Ahead of Time (AoT) para ganar rendimiento en el inicio de las aplicaciones, y la de Entity Framework 7.
El próximo 8 de mayo termina el soporte de .NET 5
Esta versión, aparecida en noviembre de 2020, no era una versión LTS (de soporte a largo plazo, Long Term Support). Por lo tanto solo tiene soporte durante 18 meses o, como máximo, 6 meses después de que haya salido la última versión LTS. Esta fue la versión 6.0 aparecida en noviembre. Así que ya sabes: actualiza cuanto antes a .NET 6 tus aplicaciones con .NET 5. Normalmente es tan fácil como cambiar la versión en el archivo .csproj y poco más. Pero aquí te dejamos un enlace a los cambios importantes en .NET 6 que podrían causarte problemas de compatibilidad hacia atrás.
Y este mes termina el soporte de .NET framework 4.5.2, 4.6, y 4.6.1...
Suponemos que no tendrás nada ya con estas tecnologías “clásicas” pero, si es así, no tienes disculpa para no actualizarlas al menos a .NET framework 4.8, con soporte indefinido.
Kotlin 1.6.20 disponible
Jetbrains acaba de lanzar la nueva versión de su lenguaje Kotlin. En esta versión destaca su mejor integración con la plataforma Java y las mejoras de compilación. En concreto se integra mejor con las clases genéricas de Java gracias a la inclusión de los tipos definitivamente no anulables. Han mejorado la velocidad de build gracias a la compilación en paralelo de todos los archivos en un módulo. Hay un montón de detalles más, que puedes ver en el enlace.
Han lanzado React 18.0
Aunque han cambiado muchísimas cosas por dentro como por ejemplo el nuevo renderizador concurrente, Suspense, los nuevos hooks, etc… aparentemente han cumplido su promesa de hacer que el cambio de versión sea suave y sencillo. No obstante hay cambios no compatibles hacia atrás que debes considerar antes de cambiar de versión.
🤖 Machine Learning y Datos
PaLM, nueva IA de Google tres veces superior a GPT-3
El mundo de los modelos de lenguaje natural, como el ya mítico GPT-3, está avanzando a pasos agigantados. Y PaLM, el nuevo de estos presentado por Google hace unos días, es tan potente y entiende tan bien que es capaz de hacer cosas alucinantes como explicar chistes o averiguar de qué película estamos hablando si las pistas que le damos son unos pocos emojis 😯 Las aplicaciones de este tipo de modelos son tantas y tan amplias que es como utilizar un arma: se puede usar para el bien y para el mal. La legislación europea para IA que se quiere aprobar tendrá mucho que decir sobre esto, y esperemos que la sepan evolucionar a la velocidad adecuada…
Inoculación de redes neuronales para evitar ataques
Es bien sabido que existen muchas maneras de engañar a los sistemas de Deep Learning para que identifiquen erróneamente objetos y cambien sus conclusiones. Estos algoritmos se basan en simular el funcionamiento de la comunicación entre neuronas del cerebro (sinapsis) y ahora, un grupo de investigadores de la Universidad de Michigan (que incluye ingenieros, biólogos y matemáticos) se ha inspirado en el sistema inmune de los mamíferos para crear un nuevo sistema de redes neuronales adversariales que se “inoculan” para ser capaces de resistir a entradas “sospechosas” que confunden a otras redes neuronales convencionales. De momento los resultados parecen prometedores. El artículo es interesante.
Deep Learning : nuevos modelos basados en "energía"
Interesante (y larga) entrevista con Yann LeCun, profesor de la Universidad de Nueva York y científico jefe en Meta, en el que habla de por qué está más ilusionado que en los últimos 30 años con una nueva forma de abordar las redes neuronales profundas: los modelos basados en energía. Estos utilizan conceptos de física estadística y diferencias de energías para funcionar, y cree que podrán llegar a conseguir un “modelo unificado del mundo”, y suponer una revolución en Inteligencia Artificial. Muchos detalles en el enlace.
👨💻 Dev Life
Desarrollador: el puesto más demandado, que crece un 21% en España
A ver, esto se basa en un estudio de Infojobs, y hoy en día los programadores no se buscan en esa plataforma tanto como otros puestos, así que seguramente los números son mucho mayores que los del estudio. Pero nos puede servir de referencia. Puedes ver en el enlace del final más detalles, pero los números importantes son:
- Casi 200.000 puestos de informáticos buscados el año pasado.
- Desarrolladores, lo más buscado (57.900).
- Salario medio ofrecido: 33.558€
- Muy poca gente anotada a cada oferta (poca competencia)
Nada nuevo bajo el sol: en este sector vamos “sobrados”, con todo lo bueno y lo malo que conlleva. Lo que no sabemos es cómo ¡no hay incluso más gente formándose como desarrollador!
Despedir por Zoom a 900 personas 😱
El pasado mes de diciembre, la fintech Better.com dio mucho que hablar cuando decidió gestionar un despido de un modo un tanto polémico: citó a 900 de sus empleados en Zoom y los despidió a todos en 1 minuto. Poco después despidió a 3.000 más por email 🤦🏻♂️ Con la legislación española y europea esto sería imposible, pero si trabajas para una empresa en según qué países, podría pasarte.
Nueva Ley Europea de Mercados Digitales
La Ley de Mercados Digitales impondrá ciertos límites a partir de los cuales las plataformas digitales deberán asegurar la compatibilidad con servicios de sus competidores, tanto en apps de mensajería, como tiendas de aplicaciones, navegadores, etc. Todavía debe ser ratificada por el Parlamento Europeo y el proceso tardará años, pero el cabreo que tienen las grandes tecnológicas hace pensar que será muy buena para los usuarios en general. Probablemente será una de las Leyes que más impacto van a tener en el sector en los próximos años. Si logra el efecto que ha tenido el RGPD (Reglamento General de Protección de Datos), probablemente lleve a las grandes empresas tecnológicas y a empresas de todo el mundo a adoptar la normativa aunque no estén en Europa ya que forzará a muchas a cambiar su arquitectura y sus prácticas de introducción de barreras de acceso en el mercado.
Tampoco podemos desdeñar sus efectos negativos sobre la privacidad. Aunque, por supuesto, hace falta conocer los detalles para aventurarse.
⚙️ Herramientas
GitHub Copilot disponible para Visual Studio 2022
Bueno, pues por fin, 9 meses después, ya tenemos disponible GitHub Copilot también para Visual Studio. Esto es una gran noticia para los desarrolladores pues, tras meses usándolo en VSCode, puedo afirmar que sin lugar a dudas es quizá el mayor multiplicador de la productividad que haya visto. Hay que tener cuidado, eso sí, pues no siempre sugiere código bueno, y hay que saber lo que se está haciendo… pero bien utilizado, una vez empieces a usarlo, no sabrás vivir sin él. Te hablamos largo y tendido sobre él en esta conversación hace unos meses.
GitHub Copilot Labs
Y por cierto, también han anunciado un Copilot experimental que tiene todavía más características (aunque puede que rompa más o haga más burradas). Entre otras cosas puede explicar código en palabras llanas (algo muy útil para entender código de otros poco comentado o de lenguajes que no controles) y, sobre todo, es capaz de ¡traducir algoritmos entre lenguajes! O sea, por ejemplo de Python a C#, etc… Reutilización llevada al extremo. Interesante instalarla ya mismo…
Cuentas clásicas de Azure Storage: desaparecen
Si tienes alguna cuenta de almacenamiento de Azure Storage creada hace mucho tiempo con el modo “clásico”, es hora de que las migres ya a Resource Manager. Microsoft ha anunciado que van a dejar de funcionar el 31 de agosto de 2024. Queda tiempo, sin duda, pero no te duermas en los laureles…
Spring en Azure
Ya está disponible de manera general y soportada Spring Cloud Azure 4.0, un proyecto Open Source que proporciona integración transparente entre Spring y Azure. Proporciona a los desarrolladores una manera que ya conocen de desplegar sus apps en Azure, añadiendo unas pocas líneas de configuración y cambios de código mínimos. Y para los que requieren algo de nivel empresarial, también está ya disponible para usar en previewAzure Spring Cloud Enterprise, el resultado de la colaboración entre Microsoft y VMWare que te permitirá poner en producción de manera sencilla y con alto rendimiento y velocidad tus aplicaciones Spring Boot.
👾 Frikadas
Hackeando una calculadora de los 90 😯
Cuando un “friki” pilla COVID ¿se queda en la cama tan tranquilo" Pues va a ser que no… Un gran ejemplo es el de George Stagg, un desarrollador británico que estos días de convalecencia los dedicó a hackear una calculadora Casio CFX-9850G de 1996, con 32KB de RAM y una pantalla LCD de 128x64 píxeles para que pudiera ejecutar código máquina y hacer lo que él quisiera. Y lo ha documentado todo con detalle en este estupendo hilo de Twitter. Si eres de las personas que odia leer hilos de Twitter (🙋🏻), aquí te dejamos el hilo “desenrollado”.
Procesador fotónico para el supercomputador francés
El supercomputador francés Jean Zay, el número 105 del mundo en potencia, ha incorporado un coprocesador fotónico de LightOn que lo dota de una potencia extra formidable, siendo el primero del mundo en utilizarlos. Este tipo de coprocesadores utilizan luz en lugar de electricidad para acelerar algoritmos apoyando a CPUs estándar y GPUs de NVidia. Puede alcanzar un rendimiento de 1.5 PetaOPS, que es entre 8 y 40 veces superior a la aceleración que consigue una GPU por sí misma. Un tema interesante que muestra por dónde va el futuro del hardware de alto rendimiento…
El código original de Microsoft GW-BASIC de 1983
Microsoft ha liberado el código fuente completo de la versión original de su intérprete de GW-BASIC de 1983 (la GW se rumorea que fue por Gates-Whitten, los dos principales responsables del lenguaje). Se ha liberado con los cambios referenciados a hace 40 años (mira la captura 😆) y se ha archivado pues no se admitirán Pull Requests ya que está solo como referencia histórica. La mayor parte del código es en C++.
🤦♂️ Gambadas
Vulnerabilidad Spring4Shell podría ser peor que Log4j
Si no vives en una cueva te habrás enterado de la nueva vulnerabilidad en Spring, denominada Spring4Shell. Podría llegar a tener mayor impacto que la de Log4j del año pasado, que impactó a millones de servidores Java por todo el mundo. En este caso, dependiendo de la configuración de tu aplicación, un ataque podría ser tan fácil como realizar una petición HTTP especialmente construida a tu servidor 😱 Si usas Spring, asegúrate de validar bien los bindings y especificar explícitamente qué campos aceptas específicamente cuando te envían datos.
Lo peor de todo: tras un par de semanas desde que apareció Log4j la gente sigue bajándose versiones antiguas de la página de Spring, sin parchear y por tanto vulnerables 🤦🏻♂️