domingo, 29 de abril de 2012

Modificando los elementos del Application Bar de Windows Phone en tiempo de ejecución

Este post va en respuesta a una pregunta que recibí. Sucede que al intentar acceder a los botones o elementos de menú de la barra de aplicaciones con el fin de desactivarlos o cambiarles alguna propiedad se genera un NullReferenceException por que en efecto los objetos se muestran con valor null.

Pues bien para lograr molificados debemos acceder a la lista de elementos del ApplicationBar y extraer el objeto al que hace referencia.

Para los iconos podemos modificar Estado, Texto e Imagen
Para los elementos de menú podemos modificar Estado y Texto

La razón es que el ApplicationBar no es un control Silverlight, no se deriva de FrameworkElement y por tanto no implementa muchos conceptos que aplican a estos.

Para leer la explicación más detallada está el artículo de Peter Torr, Why are the ApplicationBar objects not FrameworkElements?


Espero les sea útil, Saludos.

Sorey

sábado, 28 de abril de 2012

Certificación en Windows Phone

Les comparto los examenes que deben presentarse para certificarse en desarrollo para Windows Phone, esta un poco largo el camino si no se tienen certificaciones recientes, pero iniciaremos :)

Para obtener la certificación MCPD como Desarrollador de Windows Phone Developer se deben pasar los siguientes tres exámenes:

Pre-requisitos
Exam 70-506: TS: Silverlight 4, Development - (Plan de aprendizaje)
Exam 70-516: TS: Accessing Data with Microsoft .NET Framework 4 (Plan de aprendizaje)

Examen
Exam 70-599: PRO: Designing and Developing Windows Phone Applications (Plan de aprendizaje)

Si ya tienes una certificación MCPD para .NET Framework 4, puedes ganar la certificación MCPD como Desarrollador Windows Phone, aprobando sólo dos exámenes más.

Recuerda que deberás demostrar competencia continua en Windows Phone completando un examen de recertificación cada dos años.

Ojalá se animen y ojalá me anime :), Nos vemos en la próxima.

Sorey

jueves, 26 de abril de 2012

Recursos para hacer prototipos de aplicaciones Windows Phone

Buscando recursos para hacer prototipos estáticos de Windows Phone de una forma divertida me encontré con un recurso bastante especial y de todo mi gusto,  se llaman UI Stencils, y además de tener una regleta con elementos e iconos básicos, tienen unas libretas con la forma del teléfono que seguro incentivarían la creatividad (Aclaro que esto no es publicidad pagada, simplemente me cautivó esto)

Como ya les he mostrado antes para hacer prototipos para Windows Phone está el Sketchflow en Expression Blend, pero para quienes como a mi les gusta el Sketching seguro que la posibilidad de hacer prototipos manuales sobre plantillas les despertará más la creatividad, de hecho cito una frase de un post de MerryCode con la que me identifiqué:

"I prefer designing User Experience on paper with colored pencils and than using any app on the PC because I think it is the most natural way and one can get a lot of inspiration"

Por esta razón los invito a conocer la lista de recursos de diseño que se encuentra publicada en MSDN:


Espero les sea útil.

Sorey

miércoles, 25 de abril de 2012

Buscando escenarios cotidianos para crear aplicaciones para Móvil

En mi último post hice una afirmación frente al llamado a la creatividad que suponen los escenarios de creación de aplicaciones para móvil en los que tantas personas desean incursionar últimamente con fines de aprendizaje, esta fue:

"Para mi el escenario es un gran reto, un reto a la creatividad, a intentar tener tu propia idea, que no necesariamente tiene que ser única, revolucionaria o impactante, a veces tan solo se trata de satisfacer una necesidad de alguien o bien hacer de algo que sucede en la cotidianidad un escenario digital"

Con el ánimo de resaltar este punto decidí buscar algunas aplicaciones existentes en el Marketplace de Windows Phone, que pudieran quizá dar una luz a algunos de los que buscan ideas, con el fin de que vean que hay aplicaciones con escenarios bastante útiles y que ustedes podrían encontrar alguno fácilmente.

La primera aplicación es bien femenina, se llama Woman Calendar, para las mujeres es obvio por que resultaría útil, la aplicación tiene algunas cosas divertidas como poner los estados de ánimo y me parece que tiene un bonito diseño aunque no me gustan del todo los colores. Sin embargo vamos un poco más allá. ¿Se imaginan como podría potenciarse? Con publicidad sobre artículos femeninos o permitirle a quienes lo usan compartir consejos, seguro ya los creadores lo han pensado. 


Una aplicación un poco más común de encontrar es los medidores del consumo de gasolina, muestro simplemente una de ejemplo ya que existen muchas, incluso en MSDN existe un tutorial para aprender ha hacer una aplicación de este tipo. ¿Deberíamos optar por no hacer algo tan común? No, esa no es la idea, la pregunta que yo les dejo es ¿Como haría para diferenciarla de tantas aplicaciones que hacen lo mismo?


Una aplicación local que me ha parecido bastante útil, tiene que ver con el servicio de taxis, si bien la que les muestro de ejemplo está patrocinada por una empresa específica, el punto es que algunos hacían simplemente por Twitter una de las funcionalidades que esta implementada, el compartir las placas del Taxi que acaba de recogerles por seguridad. Esto obvio nos ofrece más ideas o escenarios para buscarlas, ¿Cómo usa la gente las tecnologías actuales? ¿ Podríamos generar una aplicación entorno a algún comportamiento específico?


Alguna vez les publiqué un par de ideas que se me han ocurrido y que no son innovadoras, pero suponen pequeños retos para hacerse escenario ayudarte a aprender características de Windows Phone.

La primera es una aplicación para controlar los viáticos y hacer que las personas almacenen fotos de sus facturas en el móvil en vez de cargar con todos esos papeles durante el viaje. Esta la usamos en Avanet el CodeCamp 2011 para algunos ejemplos sencillos, y allí encontrarán material gráfico y algo código.


La segunda es una aplicación inspirada en mi padre, la cual espero hacer en su memoria, existan o no otras como ella y para la cual también en este blog les compartí algo de como manejar Sketchflow para hacer prototipos.



Como ven, tener al menos una idea simple pero diferente a los ejemplos de la red, no tiene que ver con complicarse la vida, un escenario simple puede ir creciendo en sus mentes, adicionando funcionalidades y como también les comente en mi post sobre el llamado a la creatividad, pensando que información de nuestra aplicación le podría compartir un usuario en sus redes sociales, seguro que eso abre algunas posibilidades divertidas y/o útiles.

En fin, espero que estas sencillas ideas los animen a crear una que otra utilidad que nos pueda servir a todos en nuestros dispositivos móviles y que luego puedan hacer que sea un éxito. Buscaré más ideas que compartirles pronto, si tienen algunas, super si me cuentan y compartimos. Hasta la próxima.

Sorey

martes, 24 de abril de 2012

Metro: Un llamado a la creatividad

Por estos días se siente el revuelo que se ha causado entre las personas que somos cercanas a las tecnologías Microsoft, en curso hay varios concursos y capacitaciones para desarrollar aplicaciones Metro para Windows 8, la apuesta es grande y a muchos nos agradaría tener la oportunidad de estar en el  Windows Store cuando Windows 8 sea lanzado.

Para cumplir esta meta la solicitud es clara, construir aplicaciones diferentes y atractivas para los usuarios finales, pensar en aplicaciones que un usuario quisiera usar de tal manera que fuera una de sus razones para usar Windows 8, ese diría yo, es un gran reto.

Material de capacitación y ejemplos hay por doquier, la fuente oficial el Windows Developer Center, que esta vez para beneficio de muchos tiene gran cantidad de recursos ya en español, entre ellos el tutorial de una aplicación basada en RSS, la cual se explica paso a paso de manera muy comprensible. Además en los Developer Camp de Windows 8 se entregan los fuentes para los laboratorios con los que se aprenden las diferentes características de las aplicaciones Metro, a través de la construcción de una aplicación similar al Cookbook que se puede descargar del Windows Store en el Windows 8 Consumer Preview.

Hay muchas expectativas frente a la cantidad de aplicaciones que se esperaría estén en construcción, sin embargo quisiera anotar que no estoy segura de que lo que se busque sea la construcción de montones de RSS o libros de cocina, propuestas que se ven bastante, y contra las que se leen llamados de atención y solicitudes a la creatividad, a buscar un poco más en la inventiva personal para poder generar en verdad aplicaciones que marquen la diferencia.

En esto de hacer aplicaciones que se venden a través de una tienda y en el campo general del emprendimiento, el recelo por las ideas es algo que si bien en muchos lugares se señala que no lleva a ninguna parte, es una actitud generalizada, y se escuchan mil preguntas alrededor del tema de como proteger una idea, o solicitudes de donación de ideas de parte de personas que no se consideran a si mismos creativos.

Para mi el escenario es un gran reto, un reto a la creatividad, a intentar tener tu propia idea, que no necesariamente tiene que ser única, revolucionaria o impactante, a veces tan solo se trata de satisfacer una necesidad de alguien o bien hacer de algo que sucede en la cotidianidad un escenario digital, basado en las características de Metro tanto como en las tendencias actuales de interacción a través de redes sociales, por que hoy en día existen dos principios que generan o potencian muchas ideas y son el hecho de que a la gente le gusta compartir lo que sabe y compartir lo que hace.

Por otro lado además de tener esto en mente, si queremos hacer aplicaciones sobresalientes debemos tener en mente 8 ideas fundamentales que nos indica Microsoft en el Windows Developer Center

1. Saca provecho del diseño con estilo Metro
Has que tu aplicación se centre en el contenido, en escenarios limpios y abiertos, deja en la pantalla únicamente los elementos más relevantes para reducir las distracciones y ayudar al usuario a concentrarse.
Piensa en la navegación de tu aplicación, establece rutas comprensibles y jerárquicas, además usa los espacios horizontales para presentar más información. Alinearse a los escenarios estándar de Metro es importante para ofrecer sensación de familiaridad y confianza, ya que los usuarios se acostumbrarán a ellos a la forma como se interactúa con este tipo de aplicaciones.

2. Sé rápido y fluido
Es importante preocuparse por el tiempo de respuesta de nuestra aplicación ante las interacciones de los usuarios y usar animaciones de manera equilibrada, con propósito y elegancia, las animaciones ayudan a comunicarle al usuario que una acción se está realizando, pero su uso en exceso puede afectar el desempeño de tu aplicación.
No crees interacciones diferentes para el mouse y la entrada táctil, trabaja las aplicaciones para la experiencia táctil, la interacción con el mouse está garantizada.

3. Ajusta y cambia la escala con elegancia
Es importante recordar que nuestras aplicaciones no serán desplegadas en dispositivos estándar, por lo que debemos diseñar pensando en las resoluciones típicas, además de los cambios de posición de la pantalla y el hecho de que las aplicaciones Metro permitirán ubicar 2 aplicaciones al tiempo en primer plano, estando una de ellas en tamaño reducido, por lo que debemos considerar ofrecer una experiencia adecuada cuando nuestras aplicaciones se encuentren en esta posición conocida como SnapView.

4. Usa los contratos adecuados
Este es un nuevo concepto para aprender en Windows 8, los contractos son el adhesivo que une las aplicaciones de estilo Metro entre sí y con la interfaz de usuario del sistema. Dos aplicaciones que han implementado el mismo contrato pueden trabajar juntas para satisfacer un escenario amplio o complejo. Los contratos más comunes, como buscar, compartir y selectores de archivos están ya disponibles en Visual Studio para que los conozcamos e implementemos.

5. Invierte en un mosaico excepcional
Como en Windows Phone, los mosaicos son vitales para la experiencia de usuario, y debemos recordar que deberían usarse más como vías de comunicación y como formas de atraer al usuario a ingresar a ver más contenido en tu aplicación que como simples accesos directos. Pensar en las interacciones a través de los mosaicos y en la generación de los mosaicos secundarios hace que tu aplicación se diferencie dentro del panel de mosaicos general.

6. Sentirse conectado y vivo
Muy de la mano del punto anterior, hacer que las personas se sientan permanentemente conectadas es importante, ofrecer contenido de interés a través de notificaciones en línea logrará generar una excelente experiencia además de dirigir la atención de los usuario hacia la aplicación. Es importante resaltar el hecho de que los usuarios pueden elegir aceptar o no estas notificaciones para cada una de las aplicaciones.

7. Perfiles móviles en la nube
Generar al usuario la sensación de que su movilidad no depende de un dispositivo o momento en particular es importante, por lo que "mantener" sus escenarios y/o experiencias en el tiempo o los diferentes dispositivos que usa tiene mucho valor. Para esto es posible saca provecho de las cuentas Microsoft y el almacenamiento en la nube por usuario para almacenar configuraciones, estados y una pequeña cantidad de contenido del usuario, usando un perfil móvil con ellos.

8. Adopta los principios de diseño con estilo Metro
Además de los principios del estilo Metro de los que ya les he hablado en varias ocasiones, en este compilado de ideas del Windows Developer Cxenter se presentan varias frases que me parecen de resaltar
  • Muestra buen hacer
  • Dedica tiempo y energía a las pequeñas cosas que suelen ser vistas por muchos.
  • Proyecta una experiencia completa y sofisticada en todas las etapas.
  • Da vida a la experiencia, crea una sensación de continuidad y cuenta una historia mediante el uso significativo del movimiento.
  • Aprovecha todas las ventajas de los medios digitales. Elimina los límites físicos para crear experiencias que sean más eficientes y naturales que la realidad.
  • Acepta el hecho de que somos píxeles en una pantalla. Crea diseños con imágenes y colores intensos, vibrantes y llamativos que traspasen los límites de los materiales del mundo real.
Como último y tal como en Windows Phone, les recomiendo mucho Blend, es definitivamente una herramienta poderosa para diseño de aplicaciones y ahora no solo en XAML si no tambien en HTML.

Si quieres saber más detalles visita el artículo completo. ¿Se animan a desarrollar para Windows 8?

Hasta la próxima. 

Sorey

Diseño Emocional

Desde hace algún tiempo a razón de Metro me he venido interesando en temas de diseño de interfaces, buscando por ahí me encontré el tema de Diseño Emocional, que me cautivó bastante y que espero explorar más, por ahora simplemente les comparto la presentación de Aaron Walter, quien da a conocer  el principio de la usabilidad emocional, un axioma de diseño que identifica a una fuerte conexión entre las emociones humanas y la usabilidad percibida.



"Los seres humanos, aunque son lindos y tiernos, no dejan de tener sus defectos, lo que lo convierte en un reto de diseñar para ellos. Al comprender cómo trabaja el cerebro en estos pequeños demonios peludos, usted puede diseñar interfaces web y experiencias que los tendrán que locamente enamorados de su marca". 


Espero que lo disfruten, tanto como yo.

Sorey

domingo, 22 de abril de 2012

Tour Académico Microsoft-Nokia Colombia 2012



Por estos días se está realizando el Tour Académico Microsoft + Nokia Colombia 2012, dejando ya varios ganadores del premio principal un Nokia Lumia 800.

El evento es una maratón de programación que consta de 4 etapas con tiempo limitado, apoyadas por Hands On Lab, el ganador lo determina la rapidez y calidad con que se cumple la meta. Es un espacio para aprender haciendo.

Aún faltan algunas universidades, entre ella tres en las que estaré como conferencista y con algunos de mis amigos de Avanet como entrenadores y participantes. Estas además son abiertas a recibir participantes de otras universidades.

Universidad Tecnológica de Pereira > Mayo 05 > 8am - 1pm
Universidad EAFIT > Mayo 12 > 8am - 1pm
CESDE > Mayo 11 > 8am - 1pm

Para conocer la lista de universidades y los detalles del evento visita el sitio oficial: http://www.appslab.com.co/

sábado, 21 de abril de 2012

Cambiar el estilo de un botón en Windows Phone

Este sencillo post lo hago para responder una pregunta de alguien en el Diplomado de Windows Phone que se está dictando virtualmente en México, intente decirlo en prosa pero definitivamente mejor con imágenes, es cuestión de cinco minutos, ¿Como cambiar el color blanco que se vé cuando presionas un botón en las aplicaciones Windows Phone?

1. Agregas el botón y das sobre el clic derecho en la opción Editar Plantilla y  seleccionas Editar una copia.


2. Se te pedirá que asignes un nombre al estilo y además la ubicación del mismo. Si piensas usar este estilo en todos los botones de tu aplicación ponlo en un diccionario o a nivel de la aplicación. Es bueno cuando tenemos muchos estilos en nuestra aplicación poner nombres representativos que luego sean claros para bien sea aplicándolo a otros controles o leyendo el código.


3. Al entrar a editar la plantilla en la pestaña de estados podrás ver como cuando te ubicas sobre el estado Pressed, el botón muestra el color que se quiere cambiar. 


4. Intente cambiar este color directamente desde el selector en Blend, pero altera todos los colores de fondo de los demás estados así que recomiendo ir al XAML en donde hayamos ubicado nuestro estilo.


5. En el marcado veremos el estilo y como se ha generado el código de estilo asociado a los diferentes estilos y veremos claramente la sección del estado Pressed. Ahí podemos cambiar los colores por otros recursos que tengamos o por valores fijos el nombre de un color por ejemplo Red o el Hexadecimal asociado, y puedes probar el cambio. (Clic en la imagen para agrandar)


6. Luego debes regresar a tiempo de diseño, con el botón que se encuentra en la parte superior del mismo con el que pasaste al marcado. Además puedes salir de la edición de la plantilla.


7. (Actualización del post) Para el diplomado se deben añadir los elementos programáticamente así que para el caso del botón puede crearse usando el estilo que se editó, así:


8. Para crear más botones en edición con el mismo estilo puedes copiar y pegar el botón, o bien a los botónes existentes aplicarles el estilo, seleccionando el botón y en el menú editar plantilla seleccionas el estilo existente.


Esta es la misma mecánica para la mayoría de estilos en Windows Phone, cuando el tema no tiene que ver con los estados se puede editar directamente con el Expression Blend.

Saludos y que te sea útil

Sorey

lunes, 9 de abril de 2012

Metro: Cambiando la experiencia de usuario con Windows Phone y Windows 8

Hace unos días les había compartido mi presentación y algo de analisis adicional sobre mi charla en Mobile Monday Medellín. Hoy gracias a Carlos Valencia (@cvalenciamazo) de EventoStream quienes realizar el streaming del evento, tengo la posibilidad de compartirles el video de mi presentación, espero les guste.

La presentación que usé en la charla pueden verla en mi anterior post sobre Metro.


Para ver las demás presentaciones de Mobile Monday Medellín visita el blog oficial.

Espero les guste, hasta la próxima

Sorey

viernes, 6 de abril de 2012

Publicando en el Marketplace de Windows Phone

Después de haber creado nuestra aplicación de ejemplo, lo que sigue es publicarla en el Marketplace de Windows Phone, ese se proceso se hace a través de unos simples pasos.

1. Valide que tiene su cuenta activa como desarrollador iniciando sesión http://create.msdn.com e ingrese a través del menú al dashboard de Windows Phone. Si no esta registrado siga las indicaciones para ser un desarrollador oficial del Marketplace.


2. Cuando carguen el dashboard podrá ver la opción Submit New App, de clic para iniciar el proceso de envió de la aplicación


 3. El primer paso del proceso es subir el archivo XAP de la aplicación.


4. Después de dar clic en Next se iniciará la subida de nuestra aplicación antes de continuar al siguiente paso del proceso. 

5. En el siguiente paso debemos seleccionar la categoría y subcateoría si existiese, donde estará publicada nuestra aplicación en Marketplace, es muy importante ubicar bien la categoría para que los usuarios encuentren la aplicación.

6. En la misma etapa del proceso de envío debemos proporcionar información acerca de nuestra aplicación. 


7. También en la misma etapa debemos subir el arte o gráficas asociadas a nuestra aplicación, de acuerdo a las indicaciones que puede encontrar en esa misma sección. 

8. Para capturar las pantallas de muestra o screenshots que vemos en la parte inferior, debemos desplegar nuestra aplicación en el emulador, para esto usamos el XAP Deployment que se encuentra en el SDK 7.1 y que podemos encontrar en la ruta C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.1\Tools\XAP Deployment. 


9. Luego usando las opciones adicionales del emulador podemos capturar estas imágenes de muestra, recuerda que para que la imagen quede de calidad el zoom del emulador debe establecerse en 100% 


10. En el siguiente paso del proceso podemos establecer el valor de nuestra aplicación de 0.49 centavos de dólar a 499 dólares. Además decidimos en que lugares del mundo se publicará y podemos establecer un precio en cada país. Si tuviésemos funcionalidades que usen el modo Trial dentro de nuestra aplicación debemos activarlo en este punto para las aplicaciones de pago. 


11. En el siguiente paso podemos elegir si nuestra aplicación se publica inmediatamente o si la dejaremos oculta para distribuirla de forma privada. También podemos elegir si temporalmente queda oculta y luego la publicaremos. 

12. Si completamos los pasos correctamente recibiremos una notificación de que nuestra aplicación se ha enviado y desde aquí podemos visitar el estado actual. 



13. Esta vista nos muestra en que parte del proceso se encuentra nuestra aplicación

14. En esta vista que es accesible desde la página principal del dashboard podemos ver el estado en que se encuentra nuestra aplicación 



15. El proceso puede tardar hasta 5 días hábiles.

Éxitos con la publicación de sus aplicaciones.

Sorey

Creando un lector RSS para Windows Phone usando AppMakr

Hola, hoy he conocido por cuenta de Walter Novoa (@warnov) el AppMakr un sitio que seguro les resultará muy útil a algunos de ustedes, si lo que desean es hacer una aplicación RSS facilmente.

Actualización 2012/5/18: Ahora puedes descargar esta guía desde mi Slideshare

Antes de empezar seleccione sus fuentes RSS favoritas y diseñe las imágenes base de su aplicación
  • Background.png: 173 x 173 – Puede usar transparencias 
  • ApplicationIcon.png: 62 x 62 – Puede usar transparencias 
  • SplashScreenImage.jpg: 480 x 800 – Sin transparencias 
Aquí mi ejemplo


Visite MSDN para aprender más sobre el ArtWork de su aplicación.

Ahora vamos a empezar con el paso a paso para crear una aplicación a través de AppMakr 

1. Cree su cuenta en http://www.appmakr.com


2. Verifique su correo y active su cuenta 


3. Inicie sesión en AppMakr y seleccione la opción Create New App

 

4. Busque la opción para crear una aplicación Windows Phone y seleccione Choose This 


5. Ingrese la URL del RSS que desea consumir y presiones Create App 

6. Aparecerá unos indicadores gráficos mientras se crea la base de su aplicación, espere que cargue el proceso hasta el final 

7. Verá el área de trabajo donde se nuestra los pasos a seguir y un emulador 

8. En la primera etapa seleccione la imagen que corresponde al icono de su aplicación, siga las indicaciones con respecto a las dimensiones, note que le piden una imagen de 512X512 y hay un link donde se explica por qué.

 9. Seleccione además el archivo que será la imagen inicial de su aplicación, en este caso la imagen tiene las dimensiones que se indicaron previamente para esta imagen. 

10. Después de esto presione el botón Save y espere que la página se cargue, verá que en el emulador de la derecha aparecerá el icono que ha establecido para la aplicación. Recuerde tener cuidado con los derechos de autor de las imágenes que usa.


En el emulador se puede ver como queda la ventana de inicio de la aplicación


Además como se verá el icono de la aplicación


11. Note que en la parte superior se le da un aviso sobre el resultado de la operación de guardado


12. En el segundo paso del proceso podrá configurar si desea añadir varios RSS a su aplicación o incluso un álbum de fotos


13. En el tercer paso podrá personalizar una imagen de cabecera y los colores por defecto de la barra de aplicaciones y del texto.


14. Observe con cuidado las dimensiones de la imagen que le piden para la cabecera, sin embargo tiene la opción de subir una imagen más grande y recortarla. 


15. Cuando esté listo presione el botón Save y pruebe en el emulador su aplicación para que vea que la personalización se ve correctamente. 

16. En el siguiente paso debe dar información sobre su aplicación 

17. Luego puede Monetizar su aplicación colocando publicidad en ella o bien seleccionar que la aplicación no contiene publicidad. 

18. Como último paso aparece la opción de publicar que le indicará el numero de compilaciones que ha realizado y el número de la compilación inicial.

19. Después de presionar el botón Build App aparecerá la aplicación en una lista indicando que está pendiente de compilar. 
20. Pasados unos minutos puede actualizar la página y verá un botón donde podrá descargar el archivo XAP de su aplicación.


Espero que se animen a hacer este intento y configuren sus fuentes favoritas de RSS en una aplicación de Windows Phone, para su comunidad o su blog personal.


Sorey