martes, 7 de enero de 2025

¿Es la comida la gran oportunidad que Amazon y Alexa se están perdiendo?

A mi madre nunca le gustó la tecnología y si no cambió su smartphone por un teléfono menos inteligente y más fácil de usar fue porque en el último momento se dio cuenta de que echaría de menos las fotos y vídeos que su hermana le enviaba por whatsapp. No se me ocurre mejor ejemplo de lo que es una «killer app», una aplicación que por si sola basta para que alguien decida comprar y usar un aparato. La mayoría de las tecnologías que han triunfado en los últimos años lo han hecho gracias a una o varias de estas killer apps. Por ejemplo, la popularización de los ordenadores domésticos se vio impulsada por la llegada del correo electrónico y la posibilidad de tener fotos, canciones y vídeos en el ordenador. Miles de potenciales compradores muy poco interesados en las suites de ofimática acabaron comprando un PC para su hogar con tal de poder utilizar Hotmail y Winamp en su ordenador. También tecnologías a las que le ha sucedido justamente lo contrario. Por ejemplo, las gafas de realidad virtual, a pesar de la excelencia técnica que se ha logrado, no han llegado a convertirse en un producto de consumo masivo porque no ha surgido ninguna aplicación que justifique su compra y su uso diario. Una killer app, para que pueda considerarse como tal, debe crear o solucionar una necesidad díficil de satisfacer de otra manera. Por ejemplo, el correo electrónico no tardó en sustituir al correo postal porque era mucho más rápido y barato, pero ha surgido nada parecido en la realidad que capte la atención del público de tal manera.

Los asistentes virtuales por altavoz, como el Alexa de Amazon, prometían revolucionar el hogar moderno, pero una vez que se desvanece la emoción de pedirle que ponga música, te informe del tiempo o añada cosas a una lista, lo cierto es que no sirve para nada que no se pueda hacer de manera incluso más cómoda con un smartphone. Por tanto, encaja a la perfección en la categoría de tecnología emergente que necesita urgentemente una killer app que la impulse y, a ser posible, que impulse los beneficios de otras divisiones de Amazon.

A pesar de las grandes cantidades de dinero que mueve, el sector de la alimentación es uno de los que menos ha cambiado con la llegada de las nuevas tecnologías. Por supuesto, es posible comprar en supermercados por internet y los establecimientos se han beneficiado internamente de un buen número de avances. Sin embargo, la experiencia de la mayoría de los consumidores sigue siendo la misma y continúan haciendo la compra físicamente. Hay varios buenos motivos para ello, como por ejemplo la naturaleza perecedera de muchos de estos productos y la urgencia con la que se necesitan, pero lo cierto es que la compra por internet no ofrece muchas ventajas, más allá de evitar un desplazamiento que en la mayoría de los casos es corto dada la ubicuidad de las tiendas de alimentación.

Si bien en el hiperconsumista occidente podría pensarse que la alimentación es un problema resuelto, lo cierto es que la mera disponibilidad de todos los alimentos imaginables no basta para que los ciudadanos occidentales se alimenten de manera saludable y con alimentos apetecibles. La elevada incidencia de problemas de obesidad y enfermedades cardiovasculares debidas a una mala alimentación, incluso en los países con un elevado poder de consumo, indican que hay algo que no acaba de ir bien. Y es que para alimentarse bien, no basta con tener dinero y poder comprar alimentos, es necesario también dedicarle un tiempo del que carece la acelerada sociedad actual, lo que ha hecho que se abuse de alimentos superprocesados de valor nutritivo y gastronómico cuestionable. En realidad, para comer bien bastan con tener las recetas adecuadas y los ingredientes necesarios en la cocina, pero la mayoría de la gente no encuentra el tiempo necesario para planificar los menús de la semana y hacer la compra pertinente, lo que dispara las decisiones de última hora.

Si sumamos todo esto, veremos que tenemos todos los ingredientes necesarios de un producto tecnológico de éxito: un sector millonario, una necesidad no atendida y una enorme cantidad de datos que podemos procesar para resolver el problema. Por supuesto, hay en abundancia tanto apps como webs dedicados a la comida, pero a fin de cuentas, no son más que recursos entre los que el usuario debe abrirse paso para encontrar lo que necesita.

Alexa podría resolver este problema de una manera novedosa y óptima. Es fácil imaginarse un futuro en el que con apenas cinco minutos de conversación con nuestro dispositivo no solo tenemos solucionadas todas las comidas de la semana, sino que la lista de la compra necesaria está en nuestro móvil y basta pulsar un botón para que nos la traigan a domicilicio y, además, sin tener que soportar complicadas o incómodas dietas, nuestra salud mejorará. Y si hay algún cambio en el plan, que lo habrá, bien porque no sigamos el plan establecido o sencillamente porque nos apetece algo diferente, se reprogramarán el resto de las comidas para dar prioridad a los alimentos que caducan antes y reducir al mínimo el desperdicio.

La clave está en que para lograr una solución así, el sistema debe conocer muy bien el usuario y sus hábitos alimenticios. A los usuarios no les suele tener que rellenar a diario formularios, por lo que Alexa ofrece un método para que el sistema aprenda las pautas del usuario. En esta primera fase, el sistema se limita a aprender lo que suele consumir el usuario y las características de su unidad familiar. Dado que inevitablemente habrá huecos, los patrones aprendidos de usuarios similares pueden servir para elaborar estimaciones y pedir al usuario únicamente que las valide. En la segunda fase, el sistema comienza a planificar los menús siguiendo las costumbres del usuario, que sigue alimentándose de la misma manera, pero agilizando la redacción de la lista de la compra y su adquisición. Una vez que el usuario está satisfecho con la replicación que el sistema hace de su alimentación, comienza la tercera fase, en la que el sistema comienza a proponer mejoras en la alimentación del usuario, según sus objetivos, como por ejemplo perder/ganar peso, prevenir enfermedades o dar prioridad a determinados principios éticos.

En la actualidad no hay ninguna solución similar que se pueda emular, lo cual hace el desarrollo más difícil. Sería necesaria la colaboración de un gran número de expertos en diversos campos, juntos con exhastivas pruebas con usuarios reales para llegar a crear algo que pueda considerarse como el «iTunes de la comida» y logre ordenar los hábitos alimenticios de los usuarios de la manera en que iTunes lo hizo con sus colecciones de música. Sin embargo, esta dificultad es precisamente lo que la convierte en una gran oportunidad. La primera empresa que logre que sus clientes se alimenten de manera más saludable, acorde a sus gustos y gastando menos dinero, se convertirá en el referente del sector y, por el círculo virtuoso que se puede conseguir (más usuarios, más datos, más calidad), será difícil de batir. Usuarios satisfechos y publicaciones que divulguen las bondades de esta oferta pueden ser la mejor publicidad y, si no basta, algo como «come a diario como si el mejor chef del mundo cocinara para ti», puede servir. Por su infraestructura de venta y asistentes virtuales, Amazon se encuentra en una posición óptima para liderar este sector y, si tenemos en cuenta los beneficios que Apple obtuvo con su tienda de música digital, los beneficios potenciales pueden llegar a dar miedo. En realidad, lo único que es extraño que todavía nadie esté trabajando en ello, pero lo bueno en tecnología es que, si hoy todavía no existe, podemos confiar en que mañana existirá.

lunes, 12 de febrero de 2024

Assassin's Creed Valhalla (aprende a jugar en 5 minutos)

 

Pad derecho:

↑: llamar a cuervo (localizar recursos/objetivos)
←: silbar/llamar montura
→: consumir ración
↓: acciones rápidas (llamar drakar)

Pad izquierdo:

▢: esquivar
X: parkour arriba (mantener)
O: parkour abajo (mantener)

R1: ataque débil/asesinar
R2: ataque fuerte

L1: ataque con mano izquierda
L2: apuntar arco

R3: visión de asesino
L3: correr

Tras llenar la barra de adrenalina (rayas amarillas), usar habilidades manteniendo pulsado R2 (golpes) o L2 (flechas) y pulsando △, O, X, ▢.

Consejos generales:

La energía no se regenera, hay que buscar comida.
Mejorar asentamiento
Gastar puntos en habilidades

miércoles, 9 de agosto de 2023

Unity 3d: Conceptos básicos

Listas

Crear una lista de objetos:

List<Car> carsUp=new List<Car>();

Añadir un objeto:

Car car=new Car();
carsUp.Add(car);

Obtener el número total de elementos:

carsUp.Count

Acceder a la propiedad id del elemento en la posición n:

cars[n].id

Eliminar el elemento en la posición n:

carsUp.RemoveAt(n);

Borrar todos los elementos:

carsUp.Clear;

Aleatoriedad

Obtener un número aleatorio (0 o 1):

int index=Random.Range(0, 2);

Modificar un sprite

Mover:

float posX=transform.position.x;
float posY=transform.position.y;

posY += speed * Time.deltaTime * direction;
Vector3 pos=new Vector3(posX, posY, 0.0f);
transform.position=pos;

Cambiar la escala:

Vector3 scale=new Vector3(alpha, alpha, 1.0f);
transform.localScale=scale;

Cambiar el color:

Color colorSelected = new Color32((byte)(127+Random.Range(0,128)), (byte)(127+Random.Range(0,128)), (byte)(127+Random.Range(0,128)), 255);
GetComponent<SpriteRenderer>().color = colorSelected;

Crear una variable final

public static readonly int status=0;

Cadenas de texto

Comparar cadenas de texto:

text.ToLower().Equals("fin")

Buscar una cadena:

text.IndexOf("=")

Extraer una cadena:

text.Substring(0,2)

lunes, 17 de abril de 2023

SDL Trados: cómo buscar y reemplazar el espacio entre cifras y unidades

Colocar un espacio indivisible entre una cifra y su unidad garantiza que ambos elementos nunca se verán separados por la división automática de un párrafo en líneas. Dado que este curioso elemento, el espacio indivisible, es también invisible, al ser su aspecto es idéntico al de un espacio normal, tendremos que activar la opción de mostrar la opción los caracteres no imprimibles para verlo, en cuyo caso suele representarse con un círculo idéntico al del grado:

40°mm

Mezclar espacios indivisibles y normales puede generar problemas de visualización, por lo que es una buena costumbre utilizarlos de manera coherente. Sin embargo, principalmente en traducciones con una gran cantidad de texto procedente de traducciones anteriores, es fácil que en algunas ocasiones se hayan sustituido por espacios normales. Desde SDL Trados es muy fácil localizarlos y sustituirlos de manera automática configurando en el cuadro Buscar y reemplazar la siguiente búsqueda:

Buscar: ([0-9]) mm

Reemplazar por: $1 mm

Utilizar: Expresiones regulares

Esta configuración quedaría así:

Dado este cuadro no muestra los caracteres invisibles, hay que tener mucho cuidado para que el carácter que introducimos en el cuadro Reemplazar por sea el correcto.

Como de costumbre, es muy poco recomendable elegir Reemplazar todo para aplicar esta corrección, ya que los efectos pueden ser inesperados. Por ejemplo, si queremos sustituir los espacios entre cifras y la unidad Mhz, la sustitución global tal vez sea razonablemente segura, pero si queremos corregir espacios entre números y unidades más cortas (como metros [m], segundos [s] o litros [l]), Reemplazar todo puede hacer que introduzcamos espacios en lugares que no nos interesan como, por ejemplo, un índice como el siguiente:

1 Mantenimiento

2 Superficies estériles

3 Lavado de sondas

Unity2D: Cómo animar un sprite con una sola imagen

Antes de empezar, vamos a preparar nuestra imagen. En este caso, vamos a utilizar una imagen de un demonio creada en Instagram. Tras abrirla en Krita, añadimos un canal alfa para podemos utilizar transparencias, eliminamos el fondo blanco y la guardamos en formato .psd.

Importante: Aunque Gimp también ofrece la opción de exportar en formato .psd, los archivos creados en este programa no son compatibles, ¡así que es importante utilizar Krita!

Nuestro héroe...

Ahora vamos a cambiar la extensión .psd a .psb y crearemos un nuevo proyecto 2D en Unity, al que arrastraremos el archivo .psb. Seleccionamos este archivo y elegimos «Sprite editor».

Aparecerá un editor, en el que nos vamos directamente al «Skinning editor». Ahora, elegimos «Create bone» y creamos un hueso a lo largo del cuerpo y otros para los brazos. Cuando terminemos, pulsamos «Auto Geometry» y deberíamos haber obtenido algo parecido a lo siguiente.
 

Si es así, pulsamos «Apply» y cerramos el editor.

Ya está todo casi listo. Arrastremos nuestro archivo al lienzo y lo colocamos donde más nos guste. Luego, elegimos «Window > Animation > Animation». Aparecerá un cuadro de diálogo donde al hacer clic en «Create» nos pedirá donde deseamos guardar el archivo con la animación. Elegimos una ruta y pulsamos «Save».

Ahora tenemos que elegir lo que queremos animar. Para empezar, queremos que el pecho suba y baje, así que elegimos el hueso «Cabeza» y lo añadimos como propiedad. Para que la animación quede mejor, también añadiremos los huesos principales de los brazos.

Para una animación de respiración lenta, colocaremos fotogramas clave en los momentos 0 y 120 que serán iguales a los iniciales. Ahora colocamos el cursor en el fotograma 60 (o escribimos 60) en la correspondiente casilla. Basta con utilizar este fotograma para elevar ligeramente la cabeza y alejar un poco los brazos del centro del torso.
 
Por último, añadimos un fondo adecuado y ¡ya está! Ahora tenemos un amenazador demonio listo para devovarnos...


martes, 24 de enero de 2023

Cómo pasar en Idiom WorldServer un archivo que se ha quedado bloqueado en una fase a la siguiente

Vista desde la perspectiva actual, Idiom WorlServer fue una herramienta que se adelantó a su tiempo. Permitía trabajar en línea o descargarse los archivos para hacerlo sin conexión y ofrecía una manera cómoda de gestionar las fases de la traducción... todo ello mucho antes de que aparecieran soluciones similares. Sin duda el mayor problema de esta herramienta ha sido que, tras ser adquirida por SDL Trados en 2008, su desarrollo se paralizó, lo que ha hecho que haya dejado de actualizarse y, no obstante, a pesar de que su aspecto y características empiezan a necesitar una renovación, aún hay muchas empresas que la eligen por una sencilla razón y es que ¡sigue funcionando a la perfección!

Aunque la herramienta apenas da problemas, hay uno que ocurre de vez en cuando y que hace que uno o varios archivos se queden «atascados» en Idiom y no sea posible pasarlos a otra fase.

Para solucionarlo, solo tenemos que ir al portal, seleccionar el archivo que da problemas y abrirlo en el editor en línea. A continuación, seleccionamos todas las filas y en Tools elegimos la opción Paste from source. Una vez que se haya terminado de copiar en todas las filas el texto de origen a la columna de destino, le cambiamos el estado a todos los segmentos a None. Ahora solo tenemos que guardar el documento y cerrarlo. El archivo se habrá restablecido y podremos importar sin problemas la traducción o revisión realizada en SDL Trados, así como pasarlo a la siguiente fase.

domingo, 15 de enero de 2023

Cómo revisar traducciones con colores y anotaciones: (iii) coloreando palabras

Comenzamos con el archivo con las palabras coloreadas tal como vimos en las entregas anteriores: (i) exportando la traducción y (ii) coloreando segmentos.

Lo primero que debemos saber es que los colores aplicados por segmento se mantendrán también en este caso (negrita = nombre del archivo / tachado/gris = repetición / rojo = texto idéntico origen/destino). Además, cuando un segmento corresponda a una de estas categorías no se le aplicará ningún color adicional.

Sin embargo, en los segmentos que antes aparecían sencillamente en negro, veremos que muchas palabras aparecen coloreadas. Para entender qué significan estos colores, debemos saber que petraREV incluye un pequeño diccionario simplificado español-inglés con entradas como las siguientes:

file = traducción(archivo,archivar,archivado;expediente;fichero)
delete = traducción(eliminación,eliminar,eliminado;borrar,borrado)

Este diccionario no contiene muchas entradas, tan solo unas 3000, pero elegidas entre las palabras que con más frecuencia encontramos en las traducciones técnicas. Si nos fijamos, veremos que las posibles traducciones aparecen a veces separadas por comas y otras veces separadas por puntos y coma, lo que nos sirve para dividir las traducciones en varias «familias». Por ejemplo, para «file», tendríamos tres de estas familias:

archivo,archivar,archivado
expediente
fichero

Ambas familias son traducciones aceptables de «file», pero si queremos que la terminología sea rigurosamente coherente, tendremos que no mezclar términos de las diferentes familias. En este caso, «archivo» y «fichero» significan exactamente lo mismo, pero es posible que un cliente concreto prefiera emplear únicamente uno de estos términos.

Ahora que sabemos qué contiene este diccionario, es fácil interpretar los colores de los segmentos. Comencemos por el primero de ellos:

Para «Open file/Abrir archivo» ambas palabras aparecen en azul oscuro, lo que nos indica que las palabras de la traducción se ajustan al diccionario. Podemos estar tranquilos aunque, por supuesto, puede haber otros fallos, como errores de coherencia o una mala redacción.

En el segmento «The file has been deleted./El archivo se ha eliminado.» algunas palabras aparecen en azul y otras en negro, lo que indica que se han encontrado las palabras en azul en el diccionario, pero no las que están en negro. No es necesariamente un  problema, dado que no es interesante etiquetar palabras «vacías» y, además, el diccionario no incluye todas las palabras de una traducción.

El primer posible problema lo encontramos en el segmento «Confirm that you want to delete the file./Confirme que desea borrar el archivo.». Nuevamente, las palabras azules nos indican que todo va bien según el diccionario, pero ¿y el par fucsia delete/borrar? Según quizás hayamos deducido de la explicación sobre el diccionario, este color nos indica que para una palabra se ha empleado una traducción que aparece en el diccionario, pero en una familia diferente a la que utilizada antes. Es decir, en el tercer segmento «delete» se tradujo como «eliminar», pero aquí se ha utilizado «borrar», que corresponde a otra familia. No tiene que ser un error, pero suele ser conveniente echarle un vistazo.

Por último, en el segmento «The file is missing./No se ha encontrado.» la palabra «file» aparece en rojo lo que indica que «file» se tradujo anteriormente utilizando una de las traducciones indicadas en el diccionario, pero en este segmento no se ha utilizado esa traducción ni ninguna otra de las contempladas en el diccionario.

A fin de reducir al mínimo las advertencias, este color no se utiliza si en ningún punto del archivo se ha encontrado una traducción que la herramienta reconozca. Por ejemplo, si el cliente ha pedido que «file» se traduzca como «memorándum», esta palabra no se marcará en rojo en ningún caso, tan solo se dejará en negro.

Para resumir, cuando activamos Colorear equivalentes, los colores significan lo siguiente:

negro: palabra no incluida en el diccionario

azul: palabra traducida coherentemente según el diccionario

fucsia: palabra traducida según el diccionario, pero NO coherentemente

rojo: palabra anteriormente traducida según el diccionario con una traducción que aquí no se ha empleado (ni ninguna de las otras que reconoce)

Los posibles usos del color para facilitar la revisión de traducciones no acaban aquí, evidentemente. Por ejemplo, podemos utilizar un glosario para marcar una traducción con diferentes colores que nos ayuden a localizar y comprobar rápidamente los términos. También podemos utilizar iconos de «coloreado rápido» para marcar los términos que nos interesen. Aún así, esperamos que esta breve introducción haya servido para que revisar una traducción sea algo más fácil y rápido.

Por qué el dinero ya no fabrica mitos

La ritualización como respuesta a la avalancha de contenido infinito.  Nunca se había invertido tanto dinero en producir contenido y...