lunes, 8 de febrero de 2010

todo en uno: login+new customer

No hay nada como surfear buenas webs para llevarse alegrías y aprender simplemente observando. Este es el caso de mi visita a Amazon y su forma de presentar el login.

Cuando linkamos "Sign in" de la cabecera de Amazon vamos a una página donde nos pide el email y que elijamos si somos new customer o no. Si seleccionamos new customer nos lleva al formulario de registro.
Un par de mejoras que yo haría:
  • Cambiar la etiqueta del botón por "Create new account" si se elije new customer
  • Evitar presentar un formulario de registro diferente, esto es, si se elije new customer añadir al mismo formulario el campo de repetir password
Son muchísimos los usuarios que deciden no registrarse en una web simplemente porque se les preguntan demasiado. Sería mucho más efectivo hacer un registro en dos pasos:
  1. registro sólo con el correo electrónico (evidentemente además del password y el repetir la contraseña)
  2. sugerirle al usuario que rellene sus datos una vez haya confirmado su correo electrónico
de esta forma no se perderían tantas altas y le enviaríamos al usuario un mensaje claro: "nosotros no te vamos a incordiar más de la cuenta".

sábado, 6 de febrero de 2010

Dropbox, un buen invento

Recientemente un amigo me pidió consejo sobre qué sistema usar para hacer copias de seguridad de sus archivos. Me preguntaba sobre si debía comprarse un disco duro externo para hacer copias periódicas.

Mi respuesta fue tajante: ni se te ocurra. Lo que te pasará será que cuando tu ordenador se estropee te darás cuenta de que la última copia es de hace tiempo y precisamente los documentos más importantes serán los que se han cambiado recientemente. Yo mismo tengo varios discos duros y dvds con copias de seguridad donde alguna vez he ido a buscar algo que no he consiguido localizar.

En eCliente utilizamos un sistema opensource de repositorio llamado subversion o SVN y funciona relamente bien. Es la evolución del CVS que inicialmente se pensó para gestionar versiones de código fuente de aplicaciones. Estos sistemas funcionan bien con ficheros planos pero bastante mal con ficheros binarios, que son la mayoría fuera del ámbito de la programación. El CVS para gestionar versiones de ficheros binarios básicamente lo que hacía era realizar copias completas con cada versión, independientemente de que hayan cambiado muy pocas cosas en el fichero. Así el repositorio crecía muy deprisa. Esta mala gestión de los ficheros binarios ya la soluciona el Subversion.

Las características principales del SVN:
  • gestión de versiones: permite saber qué cambios ha sufrido un fichero, qué persona lo ha cambiado así como recuperar cualquier versión del fichero
  • permisos por directorio e incluso por fichero: se pueden establecer permisos de lectura y escritura por cada directorio. Esto es realmente interesante a nivel de empresa ya que se puede controlar muy facilmente quien accede a qué e incluso dar acceso a proveedores y a clientes a ciertos directorios
  • integración desktop (windows, mac, linux): mediante un pequeño plugin se puede controlar desde la propia gestión de archivos del ordenador
  • acceso web: se permite acceder al repositorio a través de un navegador web (siempre con los controles de acceso definidos). Esto lo uso con frecuencia en mis clases para proyectar los materiales desde el ordenador del aula directamente que está conectado a internet
  • ficheros eliminados: se permite recuperar ficheros eliminados e incluso a las diferentes versiones que tuvieron antes de ser eliminados
  • notificaciones: es posible establecer avisos cuando se modifican ciertos directorios
  • minimiza el tráfico: cuando se modifica un fichero, al servidor únicamente se le envían los cambios, es habitual modificar un fichero de varias MB y que sólo se envíen unas pocas KB que corresponden a los cambios realizados
Aunque es un gran avance el uso de un repositorio de archivos, y da mucha tranquilidad saber que tus documentos están a buen recaudo, no todo es de color de rosas. El SVN presenta varios problemas:
  • no es desatendido: o dicho de otra forma, el usuario tiene que decir que quiere subir documentos cuando los ha modificado o bajarlos cuando piensa que alguien los ha podido modificar
  • mover es complicado: aunque se permite la acción de mover ficheros e incluso directorios esto no se puede llevar a cabo con el drag&drop habitual, sino que hay que hacerlo con mucho cuidado, y lo peor es que con frecuencia da problemas (si se hace bien es potente porque mantiene el rastro de las versiones movidas, pero es complicado hacerlo bien)
  • algunas veces provoca conflictos que son complicados de solucionar: el conflicto más habitual es cuando dos usuarios están trabajando simultaneamente en la misma versión de un fichero y uno de ellos sube sus cambios. El conflicto se da porque el segundo ha estado trabajando con una copia desactualizada y entonces el sistema al detectarlo no le permite consolidar sus cambios. Estos problemas se solucionarian si el sistema actualizase las copias locales de los ficheros de forma desatendida de forma que un usuario siempre tuviese en su ordenador la copia más actualizada
Desde hace unos meses uso Dropbox y me gusta como funciona. Es parecido a SVN en cuanto a que se trata de gestionar versiones y de trabajar en equipo, aunque en este caso es desatendido, los ficheros suben y bajan del servidor de forma automática. Esto es muy cómodo, aunque genera muchas versiones en el servidor con lo que podría ser complicado localizar una versión antigua cuando estemos es esa tesitura.

Una cuestión que Dropbox no abordan es la posibilidad de tener diferentes niveles de acceso, en Dropbox todos los usuarios acceden a toda la carpeta compartida, no es posible establecer permisos de lectura o escritura en subcarpetas.

Los problemas de mover ficheros o carpetas que tiene SVN, Dropbox los soluciona realmente bien y de forma transparente. Ahora bien, el hecho de no tener niveles de acceso provoca que te encuentres cambios en la carpeta que a veces se escapan de control, o que intentes borrar carpetas y una y otra vez vuelvan a aparecer vacías.

Y para terminar, señalo las características que creo que debería tener un sistema de repositorio de ficheros:
  • desatendido: he trabajado con los de ambos tipos y, aunque siendo desatendido se generan demasiadas versiones, la tranquilidad se incrementa y los conflictos disminuyen
  • niveles de acceso: Dropbox opta por simplificar la gestión de permisos y accesos hasta tal punto que no establece ninguna diferencia entre los usuarios que comparten una carpeta. SVN por el contrario está en el otro extremo, se puede establecer para cada usuario a qué carpetas puede acceder y si es en modo escritura o sólo lectura. Me quedo con esta segunda opción ya que es muy habitual restringir el acceso a carpetas a usuarios y también prohibir la escritura en otras carpetas
  • encriptación de ficheros: ni Dropbox ni ningún otro sistema similar que yo conozca codifica los archivos en el servidor. Tan sólo creo que iFolder permite codificar los archivos cuando se usa en modo mono-usuario, que no es el objetivo de este tipo de sistemas funcionar únicamente a modo de backup
  • compartir de forma pública: algo que hecho de menos tanto en SVN como en Dropbox es que exista la posibilidad de compartir en modo lectura y de forma pública una carpeta. Esto sería de gran utilidad ya que con frecuencia estas carpetas compartidas se usan para hacer trabajo en grupo que termina en ciertos documentos que se quieren hacer públicos
  • mail link to a file: con frecuencia tenemos que enviar ficheros por correo electrónico a proveedores, clientes o colaboradores. Estos ficheros están alojados en nuestro sistema de repositorio y sería una interesante funcionalidad el poder arrastrarlos directamente al correo electrónico de tal forma que lo que realmente se enviase fuese un enlace temporal al fichero en cuestión. De esta forma solucionamos el problema de enviar ficheros demasiado grandes por correo electrónico (existen servicios tipo FileMail que hacen esto) y por otro lado el receptor de ese enlace tiene acceso a la última versión del documento - que podría incluso cambiar después de enviar el correo (no creo que sea el único al que le ha pasado que justo después de enviar un documento por correo electrónico se da cuenta de que ha de rectificar algo)
Buen trabajo Dropbox!!!

lunes, 1 de febrero de 2010

me gusta el nuevo "responder para comentar" de facebook

Facebook acaba de añadir la posibilidad de participar en hilos de conversación simplemente contestando a los mails de aviso. De esta forma, cuando alguien comenta fotos donde yo aparezco o hilos de conversación donde participo, y facebook me envía un aviso, simplemente contestando a ese mail de aviso puedo publicar una respuesta en el hilo.


Esto me recuerda los tiempos en que se utilizaba muy intensivamente el mail para interaccionar. Un ejemplo eran las listas de distribución donde a base de comandos que el usuario ponía en el subject gestionaba su suscripción a las listas.

Me parece muy efectivo permitir responder mails y así participar en las conversaciones. Es muy rápido y directo, sin clicks, sin banners, sin rodeos... enhorabuena por esto, facebook.