Gamification

El término “gamification” podría definirse como, “el uso de mecánicas basadas en juegos que permite captar la atención de las personas, motivar a la acción, promover el aprendizaje y resolver problemas.”

Es una estrategia que últimamente las empresas están implementando, con el fin de brindarle a sus clientes formas entretenidas de participar, por ejemplo, en el caso de Duolingo, se premia cada logro, alcanzando por el estudiante, en el aprendizaje de un nuevo idioma, en donde los estudiantes pueden competir contra otros estudiantes a nivel mundial, la idea es acumular la mayor cantidad de puntos y trofeos, para llegar a ser el mejor.

Elements that makes a game engaging

Badges

Los badges son “insignias” que pueden ganar los participantes tras haber logrado realizar una serie de misiones/retos durante un concurso. Estas insignias, son reconocimiento del esfuerzo realizado por dichos participantes, por lo que es importante que otros participantes puedan ver las recompensas que ha obtenido mi competidor más cercano. En el caso de Duolingo, utilizan metáforas relacionadas al aprendizaje de un nuevo idioma, por ejemplo “Filósofo”, “Intelectual”, “Perfeccionista”, por ejemplo.

Leaderboard

Es otros de los elementos para generar game engaging, ya que permite rankear a los participantes y así determinar la posición de éste con respecto a los otros competidores, mientras más puntos y logros obtenga, mayores son las probabilidades de ir escalando en esa tabla de posiciones.

Los retos técnicos de un Leaderboard

Al implementar una solución basada en gamification, por ejemplo un Leaderboard, resulta necesario diseñar eficientemente la solución, puesto que será una característica altamente usada en el sistema, pues lo consultarán muchos participantes y siempre será visto por muchos al mismo tiempo luego de un evento clave o momentos antes de llegar a una fecha límite, por tanto, debe ser reactivo, por la emoción de que esté en constante actualización. Debe estar centrado en el player, así que es diferente para cada persona que lo ve.

El objetivo del Leaderboard es poder dar la sensación de clasificarme a mí con respecto a los otros competidores, por lo tanto se hace necesario resaltar mi posición con algún efecto o color, además mostrar mi nickname y avatar.

Gracias a nuestra tecnología propietaria, desarrollamos una nueva abstracción a la cual nombramos Follower. Este nuevo componente, permite, en tiempo postergado, ir revisando los eventos realizados por el actor principal (el rastro) y con base en esto, verificar si cumple o no la regla para otorgar un logro; una vez se cumplen una serie de logros, se otorga una medalla o badge.

Debido al procesamiento que se necesita para estar verificando si se cumple o no la regla, se implementó una estrategia, que no impacta el tiempo de procesamiento de la transacción principal, por tanto, no es necesario ensuciar la lógica de la transacción, con la lógica para verificación de reglas, dedicándole así más procesamiento a la transacción y por ende mayor rendimiento. Esta es otra de las ventajas que poseemos con nuestra tecnología, la rapidez.

Otra de las ventajas es que la creación de nuevas reglas sucede de una manera sencilla, ágil, que no involucra mucho conocimiento en desarrollo de software y fácilmente configurable, ya que solo se debe crear la nueva regla, extender de una clase e implementar un par de métodos con la lógica de la regla. Luego solo es cuestión de decirle al Follower que existe una regla más, haciéndole Add.