Ya está aquí: ”1600.2487.8107.12070” para España. Multiplica por 3 la duración del Lumia 800 !!!

Untitled

 

Hace ya unos días escribía este post, acerca del nuevo update para nuestro Lumia 800 y donde comentaba las nuevas mejoras que incorporaría. Pues bien, finalmente, ya lo tenemos aquí para España, aunque por el momento sólo con versión Vodafone. No es un impedimento, de hecho, algunos compañeros ya han instalado la versión de la India y todo va sobre ruedas.

Como siempre, si no quieres esperar a que aparezca la actualización en Zune, puedes hacerlo a través de Nokia Care (v2012.12.5.3) y NaviFirm Plus 1.7.

Si ya tienes instalado Windows 8 Consumer Preview, asegúrate de instalar Nokia Care como administrador.  Si después de esto, te encuentras con problemas de conexión con el móvil, accede la carpeta “C:Program Files (x86)NokiaNokia Care SuiteDrivers” e instala y/o repara cada uno de los drivers que en ella se encuentran, eso si, asegúrate que lo haces como administrador.

Una vez hayas realizado todos estos pasos, asegúrate de que no se encuentra conectado el móvil y ejecuta la aplicación Nokia Care lanzando la siguiente “Tool”:

image

Después, conecta el móvil y podrás ver algo como lo siguiente:

image

En este punto, estas en disposición de descargarte el Software y actualizar. Como siempre, directamente con Nokia Care o con NaviFirm Plus 1.7:

image

Yo aún, y muy a mi pesar, sigo impaciente y esperando a la “Variant” de España para mi “059M580”, además, no me gusta el logo de Vodafone al arrancar mi lumia, ¡esto es ya capricho de cosecha propia! jeje…

Por otro lado, y si aún así, no quieres esperar más, gracias a nuestro compañero Dani Alonso, también podrás conseguirlo siguiendo esta otra alternativa.

Lo mejor de todo, es que parece que en esta ocasión no perderemos nada de lo que ya tengamos instalado!!!

¡Ahora si que finalmente nuestro Nokia es un verdadero Nokia!

Saludos
@JuanluElGuerre

How To: Load Test para tus “Integration Test” en cada uno de tus entornos en un sólo click !!!

imageMuy buenas,

En la mayoría de los proyectos, además de los “Unit Test”, siempre existen un conjunto de pruebas que es necesario llevar a cabo a fin de validar que nuestro entorno se ejecutará de manera correcta y ya no sólo en un entorno, si no más de uno, concretamente entornos como “Integración” y “Preproducción”.

Rara vez, los “Mock” son creados, otras  veces, los “Unit Test” consumen servicios WCF con url distintas dependiendo del entorno, las buils funcionan para un entorno pero no para el otro porque los Endpoint no tiene la url correcta, etc., y así sucesivamente… Y por si fuera poco, a la hora de “la puesta en producción” siempre surge algún imprevisto,… ¡Cuantas veces hemos visto esto!

En el día a día, llevar a cabo estos test siempre cuesta: El ”copy + paste”, en ocasiones hasta podemos llegar a ser meros “autómatas”: Búsqueda en Google, copio, modifico,  ejecuto, etc..

En fin,  creo que esto ya lo conocemos todos y no voy a entrar en la manera de hacer los test puesto que ya existen infinidad de Best Practices, recomendaciones, ejemplos, etc. sobre ello. En lo que si quiero entrar es en los “Load Test” o Tests de Carga, a los que yo, particularmente también llamaría “Integration Test” y a continuación veréis por qué:

Supongamos una aplicación Web que consume servicios WCF:

  • Creamos un proyecto de tipo “Test” y le añadimos al nombre, el sufijo “.IntegrationTest”. En este proyecto creamos todos los tests necesarios para probar nuestro aplicativo.
  • Como sabrás, en proyectos web tenemos la opción del menú contextual “Add Config Transform”, cosa que no ocurre en los proyectos de tipo test. Por tanto, editamos el fichero de proyecto “.csproj” (previa acción: “Unload Project”) e incluimos en nuestro “.config” las líneas de la 6 a la 13 según el siguiente “code snippet”:
   1: <ItemGroup>

   2:     ...

   3:     <None Include="App.config">

   4:       <SubType>Designer</SubType>

   5:     </None>

   6:     <None Include="App.Integracion.config">

   7:       <DependentUpon>App.config</DependentUpon>

   8:       <SubType>Designer</SubType>

   9:     </None>

  10:     <None Include="App.PreProduccion.config">

  11:       <DependentUpon>App.config</DependentUpon>

  12:       <SubType>Designer</SubType>

  13:     </None>   

  14:     ...

  15: </ItemGroup>

  • En la misma ruta física donde se encuentre el fichero App.config creamos dos ficheros con los nombre “App.Integracion.config” y “App.PreProduccion.config” con el siguiente contenido inicial:
   1: <?xml version="1.0"?>

   2: <configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">

   3:   <system.web>    

   4:   </system.web>

   5: </configuration>

Nota: El echo de incluir este namespace en nuestros “.configs”, nos permite tener la transformación adecuada con respecto al fichero original “App.config”.   Toda la información a estas transformaciones puedes encontrarla en este link.

  • Guardamos los ficheros y cargamos (“Reload Project”) nuevamente el proyecto en Visual Studio, veremos lo siguiente:

image

  • En este punto, necesitamos crear las diferencias de configuración de cada uno de los entornos en el “.config” adecuado. El “App.config” contendrá el contenido común a la configuración de ambos entornos.
    • Ejemplo para un EndPoints:
   1: <system.serviceModel>    

   2:     <client xdt:Transform="Insert">

   3:       <endpoint address="https://localhost/Service1.svc"

   4:       binding="customBinding" bindingConfiguration="HttpBinaryBinding"

   5:       contract="IService1" name="CustomBinding_Service1"/>

   6:     </client>

   7: </system.serviceModel>

  • Cada de transformación tendrá la configuración particular de cada entorno.
  • Para que todo funcione, y nuestros tests prueben íntegramente los servicios dependiente del entorno, es necesario volver a incluir las siguientes líneas en nuestro “.csproj” (“.IntegrationTest”)" al final del mismo y antes de los cierre de tags </target></Project>:
   1: <UsingTask TaskName="TransformXml" AssemblyFile="$(MSBuildExtensionsPath)MicrosoftVisualStudiov10.0WebMicrosoft.Web.Publishing.Tasks.dll" />

   2: <Target Name="AfterCompile" Condition="exists('app.$(Configuration).config')">

   3:   <!-- Generate transformed app config in the intermediate directory -->

   4:   <TransformXml Source="app.config" Destination="$(IntermediateOutputPath)$(TargetFileName).config" Transform="app.$(Configuration).config" />

   5:   <!-- Force build process to use the transformed configuration file from now on. -->

   6:   <ItemGroup>

   7:     <AppConfigWithTargetPath Remove="app.config" />

   8:     <AppConfigWithTargetPath Include="$(IntermediateOutputPath)$(TargetFileName).config">

   9:       <TargetPath>$(TargetFileName).config</TargetPath>

  10:     </AppConfigWithTargetPath>

  11: ItemGroup>

  12: </Target>

  • Ahora sólo nos queda configurar el “click” de cambio de entorno. Para ello, creamos dos nuevas “Solution Cofiguration”::

image

  • Finalizado este punto, ya estamos en disposición de lanzar nuestros test en nuestros dos entornos simplemente cambiando el “Configuration Name”

Llegado este punto, podemos incluir en nuestras buils  estos test a fin de que nuestro sistema quede totalmente integrado. Pero, ¿Donde están los “Load Test” ? Pues bien, bastará con que :

  • Añadamos a nuestro proyecto de test un nuevo item “Load Test…”
  • Añadamos los test a chequear (“.IntegrationTest”) en la ventana de “Edit Test Mix”

image

  • Y, todo listo, a analizar los resultados:

clip_image001

Hasta este punto, hemos realizado un integración completa probando la lógica de presentación, desde el “Presenter” en un patrón MVP o desde el “Controler“ en en el patrón MVC y siempre, con un desacoplamiento del contexto “Web”. Ventaja

Si ahora incluimos en  nuestro proyecto  test de tipo  ”Web Performance Test”, ya tenemos la integración completa incluida nuestras páginas .ASPX. Eso sí, para seguir haciendo uso de “Un sólo click por entorno”:

  • Generamos el código a partir de Web Test.

image

  • Y configuramos la URL en nuestros “.config”
   1: WebTestRequest request1 = new WebTestRequest("http://localhost:49570/default.aspx");

   2: request1.ThinkTime = 5;

   3: request1.Method = "POST";

   4: FormPostHttpBody request1Body = new FormPostHttpBody();

   5: request1Body.FormPostParameters.Add("__VIEWSTATE", "/wEPDwUKLTQ1NTczNzkyNGRkTZU93NCSzcCZ5pxELADnsc9UqyEWuBmSoft7FRTH4es=");

   6: request1Body.FormPostParameters.Add("__EVENTVALIDATION", "/wEWBQL86K7VBQLR49OXDQKm1J7DAwKB3audDALT8MqYCCqSOYhduF9mB1R1c58WGZTcWirhoI3Guwfza" +

   7:         "hrT86tK");

   8: request1Body.FormPostParameters.Add("ctl00$MainContent$TextBox1", "1");

   9: request1Body.FormPostParameters.Add("ctl00$MainContent$btnSync", "Sync");

  10: request1.Body = request1Body;

  11: yield return request1;

  12: request1 = null;

Nota: Para la ejecución de los “Load Test” y a fin de que la ejecución de estos test de carga se asemeje a la carga de nuestra aplicación en el entorno de Producción, recomiendo dividir los “Web Performance Test” por funcionalidad concreta, de manera que el reparto de carga (en la ventana “Edit Test Mix”) se acerquen más a la carga real.  Es decir, podríamos generar “Web Performance Test”  por operación a realizar por el usuario, básicamente, podríamos asemejarlos a los test que hemos generado para la integración de nuestro sistema con los Servicios WCF.

Es muy importante llevar a cabo los Test de Carga para cada una de nuestras aplicaciones, principalmente, para poder estimar el dimensionamiento de la infraestructura que dará soporte a nuestra aplicación y no encontrarnos sorpresas o imprevistos no contemplados.

Nuestros “Integration Test” y la ejecución de test por entornos garantiza en cualquier momento y a un sólo click de ratón que nuestro aplicativo esta esta en perfecto estado.  Recomiendo estos tests en cualquier caso, pero sin lugar a dudas, en aquellos casos en los que las “Buils” no puede ser usadas por algún motivo “inexplicable” !!!

Saludos

@JuanluElGuerre

TFS Service Preview on Windows Azure

image

Ya tengo mi TFS particular en Windows Azure. Aquí os dejo algunos pasos  para que veáis como funciona:

  • Seguimos los pasos del tu site de TFS Service Previos.
  • Descargamos el software necesario para poder acceder desde nuestro Visual Studio

image

  • Creamos nuestro primer proyecto:

image

  • Esperamos a que se complete el proceso de creación  y obtengamos el mensaje de éxito.

image

Lo mejor de todo, ese mensaje,  “Your project is created and your team is going to absolutely love this.”, jeje…

Una vez creado nuestro Team project  e instalado el Fix comentado anteriormente , podremos acceder desde nuestro Visual Studio a este nuevo TFS de la misma manera que accedemos a cualquier otro TFS On-Premise.

El único inconveniente, es que por el momento parece que no podemos crear “Team Project” directamente desde Visual Studio:

image

En cuanto a lo demás, sin problema, podremos crear “Work Items”, Añadir proyectos al TFS, Check In, Ckeck Out, etc.  ¡Tendremos que seguir probando!

Si quieres aprender más echa un vistazo a este enlace: http://blogs.msdn.com/b/visualstudioalm/archive/2011/09/14/learning-about-team-foundation-service-preview.aspx

Si queréis vuestro propio TFS sólo tenéis que acceder a este enlace y esperar a que Microsoft os facilite el código de invitación

Saludos
@JuanluElGuerre

Nuevo Update ”1600.2487.8107.12070 / PR1.2” para Nokia Lumia 800 !!!

imageMuy buenas y buenísimas noticias sobre una nueva y mejorada versión, entre otros puntos, la mejora de rendimiento de la batería.

Estos son los aspectos de mejora, recopilados desde aquí, donde podéis ver algunos feebacks:

– The Fast battery drain issue has been fixed
– The lack of audio Bass when listening through headsets has been fixed. There’s a whole lot of bass now..
– The auto-white balance issue with the camera has also been fixed
– The hardware buttons backlights are now always on at all screen brightness levels
– Diagnostics app has been changed to prevent users from getting misleading info about their device
– Focus Mode is now set to Normal by default in the camera app
– More stuff that I won’t talk about.

Podemos descargar la imagen desde “NaviFirm Plus 1.7”.  La no tan buena noticia es que aún no tenemos los fuentes para todas los países, compañías, ni para los libres. Podéis verlo aquí:

image

Por el momento yo esperaré a que  tengamos las de España, pero si alguno lo desea y se aventura que nos adelante sus experiencias.

¿Será realmente este el Update esperado? A ver si es así  y finalmente tenemos de una vez por todas el mejor teléfono del mercado!!

Saludos  “Nokianos”
@JuanluElGuerre

Consigue que la batería de tu Nokia Lumia 800 aguante 1,5 días !!!

WP7_LogoMuy buenas,

Durante estos últimos meses la duración de la batería del Nokia Lumia 800 ha seguido siendo una de mis preocupaciones, como creo que para muchos de vosotros.

Compramos un móvil como es este, y zas, nos encontramos con este inconveniente, la batería. Todos estuvimos a la espera del update “1600.2483.​8106.11500” a través de Zune o, del “1600.2483.​8107.11501” a través de Nokia Care Suite. Después de haber realizado dicho update, aun hoy, muchos de nosotros seguimos con el mismo problema o en algunos casos, quizás peor.

Cada Nokia Lumia 800, plantea una situación distinta, y hay soluciones de los más variopintas en cuanto al ahorro de batería: desactivar, desactivar….. ¡Claro, así es normal que gaste menos! ¿Pero para que queremos el mejor Smart Phone con todo ello desactivado? En mi opinión, no deberíamos llegar a estos extremos, no obstante es una escapada a nuestra mente para quedarnos satisfechos con la magnifica compra. ¿Realmente quieres esto?

Tras vueltas por los foros, incluso tras algunas opiniones de nuestros compañeros, como la de Jorge Serrano y tras,  pruebas, pruebas y más pruebas, mi conclusión se resume como sigue:

Instala uno de estos updates “1600.2483.​810[6|7].1150[0|1]” si realmente no lo has hecho ya, y continua:

  1. Realiza un Hard Reset siguiendo estos pasos:
    • Importate: Antes de nada, ten en cuenta que esta operación eliminará todo el contenido del teléfono.
    • Presiona los botones “Power” + “Volumen” + “Cámara” hasta que el teléfono vibre
    • Suelta el botón “Power” mientras el resto permanecen pulsados hasta que se encienda.
  2. Ajusta algunas opciones que son más o menos lógicas:
    • Establece la notificación de emails a “Manual”. Nokia + WP7 tarda en actualizar los correos de forma manual no mas de 20 ó 30 segs. ¿Para que desperdiciar la mayor ganancia de batería?
    • Desconecta el Bluetooth y actívalo sólo cuando lo necesites.
    • Si usas “WhatsApp” y deshabilitas “Configuración > Datos móviles” – “Conexión a datos” perderás las notificaciones. En mi caso ¡no quiero esto, no al menos siempre! Evidentemente esto si supone un gasto, ¡no obstante dependerá del uso que le des!
    • Desactiva la tareas en Background.
    • Desactiva “Xbox LIVE > Configuración > Connectar con Xbox LIVE”
    • [Opcional] La opción “Configuración > Localicación” dependerá del uso que le des.
    • [Opcional] El Wi-Fi aunque gasta batería, puedes dejarlo activado dependiendo una vez más del uso que le des. En mi caso, el usarlo en casa, y algunos días en la oficina, no ha supuesto una perdida diferencial de batería. Utiliza Wi-Fi siempre que puedas para conectarte a datos, ahorrará batería.
    • [Opcional] Las opciones de notificaciones de actualización “Configuración > Actualización”, puedes desactivarlas. ¡Sabemos de sobra cuando Nokia lanzará una actualización! y si no, al conectarlo a Zune este nos lo hará saber al instante.

Si sigues todos estos ajustes (sin tener en cuenta los opcionales), conseguirás que tu móvil aguante 1,5 días con un uso medió y normal y, sin necesidad de apagarlo o activando el modo “vuelo”.  Por otro lado, si desactivas la conexión a datos, el uso de mi localización, Wifi, etc ni que decir tiene que conseguirás que aguante bastante más, pero como decía al comienzo de este post, no creo que queramos esto teniendo un gran Smart Phone entre nuestras manos.

La opción de Activar o desactivar “Configuracion > Ahorro de batería >  Activar el ahorro de batería hasta la próxima carga”, en mi caso no ha supuesto ningún ahorro de batería extra.  Particularmente, si activo la opción “Configuración > Ahorro de batería > Activar el ahorro de batería siempre que quede poca batería”.

Todos estos ajustes son el resultado de mis pruebas y concretamente en mi Nokia Lumia 800, no obstante, espero que se ajusten a todos y podamos conseguir ese Nokia que nos merecemos, al menos mientras esperamos al nuevo update, que ya está casi. ¡Ya os contaré!

Saludos @Home
JuanluElGuerre