Alpha's Manifesto

A black and white figure's thought-hive

Algunos reviews de películas

¡No me olvidé de contarles qué he visto!

Hacía tiempo que no hablaba de películas. Voy a contar un poco sobre eso porque tengo algunas cosas interesantes y fuera de lo común para comentar.

Las películas de las que voy a hablar hoy son (sin ningún orden en particular):

  • Frozen
  • Free Birds
  • How to Train your dragon 2
  • Spiklenci slasti (“Conspirators of Pleasure”)
  • Ginga-tetsudo no yoru (“Night on the Galactic Express”)
  • Maleficient
  • The Lego Movie
  • Sharknado
  • Doctor Who: The Day of the Doctor
  • Sin City 2: A Dame to Kill for
  • Rio 2

(Read more →)

Resumen de Películas

Algo de lo que he visto y cómo lo he visto

Lots of movies

Como alguna vez hice, voy a dejar una pequeña reseña y comentario de algunas películas que he visto.

En este caso, las películas son:

  • Iron Man 3
  • The Woman in Black
  • Monsters University
  • Looper
  • Despicable Me 2
  • Turbo
  • The Lone Ranger
  • Cloudy with a Chance of Meatballs 2
  • Dragon Ball Z: Battle of the Gods
  • District 9
  • Cinderella 3: A twist in time
  • Gravity
  • Pom Poko
  • Kiki’s Delivery Service
  • The Thief and the Cobbler
  • Epic
  • The Machine Girl

¡Allá van!

(Read more →)

Películas Misceláneas

Una colección de películas que vi sin comentar

Movies!

Entre finales del año pasado y comienzos de este vi varias películas que nunca comenté por aquí. Tengo mis ideas anotadas al respeto pero pasado el tiempo no creo que valga la pena dedicarle un post a cada una. Las razones son dos: por un lado habría demasiado post sobre películas, y por otro lado, han perdido relevancia al no ser tan actuales.

Entonces, las películas que recibirán mi calificación aquí serán (sin ningún orden en particular):

  • Hotel Transylvania
  • Paranormal Activity 4
  • Wreck it Ralph
  • The Man With the Iron Fists
  • Life of Pi
  • Don’t be afraid of the dark
  • Cirque Du Soleil: Worlds Away
  • Mama
  • The Croods

(Read more →)

Barras de progreso y velocidad aparente

La gran diferencia del detalle

Indicando progreso

Hemos visto como a través de los años las interfaces de los sistemas operativos y las distintas aplicaciones (también las web) han evolucionado y cambiado radicalmente su aspecto visual. Muchos más colores, formas redondeadas, animaciones y feedback que nos indica qué está pasando a cada momento.

Uno de los elementos que más cambio ha tenido son los indicadores de progreso. Desde las líneas que giraban simulando un progreso, usando los caracteres -, /, | y \ en una consola, hasta el uso de caracteres Unicode con barritas que se iban llenando, hasta las hermosas interfaces de hoy de colores y animaciones.

Cabe aclarar que los indicadores de progreso vienen en dos sabores. Uno de ellos es el indicador de progreso indeterminado, el cual indica que hay un progreso ocurriendo de fondo en nuestra aplicación, pero sin indicar qué tan cerca estamos de terminar esa operación. Muchos de estos hemos visto en Youtube y distintas páginas que hacen uso de ajax. Wikimedia tiene una linda galería de estos, pero para ejemplo, aquí tienen uno:

Loader

El otro tipo de indicador es la barra de progreso propiamente dicha. Esta barra es el concepto básico que indica un límite en donde el trabajo ha sido terminado y nuestra posición respecto de completar esa tarea. Una búsqueda en Google Images devuelve muchas, muchas imágenes para saber de qué estamos hablando, y mejor aún, PrettyLoaded es un sitio (Flash) con una galería continua de pre-loaders que reutilizan este concepto con distintas formas.

Progress bar

Jugando con la mente

Ahora, asumiendo que una tarea siempre tarda el mismo tiempo, el indicador de progreso puede hacer una diferencia en la velocidad aparente que como usuarios percibimos, y podría ser bien la diferencia entre cancelar una descarga que signifique una compra o esperar unos pocos segundos más. Esta velocidad percibida es también llamada velocidad aparente, y si bien está relacionada a la velocidad real, hay otros factores que pueden hacerla aparentemente mayor o menor.

La velocidad aparente se encuentra afectada por muchos factores, como bien publicó Anthony, de UXMovement, en el artículo llamado How to Make Progress Bars Feel Faster to Users. A diferencia de muchos artículos que se encuentran en la internet, este está respaldado por estudios de la gente de Carnegie Mellon University, de los Laboratorios de Investigación de AT&T, y de la Universidad de New York. (Los links están al final del mismo.)

Las características que mencionan aquí son las siguientes:

Animación en sentido contrario

Una característica de las nuevas interfaces ha sido la capacidad de entrelazar imágenes en estos mismos indicadores. Muchas veces es una forma de demostrar que la aplicación sigue funcionando aunque la barra de progreso mantenga su posición, de la misma forma que el caracter que giraba nos indicaba también que el programa seguía funcionando. Sin embargo, el tipo de animación también puede tener un efecto sobre la velocidad aparente del progreso general.

Y lo que han descubierto es que cuando esta animación se mueve en sentido contrario a la dirección de progreso de la barra, la sensación de velocidad es mayor.

Utilizar pulsaciones frecuentes

Los indicadores de progreso (tanto barras como indeterminados) pueden hacer uso de pulsaciones como parte de la animación. Esto es más común en las barras de progreso, en donde todo el color de la barra es cambiado por un momento y vuelve a su estado normal, repitiendo esta acción cada tanto tiempo, dando la sensación de una pulsación.

Los estudios demostraron que mientras más frecuentes son estas pulsaciones, mayor es la velocidad aparente. Por supuesto, puede que no resulte agradable al ojo del usuario si es demasiado frecuente. Un truco extra también mencionado es que a medida que nuestra barra está avanzando, la frecuencia de las pulsaciones puede ir aumentando, también generando la sensación de un aumento en velocidad, incluso aunque realmente no sea tal.

Acelerar el progreso

Supongamos por un momento que el progreso de nuestra tarea es fijo, y que cada tantas unidades de tiempo, siempre tendremos tantas otras unidades de avance en nuestro progreso. Mantener esa monotonía de avance es, si bien realista, no la mejor opción para dar la sensación de progreso. Según mencionan los estudios, incrementar la velocidad del progreso hacia el final genera una sensación de menor tiempo insumido en la tarea en general, incluso aunque los tiempos suma sean los mismos.

Recuerdo haber leído que entre Windows Vista y Windows 7, este había sido uno de los cambios de interfaz en el momento de copia de archivos, a pesar que la estrategia de copia de archivos no había cambiado, y la diferencia era notable. Desafortunadamente, no logro encontrar el artículo en donde originalmente leí eso.

Evitar pausas al final

La pausa final, que ocurre muy comunmente si se está haciendo un procesamiento al final de la tarea, arruina la sensación completa de velocidad que el proceso había ganado. Por supuesto, seguramente estemos en un punto en donde el usuario ya no decide cancelar la acción, pero con ella hemos logrado arruinar la sensación de un proceso rápido que el usuario sentía. Esta puede ser la diferencia entre volver a usar nuestro sistema o no en un futuro, así que cuidado.


Los estudios originales son:

Soy un zorrinito con progreso.

Felidae

Y la secta de Claudandus

— You are blind…

— I’m not blind. I just can’t see.

(Disculpen la poca calidad del trailer, pronto entenderán por qué me costó encontrar uno apropiado.)

Hace muy poquito pude ver una película que desconocía llamada Felidae, que siendo del 94, tiene un aspecto visual de ser anterior. Aparentemente, la hicieron con un presupuesto bastante reducido y un elenco no particularmente destacado, pero lo compensan por otro lado: lo novedoso de la historia.

La trama nos introduce a Francis, un gato que nos cuenta en primera persona su historia, desde el haberse mudado a un nuevo vecindario por su pobremente empleado dueño, y cómo comienza a conocer el lugar. Pronto se encuentra con que ocurren una serie de asesinatos y toma el papel de detective para averiguar qué es lo que ocurre detrás de eso.

Cabe aclara que esta película es altamente violenta y explícita. Toca muchos temas sin miedo (eso me agrada), pero creo que a algunos no les da la consideración que merecen. Así y todo, pude ver la película entera en Youtube. Quién quiera darse el gusto, puede verla aquí, doblada al inglés: Parte [1], [2], [3], [4], [5], [6], [7], [8]. Update: Gracias Daina que me dejó saber de la existencia de la versión alemana, subtitulada al inglés.

Lo que no me gustó:

  • Los personajes son muy poco creíbles. Quizá el único personaje realmente creíbles son Francis (el personaje principal) y Felicity, una gatita que aparece solo unos momentos.
  • La trama, si bien se asemeja a la de un policial, tiene serios huecos argumentales y varias pre-suposiciones que lo hacen demasiado simple para ser creíble.
  • Los gatos son todos, sin excepción, feísimos. (Bueno, quizá las perdone a Felicitas y a la hija de Joker.) Además, se mueven con cero gracia felina, y no pueden estarse un momento sin hacer gestos faciales.
  • Final cliché.

Lo que me gustó:

  • Todos dejan entrever distintos puntos de vista respecto de la religión, de los humanos, de la supremacía de las razas (gatunas), de la moral, del comportamiento social.
  • No tienen problema en exponer temas como la violencia, el sexo, y la supremacía racial. Son temas de profundidad en la historia.
  • Fue interesante la idea de hacer esto en caricatura, para no herir sensibilidades, y al mismo tiempo ser muy directos.

Le doy un 3 de 5.

Soy un zorrinito no felino.

Puss In Boots

Fear me, if you dare!

La semana pasada pude ver Puss In Boots (que seguramente recibirá el título de Gato Con Botas en español), la que todos esperábamos de los creadores de Shrek. Debo confesar que no esperaba una película buena, sino una serie de bromas payazescas, bromas de gato… sabía también de la existencia de un personaje femenino, así que me imaginaba al personaje principal siendo atrapado estúpidamente enamorado… Pero no.

La película completa es una oda a la historia de honor que se creó en torno a Puss. No se trata de la historia del cuento original, pero este personaje tiene su propio cuento que nos revela (cosa que yo no haré para no arruinar la película) y sus razones para ser el bandido que es. Siendo así, se le presentan distintas oportunidades sobre las cuales debe decidir basándose en lo mejor para salvar su honor. Los personajes a su alrededor a la vez tienen su desarrollo propio (uno que es algo predecible, pero aceptable).

Curiosamente, si se hace mucha alusión al hecho de que son gatos, se explota este recurso de una forma graciosa sin llegar a ser ridícula. Más allá de eso, también se hace uso de su agilidad propia como gatos para la creación de escenas rápidas y ágiles, batallas de destreza visual y la típica gracia que tienen los felinos para mostrarse.

Quisiera destacar que la música es increíble. Partes de la película están más dedicadas a la música y el baile que a la historia en sí, pero haciendo utilización de recursos muy creativos en un escenario improvisado, se vuelve algo que produce placer observar (y oír).

La película en sí no es larga (apenas una hora y media), y realmente se deja disfrutar.

[spoiler effect=”simple” show=”Mostrar spoilers”]

Hay varios detalles, como siempre, que me llamaron la atención:

  • La actitud de Puss y Kitty hacia el otro es de atracción activa. Lo llamo activa vs. pasiva por algo que estamos muy acostumbrados a ver en la película de chicos, que suele ser distinto de la vida real. En la mayoría de las películas, cuando dos personajes comienzan a atraerse, es puramente por coincidencia del destino. Cosas simplemente ocurren que los dejan juntos, en esas situaciones incómodas que los hacen “darse cuenta” que se atraen. Eso es lo que llamo atracción pasiva. En este caso es totalmente al contrario: la atracción es algo que se nota desde el comienzo, pero esos momentos son causados a drede por ellos, mutuamente. La interacción que ellos tienen es de una pareja coqueteándose (sin ser obsceno ni exagerado en ningún momento), y eso fue algo distinto, algo más real, algo más en control de la situación, y no simple casualidad.
  • El recurso de luces para guiar a los gatos en el baile es, además de simpático, muy ingenioso, ya que las luces tienen a la vez el uso de generar la sensación de que se encuentran (efectivamente) en una fiesta.
  • Hacía tiempo no veía historias que trataran del honor y la reputación como esas historias clásicas; esta parece ser una de esas. La historia de Puss siendo desterrado de su propia tierra, decepcionado a su familia, pero aún manteniéndolos como lo más querido y su meta final de algún día redimirse es una historia de honor pura.
  • La historia de Alexander Dumpty tiene algo de sentido. No demasiado pero lo suficiente como para crear esa discordia de tener dos sentidos de honor opuestos, basados en un código de honor inicial único.

[/spoiler]

Kung Fu Panda 2

Your feathers and the crown: the symbols of your strength!

Therion – Melek Taus

Hace ya un poco más de media semana tuve la oportunidad de ver Kung Fu Panda 2, la continuación de la anterior Kung Fu Panda. Por lo general, la película es interesante, graciosa y logró varias cosas que su antecesora no logró. Las actuaciones son excelentes (perdón Jack Black, pero seguís siendo la excepción), y los personajes logran establecerse mucho más. Con ello, se introducen también un buen conjunto de nuevos personajes y cada uno de ellos aporta su parte distinctiva.

Hubo algunos puntos en particular que me llamaron la atención de la película, que por lo general no se destacan mayor mente en películas de animación. No por eso deja de ser una película apta para niños, pero para gente que, como yo, todavía disfruta de verlas y de no por eso dejar de sentirse maduro (bueno, a veces me siento maduro), seguro habrán notado estas diferencias que menciono con la típica película de animación.

[spoiler effect=”simple” show=”Mostrar spoilers”]La historia es predecible, pero no es infantilizada. Si bien está claro que una vez planteado el dilema de la familia de Po ya sabemos cómo todo va a terminar, ese final no se deja llegar fácilmente y en varios momentos parecería que realmente el final feliz que esperábamos desde el principio nunca ocurriría. Esos momentos no son muy duraderos, pero si bien la película sigue la estructura general de una película de animación con historia simple, logran generar cierta incertidumbre a lo largo de su desarrollo. Además, haber escuchado a los personajes decir “Po has daddy issues” de forma despectiva, fue toda una sorpresa para mí.

Los personajes no son sacrificados por lograr un poco de humor. Bueno, en su mayor parte no. Los personajes tienen sus propios intereses y su propia forma de ser. Por un lado, no se hacen demasiado chistes sobre las características físicas de cada personaje animal (eso es humor demasiado simple para mi gusto), exceptuando a Mantis, quién debe sufrir un par de chistes a sus expensas por caber en la palma de una mano. Por otro lado, sí se resaltan determinadas características de cada tipo de animal, no en lo que se dice, sino en lo que hacen. Me gusta cómo se llaman unos a otros aprovechando las fortalezas de cada especie, pero nunca lo dijeron, sólo fue un detalle que se nota en la interacción del grupo.

El villano tiene su propia historia, pero no la revela totalmente. Este es un hecho interesante, ya que, si bien se explica qué fue lo que ocurrió, nunca queda del todo claro la interpretación que dicho villano tuvo de su propia historia (lo cual es el motivo real del por qué hace lo que hace). Luego lo explica, pero siempre se muestra resistente a hablar del tema, lo cual es poco común. Por lo general esperaríamos que en un momento de debilidad, nuestor villano se ablande y cuente todo lo que piensa y siente, el momento especial para que le dejen una idea que lo haga dudar. Esto me lleva al siguiente punto:

El villano no duda. Esto fue algo que me encantó. En ningún momento el villano es bastardeado como tonto a pesar de (obviamente) tener que ser el perdedor de algunas batallas. Tampoco lo hacen tonto al momento de ganar, sino que lo dejan encerrado en su carácter y en su misión, en la obsesión de lo que quiere lograr. En eso siento un personaje muy sólido. Llega el momento final en donde pensé que vería esto dejar de ocurrir, el momento final en donde se logran deshacer del villano, pero esto tampoco ocurrió. En ese preciso momento, en el exacto instante en donde sobre él cae un hasta de uno de sus barcos, aplastándolo, todo lo que hace es cerrar sus ojos y aceptar su destino de una forma totalmente honorable. ¡Me encantó! Yo esperaba totalmente una carra de horror cómica, alguna tontería, alguna frase de negación… pero no, se mantuvo igual de íntegro que lo hizo durante toda la historia.

¡El villano es un pavo! No sé a quién se le ocurrió eso, pero fue un visionario. Más allá de que por lo general los pavos son animales para bastardear en películas animadas, este pavo es totalmente blanco, cuidadoso y elegante, a la vez de dedicido y claro. Pelea haciendo uso de toda su habilidad kung-fu, incluyendo la utilización de su cola para distraer extendiéndola, y su naturaleza de ave lo hace moverse de forma en donde las peleas parecieran un baile de habilidad. Verlo pelear es un deleite, y ver el blanco impone el respeto que él quiere obtener. Además, no tiene que ver con el personaje pero la voz que le eligieron fue exactamente la voz que debía tener (no aplica a quiénes vean la película doblada). Eso es para Gary Oldman interpretando a Shen.

[/spoiler]

Link del día: Performance HTML5, CSS3 y DOM, Parte 2: Performance HTML5

Hay varias formas de aproximarse a la performance de una aplicación que está construida bajo los nuevos estándares e implementaciones de HTML5, CSS3, y, por supuesto, JavaScript. Como ya lo habíamos mencionado en la parte 1 de este artículo, el tutorial de HTML5 Rocks llamado Improving the performance of your HTML5 App trata varios puntos que son importantes para lograr una buena performance y una aplicación sólida.

Repasémoslos rápidamente:

  • Delegar animaciones al browser siempre que sea posible
    • Transformaciones y trancisiones con instrucciones CSS
    • Renderización “incentivada” a ser a través del GPU con [code lang=”css”]-webkit-transform: translateZ(0);[/code]
    • Separación de threads de animación con [code lang=”javascript”]window.requestAnimationFrame[/code]
  • Profiling de JavaScript
    • Utilizar el DOM lo menos posible
    • Nombrar funciones anónimas para identificar dónde están los problemas más fácilmente
    • Refactorizar el código
    • Crear funciones definidas y autollamadas si hacer métodos más pequeños no se puede (de esa forma “nombramos” parte del código)
  • Utilización del DOM
    • Lo menos posible (nuevamente)
    • Cachear elementos cuando tenga sentido
    • Hacer lecturas, luego modificaciones, luego escrituras para evitar reflows
    • No usar el DOM dentro de loops
  • Inicialización tardía
    • Delegación de eventos en lugar de asociación de handlers

Y eso es, a muy grandes rasgos, este artículo. Realmente recomiendo que le den una leída a fondo si ustedes trabajan del lado de la web. Realmente no verán una página de la misma manera.

Soy un zorrinito performante.

9

Acabo de ver la película de animación con el nombre de 9, una película animada 3D con un escenario post-apocalíptico y unos muñecitos que recuerdan al vudú con tela y alambres que no saben de qué se trata el mundo.

¡Comienzan los spoilers!

Tratándose de post-apocalípsis, guerras, humano vs. máquinas, inteligencia artificial, singularidad tecnológica y corrientes esotéricas, esta era una de las películas que podrían haber llegado al top #1 de lo que me gusta. Sin embargo, la historia es bastante plana, muy predecible. Los personajes son poco creíbles (vamos, te despertás sin saber nada y tu preocupación es salvar a un tipo que no conocés de una cosa que no sabés qué es y sin saber qué puede pasar o qué está pasando todavía… no me la creo). Como extra, los actores parecen no poner mucho énfasis en sus líneas,

Hasta los papeles de los personajes están algo estereotipados. Uno de los personajes era mujer. Esperaba que no lo fuera y que la película clamara tratar de personajes que no tuviéran género, pero este personaje mujer (por suerte, no mujer cliché) tenía hasta la tela (piel) más suave y lisa. Esta era la excusa perfecta para dejar el género de lado y hablar de “cosas”, no de “él” o “ella”. Una lástima, me habría gustado ver eso en una película.

Como extra, también veo innecesario que las máquinas debieran demostrar sorpresa con sus movimientos, como si estuvieran confundidas. Me habría parecido mucho más amenazante una máquina que no dudara, y que si bien se pudiera ver que no planificaba ciertos eventos, inmediatamente actuara al respecto.

Otra cosa que le habría agregado al final es que 3 y 4 (los gemelos) respondieran a la pregunta de 9 (“Y ahora qué?”), mostrando un video de algún documental, en donde se explicara cómo la vida en el planeta surgió del agua, aunque se desconoce la causa. Toma siguiente, igual que ocurre en la película actual, se vería la lluvia causada por el alma del científico y “partes de su alma” en las gotitas que caen. Final feliz, repoblación de la tierra y… science!

¡Fin de los spoilers!

Fuera de los detalles que considero malos (por lo terriblemente quisquilloso que soy), la historia es entretenida (aunque no demasiado profunda) y la película no aburre. Además, la calidad de la animación es muy buena, y personalmente me gustó mucho el diseño de las máquinas (tendría un par de mascota si pudiera, jeje). Además, la historia tiene sentido dentro de su mundo, y se entienden los motivos de los personajes. Yo le doy un 4/5.

Soy un zorrinito postapocalíptico.

Rango

Creo que este será mi último post de hoy sobre películas. Me toca hablar de Rango.

Rango trata sobre la historia de un camaleón sin nombre (curioso, no?) que en su absoluta soledad no sabe cómo socializar, y cayendo en un pueblo casi fantasma con sus problemas, debe de encontrar su lugar.

Debo confesar que no le tenía mucha fe a esta película. Pensé que sería una típica película de animación con chistes payacezcos y mucho cliché, pero varios detalles de ella me hicieron pensar lo contrario. Eso no quita que también sea una película que los pequeños pueden disfrutar con muchos chistes inocentes.

Comienzan spoilers!

Por un lado, se deja bien claro desde el principio que este camaleón sin nombre no tiene una identidad para nada. Él mismo no sabe quién es, y aunque se muestra seguro, nunca sabe cómo debería comportarse. Él mismo se pregunta a sí mismo con mucho dolor “Quién soy?” y a lo largo de la película este problema de identidad se deja ver. Cada vez que asume una identidad o una personalidad que no le pertenece y esta es descubierta como falsa, su crisis de identidad tiene lugar nuevamente. Cada vez es más duro preguntarse quién es y por qué no puede encajar en ningún lugar. Recordemos además que es un camaleón, un animal que se adapta a su entorno. Irónico mensaje, no?

Por otro lado, esta es una de las pocas películas para audiencia infantil que he visto en donde la autoridad abusa de su poder para conspirar contra su propio pueblo. Más interesante todavía: no utilizan sólo el poder de su autoridad y el de la ley, sino los rituales repetitivos y el comportamiento religioso, bajo la excusa de “necesitamos tener esperanza” para mantenerlos haciendo lo que ellos desean, ignorantes de la situación real. Importante mensaje de concientización sobre muchos movimientos religiosos. Me parece hasta polémico que lo hayan hecho. Nunca se menciona explícitamente, pero las similitudes son increíbles.

La historia de Beans sobre su padre abandonándola parecía ser un punto duro de la historia, pero nunca se profundiza en él. Sin embargo, lo dan a entender y a ella con su negación casi traumática al respecto, deja entrever un tema más profundo.

La corrupción corporativa de los malos es interesante también. Más curioso todavía, el respeto y miedo que se le tiene a Rattlesnake Jake, el “malo más malo”. A diferencia de otros villanos de películas, Rattlesnake Jake en ningún momento flaquea, en ningún momento duda, en ningún momento se lo pone en ridículo. Él es un villano de verdad, siempre actuando por lo que le interesa, y nadie lo puede detener.

Finalizan spoilers!

En fin, desde unos búhos rancheros hasta una versión con banjos de La Cabalgata de las Valkirias, el despliegue musical es muy interesante, la animación no se queda atrás, y la historia no es tan predecible como parece. Muchos detalles para considerar, y a pesar de ser una película larga, no aburre en ningún momento. Le otorgo un 3/5.

Soy un zorrinito camaleón.