Cifras y Letras

El mes pasado hicimos una formación interna en Microsoft Ibérica. Se trataba de que cada división de Microsoft le explicara al resto cómo aplicaba la visión de Software + Servicios.  No faltó ningún área de Microsoft, pudimos hablar de Software + Servicios en el hogar (Xbox), consumo (Windows Live), grandes sistemas (Oslo), Information Worder (Office Live) y por supuesto el desarrollo.

De esta última parte nos encargamos en mi departamento y aprovechamos para hacer algo divertido. Queríamos enseñar cómo se desarrollan aplicaciones en un modelo de Software + Servicios y nada mejor para eso que crear una aplicación y mostrarla. La idea era crear un pequeño juego muy conocido (Cifras y Letras) y hacer una competición entre todos los empleados. Colgamos la aplicación en la Intranet y anunciamos la competición junto a la convocatoria del evento.

En cualquier "manual del buen padre" te dicen que la mejor manera para que los niños aprendan es jugando. No sé cuánto aplica eso a los adultos pero ya que hacíamos el juego aprovechamos para incluirle mensajes enseñando las diferencias del modelo Software + Servicios con el tradicional. De esta manera queríamos que todos los que jugaran tuvieran la curiosidad de seguir profundizando y que se apuntaran al curso.

Nunca sabremos si fue por el juego o por el tema del curso pero la verdad es que vino mucha gente, tanto presencialmente en la sala como a través de Live Meeting, donde lo retransmitíamos en directo. En fin, fuera lo que fuera quería compartirlo con vosotros así que he colgado la aplicación en Internet para que juegue el que quiera. 

Podéis lanzar el juego en la página pública de Cifras y Letras o en el siguiente botón:

LanzarJuego 

¿Cómo se hizo?

El juego está desarrollado como no en Windows Presentation Foundation. En el servidor, usando WCF y Linq, hemos creado los servicios que permiten jugar online. La aplicación está publicada por ClickOnce para que pueda ser lanzada directamente desde el navegador y permite el funcionamiento offline, para jugar partidas individuales en caso de falta de conectividad con los servicios.

Originalmente el juego estaba publicado en la Intranet de Microsoft. Para mayor comodidad usábamos autenticación integrada Windows, así los empleados no tenían que registrarse y podían usar directamente su usuario del dominio de Microsoft. También tengo que decir que la aplicación no está pensada para correr en Internet, así que si estás buscando una aplicación segura, escalable y con las mejores prácticas de desarrollo te recomiendo MSDN Video.

¿Cuánto hemos tardado?

Para crear el juego hemos participado un desarrollador y un diseñador (gracias Raúl de Plain Concepts). La verdad es que ha sido una delicia comprobar de nuevo que con WPF podemos trabajar en paralelo los dos roles, no hemos tenido ningún problema de integración. Directamente lo que creaba el diseñador era actualizado en la aplicación y viceversa, una delicia para gente como yo con pocas dotes artísticas. Hemos tardado 3 días (o 3 noches…) y funcionó como la seda para los 600 empleados de Microsoft Ibérica. Tengo que decir que claramente en Microsoft somos de ciencias, el juego de las cifras se nos da mucho mejor que el de letras. Entre todos los que participaron sólo hubo una palabra de más de 6 letras pero se consiguieron muchos números exactos, incluyendo alguno espectacular de Ana, una chica de pequeña y mediana empresa que ha arrasado.

¿Puedo acceder al código fuente?

Esa pregunta estando en mi blog sobra 🙂 Aquí está todo el código fuente.

Nota: Si quieres instalar el servidor del juego localmente tienes que crear un directorio virtual en IIS apuntando al proyecto "ServicioJuego" y adjuntar la base de datos "CifrasYLetras" en tu SQL Server local.

¿Qué pinta tiene?

Aquí tenéis algunas capturas de pantalla:

image
Pantalla inicial

image
Juego de cifras

image
Juego de letras

image
Clasificaciones

Eso es todo, si te animas a jugar una partida mi alias en el juego es "David", nos vemos!!