Escribir potencias con MathML

En artículos anteriores hemos visto qué se puede hacer con MathML.

En este artículo aprenderemos a escribir potencias con MathML para poderlas mostrar en un contenido web.

En una expresión de operación de potencia debemos indicar la base y el exponente. La base es el número que se va a multiplicar por si mismo y el exponente indica el número de veces que se va a realizar la multiplicación.

En MathML para expresar la operación de 4 elevado a 2 se escribe así:

<math >
<msup>
<mn>4</mn>
<mn>2</mn>
</msup>
</math>

Y en el navegador aparece de la siguiente forma:

4 2

Para escribir la potencia utilizamos la etiqueta <msup> de MathML. Dentro de esta etiqueta la base se indica con <mi> y el exponente con <mn>.

Teorema de Pitágoras

Con lo que sabemos actualmente de MathML podemos escribir el teorema de Pitágoras en MathML de la siguiente forma:

<math>
<msup>
<mi>c1</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mi>c2</mi>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<mi>h</mi>
<mn>2</mn>
</msup>
</math>

Y en el navegador se leería de la siguiente forma:

c1 2 + c2 2 = h 2

Siempre informados gracias a RSS

RSS, que significa Really Simple Syndication (o Sindicación Realmente Simple en español), es un formato que permite distribuir actualizaciones de contenido en la web de forma automática. A través de un archivo XML, los creadores de contenido pueden compartir las últimas noticias, entradas de blog, podcasts o cualquier tipo de actualización con sus usuarios sin que estos tengan que visitar constantemente el sitio web.
El concepto detrás de RSS consiste en lo siguiente: los usuarios en lugar de tener que navegar por diferentes páginas para ver si hay algo nuevo, pueden suscribirse a un “feed” RSS que les entregará las actualizaciones directamente. Este feed se lee a través de aplicaciones conocidas como lectores de RSS o agregadores de noticias.

¿Cómo funciona RSS?

La base de RSS es un archivo XML que contiene la información del contenido a sindicar. Este archivo incluye datos como el título, la descripción, la fecha de publicación y el enlace al contenido. Este archivo RSS está alojado en el servidor del sitio web y se actualiza automáticamente cada vez que hay nuevo contenido. Los usuarios que se han suscrito a este feed pueden recibir las actualizaciones directamente en su lector de RSS.
Aunque muchas personas piensan que RSS ha caído en desuso debido al auge de las redes sociales, la realidad es que sigue siendo una herramienta poderosa para quienes buscan un flujo de información más controlado y libre de distracciones. De hecho, en la era de la sobrecarga de información, RSS se está redescubriendo como una forma efectiva de consumir contenido sin caer en la “infoxicación” (intoxicación por exceso de información).
Además, en el ámbito del desarrollo web, RSS sigue siendo una herramienta útil para automatizar flujos de trabajo, monitorizar sitios para cambios de contenido o incluso para alimentar aplicaciones y widgets personalizados.

Hoy en día, existen varios lectores de RSS disponibles, tanto gratuitos como de pago. Algunos de los más populares son:

• Feedly: Uno de los lectores más conocidos, ofrece una interfaz amigable y la posibilidad de organizar las suscripciones en carpetas temáticas. También incluye funcionalidades de búsqueda y sincronización con otros dispositivos.
• Inoreader: Similar a Feedly, pero con algunas características adicionales para los usuarios avanzados, como la automatización de flujos de trabajo.
• NewsBlur: Otro lector popular que permite clasificar las fuentes por popularidad y tendencias, lo que puede ser útil para aquellos que quieren descubrir nuevo contenido.
• Tiny Tiny RSS: Una solución autohospedada para aquellos que prefieren mantener el control absoluto sobre su lector de RSS.
Incluso hay lectores RSS para línea de comandos o para televisores inteligentes.

El RSS de Programar a ciegas

Este blog tiene su enlace de sindicación RSS para que todas las personas puedan mantenerse informadas de los nuevos artículos y noticias publicados en este sitio web. Su dirección para acceder al RSS es https://programaraciegas.net/feed

Investigación sobre la promesa y los peligros de las accessibility overlays para usuarios ciegos y con baja visión

Recientemente en el contexto de un congreso en octubre de 2024 se ha publicado un paper de investigación titulado The Promise and Pitfalls of Web Accessibility Overlays for Blind and Low Vision Users.

El documento comienza con este texto:

La accesibilidad web es esencial para garantizar que todas las personas, independientemente de sus capacidades físicas o cognitivas, puedan acceder y utilizar Internet de manera efectiva. Este principio es fundamental a medida que las plataformas digitales se convierten cada vez más en canales principales para la educación, la comunicación, el comercio y el entretenimiento. Nuestro estudio evalúa críticamente la efectividad de las accessibility overlays, que son herramientas de terceros que pretenden mejorar la usabilidad del sitio web para personas con discapacidad.

El estudio se ha centrado principalmente en personas con baja visión y personas ciegas.

Los autores del estudio, Tlamelo Makati, Garreth W. Tigwell y Kristen Shinohara, son reputados investigadores en accesibilidad web.

Los estudios realizados para la publicación de esta investigación revelan que estas superposiciones suelen ser ineficaces y, a menudo, empeoran la experiencia de accesibilidad.
Los usuarios informan de conflictos con sus productos de apoyo, especialmente con los lectores de pantalla, lo que aumenta la frustración a la hora de navegar un sitio web que utilice una de estas accessibility overlay para solucionar las barreras de accesibilidad presentes en el sitio web.
El estudio sugiere que las soluciones basadas en accessibility overlays no sustituyen el diseño web accesible desde la base del proyecto web.

Puedes leer el documento de investigación en Inglés en formato PDF.

Escribir raices cuadradas con MathML

En MathML se pueden escribir casi todo tipo de operaciones matemáticas. Desde operaciones más básicas hasta operaciones con matrices, ecuaciones y matemática analítica.

En este artículo veremos la escritura de raíces con MathML.

Raíces cuadradas

Para escribir una raíz cuadrada, se utiliza el elemento <msqrt>. Este elemento envuelve el contenido cuya raíz cuadrada deseas expresar. Por ejemplo, el siguiente código en MathML representa la operación raíz cuadrada de 9:

<math>
<msqrt>
<mn>9</mn>
</msqrt>
</math>

Y en el navegador se mostraría de la siguiente forma:

9

Raíces con otro índice

pero si queremos escribir una raíz con un índice distinto debemos utilizar la etiqueta <mroot>. Esta etiqueta tiene dos elementos: el radicando y el índice. Por ejemplo la raíz cúbica de 27 se escribiría en MathML de la siguiente forma:

<math>
<mroot>
<mn>27</mn>
<mn>3</mn>
</mroot>
</math>

Y en el navegador web se leería de la siguiente forma:

27 3

¿Qué Son las Aventuras Conversacionales?

Las aventuras conversacionales son un género de videojuegos donde el principal medio de interacción es el texto. En lugar de usar un control para mover personajes o seleccionar acciones a través de menús gráficos, el jugador se sumerge en una historia y toma decisiones escribiendo comandos o eligiendo opciones textuales. Este tipo de juegos se asemeja a una novela interactiva en la que el jugador tiene control sobre el curso de los acontecimientos.

Imagina que te encuentras en una habitación oscura. El juego podría describir la escena de la siguiente manera:

“Estás en una habitación oscura. A tu alrededor, apenas distingues sombras de lo que parecen ser muebles antiguos. Hay una puerta al este y una lámpara en la mesa. ¿Qué haces?”

Aquí, el jugador podría escribir algo como:

“Enciendo la lámpara”
“Salgo por la puerta este”
“Inspecciono los muebles”

Cada una de estas decisiones llevará la historia en una dirección diferente, abriendo nuevas posibilidades y desafíos.

Accesibilidad para todos

Uno de los mayores atractivos de las aventuras conversacionales es su accesibilidad. A diferencia de otros videojuegos que requieren hardware avanzado o habilidades técnicas específicas, estos juegos solo requieren un dispositivo con capacidad para leer y escribir texto. Esto los convierte en una opción inclusiva para personas con diferentes niveles de habilidad tecnológica e incluso para quienes tienen discapacidades visuales, ya que muchos de estos juegos pueden ser jugados con lectores de pantalla.

Además, debido a su bajo requerimiento de recursos, se pueden jugar en prácticamente cualquier dispositivo, desde dispositivos antiguos hasta smartphones actuales. Esto democratiza el acceso al entretenimiento interactivo, brindando una experiencia inmersiva a personas que, de otro modo, podrían verse excluidas de la mayoría de los videojuegos.

Fomentando la Imaginación y la Creatividad

Una de las características más valiosas de las aventuras conversacionales es su capacidad para estimular la imaginación. Al no depender de gráficos elaborados, el jugador debe imaginar los escenarios, personajes y situaciones descritas. Esta actividad mental, similar a la que se experimenta al leer un libro, fortalece la capacidad de visualizar y crear imágenes mentales.
La creatividad también juega un papel crucial. Las aventuras conversacionales suelen presentar desafíos y rompecabezas que requieren soluciones originales. A menudo, no basta con seguir una línea recta; los jugadores deben pensar en ideas imaginativas, explorar diferentes opciones y experimentar con diversas decisiones para avanzar en la historia. Este proceso no solo estimula el pensamiento crítico, sino que también fomenta la capacidad de encontrar múltiples soluciones a un mismo problema.

Simplicidad y Profundidad

A primera vista, estos juegos pueden parecer simples, pero esa simplicidad es engañosa. Detrás de cada aventura conversacional se esconde un mundo profundo y complejo. Las historias pueden abarcar desde misterios detectivescos hasta épicas de fantasía o relatos de ciencia ficción. A pesar de su enfoque minimalista, muchos de estos juegos presentan tramas envolventes con personajes bien desarrollados y giros narrativos sorprendentes.

La naturaleza textual de estos juegos también los hace accesibles para creadores independientes, quienes pueden enfocarse más en la narrativa y el diseño de la experiencia que en los aspectos técnicos de desarrollo gráfico. Esto ha llevado a una gran variedad de títulos, muchos de los cuales son gratuitos o de bajo costo, lo que aumenta aún más su accesibilidad.

Operaciones aritméticas básicas en MathML

En artículos anteriores hemos visto qué es MathML y cómo se escribe una operación matemática con MathML para la Web. Con esa información podemos crear contenidos de aritmética básica de forma accesible y legible para todas las personas.

Aritmética básica con MathML

La aritmética puede definirse como la ciencia de los números y las operaciones básicas que podemos realizar con ellos. Estas operaciones permiten realizar cálculos para resolver problemas relacionados con la cantidad, el tamaño, la distancia, entre otros. En términos simples, la aritmética es el lenguaje universal que usamos para entender y manejar números en nuestra vida diaria.

La aritmética se fundamenta en cuatro operaciones básicas: suma, resta, multiplicación y división. Cada una de estas operaciones tiene su propia función y se aplica en diferentes contextos, pero todas están interrelacionadas entre sí.

A la hora de utilizar la etiqueta <mo> de MathML es sencillo incluir algunas de estas operaciones básicas de la aritmética como la suma y la resta ya que sus símbolos matemáticos están dentro del conjunto de caracteres comunes de escritura de textos. Pero otras operaciones aritméticas como la multiplicación y la división utilizan símbolos que no son de uso común a la hora de escribir textos. Por esta razón es necesario utilizar caracteres HTML especiales para reflejar estas operaciones.

Por ejemplo, para representar la operación de multiplicación se utiliza el símbolo × que en HTML se representa como &times; y el símbolo para la división es ÷ y en HTML se representa como &divide;.

Veamos a continuación los distintos símbolos para las operaciones aritméticas básicas escritos dentro de un bloque MathML:

<math>

<mrow><mn>1</mn> <mo>+</mo> <mn>1</mn> <mo>=</mo> <mn>2</mn></mrow>

<mrow><mn>1</mn> <mo>-</mo> <mn>1</mn> <mo>=</mo> <mn>0</mn></mrow>

<mrow><mn>2</mn> <mo>&times;</mo> <mn>3</mn> <mo>=</mo> <mn>6</mn></mrow>

<mrow><mn>6</mn> <mo>&divide;</mo> <mn>3</mn> <mo>=</mo> <mn>2</mn></mrow>

</math> 

En el navegador este código MathML se visualizaría de esta manera:

 
1 + 1 = 2 1 1 = 0 2 × 3 = 6 6 ÷ 3 = 2

Con esto ya podemos representar la aritmética básica en un contenido Web de forma accesible. En futuros artículos veremos operaciones más complejas gracias a MathML.