10 PRINCIPIOS DE UNA APLICACION WEB EXITOSA


1. Velocidad 

En primer lugar, creemos que la velocidad es más que una función. La velocidad es la característica más importante. Si su aplicación es lenta, la gente no va la usar. Veo esto más con los usuarios mainstream que con los super usuarios. Creo que los usuarios avanzados tienden a ser empáticos con los desafíos de la construcción de aplicaciones web rápidas, y quizás están dispuestos a vivir con ella. Si algo es lento, se van!

Creemos que la aplicación tiene que ser rápida, y si no, puede ver qué pasa. La velocidad es más que una función. Es un requisito.


2. Utilidad instantánea 

Lo que esto significa es que el servicio sea inmediatamente útil. Si usted construye un servicio y el usuario tiene que pasar una configuración de nuestro servicio, que lo crea, la importación de contactos, haciendo un montón de entrada de datos, no creo que la gente vaya a soportarlo. El servicio tiene que ser bien útil desde la caja.

Vemos un montón de gente cometiendo este error. Hay un montón de trucos que puedes utilizar para crear la utilidad inmediata y luego salir desde allí. Un buen ejemplo de esto es si usted está construyendo un servicio de información, se puede rastrear la web para rellenar el servicio con datos iniciales, aunque a largo plazo se espera obtener los datos de otra manera. Tienes que darle a la gente algo que sea útil desde su salida.

Otro ejemplo de esto es cuando Google lanzó Google Video tal vez 4 o 5 años, casi al mismo tiempo que YouTube lanzó, si habías subido un vídeo a Google Video, después de cargado obtendría una nota que decía: “Regresa en alrededor de una semana y el vídeo se muestra.” Por supuesto, eso no funcionó muy bien. YouTube proporcionaba codificación instantánea y se podía ver el vídeo, literalmente, segundos después de que lo haya cargado. Eso es lo que estoy hablando cuando hablo acerca de la utilidad inmediata.



3. El software es un Medio

El software es un medios de comunicación de hoy. En particular, software para el consumidor, cuando la usan, que se acercan a su software de la misma manera en que se enfrentarían a los medios de comunicación.

Su software ha de tener una personalidad. Si el software es blando, y no tiene actitud, algo tan tonto como el “Fail Whale”, que se convirtió en un símbolo de la incapacidad de Twitter para mantenerse, también fue una personalidad.  Es vergonzoso para la gente de Twitter, pero sin embargo, habló del hecho de que hubo una cierta actitud y habilidad mediática detrás del servicio y una voz que la gente conectada. Eso es lo que quiero decir con voz, y yo creo que es tremendamente importante en una aplicación web.


4. Menos es Más 

Y estoy convencido de ello, sobre todo al principio cuando se lanza algo. Con el tiempo, puede hacer crecer la utilidad de su servicio, y hoy en día Facebook ofrece probablemente 20 o 30 diferentes características de importancia en su servicio. Pero, cuando se puso en marcha, era realmente muy simplista. Creo que es cierto de los servicios más grandes.

Los servicios, donde uno hace una cosa pequeña, pero lo hace todo el tiempo, obtiene mucha utilidad de él, y es rápido y fácil, creo que tienden a hacer muy bien y dar que en última instancia, la plataforma para crecer desde allí.



5. Hágalo programable

Hablando a un grupo de desarrolladores de aplicación web, creo que probablemente es evidente, pero creo que es importante para su aplicación ser programable, y hacer posible que otros puedan construir encima o conectarse o agregar valor a, de alguna manera , la aplicación Web. Eso significa API, y en mi opinión, API de lectura/escritura. Si es una de sólo lectura de la API, bien podría ser de RSS.

Lo importante de la programación es que cuando la gente puede agregar valor a su aplicación, son en efecto la adición de energía para tu aplicación, atraer más usuarios a su aplicación, y también trasladar datos más y más ricos para sus aplicaciones. Creemos que esto es similar a la velocidad. Esto es absolutamente esencial, y sin duda hoy, quizá no tanto 2 o 3 años atrás, pero hoy creemos muy difícil hacer una inversión en una aplicación web que no sea altamente programable.


6. Hágalo personal

Personal significa muchas cosas para muchas personas, pero en esencia, se parece mucho a la diapositiva anterior. ¿Quieres desarrolladores de terceros para infundirle energía a tu aplicación? ¿Lo mismo con los usuarios?. La mayor parte de sus datos y su personalidad y la energía que puedan contribuir a su aplicación, lo hara sentir esa aplicación como su propiedad, y los más probable es que lo defienden y se convierten, en efecto, su fuerza de comercialización. Es muy importante hacer su aplicación personal para todo el mundo. Eso podría ser permitir a las personas a cambiar sus antecedentes. Eso podría ser permitir a las personas para poner en forma de avatares, de contenido claramente generado por el usuario, o lo que sea para que la gente pueda empezar a sentirse dueño de esa aplicación web.

En gran medida, es una cosa muy buena porque la gente presta atención y muestra que han invertido tiempo y energía en su aplicación cuando se hacen personales.


7. RESTful

No sé que estoy necesariamente usar este término correctamente. Creo que la mayoría de ustedes saben que significa este término. Es algo muy concreto en un punto de vista de la arquitectura de software, pero la razón por la que ésta aquí es ligeramente diferente. Es un poco más de un mal uso de la palabra, pero voy a tratar de hacer de este sentido de todos modos.

En una arquitectura REST, los recursos tienen una dirección URL y se les puede llamar a esa URL. Ese es el tipo de arquitectura de software que se describe en el enfoque REST. ¿Qué quiero decir con esto es un poco una deformación?. Lo que quiero decir es que toda la aplicación, todo en la aplicación tiene una URL, y lo ideal, muy limpia y la URL comprensible.

Google podrá ver dicha URL, se descubre, y así lo que en esencia permite es que la web, en general, pueda descubrirla y acceder a su solicitud de manera muy profunda. Creo que las personas que crean aplicaciones web que no permiten que tipo muy profundo y abierto de las arquitecturas comenten un gran error. Algo tan popular como LinkedIn, por ejemplo, yo diría hace un trabajo muy pobre de este. Eso es lo que quiero decir con esto, y sé que es un poco una deformación de la palabra, pero creo que es muy importante.


8. Discoverability 

Esto es similar en algunos aspectos, a la anterior. Cuando inicia una aplicación web, es una aguja en un pajar. Hay cientos de miles, si no millones de aplicaciones web que existen en la World Wide Web, y cómo es que nadie nunca va a encontrar el tuyo? En su nivel básico, para mí, esto significa la optimización de motores de búsqueda. Usted tiene que entender la optimización de motores de búsqueda y usted tiene que entender las reglas, tienes que saber cómo hacerlo. Usted tiene que construir su aplicación desde el suelo hasta ser descubierto por Google, y optimizado para Google.

Pero, también tiene que ser construido desde cero para ser descubierto, y optimizado por los medios de comunicación social. Creo que este día y edad, los medios de comunicación social es tan importante como la búsqueda, en términos de detectabilidad en general. El producto se debe presionar a sí mismo en la web, en la búsqueda, y en los medios de comunicación social. Así es como se hacen detectable.


9. Limpio

Limpieza, para mí, significa que la aplicación no puede ser ocupado en la página. Usted necesita ser capaz de mirar y no ser molestado con un montón de cosas. Es el espacio en blanco, o un espacio oscuro, que en realidad no importa si es blanco o oscuro, pero mucho espacio. Creo que fuentes de mayor tamaño, no demasiada funcionalidad presentada en cualquier página. Lo hacen muy atractivo, y hacer lo que la gente sabe, de inmediato, lo que tiene que hacer.


10. Divertido

Por último pero no menos importante, es juguetón.  El 6 palabras son: móviles, social, global, lúdico, inteligente, y me estoy olvidando de lo que el último es por lo que voy a fracasar hoy en día, pero en cualquier caso, eso es algo de lo que piensa en términos de temática aplicaciones web.  Sólo uno de ellos hizo en este paquete de diapositivas, y eso es “juguetón”.

En cualquier caso, la posibilidad de jugar en una aplicación es realmente importante. La dinámica de juego es lo que usted puede usar para llegar a los usuarios a hacer lo que quiera. Un ejemplo me gusta usar aquí es algo que ni siquiera es una aplicación web. Si usted piensa de Weight Watchers, es un juego. Tiene algunas dinámicas de juego realmente importante. A establecer objetivos, prepárate para enfrentarte a esos objetivos, y que informe en contra de esos objetivos, y se obtiene recompensa para alcanzar esos objetivos. Esa dinámica de juego es lo que finalmente hace que el éxito de Weight Watchers para algunas personas.

Ese tipo de enfoque se debe, de alguna manera, forma o la forma, en cada aplicación. Si nos fijamos en LinkedIn, cuando se lanzó por primera vez, tenía amigos que estaban locamente tratando de acumular relaciones en LinkedIn. Usted vio que con la gente tratando de acumular seguidores en Twitter, amigos en Facebook, y que es una especie de dinámica de juego. Es evidente que hay otro tipo de dinámica de juego que hay.

Cuadrangular sería un ejemplo de tomar elementos de juego muy parecido estado, insignias y cosas así, y utilizarlo como una manera de potenciar el desarrollo de lo que es, efectivamente, un servicio de información local. Usted no tiene que ser lo más flagrante de ello como Cuadrangular es, pero creo que las solicitudes deben ser juguetón. Hará que los usuarios tienen más divertidas con su aplicación, y porque se puede incentivar el tipo de comportamiento que desea crear en su aplicación.