VISITAS:

sábado, 7 de octubre de 2017

Mi experiencia con Apple pencil y Goodnotes

Este post va a ser un poco distinto a los demás, ya que no voy a explicar ningún tema concreto, sino que voy a contar mi experiencia (siendo ambiciosos podríamos llamarle 'review') con un producto y una aplicación.

Hasta ahora...

Hasta hace poco, yo era un consumidor casi compulsivo de cuadernos, bolígrafos, lápices y material relacionado.  ¿Por qué? Porque cada vez que leo un artículo, cada vez que empiezo a leer un libro, cada vez que voy a una charla, incluso cada vez que asisto a una reunión, siento la imperiosa necesidad de apuntarlo todo. Y siempre me ha gustado apuntarlo todo en un cuaderno, aunque la realidad es que terminaba rellenando folios de apuntes sin ninguna clasificación ni control, con el riesgo obvio de perderlos o incluso peor, saber que esos apuntes estaban entre un buen montón de folios en algún sitio, pero no poder localizarlos.

Siempre he deseado tomar estos apuntes de forma digital y poder tenerlo todo bien organizado. He probado muchas aplicaciones de notas (con teclado), por ejemplo OneNote de Microsoft es una de las mejores. También Evernote está bastante bien. Pero siempre me he tropezado con el escollo (para mí) de que necesito hacer dibujos en medio de mis notas. No lo puedo evitar, me gusta escribir mientras aprendo o escucho, pero necesito hacer muchos dibujos acompañando los textos. Por este motivo, he intentado utilizar sistemas como IrisNotes, un 'bolígrafo digital' muy interesante. Se trata de un bolígrafo casi normal, y un "aparatito" que se encaja en la parte superior del cuaderno. Cuando escribimos con el bolígrafo, el aparatito recoge la información de movimiento y va almacenando los trazos que vamos haciendo. No está mal la idea.
Pero falla en un pequeño detalle que yo valoro mucho: la espontaneidad. Para empezar a tomar notas hay que preparar: el bolígrafo, el aparatito. No es práctico. Porque cuando quieres tomar notas, quieres espontaneidad.
También he probado sistemas como el stylus de Samsung en sus dispositivos Galaxy Note, tanto móvil como tablet. La verdad es que podrían servir, salvo por otro pequeño detalle: el dichoso 'lag'. ¿Qué es el 'lag'? Pues es algo tan sencillo de definir y tan difícil de reducir como el tiempo que transcurre desde que hago un trazo en la pantalla del dispositivo hasta que la pantalla lo visualiza. Este tiempo son unos pocos milisegundos, pero si se supera cierta cantidad, 100ms más o menos, es inadmisible para el cerebro humano. Y por desgracia, los dispositivos de Samsung tienen un lag tan grande, que la sensación de escribir con naturalidad desaparece. Quizás se pueda utilizar para subrayar un pdf o bien para retocar una fotografía, pero para escribir o dibujar NO VALE.
Entre medias he utilizado algunas tabletas digitalizadoras, pero en este caso, el problema ya no sólo es el lag, sino que se añade el hecho de que estás escribiendo sobre una superficie (la tableta) y el resultado sale en otro sitio: la pantalla del ordenador. Esto es inadmisible para la escritura y casi también para el dibujo (aunque hay artistas digitales que lo utilizan y les encanta). Además, con esta solución se pierde completamente el concepto de portabilidad, tan necesario en la toma de apuntes.

Apple pencil

Y entonces llegó el Apple pencil. ¿En qué se diferencia el Apple Pencil de los demás stylus? En algo fundamental: el lag es prácticamente inapreciable. Sobre todo sobre las pantallas de los iPad Pro con refresco de 120Hz. Esto no sólo es un salto cuantitativo (lag casi cero), sino también cuantitativo: la sensación de estar escribiendo sobre la pantalla y que ésta responda a tus trazos de forma inmediata te hace sentir como si estuvieras sobre un papel, SALVO que la superficie es de cristal, lo cual se hace un poco raro al principio, pero te acostumbras.
La escritura con Apple pencil es sencillamente casi perfecta. Inmediatamente te olvidas que estás escribiendo sobre una pantalla y ves como todas tus ideas fluyen inmediatamente hacia el dispositivo. La sensación es maravillosa. No soy un experto dibujante, pero por lo que me han comentado los profesionales del dibujo tienen una sensación muy cercana a la realidad cuando trazan sus dibujos sobre el iPad con ayuda de un Apple pencil.
Además del lag inapreciable, otro tema muy importante con los stylus es 'palm rejection' o sea, que mientras estás escribiendo/dibujando en la pantalla, puedas apoyar la palma de la mano en la pantalla y que este gesto no dispare otras acciones o que incluso no haga rayas en el dibujo. Y Apple pencil esto lo hace muy muy bien. Mientras la punta del lápiz esta cerca de la pantalla, el resto de interacciones se desactivan. Así que si eres zurdo como yo o bien tienes la costumbre de escribir apoyando la palma de la mano sobre la pantalla, no vas a tener ningún problema.

Goodnotes

Y una vez entusiasmado con el pencil, sólo me faltaba una cosa: una buena aplicación para tomar notas. Sabía que eso no iba a ser difícil de encontrar, que incluso tendría problemas para elegir la que más me convenía. Y así fue.
Las empresas de desarrollo de aplicaciones se han esmerado muy mucho en lanzar aplicaciones que se integran a la perfección con el Apple pencil.
Pasé por algunas de estas aplicaciones, y la verdad es que casi todas me dieron muy buena impresión. Hasta que di con Goodnotes y entonces me di cuenta de que algo a lo que muchas veces no hacemos caso, la experiencia de usuario (UX user experience en inglés) es algo fundamental cuando quieres agilidad y espontaneidad. Tomar notas con Goodnotes es muy parecido a la sensación de tener un cuaderno, varios bolígrafos de distintos colores y una goma de borrar.
No voy a juzgar la forma que tiene Goodnotes de organizar las libretas en carpetas, no es la mejor, pero es suficiente. Tampoco necesito 10000 libretas!!! Lo que hace me vale, aunque esto podría mejorar en un futuro.
Escribir con Apple pencil y Goodnotes es una experiencia fantástica. Una vez te acostumbras a escribir sobre un cristal (la pantalla), la sensación es casi la misma que escribir en un cuaderno. Pero claro, tienes muchas ventajas: puedes hacer 'undo' y 'redo'; puedes borrar cualquier cosa, puedes mover trazados por la pantalla, ampliarlos o reducirlos, cambiarlos de color, etc, etc. Las posibilidades son enormes. Y lo bueno es que la interacción que ha diseñado el equipo de Goodnotes hace que todo esto sea casi natural.

Cómo utilizo Goodnotes con Apple pencil

Casi todas las opciones de Goodnotes aparecen en la línea superior (yo habitualmente utilizo las que tienen un número):

Voy a intentar explicar las opciones que uso yo, pero no en el orden en el que aparecen en la figura.
  • Lápiz (4) : selecciona el modo de dibujo o escritura con lápiz. Si se vuelve a pulsar aparece un menú con opciones de color del lápiz y grosor
  • Subrayador (5) : selecciona el modo de subrayado (el efecto es parecido al de los rotuladores subrayadores que solemos utilizar para resaltar palabras). Al igual que ocurre con el lápiz, si se vuelve a pulsar, aparecen opciones para elegir el color y el grosor
  • Borrador (6) : borra libremente por la página. Si se vuelve a seleccionar, aparecen opciones para el grosor de la goma de borrar
  • Undo (8) : deshace lo último que hayamos hecho
  • Formas geométricas (3) : si esta opción está seleccionada, Goodnotes intentará "arreglar" nuestros trazados para que se conviertan en formas geométricas. Por ejemplo, un trazado más o menos redondo, se convertirá en un círculo. Yo uso mucho esta opción para subrayar texto: la activo, hago una raya más o menos recta, y Goodnotes la transforma en un subrayado perfecto
  • Selección (7) : permite seleccionar cosas trazando un lazo libremente. Hay que tener en cuenta que si la selección corta un trazado por la mitad, entonces Goodnotes lo incluye completamente en la selección. Es muy útil para mover zonas dentro de la página o para redimensionarlas. Aunque también se puede usar para cambiar el color de una zona
  • Visor de páginas (1) : muestra todas las páginas del cuaderno en miniaturas. Permite realizar rápidamente operaciones como borrar páginas, insertar, cambiar de orden
  • Insertar (3) : permite insertar páginas provenientes por ejemplo de un fichero PDF externo 

Además de este menú superior, yo también utilizo las siguientes acciones:

  • dibujo con el pencil sobre la hoja del cuaderno.
  • deslizando con dos dedos paso a la página siguiente o anterior (dependiendo si deslizamos hacia la izquierda o hacia la derecha)
  • en la última página del cuaderno, deslizando con dos dedos hacia la derecha y aguantando un poco, aparece la opción de crear una nueva página al final. 

Uso real

Hasta ahora, he estado utilizando Apple pencil y Goodnotes en:
  • Charlas: la experiencia es fenomenal, porque escribes a tu ritmo y no hay desventajas sobre el papel. Tiene la ventaja de que puedes mover trozos de texto hacia abajo e insertar cosas que se te hayan pasado anteriormente
  • Reuniones: también muy buena experiencia, ya que puedes hacer dibujos rápidamente en el "cuaderno" y mostrarlos a los asistentes
  • Aprendizaje: me encanta seguir cursos online, y ahora mucho más, ya que mientras estoy viendo un vídeo en el ordenador, puedo estar tomando apuntes en el iPad.

Otros dispositivos

Hace unos dos años una startup noruega, reMarkable, y concretamente su CEO Magnus Wanberg, decidió embarcarse en un proyecto muy ambicioso: sustituir el papel, bolígrafos, lápices por un dispositivo de tinta electrónico. Todos conocemos los ebooks, dispositivos de tinta electrónica, que tienen la gran ventaja sobre las pantallas de móviles y tablets, de que no funcionan con luz, sino con una especie de polvo magnético que simula muy de cerca las páginas de un libro. Al tener una pantalla no iluminada con luz, puede utilizarse perfectamente en condiciones lumínicas muy difíciles para una tablet, por ejemplo a pleno sol en una playa. Además, el consumo de batería de estas pantallas es tan bajo, que con una carga podemos tener lectura para varias semanas. Pero no todo podían ser ventajas: la tinta electrónica es monocroma, no hay colores; el refresco de la pantalla completa es muy lento, puede llegar al segundo o más; aunque algunas de estas pantallas son táctiles, el lag es tan alto que lo hace inmanejable como dispositivo de escritura.
Pero Magnus Wanberf se empeñó en conseguir un dispositivo de tinta electrónica con un lag inapreciable, similar al apple pencil. Desde hace unas semanas está distribuyendo los primeros dispositivos, y las críticas son bastante buenas. Me han pedido que evalúe uno de estos dispositivos, así que escribiré en este blog los resultados y mi experiencia. Estad atentos...

sábado, 11 de febrero de 2017

Javascript: use strict

Javascript permite realizar algunos chequeos al código que escribimos. No es que se convierta en un lenguaje con los chequeos de los lenguajes compilados, ni siquiera se aproxima a su primo-hermano typescript, pero con estos chequeos podremos detectar algunos errores de otra forma pasarían inadvertidos y sólo provocarían errores de ejecución. Errores que muchas veces son muy difíciles de detectar.

Modo estricto

Para activar el modo "estricto" de javascript, tenemos que poner en la primera línea del fichero .js lo siguiente:

    "use strict";

Obsérvese que utilizamos comillas, no ponemos directamente use strict. ¿Por qué? Porque de esta forma, un string pasará inadvertido en versiones antiguas de los navegadores. Sin embargo, cuando un navegador moderno, vea este string al comienzo del fichero, activará los chequeos de javascript.
Si se desean activar los chequeos en todo el fichero, entonces "use strict" tiene que ser la primera sentencia del fichero .js Sin embargo, es posible, por ejemplo, colocar la sentencia "use strict" al comienzo de una función, y se aplicarán los chequeos sólo a esa función.

Variables globales

En javascript podemos utilizar una variable en cualquier lugar sin haberla declarado antes. Por ejemplo:

    contador = 1;

Esto funciona, pero no es una práctica recomendable, como sabe muy bien cualquier programador.
Sin embargo, si activamos los chequeos:

    "use strict";
    contador = 1;

Al ejecutar este código, obtendremos un error de javascript: "contador is not defined" indicando que la variable contador no ha sido definida anteriormente. La forma correcta sería:

    "use strict";
    var contador;
    contador = 1;

Variables mal escritas

Otro error típico en javascript es escribir mal el nombre de una variable:

    var contador = 0;
    contdor = 1
    console.log(contador);

Por un error tecleando, hemos asignado el valor 1 a una variable que no es contador, lo cual está permitido en javascript, y la consola nos mostrará el valor cero, en lugar de 1, que es lo que esperábamos. No tendremos ninguna otra pista de que estemos haciendo algo mal, simplemente obtendremos el valor cero en la consola.
Si activamos el modo estricto, tendremos el aviso que nos llevará al error:

    "use strict";
    var contador = 0;
    contdor = 1
    console.log(contador);
Al ejecutar nos mostrará el mensaje: "contdor is not defined"

Palabras reservadas

Otro error común en javascript es el uso de palabras reservadas como nombres de variables:

    var let = 4;

Esta línea se ejecutaría correctamente en javascript. Sin embargo, si activamos el modo estricto, obtendremos un error:

    "use strict";
    var let = 4;

"reserved word"

eval

Los programadores javascript saben que no es recomendable utilizar la función eval() por los peligros que implica. Sobre todo, porque puede cambiar el contexto del código javascript que le rodea.

Por ejemplo:

    var a = 1;
    eval("var a = 12");
    console.log(a)

En la consola veremos un 12, en lugar de 1 que es el valor que esperamos. O sea, eval() ha creado una variable en nuestro código y ha "machacado" la que ya teníamos.
En modo estricto, lo que se ejecute con eval() no tiene consecuencias en el código que le rodea:

    "use strict";
    var a = 1;
    eval("var a = 12");
    console.log(a)

En este caso, la salida es 1, y el código dentro de eval() se ejecuta autónomamente sin efectos laterales con nuestro código.