miércoles, 20 de noviembre de 2024

¡Salió Blender 4.3!

Originalmente el lanzamiento estaba previsto para el 12 de noviembre, pero se pospuso una semana y desde ayer, 19 de noviembre, contamos con una nueva versión de Blender: la 4.3.

Aquí está el video oficial del lanzamiento (¡de casi media hora!) realizado por Jonathan Lampel de CGCookie y, nuevamente, con la fantástica participación de harry blends en la parte dedicada a las novedades en Geometry Nodes y con las inesperadas y muy bienvenidas incorporaciones de Christopher3D para presentar las novedades en materiales y renderizado (en Cycles) y de Aidy Burrows (de Creative Shrimp) para presentar las novedades en EEVEE, VSE y el Compositor.

A mi parecer, las principales novedades de este lanzamiento son:

Grease Pencil 3

Grease Pencil ha sido reescrito desde cero para eliminar limitaciones y conseguir una mejora general en su performance. Además, ahora se pueden utilizar objetos de Grease Pencil en Geometry Nodes.

Pueden ver a Grease Pencil y Geometry Nodes trabajando juntos en la primera parte de la charla “Claymation and Nex Lab Grease Pencil VR” que dio Daniel Martínez Lara en la reciente Blender Conference:

 

Geometry Nodes: Gizmos y la nueva Zona “For Each Element”

Otro video que se publicó ayer en el canal de YouTube de Blender es el siguiente, donde Simon Thommes presenta las nuevas funcionalidades de Geometry Nodes:

Las más destacables son:

  • Ahora es posible agregar gizmos a los grupos de nodos. Esto permite editar las entradas al árbol de nodos directamente en el Editor de la Vista 3D sin necesidad de ir al Editor de Nodos ni a la pila de Modificadores.
  • La zona “For Each Element” (para cada elemento). Permite evaluar a los nodos en la zona para cada elemento de una geometría. Tiene similitudes con la Zona de Repetición. A decir de Simon en el video, la zona de repetición es un bucle que funciona de forma serial y la zona para cada elemento es un bucle que funciona de forma paralela.

Brush Assets

El nuevo flujo de trabajo para la gestión de pinceles (que desde ahora son assets).

La biblioteca de activos "Essentials" incluye 130 pinceles de fábrica.

Vulkan

Blender utilizar OpenGL para dibujar sus gráficos. La última versión estable de OpenGL data de 2017. Ya hace tiempo que en Blender vienen trabajando para sustituir OpenGL con su “sucesor natural”: Vulkan

A partir de esta versión 4.3 se puede utilizar Vulkan, de forma experimental. Es una primera implementación y está en fase de pruebas. Pero es el futuro y va a resultar, entre otras cosas, en mayores velocidades de respuesta del Editor de la Vista 3D.

Entre las Lighting Talks de la Blender Conference hubo una de Jeroen Bakker,  el desarrollador principal del módulo Vulkan en Blender, que promocionó el uso y testeo de Vulkan. La pueden ver entre las marcas de tiempo 7:05 y 9:55.


martes, 5 de noviembre de 2024

Se entregaron los Suzanne Awards 2024

El jueves 24 de octubre, la última actividad del día en la Blender Conference 2024 (23 al 25 de octubre) fueron los “Lightning talks” y la ceremonia de entrega de los Suzanne Awards.

La presentación y entrega de los premios estuvo a cargo de Fiona Cohen y, con el gran destaque del español Toni Mortero, los ganadores fueron:

Categoría Mejor Diseño:

Los finalistas de esta categoría fueron:

Y el ganador fue Catwalk - Toni Mortero, Omayra González, Lidia Luna.

Categoría Mejor Animación:

Los finalistas fueron:

Y el ganador fue SOLO - Mundo Caníbal - Toni Mortero.

Categoría Mejor Corto Animado:

Los finalistas fueron:

Y el ganador fue Koji (Robbie McFadzean y Glen Johnston, Reino Unido).

También había entre los nominados unos agrupados bajo el título "Selección especial", que no sé bien a que se refiere, si es que eran elegibles para las tres categorías o si eran una especie de mención especial a trabajos que estuvieron cerca de ser nominados.
Ellos eran:

Lightning talks

Presentadas por Thomas Dinges, y antes de la entrega de los Suzanne Awards, se realizaron los “Lightning talks” (algo así como “Charlas relámpago”) fueron 14 y con temáticas y orígenes muy variados.

Las que más me gustaron fueron:

  • la de Jeroen Bakker, el desarrollador principal del módulo Vulkan en Blender, que promocionó el uso y testeo de Vulkan, disponible de forma experimental en la versión 4.3, cuyo lanzamiento está previsto para el día 12 de este mes. Igualmente ya se puede probar en las versiones beta.
  • la de Tim Tan que informó del estado actual del web de Blender Studio en chino y presentó dos nuevos proyectos: IABE (International Alliance of Blender Educators) y el Blender Day en China (Shenzhen, 15 de noviembre).
  • y la de Thomas Radeke sobre la creación de animaciones Pixel Art en Blender.

También se destacaron charlas sobre representaciones para el área de salud sexual y reproductiva (de Nienke Helder y Josef Trojan), las de presentaciones de plug-ins (GamiFlow de Mathieu Einig y geoMIDI de Adam Conyne), la reseña sobre la BConLA24 (Amber Kelly y Jason van Gumster) y un par de charlas humorísticas sobre Blender y puntos geográficos y sobre Blender y la inteligencia artificial (de Gottfried Hofmann y Frederik Steinmetz).

Y, obviamente, las que tratan sobre la creación de cortos animados:

y de estudios y proyectos relacionados:

lunes, 4 de noviembre de 2024

Calendario Inkscape del mes: November 2024

Desde el lunes está disponible el mensil de noviembre del calendario 2024 que arma Moini para su web VektorRascheln.

Es un calendario, en inglés, cuya ilustración mensual es tomada de las imágenes que originalmente fueron creadas para el concurso del “About-Screen” de Inkscape.

Para este mes de noviembre el diseño que eligió fue el titulado “The Way of the Vector”, obra de Adrien Marceau, que participó del concurso para la versión 1.3.

En la entrada original, y tomando como excusa los caracteres japoneses que muestra el diseño, Moini incluye un mini tutorial sobre las opciones que ofrece Inkscape para la escritura de texto vertical y/o de derecha a izquierda.

El diseño se acompaña, como siempre, con una cita relacionada a Inkscape a la derecha del mensil.
Esta vez la cita está firmada “ris” y su traducción al español sería algo así:

“Estoy muy contento de poder usar Inkscape porque el libre y fácil de usar. Espero que el desarrollo de Inkscape continúe rápido [...]
¡Gracias a todos los desarrolladores de Inkscape!”.

domingo, 3 de noviembre de 2024

Se viene la Blendiberia 2024

Esta semana se realizará una nueva edición de la Blendiberia que, luego de varias ediciones, será en formato presencial.

Se realizará en Sitges, Barcelona, y consistirá de dos días de talleres (el jueves 7 y viernes 8) y dos días de conferencias (el sábado 9 y domingo 10).

Serán 26 expositores y talleristas. Entre ellos Toni Mortero, reciente ganador de dos premios en los Suzanne Awards 2024 (uno de esos premios por “SOLO - Mundo caníbal” sobre el que se basará para dar su charla sobre cómo preparar un personaje 3D para que se vea como 2D y que supongo que es la misma que dio en la Blender Conference de hace unos días, pero en español).

miércoles, 30 de octubre de 2024

Freelance

Este corto animado, Freelance, es un “relato catártico sobre el trabajo por cuenta propia”.

Es obra de Luciano Muñoz (lolypopman), animador chileno con sede en Canadá, y varios amigos. Está producido por Tumblehead.

En la BConLA 2024 (la Conferencia de Blender en Los Ángles, realizada en abril de este año), Luciano Muñoz dió una charla sobre el “Making of” de este corto:

martes, 22 de octubre de 2024

Mañana empieza la Blender Conference 2024

Mañana empieza la Blender Conference 2024 en la Casa de la Cultura Felix Meritis de Ámsterdam (Países Bajos), la misma sede que el año pasado.

Este año la conferencia tiene un tema principal: “Making Blender”. Las charlas, presentaciones y talleres girarán en torno a las distintas interpretaciones que los más de 100 conferencistas hagan de ese tema (ya sea “hacerlo mejor”, “hacerlo posible”, “hacerlo funcionar en un flujo de trabajo”, etc.).

Según la lista de conferencistas, ellos provienen de Alemania, Argentina, Australia, Austria, Bélgica, Canadá, Chequia, China, España, Estados Unidos, Finlandia, Francia, Georgia, Honduras, India, Israel, Italia, Japón, Lituania, Noruega, Países Bajos, Polonia, Reino Unido, Singapur, Suecia y Ucrania. Aunque faltan nacionalidades, pues algunos declararon el país de residencia y no el de origen.

Visto el cronograma, las presentaciones que, a priori, me resultan más interesantes tan solo por su título y/o presentador/es, son (el horario está en GTM+2, que es el que corresponde a Ámsterdam. Para el horario en Uruguay hay que restarle 5):

Miércoles 23

Jueves 24

Y a las 18:00 hs. se desarrollarán los Lightning talks y la ceremonia de entrega de los Suzanne Awards (presentados por Fiona Cohen y Thomas Dinges).

Viernes 25

lunes, 21 de octubre de 2024

Full Circle #209 (setiembre 2024)

Aquí va mi reseña de la edición #209 de Full Circle magazine. Es el número correspondiente a setiembre de 2024 y se publicó el 27 de ese mes. Consiste en un PDF de 73 páginas y 8,8 MB.

Como siempre, empiezo con la sección Noticias (páginas 4 a 21) y de ella destaco un par:

También, del resto de notificaciones de lanzamientos, merecen mención los lanzamientos de:

Y, en cuanto a los artículos propiamente dichos, resalto:

  • Entre las páginas 32 y 35 se publica un nuevo artículo de la fántastica serie de Mark Crutch sobre Inkscape. En esta oportunidad trata sobre algunos nuevos controles (en la versión 1.3) que, sobre los objetos, mejoran la usabilidad de algunas capacidades previamente existentes:
    • manejadores para el redondeado de esquinas (se puede aplicar a cualquier trayecto, no tiene porque ser un rectángulo y hace uso del efecto de trayecto Esquinas y se puede acceder a él vía el botón Añadir esquinas LPE en la Barra de controles de herramienta).
    • manejadores para la edición de los desenfoques (aparecen cuando se activa la herramienta Nodo con un objeto seleccionado que ya tenga aplicado un desenfoque).
  • En cuanto a la serie sobre LaTeX, en las páginas 28 a 30, Robert Boardman continúa con la miniserie de entregas, en orden alfabético, de algunos de los muchos paquetes disponibles en ctan.org para LaTeX.
    Para la letra B, primero destaca el tema “background” que incluye, entre otros, los paquetes: Luego destaca los temas “barcodes” (códigos de barras), “bidi” (bidireccional, para modificar la dirección de escritura), “biology”, “blank pages” (que incluye el paquete NotesPages) y “book publication” (que incluye el paquete flippdf).
  • En la columna sobre Stable Diffusion (páginas 26 y 27) Jon Hoskin escribe sobre Forge que, dice, es más rápido, con más caracterísitcas y extensiones que Automatic 1111. Aparte, dice que la mejor forma de instalarlo es vía Pinokio y que requiere que se tenga una tarjeta gráfica Nvidia.
    También se necesitan modelos apropiados (por ejemplo, Flux).
  • Las notas de tapa son las habituales reseñas de Adam Hunt que en esta oportunidad consisten en comparativas entre Ubuntu Cinnamon y Linux Mint Cinnamon (páginas 51 a 56) y entre Ubuntu MATE y Linux Mint MATE (páginas 57 a 62).

Finalmente, aquí va mi traducción libre de la editorial, escrita, como siempre, por Ronnie Tucker:

lunes, 14 de octubre de 2024

Salió Inkscape 1.4

Finalmente ayer, domingo 13 de octubre y luego de mucho trabajo por parte del equipo, se hizo pública la versión 1.4 de Inkscape.

De las novedades que presenta esta versión, mis dos preferidas son:

  • El previsualizador unificado de fuentes (experimental, se activa en las Preferencias).
    Remplaza el cuadro de diálogo de Texto y Tipografía y presenta una lista personalizable de previsualización de fuentes que, además, aplica inmediatamente la elegida al texto seleccionado.
  • El soporte para vínculos internos al exportar en formato PDF.
    Después de agregar el soporte para páginas múltiples en la versión 1.2, la posibilidad de crear vínculos internos era muy esperada.

Además de contar con muchas correcciones, algunas de las demás novedades que presenta esta nueva versión son:

  • La nueva Rejilla modular y mejoras en la Rejilla axonométrica.
    La nueva Rejilla modular consiste en rectángulos con espaciados opcionales entre ellos. Se me hace que puede ser muy útil para bocetos de diseño web que emulen el uso de la propiedad display: grid; de CSS.
    En las Rejillas axonométricas ahora se puede indicar una proporción de aspecto entre el alto y el ancho de la forma de rombo que generan.
  • Se le agregó a la herramienta de Construcción de formas (Shape Builder) la capacidad de trabajar con gráficos pixelares.
    Con esta herramienta, los trayectos seleccionados junto con una imagen pixelar funcionan como trayectos de Recorte (clipping paths) sobre clones de la imagen.
  • La galería de Filtros.
    Permite ver una lista de las categorías de filtros y una previsualización en miniatura de cada filtro. Accesible desde el menú Filtros.
  • La galería de Extensiones.
    Con un funcionamiento similar al de la Galería de Filtros, también se agregó una Galería de Extensiones, accesible desde el menú Extensiones.
  • El renovado cuadro de diálogo de Muestras de color.
    Entre varias de sus mejoras, ahora soporta, además de los archivos de las paletas de color de GIMP, los de Adobe Color Book y Adobe Swatch Exchange.
  • Un nuevo set de iconos a disposición.
    Se llama Dash (proyecto de Henrique Perticarati), son más de 500 iconos y funcionan en temas claros y oscuros.

No son muchísimas las novedades en este lanzamiento debido a que los desarrolladores han estado trabajando en dos grandes proyectos que no llegaron a estar completados para esta versión. El principal de ellos es la migración a GTK4 (que, además, causó muchos errores que influyeron en el retraso de este lanzamiento) y el otro es el esperadísimo soporte para el modo CMYK (en el que Martin Owens está trabajando denodadamente).

El sábado tuvimos una especie de avant-première del lanzamiento a cargo del mismo Martin Owens:


Ayer mismo, en el canal de YouTube de Logos By Nick, se publicó esta breve reseña (también en inglés) de esta nueva versión:


Acerca de

El diseño que se muestra en la ventana  “Acerca de” (que es el que aparece al inicio de esta entrada) se titula Inkscape's Path-Artist's Blossom y es obra de Inkonic, el artista ganador del concurso 2024.


Pueden leer más información (en inglés) sobre esta nueva versión en la web de Inkscape o en las notas de este lanzamiento.

Descargar Inkscape 1.4 para Linux, Windows o macOS

jueves, 10 de octubre de 2024

¡Se vienen los Suzanne Awards 2024!

Como es habitual a fines de este mes se realizará en Ámsterdam la Blender Conference. Será del miércoles 23 al viernes 25.

Y, como siempre, en algún momento del evento se realizará la ceremonia de entrega de los Suzanne Awards 2024.

Hasta ayer eran 40 los videos presentados con un nivel, en la mayoría de ellos, alto o muy alto.

Si desea calificar los trabajos que se postulan a los Suzanne Awards (o a algunos de ellos) tiene que acceder con su Blender ID y podrá hacerlo (con hasta 5 estrellas). De esta votación saldrán los nominados al premio que será definido por los asistentes a la Blender Conference.

Ya me vi los 40 videos y, más allá de las categorías en las que terminen compitiendo, acá van mis 10 preferidos:

Creo que el favorito principal es Watermelon girl, dirigido por SouthernShotty (Estados Unidos), y sobre el que ya escribí hace 6 meses.

Pero estos otros nueve están a nivel y también son buenos aspirantes (listados en orden alfabético):

Este listado representa solo una preferencia personal. Claro que quedaron fuera de mi selección por lo menos una decena de videos que perfectamente pueden terminar siendo elegidos. Ya veremos.

lunes, 7 de octubre de 2024

Algunas etiquetas HTML no muy conocidas

Este video del canal de YouTube TLB STATION presenta y describe una serie de etiquetas HTML que no son muy conocidas y que pueden ser muy útiles.
Ellas son:

<abbr>

El elemento de abreviación representa una abreviación o acrónimo. Opcionalmente lleva el atributo title que debe contener solo la descripción completa de la abreviación.

Para ver este elemento en acción, coloque el puntero del ratón sobre la sigla HTML y verá una especie de tooltip con el valor del atributo title.

Vea más detalles del elemento HTML <abbr> en mdn.

<details> + <summary>

El elemento details genera un widget de revelación que permite al usuario acceder a información adicional, previamente oculta. A este tipo de widget habitualmente se le llama “acordeón”.

Dentro de la etiqueta details va:

  • el título del widget dentro de una etiqueta summary
  • el contenido que estará originalmente oculto.

Vea más detalles del elemento HTML <details> en mdn.

<fieldset> + <legend>

El elemento fieldset se utiliza en un formulario para agrupar elementos relacionados, creando una caja alrededor de ellos. Para darle un nombre o título a ese grupo de elementos se puede utilizar la etiqueta legend.

Vea más detalles del elemento HTML <fieldset> en mdn.

<datalist> + <option>

El elemento datalist especifica una lista de opciones predefinidas (como valores de los atributos value en etiquetas option) para un elemento input. También utiliza esos atributos de las etiquetas option para proveer de capacidades de autorrellenado.

Vea más detalles del elemento HTML <datalist> en mdn.

<dialog>

El elemento dialog se utiliza para crear una caja de diálogo (un popup o una ventana modal).

Vea más detalles del elemento HTML <dialog> en mdn.

<progress> + <meter>

El elemento progress se utiliza para mostrar el progreso de una tarea (como una barra de progreso) con los atributos value para indicar el estado de la tarea y max para indicar el valor máximo (la tarea completada).

El elemento meter es parecido al elemento progress pero agrega tres atributos (min, low, high) que marcan umbrales para el progreso, al estilo de un indicador de potencia de una batería.

Vea más detalles del elemento HTML <progress> y del elemento HTML <meter> en mdn.

<mark>

El elemento mark se utiliza para resaltar texto (de forma predefinida, le agrega un fondo amarillo). Si bien realizar esto con hojas de estilo es sencillo, hacerlo directamente en el código HTML tiene valor semántico.

Vea más detalles del elemento HTML <mark> en mdn.

<wbr>

El elemento wbr (word break opportunity) se utiliza para indicarle al navegador donde puede cortar una palabra si necesita crear una nueva línea. El caso de uso más habitual de este elemento son las urls muy largas, ya que este corte de palabra no incorpora un guión de separación de sílabas. Si lo que se desea es un guion suave, en lugar de este elemento se debe utilizar el caracter &shy;.

Vea más detalles del elemento HTML <wbr> en mdn.


Un par más de elementos sobre los que trata el video (<pre> y <code>) ya me eran conocidos.

viernes, 4 de octubre de 2024

Full Circle #208 (agosto 2024)

Aquí va mi reseña de la edición #208 de Full Circle magazine. Es el número correspondiente a agosto de 2024 y se publicó el 30 de agosto. Consiste en un PDF de 66 páginas y 8,5 MB.

Como siempre, empiezo con la sección Noticias (páginas 4 a 22) y de ella destaco tres:

  • Las cadenas de texto de la interfaz de usuario de la futura GIMP 3 entraron en freeze stage, un paso más hacia la esperadísima nueva versión de GIMP. El próximo paso será la entrada de su API en el freeze stage.
  • System76, la desarrolladora de Pop!_OS, lanzó la primera versión alfa del entorno de escritorio COSMIC.
  • Se publicó LinuxMint 22 (Así que pronto me tocará actualizar mis sistemas).

También, del resto de notificaciones de lanzamientos, merecen mención los lanzamientos de:

Y, en cuanto a los artículos propiamente dichos, resalto:

  • Entre las páginas 34 y 37, Mark Crutch escribe un nuevo artículo de su fantástica serie sobre Inkscape. En esta oportunidad trata sobre una nueva (y algo oculta) característica de la versión 1.3. En caso de tener una imagen recortada con un trayecto (a través de Objeto > Recorte > Aplicar recorte) en el menú contextual (el que aparece con el clic secundario) hay una nueva opción: “Recortar imagen por recorte“ (una extraña traducción de “Crop and clip”). Al elegir esta opción, la imagen se incrusta en el archivo (en caso de no estarlo ya) y se le eliminan los píxeles por fuera del rectángulo de selección del trayecto de recorte.
  • En las páginas 30 a 32, Robert Boardman presenta una nueva parte de su serie sobre LaTeX. En esta oportunidad comienza una miniserie de entregas en las que va a ir reseñando, en orden alfabético, algunos de los muchos paquetes disponibles en ctan.org para LaTeX.
    Para la letra A, el primer tema de interés es “Accesible”, que incluye 8 paquetes. De ellos, dos de los que destaca son:
  • En la columna sobre Stable Diffusion (páginas 28 y 29) Jon Hoskin escribe sobre Pinokio, una forma más sencilla de instalar (con un solo clic) motores de Inteligencia Artificial. Dispone de más de 100 scripts verificados y unos 25 de la comunidad que no están verificados.
  • En la columna “My Opinion”, de las páginas 45 y 46, Erik escribe sobre el comando fsck.
  • En las páginas 56 a 58 Adam Hunt hace una rápida reseña de Ubuntu Lomiri 24.04, una distribucióin experimental cuya mayor atracción, para mí, es que es obra del gran Rudra Saraswwat.
  • Y, nuevamente, la nota de tapa son las habituales reseñas de Adam Hunt sobre distribuciones GNU/Linux: esta vez le toca el turno a Ubuntu Budgie 24.04 LTS (páginas 49 a 52) y a Ubuntu Unity 24.04 LTS (páginas 53 a 55).

Finalmente, aquí va mi traducción libre de la editorial, escrita, como siempre, por Ronnie Tucker:

miércoles, 2 de octubre de 2024

Calendario Inkscape del mes: October 2024

Desde el lunes está disponible el mensil de octubre del calendario 2024 que arma Moini para su web VektorRascheln.

Es un calendario, en inglés, cuya ilustración mensual es tomada de las imágenes que originalmente fueron creadas para el concurso del “About-Screen” de Inkscape.

Para este mes de octubre el diseño que eligió fue el titulado “Farmscape - Create your dream”, obra de Stephanie Luz, que participó del concurso para la versión 1.3.

El diseño se acompaña, como siempre, con una cita relacionada a Inkscape a la derecha del mensil.
Esta vez la cita está firmada “artistlibre” y su traducción al español sería algo así:

“El paisaje vectorial de los programas libres y de código abierto fue alterado para siempre... ¡con la llegada de Inkscape!
Yo era un aprendiz de diseñador que tenía un sistema no muy potente y que no alcanzaba a comprarme programas propietarios.
Estoy contento, tomé la opción correcta.
Aún hoy, feliz de ver los grandes avances de Inkscape consiguiendo casi todas las funcionalidades de los programas no-libres”.

domingo, 29 de septiembre de 2024

Principios básicos del desarrollo web accesible

En este curso de scrimba, publicado como un único video en el canal de YouTube de freeCodeCamp.org, el instructor y desarrollador web Fredrik Ridderfalk enseña, en inglés, los principios básicos del desarrollo web accesible.

Se trata de un curso-taller que, partiendo de un sitio web con muchos problemas de accesibilidad, va presentando esos problemas y cómo corregirlos.

Para poder hacer los ejercicios hay que seguir el curso ingresando en la plataforma de scrimba (que solicita autentificación vía correo electrónico). De forma gratuita se pueden hacer 10 de los ejercicios planteados. Luego de eso se bloquean las partes de ejercicios en las lecciones y, para desbloquearlas, hay que registrarse mediante pago mensual de aproximadamente U$S 10.

Aquí listo el contenido del curso con algunas notas que agregué sobre los puntos que trata cada parte:

(0:00:00) Accessible Development Intro (1'06")
Presentación de la temática del curso.
(0:01:32) Understanding web accessibility (4'49")
Tecnologías de asistencia:
  • lectores de pantalla
  • programas de reconocimiento del habla
  • magnificadores de pantalla
  • dispositivos de entrada alternativos
  • etc.
Cómo funcionan las mejoras de accesibilidad
  • Vista de árbol de accesibilidad
  • HTML semántico
  • accesibilidad por teclado
  • pestaña “Accesibilidad” en las herramientas del desarrollador en el navegador web
Métodos de comprobación de la accesibilidad
  • usar las tecnologías de asistencia
  • verificadores de la tasa de contraste
  • herramientas automáticas (como Lighthouse en Chrome/Chromium, el Inspector de Accesibilidad de Firefox, aXe, asistentes de Inteligencia Artificial).
(0:06:09) Aside - Text contrast (3'49")
Para la WCAG hay tres niveles de accesibilidad: A, AA, AAA.
El mayor valor de contraste de color entre el texto y su fondo es 21 (negro y blanco).
Tasas mínimas para alcanzar el nivel AA
  • 4.5 de contraste para texto normal
  • 3 de contraste para texto de 24px o más
Tasas mínimas para alcanzar el nivel AAA
  • 7 de contraste para texto normal
  • 4.5 de contraste para texto de 24 px o más
(0:10:02) Aside - Use of color (1'18")
Consideraciones sobre cómo reafirmar un significado agregando formas y texto y no solo basándose en colores.
(0:11:23) Text contrast (6'31")
Un par de ejercicios donde aplicar lo visto previamente sobre contraste de color entre el texto y su fondo. En el segundo ejercicio hace uso de la propiedad background-blend-mode.
(0:17:56) Aside - Alternative Text (5'33")
Se deben describir las imágenes significativas a través de un texto alternativo que se ingresa como valor del atributo alt en la etiqueta img.
(0:25:13) Aside - Links (7'19")
Los vínculos se deben definir con el elemento <a>, deben ser fácilmente reconocibles como vínculos y no deben presentar un texto ambiguo.
(0:32:36) Links and alternative text (5'07")
Ejercicio en la web de ejemplo:
  • escribir textos alternativos apropiados,
  • convertir los vínculos en reconocibles y sin ambigüedades y,
  • aumentar el contraste del color del texto de unos subtítulos con su fondo.
(0:37:46) Aside - Labels (6'12")
Los elementos label deben estar definidos en los formularios web y, en el caso de los campos de texto (y de las listas desplegables), asociados entre sí con un id y un atributo for.
El texto de ejemplo en un campo de texto debe ser eso: un texto de ejemplo y no el texto de su elemento label.
Si crea un botón use el elemento button. De no ser posible, deberá agregar las funcionalidades que provee ese elemento, agregando un nombre accesible (aria-label) y accesibilidad a través del teclado (tabindex y onclick).
(0:44:02) Aside - Radio Buttons (1'52")
En el caso de los botones de opción, se le agrega más contexto agrupándolos con el elemento fieldset (grupo de campos) y nombrándolos con el elemento legend.
(0:45:54) Labels (3'09")
Ejercicio en la web de ejemplo:
  • Agregar las etiquetas label (con un atributo for del mismo valor que el atributo id del elemento input correspondiente).
  • Cambiar el valor de los atributos placeholder por textos de ejemplo y aumentarle la intensidad a su color gris para que alcance el nivel AAA.
  • Sustituir el tic del botón de envío por un texto apropiado.
(0:49:07) Semantic HTML (5'45")
La importancia de utilizar etiquetas descriptivas, en particular las de las regiones de referencia (landmark regions): nav, main, section, footer, etc.
(0:54:55) Lists (4'42")
No solo en listas propiamente dichas, sino que las etiquetas de listas (ordenadas o desordenadas) se deben usar para los elementos conectados y consecutivos.
(0:59:41) Text-size (3'21")
El pixel (px) es una unidad de medida fija. Definir las dimensiones de los textos con esta unidad no es una buena práctica. Por otra parte, si se utiliza rem (que equivale al tamaño predefinido del texto en el navegador, normalmente 16px) el usuario puede cambiar el tamaño del texto en las preferencias del navegador y todos los tamaños de los textos se recalcularán en consecuencia.
(1:03:06) Headings (2'51")
Los títulos y subtítulos:
  • Deben definirse con las etiquetas <hn> para la estructura de la página (y no para su apariencia),
  • los niveles de subtítulos deben ser consecutivos (<h2>, <h3>, etc.), sin saltearse ninguno,
  • se debe definir un solo h1 por página.
(1:06:01) ARIA (5'13")
Los atributos ARIA (Accessible Rich Internet Applications) se adosan a los elementos HTML para agregarles contexto e información para las tecnologías de asistencia. Algunos de estos atributos son role, tabindex, label y aria-checked.
(1:11:07) ARIA live regions (6'02")
Los atributos aria (aria-live, aria-controls, etc.) se adjuntan a partes de la página destinadas a actualizarse de forma dinámica (como notificaciones en tiempo real, mensajes de estado luego de enviar un formulario o actualizaciones resultantes de filtrados o búsquedas).
Aside - Accessible JavaScript (3'20")
Existe código JavaScript que se ejecuta con eventos del ratón (mouseover, mouseout) por lo que, si no se utiliza el ratón para navegar, no se puede acceder a él. Así que es preferible utilizar eventos click, de enfoque (focus) o de desenfoque (blur). Pero, aún más preferible es agregar el contenido que depende de esos eventos directamente en el flujo de elementos de la página y ocultarlo o hacerlo visible con la propiedad opacity.
Aside - Hiding content (2'36")
A la hora de esconder contenido visualmente (barras laterales, modals, etc.) hay opciones como display: none; o visibility: hidden;, pero ambas remueven el contenido del árbol de accesibilidad. Es preferible utilizar opacity:0; o mover ese contenido fuera del viewport, de forma de ocultarlo visualmente pero sin quitarlo del árbol de accesibilidad. Y, en cuanto a los modals, es preferible no utilizarlos, ya que es complejo hacerlos accesibles.
(1:16:58) Aside - Skip Navigation Link Part 1 (3'31")
Vínculo oculto a la vista (movido hacia afuera del viewport) que se muestra al pulsar la tecla Tab (gracias a :focus) y que permite saltearse el menú de navegación de una página e ir directamente al contenido.
(1:20:39) Aside - Skip Navigation Link Part 2 (2'00")
Se le agrega un tiempo de transición al enfoque y desenfoque del vínculo creado en la parte anterior. No es indispensable hacerlo, pero facilita al usuario el darse cuenta de la existencia de esta opción.
(1:22:36) Skip Navigation Link (1'43")
Ejercicio de agregar en la web de ejemplo un vínculo para saltearse el menú de navegación, como se vio en las dos partes anteriores.
(1:24:23) Final challenge part 1 (2'38")
Hacer una especie de auditoría de todos los problemas de accesibilidad que presenta la página de contacto de la web de ejemplo.
(1:27:27) Final challenge part 2 (4'12")
Aplicar a la página de contacto todos los cambios resultantes de la revisión hecha en la parte anterior.
(1:31:43) Outro (1'13")
Una somera recapitulación de los temas tratados durante el curso.

Las lecciones Aside - Accessible JavaScript y Aside - Hiding content son posteriores a la subida del video a YouTube y no se encuntran en él. Para verlas debe utilizar la plataforma de Scrimba.

viernes, 6 de septiembre de 2024

“Prepare for Execution”, la segunda parte del episodio 1 de “Dynamo Dream”

Dynamo Dream es una distopía fantástica escrita y dirigida por Ian Hubert. En la primera parte del primer episodio, titulada "Salad Mug" y estrenada en 2021, conocimos a Josephine Simon (interpretada por Kaitlin Romig) quien produce y vende ensaladas para sobrevivir día a día en la útima ciudad de la Tierra.

Después de haberle salvado la vida (dejando caer una taza) a una aliada política y amiga del poderoso "Floorhead", este le otorga un deseo como recompensa. Ella pide poder comunicarse con su amor, Jackie Simon (interpretado por Thom Morgan). En esa comunicación él le dice que 10 minutos antes había recibido un suculento e inesperado pago y que regresaba ese mismo día. Acuerdan que ella lo fuera a recibir. Pero en su viaje al aeropuerto para el reencuentro se suceden cosas extrañas.

En esta segunda parte del primer episodio, titulada “Prepare for Execution” conoceremos algo del pasado de Josephine y Jackie, el por qué de haberse tenido que separar 8 meses antes y qué pasa cuando Jackie llega al aeropuerto esperando reencontrarse con Josephine.

Para crear este universo fantástico Ian Hubert y su equipo integran acción en vivo con un extensivo uso de imágenes generadas por computadora. Todo el 3D está hecho con Blender. Y es recomendable volver a ver el corto haciendo pausas y prestando atención a los detalles. Es impactante.

Quienes están suscriptos a la página de Patreon de Ian Hubert pueden ver tutoriales y explicaciones de cómo se fueron haciendo algunas de las escenas.

Entre la primera parte del episodio 1 y esta segunda, publicada esta semana, existieron dos episodios más con otras historias del universo Dynamo Dream (el episodio 2, “A Single Point in Space”, en marzo de 2023, y el episodio 3, “A Pete Episode”, en abril de 2023).

sábado, 31 de agosto de 2024

Calendario Inkscape del mes: September 2024

Desde el lunes pasado está disponible el mensil de setiembre del calendario 2024 que arma Moini para su web VektorRascheln.

Es un calendario, en inglés, cuya ilustración mensual es tomada de las imágenes que originalmente fueron creadas para el concurso del “About-Screen” de Inkscape.

Para este mes de setiembre el diseño que eligió fue el titulado “Contest”, obra de Djelita Abderrahmane, uno de los diseños finalista del concurso para la versión 1.3.

El diseño se acompaña, como siempre, con una cita relacionada a Inkscape a la derecha del mensil.
Esta vez la cita está firmada “Rj” y su traducción al español sería algo así:

“Gracias por la mágica esperiencia. Inkscape me ha ayudado con el empujón inicial a una carrera de diseño”.

sábado, 24 de agosto de 2024

¿Por qué no me funciona el z-index?

Hace unos días estaba armando una página web y quería que un elemento específico quedara por encima de los demás. Así que hice uso, en la hoja de estilos CSS, de la propiedad z-index para colocarlo arriba en el orden de apilamiento. Pero no me daba los resultados esperados.

Así que, búsqueda mediante, di con es siguiente video del canal de YouTube Coder Coder, de Jessica Chan:

En él explica que hay algunas circunstancias donde no es suficiente con poner un número más alto como valor de la propiedad z-index para conseguir que un elemento se muestre por encima de los demás.

Estas son las condiciones a tener en cuenta a la hora de usar la propiedad z-index:

1. Contexto de apilamiento
Los elementos en el mismo contexto de apilamiento se muestran en orden de aparición, con los elementos posteriores por encima de los anteriores.
2. Elementos posicionados
Los elementos necesitan tener su posición definida (con la propiedad position) con cualquier valor que no sea static para que z-index pueda funcionar.
Además, los elementos posicionados (con la propiedad position) se mostrarán por encima de los elementos no posicionados.
3. Propiedades especiales
Algunas propiedades CSS como opacity y transform colocan a los elementos en un nuevo contexto de apilamiento.
Aplicar la propiedad transform a un elemento hace que se comporte como si tuviera un static con valor cero.
4. Orden de los ancestros
El z-index de un elemento puede quedar limitado por el valor de z-index de su elemento padre.

Teniendo en cuenta estos puntos pude solucionar el problema que se me había presentado.

Como alternativa al video, pueden leer la misma entrada en coder-coder.com, la web de la autora del video.

lunes, 19 de agosto de 2024

Full Circle #207 (julio 2024)

Aquí va mi reseña de la edición #207 de Full Circle magazine. Es el número correspondiente a julio de 2024 y se publicó el 26 de julio. Consiste en un PDF de 64 páginas y 7,5 MB.

Como siempre, empiezo con la sección Noticias (páginas 4 a 17):

Del resto de notificaciones de lanzamientos, destaco:

Y, en cuanto a los artículos propiamente dichos, resalto:

  • Entre las páginas 31 y 35, Mark Crutch escribe un nuevo artículo de su fantástica serie sobre Inkscape, que ya hace varias ediciones viene dedicándose a las mejoras que trajo la versión 1.3. En esta oportunidad trata sobre las muchas mejoras que incorpora en la interfaz de usuario del editor de Patrones en la ventana de diálogo de Relleno y borde.
  • En las páginas 27 a 29, Robert Boardman presenta una nueva parte de su serie sobre LaTeX. En esta oportunidad explora el paquete geometry, que permite gestionar las dimensiones y la composición de la página.
  • En la columna sobre Stable Diffusion (páginas 25 y 26) Jon Hoskin continúa escribiendo sobre Fooocus, una interfaz gráfica para Stable Diffusion y, en particular, sobre algunos problemas que se pueden encontrar al intentar instalarlo y sus posibles soluciones.
  • En las páginas 54 y 55 Ronnie Tucker escribe una reseña sobre su nueva laptop: una Asus TUF. Yo tengo una desde hace 5 años (la FX504) y anda muy bien. Su único problema, como también comenta Ronnie en su reseña, es el escaso tiempo de autonomía que tiene su batería.
  • Y, nuevamente, la nota de tapa son las habituales reseñas de Adam Hunt sobre distribuciones GNU/Linux: esta vez le toca el turno a Lubuntu 24.04 LTS (páginas 47 a 49) y a Xubuntu 24.04 LTS.

Finalmente, aquí va mi traducción libre de la editorial, escrita, como siempre, por Ronnie Tucker:

jueves, 8 de agosto de 2024

Calendario Inkscape del mes: August 2024

Ya hace un par de semanas que está disponible el mensil de agosto del calendario 2024 que arma Moini para su web VektorRascheln.

Es un calendario, en inglés, cuya ilustración mensual es tomada de las imágenes que originalmente fueron creadas para el concurso del “About-Screen” de Inkscape.

Para este mes de agosto el diseño que eligió fue el titulado “A new dawn”, obra de Fabian Mosakowski para el concurso de la versión 1.2.

Además del diseño del mensil, Moini nos deja una descripción del mismo: ”...un parque en un área suburbana habitado por personitas que simbolizan distintas herramientas de Inkscape”. A saber:

  • la herramienta Selector
  • la herramienta Nodo
  • la herramienta Elipse
  • la herramienta Estrella/Polígono
  • la herramienta Pluma
  • la herramienta Lápiz
  • la herramienta Texto
  • la herramienta Cuentagotas
  • la herramienta Cubo de pintura
  • la herramienta Spray

A ver cuántas de esas referencias pueden encontrar en el diseño (sin mirar la entrada original, que tiene la respuesta).

El diseño se completa, como siempre, con una cita relacionada a Inkscape a la derecha del mensil.
Esta vez es de un colaborador anónimo de Inkscape y su traducción al español sería algo así:

“Me encantan los gráficos vectoriales y el software de código abierto e Inkscape es la herramienta perfecta para satisfacer mi curiosidad”.

lunes, 5 de agosto de 2024

Novedades del Editor de Video en la edición 4.2 de Blender

Aras Pranckevičius es un programador lituano que, además de ser patrocinador corportativo de Blender, colabora con el proyecto escribiendo código y, últimamente se ha dedicado al Editor de video de Blender (el Video Sequence Editor).

Personalmente he estado utilizando este Editor de video y me resultó interesante una entrada en el blog de Aras Pranckevičius, titulada More Blender VSE stuff for 4.2, donde resume su trabajo en esta área de Blender para la versión recientemente publicada.

Aquí está la traducción libre al español que hice de esa entrada, publicada originalmente en inglés el 22 de julio de

Hice un montón de trabajo para el Editor de Video (VSE) de Blender 4.1, y como nadie revocó mi permiso de publicación de cambios en el programa, continué en la misma área para Blender 4.2. ¿Es usted uno de los aproximadamente siete usuarios de Blender VSE? ¡Entonces siga leyendo!

Blender 4.2 acaba de salir, y las novedades del Editor de Video en esta versión están listados en esta página. Probablemente la mitad de esa lista sea mi culpa trabajo, y como la 4.2 es una versión de soporte a largo plazo (LTS), esto significa que tendré que mantenerla y arreglarle cualquier problema durante tres años más, hurra :)

Actualizaciones visuales y renderización de clips en un sombreador (shader)

Lo que comenzó en algún chat o en una tarea de diseño como una pregunta casual de “¿podríamos tener las esquinas redondeadas en los clips?”, fue creciendo y creciendo hasta convertirse en, bueno, esquinas redondeadas. Las esquinas redondeadas en los controles y widgets de la interfaz de usuario se han vuelto actualmente tan omnipresentes que parece algo trivial. Y lo sería... si contara con un renderizador de gráficos vectoriales completo con recorte/enmascaramiento y anti-aliasing. Pero no lo tengo.

Los «widgets» de la línea de tiempo del Editor de video (VSE) en Blender 4.1 y anteriores son prácticamente sólo «rectángulos y líneas». El «widget de control» es sorprendentemente complejo y puede tener muchas partes - además de las obvias como la miniatura de la imagen, la forma de onda de audio o el título del texto, hay fondo, superposición de etiqueta de color, superposición de curva de animación (volumen o transición), triángulo de transición de desvanecimiento, teclas de retemporización, manejadores de transformación, rectángulos de contenido de los meta-clip, franjas «bloqueadas» y algunos otros. Aquí hay una línea de tiempo de ejemplo que muestra la mayoría de las opciones posibles, en Blender 4.1:

Las miniaturas, las formas de onda, las curvas, las franjas bloqueadas y los textos se dibujan a su manera, pero todo lo demás no es más que un montón de “fusionar un rectángulo semitransparente” o “fusionar una línea semitransparente”.

Entonces, ¿cómo hacer “esquinas redondeadas”? Bueno, un “rectángulo” necesitaría conseguir redondear sus esquinas de alguna manera. Podría ser a través de la sustitución del rectángulo (dos triángulos) por una forma geométrica más compleja, pero entonces también querría que las esquinas redondeadas tuvieran suavizado (anti-aliasing). Y, lo que es más complicado, es que también querría “todo lo demás” redondeado (por ejemplo, el borde de los clips), o enmascarado por la esquina redondeada (por ejemplo, las franjas diagonales que indican el bloqueo, o la miniatura de la imagen que no se “salga” de la forma redondeada).

Otra forma de hacer todo esto, desde que Iñigo Quílez popularizó los Campos de distancia con signo (Singled Distance Fields), sería dibujar cada widget como un simple rectángulo, y hacer toda la evaluación de “esquinas redondeadas”, enmascaramiento y anti-aliasing dentro de un sombreador (shader). Hace tiempo quería probar con mover todos (o la mayoría) de los widget de los clips a un sombreador dedicado, así que esta fue una excusa para hacerlo.
El proceso fue así:

  1. Paré todo y lo pospuse por un mes, pensando en lo aterrador que sería desenmarañar todo el código actual de dibujado de widgets del Editor de video (VSE) y migrarlo, de alguna manera, a un sombreador. Por mucho tiempo lo seguí posponiendo o encontrando excusas para no hacerlo.
  2. Finalmente me puse a hacerlo y resultó que sólo insumió un día de trabajo (#122576). ¡Fácil!
  3. El siguiente mes lo dediqué a una docena más de solicitudes de admisión de código (#122764, #122890, #123013, #123065, #123119, #123221, #123369, #123391, #123431, #123515, #124210, #124965, #125220), para hacer que las esquinas redondeadas funcionaran de verdad. Algunas de ellas eran correcciones (ajuste a la cuadrícula de píxeles, reconocimiento de los DPI, temas de precisión), otras eran retoques del diseño y del aspecto visual.

Todo esto, sumado a otras varias actualizaciones de diseño y UX realizadas por Richard Antalik y Pablo Vázquez, resultaron en el aspecto actual del Editor de video (VSE) de Blender 4.2:

También he implementado una indicación visual de los medios faltantes (clips que refieren a archivos de imagen/video/sonido inexistentes) #116869; también se puede ver en la captura de pantalla sobre estas líneas.

Sombras de texto y contornos

Los clips de texto en el Editor de video tenían una opción de sombra arrojada, pero sin la posibilidad de modificar la distancia y ángulo con respecto al texto, por lo que, en general, no era muy útil.
Hice que la distancia y el ángulo fueran configurables, y añadí la opción de desenfoque de la sombra. De paso, el texto ganó una opción de contorno (#121478).

Los contornos se implementan con el algoritmo Jump-Flooding, maravillosamente descrito por Ben Golus en este artículo: «The Quest for Very Wide Outlines».

Rendimiento

Blender 4.1 trajo muchas y grandes mejoras de rendimiento en el Editor de video. La versión 4.2 no tantas, pero, sin embargo, hay algunas:

“Eliminación de la oclusión” (“Occlusion culling”) para imágenes/videos opacos (#118396). El Editor de video ya tenía una optimización para cuando un clip que se sabe que que es totalmente opaco, cubre toda la pantalla. En ese caso se detiene el procesamiento de todas los clips por debajo de él (ya que, de todos modos, no serían visibles). Ahora la misma optimización se aplica en algunos casos de clips que no cubren toda la pantalla pero sí cubren completamente algún clip debajo de él (el clip inferior no se evalúa ni se renderiza).

El caso típico es el efecto letterboxing: hay un fondo negro que cubre toda la pantalla, pero el “contenido real” sólo cubre un área más pequeña. En las previsualizaciones del Proyecto Gold, esto ahorró alrededor del 7% del tiempo total de renderizado. No es mucho, pero algo es algo.

Optimización de partes de la decodificación de video ffmpeg

  • Caché de los contextos de conversión de color de la biblioteca libswscale (#118130). Antes de este cambio, cada clip de video individual creaba un objeto de “contexto de conversión de color”, que se utiliza principalmente para hacer la conversión YUVRGB. Sin embargo, la mayoría de ellos terminan siendo exactamente los mismos, por lo que hay que tener un grupo de ellos y reutilizarlos cuando sea necesario.
  • Dejar de hacer algún trabajo redundante al iniciar la reproducción de un clip de video (#118503). Esto no sólo hace las cosas más rápidas, sino que también elimina alrededor de 200 líneas de código. ¡Ganamos todos!
  • (no es de rendimiento en sí, pero igual) Eliminar el soporte al formato AVI que no sea el provisto por ffmpeg (#118409). Blender tenía un soporte muy limitado del formato de video .avi más allá del de ffmpeg. Era una especie de herencia maldita de dudosa utilidad. Finalmente se ha ido, junto con 3600 líneas de código. 🎉

Cómo sigue

Investigué el soporte para videos de 10/12 bits y HDR, pero no conseguí terminar nada a tiempo para Blender 4.2. No es de mucha ayuda mi ignorancia sobre codecs de video o sobre la ciencia del color lol :) Pero quizás deba continuar con eso.

El dibujado de la línea de tiempo de Editor de Video claramente tiene partes que “no estaría mal completar“, algunas de las cuales también solucionarían problemas de rendimiento. En este momento, la mayor parte de los controles de los clips se dibujan dentro de un sombreador dedicado de la GPU, pero hay partes que todavía se dibujan por separado (miniaturas, las formas de onda de audio, los meta contenidos de las clips, las superposiciones de las curvas de animación). Conseguir que ellos también se dibujen dentro del mismo sombreador (probablemente) simplificaría el trabajo de la CPU.

La funcionalidad en general del Editor de video dentro de Blender podría beneficiarse de miles de pequeñas mejoras, pero quizás también las personas pertinentes deberían discutir cuál es el panorama general y los planes reales para él. Es bueno seguir haciendo mejoras incrementales discrecionales, pero de vez en cuando también es útil discutir y decidir "¿dónde queremos llegar exactamente?". Quizá deberíamos hacerlo pronto.

Eso es todo.