devLecturas (III)

Cinco enlaces más: tres de CSS, uno de CMS nuevo para probar, y uno de accesibilidad…

Me encuentro en la newsletter de Frontend Focus con este generador de CSS crítico: lo apuntas hacia una URL, le especificas un tamaño de pantalla objetivo y te analiza el CSS para extraer el que es crítico para renderizar el «above the fold», que puedes incrustar en el HTML para minimizar el tiempo que tarda el navegador en mostrarte el contenido.

De la misma newsletter, pero de una edición posterior, sale esta técnica para sidenotes solo con CSS que este fan de las notas al pie y familia debería explorar con cariño. También esta de anotaciones.

Siguiendo con CSS, me encuentro con CSS Bed, un agregador de temas «classless» (esto es, no definen su CSS para determinadas clases, si no directamente para los elementos HTML).

Por no hablar solo de CSS… el 29 de septiembre se anunció la 1.0 de emDash, un CMS nuevo, construido sobre Astro, con el soporte (para bien o para mal, a gusto del consumidor) que parte de la pregunta (dicen ellos mismos) «¿cómo sería WordPress si se crease hoy?». Con la que está cayendo en Automattic, estudiar si es una alternativa real a WordPress, o puede serlo en el futuro, comienza a ser una necesidad…

Y cerramos con un poco de accesibilidad, de la mano de This hue shall pass, un verificador de la accesibilidad de paletas de color que, como factor diferencial, no solo te dice si la paleta es o no accesible, sino que te da herramientas para intentar mejorar su accesibilidad (idealmente, hasta pasar los criterios AAA, claro :-)).

devLecturas (II)

Cinco enlaces más de cosillas de desarrollo web entendido en sentido amplio (la edición anterior es de principios de junio, no sé yo si esto va a tener mucha continuidad, pero lo seguiremos intentando).

De los vídeos de la commit, celebrada a principios de junio, me han llamado la atención un par de charlas. La primera, una «nueva manera de testear el frontend», «test while developing«.

Y la segunda, la de Ramón Corominas sobre evaluación automática de accesibilidad:

Aprovechando que estoy con uno de accesibilidad, hace apenas unos días Olga Carreras repasaba la WCAG Evaluation Methodology (WCAG-EM) 2.0.

Volviendo a principios de junio, Manuel Matuzovic hablaba de encabezados «concientes de su contexto». La idea, si los navegadores acaban dándole soporte, es que finalmente podamos escribir bloques de código dándoles título con un <h1>, y que sea luego el navegador el que lo convierta en el h-loquesea conveniente usando un «offset» y le aplique el CSS adecuado, cosa especialmente interesante si se trabaja con componentes. De momento solo se está implementando en Firefox. Dedos cruzados para que lo adopten el resto de navegadores 🤞.

Y para cerrar (el enlace es más antiguo, pero yo la encuentro ahora), tenemos esta Retro UI library que no creo que use nunca, pero que me parece absolutamente maravillosa.

¿Matará la IA la colaboración abierta?

Tres noticias…

La primera, la declaración de Leiden sobre matemáticas e IA, con el soporte de la International Mathematical Union, que dice que cuidado con la IA. No dice que la IA no pueda suponer grandes avances (que los ha habido) en el campo, pero sí que está rompiendo cosas (más detalles en el New York Times y en Ars Technica). Mencionan, por ejemplo, que los colosos de la IA no son nada transparentes en el proceso (actualmente las matemáticas de primerísimo nivel son una cosa sorprendentemente abierta), y eso es realmente problemático. Pero me quedo, sobre todo, con otra de las cosas que destacan: los modelos de lenguaje están haciendo que alguien sin conocimientos pueda producir un intento de resolver un problema clásico extremadamente verosímil, sea correcto o no… y que esto está haciendo que los departamentos de matemáticas del mundo se vean inundados de demostraciones que, lamentablemente, se demuestran erróneas casi siempre… pero no sin consumir una cantidad de horas más que notable. Uno recuerda la época en que era extraño que pasara un año en ningún departamento de matemáticas sin que se recibiese una demostración del (mal llamado) teorema de Fermat, y no quiero ni imaginarme cómo debe ser la situación actual, en que no se puede descartar lo que te llegue, porque quién sabe… pero de momento estamos restando muchísimas más horas que las que sumamos.

Segunda noticia, que Ladybird, un navegador web alternativo en fase de desarrollo, anuncia que deja de aceptar pull requests, y que solo los mantenedores del proyecto podrán introducir cambios en el código fuente. Y que no se habilitará ninguna vía alternativa. Van de camino a su primera alfa y necesitan un proceso más estricto, con un modelo de seguridad más claro y un grupo más reducido de responsables. La aparición de las herramientas de IAg, dicen, rompe la antigua premisa de que un gran parche implicaba un gran esfuerzo y buena fe por parte del autor.

Y tercera, que Matt Mullenweg anuncia que WordPress.org pone en marcha una iniciativa de seguridad, de nuevo motivada por el avance constante de la IAg y el aumento de ataques en la cadena de suministro. Buscan encontrar el equilibrio entre lanzar las actualizaciones de seguridad lo más rápido posible, pero reteniéndolas el tiempo suficiente para garantizar que no han sido comprometidas. A partir de ahora, cualquier versión nueva de un plug-in deberá esperarse “hasta 24 horas” antes de distribuirse mediante las actualizaciones automáticas, de modo que tanto el equipo humano de revisión como “Gandalf”, un nuevo bot basado en IA, puedan analizar a fondo los cambios, y dicen que esperan reducir el plazo a pocos minutos.

Y la cuestión, claro, es que ya no hay que «hacer los deberes» para lanzar unas cuantas páginas de texto, una (presunta) demostración matemática o un parche para un software, con buena o mala fe, y los editores del mundo se ven inundados. En un primer momento puedes suponer que es falta de un buen proceso para recoger y estudiar el alud, pero estamos llegando (hemos llegado, estoy casi seguro) al momento en que ni los mejores embalses pueden luchar contra la riada, y eso está teniendo efectos secundarios que pueden llegar a ser devastadores, tanto en los momentos en que una buena actualización se quede atrapada en el proceso como en aquellos en que una mala se cuele por el filtro.

Cinco devLecturas (I)

Inauguramos serie de entradas pseudoregulares (espero) en obm: cosillas que he ido leyendo y me han hecho gracia, en general alrededor del diseño y el desarrollo web. A ver cuánto dura la cosa…

El 25 de mayo, el artículo Responsive Web Design, de Ethan Marcotte, cumplía los 16 años. Qué viejos somos. El propio Marcotte nos recordaba lo que escribió sobre el tema cuando «solo» tenía diez años.

Para los que tiráis de WordPress, el 25 de mayo en Freelandev repasaban las novedades que trae la 7.0. Aquí el enlace al episodio.

El 29 de mayo, Rachel Andrew daba su repaso mensual en web.dev a las novedades de la plataforma web. Lo más destacado, que entran en el «baseline» una pseudoclase nueva y container queries por el nombre del contenedor y por custom properties (variables, vaya).


Dejo para el final los contenidos con/sobre IA, y así quien no quiera leer estas cosas puede ahorrárselas fácil.

El 26 de mayo en el podcast de Syntax hablaban de decisiones que, por mucho que vayas a tirar de agentes para tu proyecto, deberías tomar tú antes de dejarles que se pongan a ello: el esquema de la base de datos, las estrategias de validación, el enrutado, el flujo de autenticación, metodología CSS y framework de interfaz de usuario y el tipo de comunicación entre front y back.

Antes de eso, el 5 de mayo (ordeno en el orden en que yo encontré / leí las cosas), Addy Osmani hablaba de su repo Agent Skills en GitHub. Me fascinan estos repositorios porque, con sus problemas, son recopilatorios de buenas prácticas que, me da la impresión, o no se hacían o no se hacían con tanto cariño y esmero cuando el objetivo era educar humanos, y no agentes (seré muy feliz si se me corrige). En cualquier caso, tanto la entrada de blog como el repo me parecen una lectura muy interesante.

Ventanas partidas en Firefox

Me entero por este artículo de The Register de que hace ya un tiempo que se puede activar la vista partida en Firefox, que te permite ver dos páginas en una sola ventana del navegador:

Captura de pantalla de un navegador con dos pestañas abiertas en vista partida. A la izquierda vemos un editor de WordPress con esta ventana abierta, a la derecha este blog.

Que me diréis: ¿y no es lo mismo que abrir dos ventanas del navegador? Pues se parece, sí, pero te ahorras unos cuantos píxeles de la interfaz del navegador. Si, como yo, usas pestañas verticales (en mi caso, usando Sidebery), entonces la cosa pasa de ocupar toneladas de interfaz a algo viable:

Captura de pantalla con dos pestañas abiertas en modo partido. A la izquierda vemos la página de The Register mencionada en la entrada, a la derecha este blog. Además, a la izquierda, tenemos un porrón y medio de pestañas mostradas de manera verical ocupando una cantidad importante de píxels.

¿Que cómo se activa?

  • Parece que con Firefox 149 (que debería llegar dentro de tres semanas, el 24 de marzo) la funcionalidad estará disponible por defecto, pero mientras tanto, en Firefox 148 hay que, primero, ir a about:config, aceptar el botoncito que te avisa de que tocar cosas dentro de about:config tiene sus riesgos, buscar browser.tabs.splitView.enabled y activarlo (haciendo doble clic).
  • Y después de activarlo, es tan fácil como «control + clicar» una pestaña y la otra, y después, botón derecho y «Open in split view» (o como se diga en el idioma en que tengas configurado en Firefox)

A partir de ahí, podéis cambiar la cantidad de espacio asignada a cada pestaña arrastrando en la barra que las separa, y desconectarlas haciendo botón derecho en la barra de pestañas y «Separate split view«.

Y este ha sido el bricoconsejo de hoy…