9.12.2008

Actualizar mi iPhone 3G de Telcel a Software 2.1 "Destruyó" mi SIM

Hola,

Como buen nerd que soy hoy actualicé my iPhone 3G de Telcel (no está hackeado) a la versión 2.1 del software de Apple usando iTunes desde mi Mac con OS X 10.5.4.

Para mi sorpresa al final de la actualización el iPhone tenía el mensaje de "No SIM". Intenté limpiar el SIM y siguió sin funcionar. Al llegar a mi oficina "intercambié" SIMs con un amigo que tiene un iPhone 3G idéntico (comprado el mismo día) pero sin actualización a 2.1. Mi SIM ya no funciona en su iPhone y su SIM si funciona en mi teléfono. Mi conclusión es que el proceso de actualización por alguna razón está dañando algunos SIMs. No soy el único, otros usuarios de México, Colombia y España han reportado lo mismo. Los reportes están aquí:

http://discussions.apple.com/thread.jspa?threadID=1706328

Mañana al centro de servicio Telcel a hacer fila para que resuelvan esto......uffffffffffff!!

iPhone 2.1 Software Upgrade Fried my SIM Card

Being the geek I am, as soon as I learned about the new iPhone 2.1 software upgrade, I installed it on my almost brand new iPhone 3G (not jailbroken) purchased from Telcel in Mexico a couple of weeks ago.

After upgrading, I got a "No SIM" message. I reset the iPhone. Still the same message. I took out the SIM and cleaned it. Same message.

When I later got to the office, I "traded" SIMs with a friend who got his iPhone 3G at the same time. He hasn't "upgraded" yet. His SIM works on my phone. My SIM does not work on his phone.

So, upgrading to 2.1 somehow "fried" my SIM card. I am not alone:

http://discussions.apple.com/thread.jspa?threadID=1706328&tstart=0

I run iTunes on Mac OS X 10.5.4 on a Mac Pro (early 2008).

8.25.2008

¿Por qué Silverlight es tan importante?

Con la ya cercana liberación de Silverlight 2.0 Microsoft está haciendo una de las apuestas más fuertes de su historia. Si Silverlight tiene el éxito esperado y se convierte en un estándar "de facto" va a abrir un mundo de posibilidades donde con un conjunto de habilidades de desarrollo muy similares, podremos crear aplicaciones profundas para el escritorio (WPF) y de amplio alcance (multiplataforma) para el web. Es también la plataforma de lanzamiento de un CLR de .NET genuinamente multiplataforma. Esto es enorme y no debe de subestimarse.

Silverlight es en mi opinión la apuesta de Microsoft para colocarse con fuerza en un mundo donde la presencia de la plataforma .NET, aunque interesante, ha dejado que desear. Desafortunadamente la mayor parte de las aplicaciones web públicas afuera están hechas en otras plataformas (en Intranets y corporativos es otra historia). La tecnología Microsoft debe de recuperar un espacio prominente en el espacio del consumidor final junto con la percepción perdida de innovación si queremos incorporar a las mentes jóvenes creadoras que hoy francamente se sienten más atraídas por otros jugadores de la industria (you know who you are).

En mi opinión Microsoft debe de desplegar agresivamente Silverlight 2.0 una vez liberado a todos los escritorios posibles, incluyéndolo con tantos productos como sea posible y en Windows Update. Es fundamental que la penetración de mercado de esta tecnología se acerque lo más pronto posible a la de Flash de tal forma que sea una verdadera opción para la mayor parte de los sitios web allá afuera. Microsoft ha tenido que ir despacio con este tema por las preocupaciones anti-monopolio del pasado. En mi opinión, deberían empujar esto hacia afuera lo más rápido posible si quieren ser relevantes en el mundo de desarrollo web. Market share is the name of the game.

También creo que nos toca un esfuerzo como desarrolladores de software capacitados en plataformas Microsoft. Hemos hecho un pobre trabajo de convencer a nuestros "congeneres" diseñadores web de utilizar Silverlight. Los principales interesados en que nuestras habilidades sigan siendo relevantes en un mundo totalmente webificado deberíamos de ser nosotros. Si logramos convencer y entrenar a nuestros amigos diseñadores en las herramientas de Expression, nos estamos ayudando a nosotros mismos a mantener relevantes, atractivos y rentables nuestros conocimientos de Visual Studio y los lenguajes y herramientas de .NET en general. ¿O prefieren integrar sus aplicaciones .NET con front-ends en Flash donde la mayoría de nosotros simplemente no tenemos ni idea? Cada vez que conviertes o invitas a un diseñador a probar y utilizar Expression, te estás ayudando a ti mismo.

He tenido algo de experiencia trabajando con WPF y adoro ese modelo de programación. Es mucho más productivo que Windows Forms y que ASP.NET (sin duda) una vez que pasamos la curva de aprendizaje. Silverlight nos da la mayor parte de esos beneficios para un mundo multiplataforma.

A Microsoft le toca también dejar de hacer osos como sacar nuevos sitios de marketing en Flash (Mojave Experiment) y hacer todo, absolutamente todo con Silverlight. Hay que empezar por la propia casa.

En resumen, si queremos que nuestras habilidades sean realmente relevantes en el mundo web, necesitamos que Silverlight gane la batalla de penetración de mercado. Si no, bueno, a ponerse a estudiar de Flash y Air. Yo tengo claro como quiero que termine esto.

7.24.2008

"Mojave" o la Percepción sobre Windows Vista

¿Qué pasa con Windows Vista? En toda mi experiencia profesional de trabajar con Microsoft nunca había presenciado un lanzamiento de producto tan problemático. Vista se ha convertido para muchos en objeto de burla. Seguido escuchamos malas noticias al respecto. Parece que Microsoft no ha podido convencer a nadie de que es un sistema operativo que vale la pena. El factor "cool" ha quedado totalmente ligado a "todo excepto Vista". Parece que Mac OS X fuera un sistema operativo de otro nivel y la última Coca-Cola del desierto.

Yo fui un "early adopter" de Windows Vista. Lo opero hoy continuamente en 4 computadoras. Dos portátiles, un media center y una Mac Pro (en la que también a veces utilizo Mac OS X -- como ahora que escribo este post). En una portátil y en la Mac uso la versión de 64 bits y en las otras dos la de 32 bits. Jamás regresaría a XP. En mi experiencia Vista es:

- Más seguro
- Más fácil de usar
- Más rápido
- Y si, más estable!!

¿Cómo puede haber tanta diferencia de opinión y cómo llegamos a este punto tan desafortunado para Microsoft? ¿Qué errores se cometieron?

1. Microsoft no fue suficientemente transparente en cuanto a los requerimientos de hardware de Windows Vista. Jamás se debió haber lanzado el programa de logo "Windows Vista Basic Capable" (o algo así) con requerimientos de hardware tan reducidos. Sin el hardware adecuado Vista funciona mucho peor que XP. Microsoft no fue honesto al respecto cuando lanzó Vista.

2. De manera similar, los requerimientos mínimos que aparecen en las cajas "retail" de Windows Vista debieron haber sido más altos. ¿para que vender un producto cuando sabemos que con el hardware que pedimos la experiencia del usuario será miserable?

3. Este punto no es problema de Microsoft, pero sin duda afectó la efectividad de Windows Vista. Muchos fabricantes de hardware simplemente no estuvieron listos con los drivers adecuados cuando salió Vista (aunque todos en la industria sabíamos años antes lo que teníamos que hacer) lo que provocó, también, que la experiencia de usuario para quien “actualizaba” fuera nefasta. Pocas cosas molestan más que “ya no puedo usar mi impresora por culpa de Vista!”.

4. User account control. Microsoft no pudo comunicar los beneficios de esta función adecuadamente. Por cierto, UAC está encendido hasta la fecha en todas mis PCs. Se convirtió en objeto de burla. Su diseño podría haber sido mejor, si, pero tampoco es para tanto. Ni que nos dieran calambres en el dedo indice.

Hoy el asunto de los drivers está prácticamente resuelto y Vista es aun mejor que cuando salió por los ajustes del SP1. Microsoft entiende que tiene un grave problema en sus manos y por eso anunció hoy una iniciativa de publicidad y relaciones públicas muy interesante. Resulta que reunió en San Francisco a un grupo de usuarios de Windows XP que odiaban Vista para pedir su opinión en un “focus group” sobre la siguiente versión de Windows llamada “Mojave”. Resulta que les encantó esa nueva versión de Windows. Sólo que hay un pequeño detalle. Lo que se les mostró en realidad era nada más y nada menos que……Windows Vista. Más información aquí: http://news.cnet.com/8301-13860_3-9998336-56.html

¿Por qué nos importa esto como desarrolladores de software?

La respuesta es muy simple. Mayor adopción de Vista significa mayor adopción del .NET Framework 3.0, incluyendo Windows Presentation Foundation, Windows Workflow Foundation y Windows Communication Foundation. Nos da una plataforma mucho más atractiva y productiva para desarrollar nuestras aplicaciones.

Se que se puede instalar sobre XP, ¿pero cuanta gente realmente lo hace? Podríamos hacer aplicaciones mucho mejores si la base instalada estuviera ya en Vista. Por eso nos importa.

Si les gusta más Mac OS X, suerte trabajando con XCode y Objective C. La mayoría regresarán arrastrándose a Visual Studio 2008 después de intentar programar en esa cosa.

5.29.2008

Tiempo de Arranque Inicial en Aplicaciones .NET

Para un proyecto en desarrollo estamos evaluando la posibilidad de hacer todo en C++ en lugar de una combinación C++/C# (queremos usar WPF). La razón de esta decisión es una: nuestra aplicación debe iniciarse al iniciar la PC y el tiempo de arranque de .NET es demasiado largo para la experiencia de usuario que queremos lograr. Nuestro caso es muy drástico, ya que buscamos tiempos de arranque virtualmente instantáneos. Si nos decidimos por C++ de forma exclusiva vamos a perder bastante productividad en el proyecto al abandonar WPF.

El problema de lentitud en el primer arranque de una aplicación en .NET (cold start) no es nuevo. Es tan importante que una de las principales mejoras que .NET 3.5 SP1 ofrecerá próximamente es precisamente la disminución de ese tiempo. El arranque después de la segunda vez (warm start) es mucho más rápido y no es un problema tan grave. Además de lo que pueda hacer Microsoft, hay diversas técnicas para mejorar la velocidad de arranque la primera vez (cold start) de una aplicación WPF. Las principales son:

  • Mejora la percepción del usuario utilizando una pantalla de arranque (splash screen) que puede ser en código nativo. http://blogs.msdn.com/jgoldb/default.aspx
  • Pospón cualquier inicialización que no sea indispensable.
  • Coloca cualquier ensamblado con "strong-name" en el GAC.
  • Examina la posibilidad de pre compilar tu aplicación con NGEN
  • Si usas authenticode, evalúa si realmente lo necesitas. Todo el código authenticode debe ser verificado con la autoridad certificadora y eso toma tiempo. Es posible deshabilitar este proceso a partir de .NET 3.5 así:


     

    <configuration>

    <runtime>

    <generatePublisherEvidence enabled="false"/>

    </runtime>

    </configuration>


     

    Info aquí: http://msdn2.microsoft.com/en-us/library/bb629393.aspx


     

  • Minimiza el uso de serialización. Si la necesitas, trata de usar BinaryFormatter en lugar de XmlSerializer.
  • Configura el servicio "PresentationFontCache" para que arranque automáticamente. Este servicio es utilizado por la primera aplicación WPF que corre en la PC e incurre en un tiempo de arranque.

Como siempre tratándose de temas de desempeño es fundamental mediar el impacto que tenga cada cambio que hagas. Adivinar no funciona.

5.22.2008

Una Primera Vista al SDK de Apple para la iPhone……o No

Ayer descargué el SDK de Apple para el iPhone. Durante años he estado involucrado con el desarrollo de sistemas móviles y embedded por lo que me interesó darle una revisada. Me parece que el éxito del iPhone es innegable en el mercado. Parece ser el teléfono que todo mundo "quiere tener" y hay que reconocer que Apple sabe hacer muy bien las cosas cuando se trata de experiencia de usuarios y facto "cool". Además el universo de gente con iPhone (sobre todo en América Latina dónde aun no sale oficialmente a la venta) es un interesante grupo de early adopters de la tecnología y de tomadores de decisiones. Pronto será más relevante en América Latina dados los acuerdos (estos si ya oficiales) que Apple anunció recientemente con los principales operadores de telefonía celular en la región incluyendo a América Móvil (Telcel en México). También será más relevante en espacios corporativos dada su anunciada funcionalidad ActiveSync, licenciada de Microsoft, para interconectarse a servidores Microsoft Exchange.

Desde hace algún tiempo la comunidad hacker había encontrado la forma de romper los candados de seguridad del iPhone para poder instalarle software de terceros, cosa que originalmente no era aprobada por Apple (sólo podías hacer aplicaciones que corrieran dentro del navegador de Internet). De hecho, los kits de desarrollo de la comunidad hacker exponen más funcionalidad de la que expone el SDK "oficial" de Apple aun hoy. Sin embargo, estos kits hacker están pobremente documentados por lo que creo que la mayoría de los desarrolladores hacia adelante gravitarán más hacia el SDK oficial aunque esté un poco más limitado. Una desventaja importante del SDK oficial es que requiere una Mac Intel con Leopard (OS X 10.5) para poder desarrollar, mientras que con los kits hacker puedes desarrollar en una PC con Windows o Linux.

Quisiera hablarles más del SDK pero…..al bajarlo Apple te hace aprobar un acuerdo que básicamente dice que todo lo que veas está bajo NDA. Así que cada quien tendrá que bajar el suyo de http://developer.apple.com/iphone/index.action y revisar la documentación por sus cuenta (o en foros privados de Apple con colegas cercanos que también hayan bajado el SDK).

Esto me parece una de las ideas menos afortunadas que he visto recientemente. Ya me he encontrado con algunos blog posts de expertos en desarrollo para iPhone que se han tenido que quitar por "violar el NDA". Para un ejemplo: http://www.cocoamachine.com/blog/ Creo que uno de los elementos más poderosos que tenemos como desarrolladores es participar en las comunidades de colegas. ¿Cuántas veces no encontramos un ejemplo resuelto en algún post de otro colega? Apple al limitar esto en mi opinión dificulta innecesariamente la construcción de aplicaciones para su plataforma. ¿Ustedes que opinan?

Microsoft es mucho, mucho más abierto hacia los desarrolladores. Vale la pena que los adoradores de Apple reflexionen un poco sobre esto.


 

5.15.2008

¿Que hay de nuevo en .NET 3.5 SP1?

Hace unos días Microsoft libero la versión Beta del service pack 1 para .NET 3.5. Todos los detalles están en el blog de Scott Guthrie (en inglés), vicepresidente de la division de herramientas de desarrollo de Microsoft.

A continuación un breve resumen:


Mejoras a desarrollo web con ASP.NET:

  • Soporte de "andamiaje de datos". Mejoras a los controles de datos de ASP.NET para facilitar la construcción de aplicaciones simples de datos. Tutoriales de Scott Hanselman aquí.
  • Sistema de ruteo dinámico que te permite controlar totalmente como se ven tus URLs.
  • Integración desde ASP.NET AJAX con los botones de "Back" y "Forward" de tu navegador.
  • Combinación de scripts en una página con el elemento .
  • Mejor desempeño en el diseñador web.
  • Opciones para formatear JavaScript en el editor de código como tu quieras.
  • Mejor soporte IntelliSense en JavaScript para librerías comunmente utilizadas como JQuery, Prototype, Scriptaculous, y ExtJS.
  • Mejor soporte de refactoring para servicios WCF. Ahora Visual Studio corrige las referencias en tu web.config y las referencias SVC.
  • La versión gratis Visual Web Developer 2008 Express Edition ahora te permite desarrollar proyectos de librería de clases y web applications.

Mejoras a desarrollo de smart clients:

  • Arranque inicial más rápido de aplicaciones .NET la primera vez que cargan
  • Nueva instalación de .NET más ligera para clientes. Esta versión de .NET no incluye por ejemplo todas las librerías web que normalmente no se usan en un cliente, entre otras. Por lo tanto, es más pequeña, su descarga es más rapida y facilita el despliegue. En Visual Studio puedes marcar que deseas soportar este subconjunto de .NET y se verificará que tu codigo no use algo fuera de este.
  • Nuevo y mejorado instalador de .NET (bootstrapper) que puedes incluir en el instalador de tus aplicaciones, simplificando el despliegue.
  • Múltiples mejoras a ClickOnce incluyendo soporte desde Firefox.
  • Nuevos controles de Windows Forms: Imagenes vectorizadas, forma de impresión y repetidores de datos (para reportes principalmente).
  • Mejor desempeño de WPF (Windows Presentation Foundation) en muchos escenarios de dibujo y animación y mejor escalabilidad en controles que manejan datos como ListBox, ListView y TreeView.
  • Mejoras multiples al Data Binding de WPF.
  • Soporte a efectos de sombreado (distorsiones) que corren en el procesador gráfico. Los puedes programar tu mismo.
  • Interoperabilidad entre WPF y Direct3D.
  • Mejoras al editor de XAML de Visual Studio.

Mejoras en el acceso a datos:

  • Soporte a SQL Server 2008 en todos los diseñadores de Visual Studio
  • Nuevo ADO Entity Framework y LINQ to Entities. Esto es todo un tema, puedes encontrar un tutorial aqui en inglés.
  • Librería ADO.NET data Services para crear servicios REST facilmente.

Mejoras a WCF (Windows Communication Foundation):

  • Mejoras a escalabilidad
  • Soporte al ADO.NET Entity Framework (mencionado arriba) en contratos WCF

Mejoras a VB y C#:

  • Deducción de un esquema XSD de cualquier fuente XML directamente en VB.
  • Mejor detección de errores de semantica en tiempo de edición (antes de compilar) en C#.

También hay muchas mejoras a Team Foundation Server y solución de muchos bugs. Recuerda que esta es una versión beta así que ten cuidado al usarla. Microsoft planea liberar la versión final este verano (yo estimo agosto-septiembre). Mientras puedes bajar el beta de aquí.

4.03.2008

Debugging a Windows Vista Credential Provider with Visual Studio 2008 (Without Kernel Debugging!)

I have spent the past couple of weeks working on a multifactor biometric Vista Credential provider. I downloaded the most recent sample code here and went through the steps outlined in that download's readme to set up kernel debugging between my Vista 64 host dev machine and my Vista 32 VM target machine through a VMWare named pipes serial port. I was able to break into the debugger successfully when LogonUI.exe was loaded and I could send command line debugger commands with no problems. However, I am not an expert with these low level debuggers and as hard as I tried, I couldn't get the graphical debugger going, I could only work through the command line and didn't like it one bit. I believe it has something to do with the fact that I was piping the user mode debugger through KITL.

In any case, I decided to give a shot to "standard" Visual Studio 2008 remote debugging for this scenario. I installed the VS 2008 remote debugger on the target VM and set it up for remote debugging through the shared network connection. It worked like a charm, though it has one caveat that I haven't solved yet (but can live with to get standard VS debugging):

  • I can only attach to LogonUI's process after it has launched. This means I cannot set a breakpoint in my Credential Provider's initialization methods. So if I have to debug that I have to fall back to the command line debugger.

Other than that, it works nicely and it is a much more productive way of debugging a Vista Credential Provider.

3.26.2008

Cuando Windows No Quiere Abrir Más Ventanas (…o una razón más para instalar Vista SP1)

Quizá les haya sucedido que, cuando ya tenemos muchas ventanas abiertas las aplicaciones dejan de dibujarse bien o simplemente ya no abren más ventanas, tabs o controles. Esto sucede, por ejemplo, si abrimos aproximadamente unos 30 tabs en Internet Explorer o unas cuantas sesiones simultáneas de Visual Studio. Lo interesante es que pasa aún cuando según el administrador de tareas tengamos aun mucha memoria disponible. Pasa en Windows XP y en Windows Vista también.

El problema es que cada sesión de escritorio (desktop) interactiva de Windows cuenta con un espacio de memoria limitado que utiliza User32.Dll para crear objetos gráficos como ventanas, menús, controles, etc. Este espacio de memoria es de 3,072KB en Windows Vista (sin SP1) y se define en esta llave del registry:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems]
Windows="%SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,3072,512 Windows=On SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16"

Si estén teniendo problemas con esta limitante, pueden incrementar el valor de 3072 a uno mayor. Es importante hacerlo en incrementos relativamente pequeños (por ejemplo, de 1024KB) hasta que ya no tengan en problema. Si lo incrementan de más Windows puede dejar de arrancar.

El service pack 1 de Windows Vista aumenta este valor a 12,288KB por lo que con SP1 no debe de presentarse más este problema. También vale la pena mencionar que las versiones de 64 bits de Windows Vista manejan 20MB para este espacio y tampoco presentan este problema. La discusión detallada de este tema la pueden encontrar en estos tres artículos (en inglés):

http://blogs.msdn.com/ntdebugging/archive/2007/01/04/desktop-heap-overview.aspx

http://blogs.msdn.com/ntdebugging/archive/2007/07/05/desktop-heap-part-2.aspx

http://blogs.msdn.com/ntdebugging/archive/2008/03/20/the-default-interactive-desktop-heap-size-has-been-increased-on-32-bit-vista-sp1.aspx

3.18.2008

WideOpen Web: When Things Go Wrong - A Restore Windows PowerShell Script for the December 2007 FolderShare Bug

Ok, so it's not that recently that FolderShare decided to delete all your files that had certain characters (accents, trademark signs, etc.). This happened at the beginning of December 2007. You can find a detailed description of the problem (and Microsoft's response) here: http://www.techcrunch.com/2007/12/11/foldershare-autodeletes-files-whoops/

I am a heavy user of FolderShare and have been mostly happy about it, using it to synchronize files between my Laptop and my two desktops. This bug really bit me, since I use those "special characters" a lot since I am Mexican and like to spell correctly in Spanish. Ever since the bug bit me I just copied all my deleted files from FolderShare's trash to a brand new folder under my documents that I creatively named "FolderShare Stupidity". Literally thousands of my files now lived there instead of in my carefully crafted personal structure. All that was left in the original folders was the FolderShare marker "*.p2p" files.

Today I had a little too much time on my hands so I decided to play a bit with Windows Powershell (I had never used it before). It sounded like the right tool for the job in trying to build a simple script to restore my files to their proper locations. I originally intended to write a quick C# program to fix this but after today I can tell you that PowerShell is definitely the right tool for the job.

This is the script that I wrote:

#* FileName: FixFolderShare.ps1

#*=============================================================================

#* Script Name: FixFolderShare.ps1

#* Created: 170308

#* Author: Hector Obregon

#* Company: emLink

#*=============================================================================

#* Purpose: Fix FolderShare incorrectly moved files

#*=============================================================================


$items = get-childitem -path "C:\Users\hobregon\Documents" -recurse -include *.p2p

foreach ($f in $items)

{

$origname = $f.name.Replace(".p2p", "")

Set-Location "C:\Users\hobregon\Documents\FolderShare Stupidity"

$origitem = get-childitem $origname

$origfile = $origitem.fullname

$destfile = $f.fullname.Replace(".p2p", "")

Write-Host $origfile

Write-Host $destfile

copy $origfile $destfile

del $f.fullname

}

Be very careful if you decide to use the script yourself. I don't make any guarantees and will not be held responsible for any loss of data you may experience. Caveat emptor.
Having gotten that out of the way, this is what you need to do:

1. Download and install Windows PowerShell 1.0 following instructions here: http://www.microsoft.com/windowsserver2003/technologies/management/powershell/download.mspx

2. Open notepad and copy the script above and save it somewhere on your disk. Do not execute it yet.

a. Replace "C:\Users\hobregon\Documents" in the first line of the script above with a root folder underwhich you have many "orphaned" p2p files.

b. Replace "C:\Users\hobregon\Documents\FolderShare Stupidity"
inside the foreach loop above with the folder path in which you restored all your FolderShare deleted files after the bug hit.

c. Save the modified script.

3. Launch PowerShell and execute this statement to allow it to execute local unsigned scripts: set-executionpolicy RemoteSigned

4. Execute the modified script by navigating to the directory where you saved it and typing .\ before the name of your modified script file.

5. If you are paranoid about script execution, restore PowerShell execution policy to deny scripts like this: set-executionpolicy Restricted

This script will try to find all of your orphaned P2P files and restore them to their proper locations. It will not delete any of your files except the orphaned P2P FolderShare marker files.

I just found out today that FolderShare has come out with a new "Windows Live" version. I will wait it out and make sure it is stable first.