miércoles, 5 de noviembre de 2008

Software Gratis de Microsoft para Empresas Nuevas

Microsoft ha anunciado ya en Estados Unidos su nuevo programa de apoyo a startups. Es un excelente programa donde por tres años tienes acceso a una amplisima gama de software Microsoft para operar tu negocio GRATIS.

La mejor noticia es que sabemos de muy buena fuente que el programa si se ofrecerá en México con algunas variantes menores. Se llama "BizSpark".

¿Para qué empresas es?

  • Empresas con menos de tres años de creación.
  • Ventas actuales menores a USD 1 millón por año.
  • Empresas que crren software o servicios (o software + servicios).
Tiene un costo de sólo 100 USD que pagas al final del periodo. El programa incluye uso ilimitado para producción de Windows Server, SQL Server, Biztalk y Office Sharepoint (todo con licencia de acceso por Internet), Systems Center para manejar tus servidores y licencias de desarrollo de Visual Studio Team Suite.

Aun no se definen los detalles de operación para México, pero vale la pena que vayan conociendo la guía del programa para Estados Unidos en http://download.microsoft.com/download/4/d/4/4d41081a-d8d9-407a-9bae-5127e6e931ca/BizSpark%20Startup%20Program%20Guide.pdf

En lo personal me parece una EXCELENTE idea de Microsoft para posicionarse como una alternativa viable frente a Open Source para empresas realmente innovadoras. ¿Qué opinas?

martes, 28 de octubre de 2008

Desde el PDC 2008: Primeras Impresiones de Windows 7

Mi primera impresión de Windows 7 es muy positiva. Me parece que Microsoft definitivamente “aprendió la lección” de Windows Vista. Lo que más me llamó la atención fue la actitud de la presentación. Se reconocieron con mucha franqueza los errores cometidos. Veo un enfoque más fresco en el equipo de desarrollo de Windows (yo creo que la salida de Allchin fue positiva – independientemente del gran trabajo que hizo antes ya se necesitaba sangre fresca).

El foco está en la simplicidad, el desempeño y la facilidad de uso. Creo que las prioridades que se fijaron para Windows 7 son las adecuadas. Algunos ejemplos:

· Una barra de herramientas más poderosa (y algo parecida al Dock de la Mac – pero mejorado).
· Posibilidad de ajustar con facilidad que tan intrusivo (y seguro) quieres que el UAC funcione.
· Control total sobre el system tray – que iconos quieres ver, que mensajes quieres que te salgan – tu decides.
· Soporte a multitouch - esto va a revolucionar las interfases de usuario.
· Va a funcionar en la nuevas mini-notebooks.
· Librerias de coumentos que te permiten organizar tus archivos, fotos, música, etc en tu red personal y fácilmente a través del explorador, media player y media center.
· Detección automática y configuración automática al conectarte a la red de tu casa o del trabajo.

Para desarrolladores, hay varios elementos que lo hacen un sistema operativo muy atractivo:

· Microsoft está buscando que sea más eficiente, con menos consumo de memoria y uso de disco
· Soporta montar de manera nativa discos virtuales vhd y bootear directamente de estos preservando su estado
· Mucho mejor manejo multimonitor en Windows y a través de remote desktop también.
· .NET 3.5 SP1 preinstalado.

¿Saben que es lo mejor? El build que presentaron hoy se ve muy estable. Yo creo que Microsoft nos va a dar una sorpresa y Windows 7 va a salir antes de lo esperado…..

lunes, 27 de octubre de 2008

PDC 2008 en Vivo – Windows Azure, La Plataforma de Servicios de Microsoft

Hoy en Los Angeles inició el Microsoft Professional Developer Conference. Esta es la conferencia para desarrolladores más importante que Microsoft organiza más o menos cada dos o tres años cuando la empresa tiene algo importante que decir. Los anuncios de hoy reflejan la decisión de Microsoft para convertirse en el proveedor de servicios de cómputo líder en Internet. Se anunció una plataforma de desarrollo para la nube: Windows Azure.

¿Qué significa este anuncio para los desarrolladores de software?

· Vamos a poder “desplegar” nuestras aplicaciones con gran facilidad a la infraestructura de servidores de Microsoft. Este proceso va a ser muy sencillo y a través de configuración se hará realidad el cómputo bajo demanda. Podremos especificar cómo debe escalar nuestra aplicación y podremos solicitar más (o menos) capacidad a través del tiempo de acuerdo con nuestras necesidades de negocio. Todo esto de forma muy simple.

· Podremos aprovechar varios servicios bajo demanda con funciones de alto nivel para simplificar el desarrollo de aplicaciones con gran valor de negocio.

¿Qué servicios están disponibles?

Microsoft .NET Services: Hoy se anunciaron los 3 primeros componentes de estos servicios. Con ellos podemos resolver nuestras necesidades de identidad federada y de control de flujos de actividades con WF.

· Service Bus
· Access Control
· Workflow Services

Microsoft SQL Services: Servicios de datos que podemos aprovechar bajo demanda.

· Base de Datos, Sincronización, Reporteo, Data Mining, ETL

Live Services: Servicios centrados en el usuario individual, para administrar su información a través de múltiples dispositivos y lugares.

· User Centric Data Store – Identity, Contacts, Files, Calendar
· Sync
· App Management
· Device Management

¿Cuándo podremos usar estos servicios?

Aquí en el PDC se está liberando un CTP (Community Technology Preview) que se puede usar para fines de prueba desde hoy. Yo esperaría que Microsoft lograra un lanzamiento comercial hacia fines del 2009.

viernes, 12 de septiembre de 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).

lunes, 25 de agosto de 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.

jueves, 24 de julio de 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.

jueves, 29 de mayo de 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.

jueves, 22 de mayo de 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.


 

jueves, 15 de mayo de 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í.

jueves, 3 de abril de 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.

miércoles, 26 de marzo de 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

martes, 18 de marzo de 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.

martes, 11 de marzo de 2008

WideOpen Web: Conclusiones y Comentarios Finales de MIX ’08 en Las Vegas

El mejor momento de Mix '08 me pareció sin duda la conferencia magistral donde Guy Kawasaki entrevistó a Steve Ballmer. Guy es probablemente el "evangelista tecnológico" más reconocido de la industria y no se caracteriza precisamente por ser pro-Microsoft. Trató a Ballmer "sin miedo" haciéndole algunas preguntas difíciles (o al menos más difíciles de las que normalmente se le hacen a un ejecutivo de ese calibre). La sesión fue bastante divertida – chequen cuando Ballmer "Don't go monkey on me, Steve." si se fue monkey: http://www.news.com/1606-2-6233485.html . En cuanto al contenido real:

  • Microsoft tras Yahoo fundamentalmente por razones de escala. La publicidad en Internet es un gran negocio y la escala (a cuanta gente puedes llegar) cuenta.
  • Microsoft reconoce el liderazgo de Google en este espacio y quiere "recortar la distancia".
  • Reconoce el buen trabajo de Apple en el espacio del consumidor, aunque en mi opinión aquí le falta más humildad a Microsoft.

En general Kawasaki no tiene "pelos en la lengua" y fue tras Ballmer en todos los temas difíciles hoy para Microsoft.

Asistí también a varias sesiones técnicas después. Lo mejor sin duda Silverlight 2.0 como comenté en mi post anterior. Sin embargo, otros temas interesantes:

  • Un conjunto de adiciones para integrar Silverlight 2.0 con Microsoft Sharepoint en varios escenarios. Sharepoint es una de las tecnologías más "calientes" de Microsoft en este momento y la combinación con Silverlight 2.0 me parece muy buena. Los llamados Silverlight Blueprint for Sharepoint soportan varios escenarios comunes de negocio. Más información aquí: http://www.ssblueprints.net/sharepoint/
  • Mejoras a WPF 3.5. Aunque en el Mix WPF parecía un poco olvidado en relación a su hermano menor Silverlight, en una sesión que estuve se anunciaron mejoras que muestran que Microsoft sigue y seguirá invirtiendo en esta tecnología (finalmente es el futuro de las interfaces de usuario en Windows). Entre otras cosas, WPF soporta más aceleración de hardware y la posibilidad de hacer pequeños programas para efectos gráficos que se ejecutan en el GPU sin necesidad de usar DirectX. El foco principal del equipo de WPF parece estar en mejorar el desempeño y la estabilidad. Me parece una buena decisión antes de seguir agregando funcionalidad a un producto que ya es impresionante.
  • Silverlight para dispositivos móviles. Lo mejor fue el anuncio de que Nokia va a soportar Silverlight en varios de sus modelos. Sin embargo, Silverlight móvil por ahora soporta una funcionalidad más o menos equivalente a la versión uno de escritorio. Me parece pesado, difícil de programar (sin controles y todo en JavaScript) y como en el espacio móvil de consumidor la penetración de Windows Mobile es aun baja, creo que es un pequeño paso que no será hasta la versión 2 o 3 que funcione realmente para aplicaciones masivas. En los demos funcionaba bien, pero muy lento. En mi opinión la lentitud es algo que los usuarios no toleran fácilmente en su móvil. Me hubiera gustado más que Microsoft hiciera primero un WPF light para el Compact Framework, ya que su fuerte son las aplicaciones empresariales, que la mayoría de las veces funcionan en escenarios parcialmente desconectados. Silverlight móvil solo funciona en escenarios totalmente en línea.

Finalmente, lo mejor de MIX es que, aun si no estuviste allí, las sesiones están disponibles sin costo en http://sessions.visitmix.com/ .Te recomiendo checarlas.

jueves, 6 de marzo de 2008

Primeras Impresiones de Mix ‘08

Los MSDN Regional Directors de todo el mundo estamos unificando nuestros esfuerzos editoriales alrededor de un tema mensual que llamamos WideOpen Web y nos estaremos enfocando durante marzo a blogear sobre las iniciativas web de Microsoft. Hoy inició la conferencia Mix '08 en Las Vegas y en ella Microsoft hizo anuncios y demostraciones muy importantes.

Dado que hay muchos sitios de noticias en Internet reportando sobre eso, más que repetir lo que hay en todos lados, quiero comentar aquellos aspectos que me parecieron más interesantes de hoy para los desarrolladores y diseñadores de aplicaciones web (de más a menos importante):

  1. Silverlight 2.0 Beta 1: Simplemente impresionante. Es increíble que una descarga de tan sólo 4.7 MB pueda hacer lo que hace Silverlight. Ahora si me parece una plataforma completa para desarrollar aplicaciones ricas basadas en el navegador. Funciona en Firefox (desde 1.5), IE (desde el 6.0) y Safari (desde 2.0). En Windows desde 2000 hasta Vista y en Mac OS X Tiger y Leopard. Está convirtiendo a .NET en multiplataforma. ¿Qué vimos hoy que hay de nuevo vs. Silverlight 1.0?


     

    1. Controles: Finalmente, no necesitamos codificar controles a mano. Me impresionó particularmente que incluye un DataGrid que se ve bastante bien. También una excelente noticia es que Microsoft proporcionará estos controles con todo y código fuente en una licencia totalmente permisiva. Los controles soportan el esquema de templates y estilos del WPF de escritorio, lo que los hace increíblemente flexibles.
      1. Vale la pena una mención aparte el control de "Deep Zoom" de Silverlight 2. Permite de manera muy sencilla exponer enormes bitmaps a través de Internet que ofrecen una experiencia de "acercamiento" que pareciera infinito. Entren a memorabilia.hardrock.com. Wow.
    2. Soporte a Lenguajes .NET como C#, VB.NET además de IronPython y, como siempre, JavaScript. Es un soporte a lenguajes .NET de primera clase que incluye genéricos y LINQ to XML.
    3. Detección de cambios en el estado de la conexión de red. Esto nos permite detectar si perdemos conexión al servidor y evitar el colapso de nuestra aplicación. Incluso puede ser el inicio de aplicaciones "ocasionalmente conectadas" basadas en el navegador.
    4. Integración con la "historia" del navegador. Esto sirve principalmente para que los botones de "adelante" y "atrás" del navegador funcionen dentro de nuestra aplicación Silverlight como el usuario lo esperaría.
    5. Soporte para obtener datos de un dominio diferente al de que descargamos la página, siempre y cuando en el tercer dominio haya un archivo de política que lo autorice.

    Las demostraciones de Silverlight 2.0 fueron muy completas y, al menos de primera instancia, parece bastante estable y completo – Microsoft ofreció el Beta 2 para el Q2 de este año con una licencia Go Live. Yo creo que si lo lograrán por lo que vimos hoy. El beta liberado hoy se acompaña de herramientas preliminares para Visual Studio 2008 que funcionan razonablemente bien. Puedes bajar las herramientas para Visual Studio 2008 (que incluyen el runtime de Silverlight 2) de aquí: http://www.microsoft.com/downloads/details.aspx?FamilyId=E0BAE58E-9C0B-4090-A1DB-F134D9F095FD&displaylang=en

  2. Internet Explorer 8 Beta 1: Sabemos que la competencia le hace bien a Microsoft. El avance de Firefox y otros navegadores provoca innovación en IE. ¿Qué hay de nuevo?


     

    1. El enfoque centrado en estándares. Microsoft afortunadamente decidió esta semana que el "modo por omisión" de IE8 será dibujar las páginas web de acuerdo a estándares en lugar de en un modo de compatibilidad con IE7. Esto facilitará mucho el trabajo para diseñadores de sitios web, que hasta ahora tienen que trabajar para "darle la vuelta" a las idiosincrasias particulares de IE7. Mediante un tag especial, los sitios web existentes podrán identificar si IE8 los dibuja en modo de estándares o en modo de compatibilidad con IE7.
    2. Depuración de scripts con una muy interesante forma de depurar la manera como IE aplica los estilos de CSS (ahora hasta 2.1). Podemos navegar a un objeto del DOM en nuestra página y con un click entender de que estilo CSS viene cada propiedad que está aplicando.
    3. Actividades: ¿Se acuerdan de los Smart Tags? Las activities son algo similar pero con una programación declarativa mucho más sencilla, totalmente declarativa.
    4. WebSlices: Son clips de nuestros sitios web. Se mostró un ejemplo con una subasta de eBay. También muy sencillos de programar.

    Los betas de Internet Explorer se pueden descargar aquí:

Me parece que Microsoft está realmente esforzándose para ser competitivo en el espacio de Internet y lográndolo. Mañana como parte de Mix habrá un keynote de Steve Ballmer con Guy Kawasaki. Probablemente habrá más noticias interesantes.

Finalmente, les recomiendo que visiten The Region. Este sitio agrega los blogs de todos los directores regionales de MSDN del mundo y este mes tendrá literalmente cientos de artículos sobre estas iniciativas WideOpen Web de Microsoft.

martes, 26 de febrero de 2008

Control de Sky o Cablevision con las HP9060LA y HP9050LA

Simplemente una nota rápida de seguimiento a mis posts anteriores sobre Media Center en Vista y con estos equipos HP. Estos equipos HP NO INCLUYEN el IR Blaster que hace falta para controlar la caja de Sky o de Cable desde la PC. Para que se pueda hacer esto es necesario comprar un control remoto adicional como este:

http://www.amazon.com/Microsoft-Windows-Center-Control-Receivier/dp/B000FNDPS6/ref=pd_bbs_sr_1?ie=UTF8&s=electronics&qid=1204055871&sr=8-1

Los vendedores de HP en la mayoría de las tiendas departamentales no tienen idea de esto y fácilmente dicen que "si se puede". Tal como salen de la caja, no incluyen lo necesario para cambiar el canal de Sky o Cable desde la PC.

Este control remoto que venden en Amazon incluye un cable con un pequeño "foco" infrarrojo que se pega a la caja de Sky o Cable para cambiarle de canal.

sábado, 16 de febrero de 2008

Primeras Impresiones Vista SP1 (x64)

Ayer instalé el SP1 De Windows Vista en mi laptop. El SP1 ya está disponible para suscriptores de MSDN y de Technet. Estoy usando Vista Ultimate x64 en esta PC con excelentes resultados desde hace algún tiempo. La instalación del SP1 fue sencilla (correr el instalador y esperar un par de reinicios) y tomó unos 30 minutos. Después defragmenté mi disco usando PerfectDisk 8.0 (siempre hago esto después de instalaciones mayores).

Siento mi PC algo más rápida y con menos actividad en disco, fuera de eso nada del otro mundo….todo simplemente funciona bien (que ya es ganancia J). Un detalle es que en las propiedades de la PC Windows ahora reporta correctamente que tengo 4GB de RAM (antes reportaba 3.2 o algo así). Sin embargo, la memoria disponible para el sistema operativo sigue siendo de 3.2 GB. Este detalle no es problema de Vista, sino del BIOS de mi laptop Dell que utiliza parte del espacio de direccionamiento para mapear memoria de dispositivos (p. ej., video).
Hay una lista detallada de cambios que incluye el SP1 aquí: http://www.istartedsomething.com/20071208/vista-sp1-changelog/

Practicamente todo es "bajo el cofre".

lunes, 4 de febrero de 2008

Windows Sharepoint Services 3.0 Como Plataforma de Colaboración

Hace alrededor de 8 meses decidimos implementar en emLink WSS 3.0 como nuestra plataforma de colaboración. Los resultados hasta la fecha han sido excelentes y han contribuido directamente a mejorar el desempeño de nuestro negocio. Vale la pena mencionar que WSS, como cualquier tecnología, depende de una buena implementación en el proceso de negocio para dar resultados. La tecnología en si misma es sólo una herramienta habilitadora.

¿Qué hemos podido lograr?

  1. Utilizamos listas de WSS como un "mini-CRM" que para nuestras necesidades es más que suficiente:
    1. Tenemos una lista de "Leads" donde administramos todos nuestros contactos.
    2. En otra lista "Propuestas" manejamos todas las propuestas entregadas, y las clasificamos por fecha esperada de cierre, probabilidad, monto, etc.
    3. En una lista de tareas de WSS administramos las tareas del equipo de ventas.
  2. Utilizamos subsitios de WSS para cada proyecto que ejecutamos. Dentro de los subsitios tenemos toda la documentación del proyecto así como tareas y listas de "issues" y "bugs" que nos facilitan la administración del proceso de SQA y la comunicación con los clientes.
  3. Nuestros principales documentos comunes están en WSS. Políticas de recursos humanos, planes, etc.
  4. Controlamos las solicitudes de vacaciones y los registros de inasistencias de todo el personal en listas de WSS donde usamos los flujos simples de aprobación que ya vienen con el producto.

Todo lo anterior ha tenido un impacto directo en nuestra rentabilidad, resultados, y en el servicio a los clientes. Para cada una de las cosas que hacemos en WSS hay "mejores" soluciones. Por ejemplo, en CRM el mismo Microsoft ofrece Microsoft CRM, una opción mucho más completa. Para control de SQA hay multitud de productos, destacando Visual Studio Team System (que hace mucho mas cosas).

Sin embargo, para una organización relativamente pequeña como nosotros, WSS ofrece todo lo que necesitamos junto con un costo imbatible (viene con Windows Server) y una facilidad de uso envidiable. Dados los beneficios que hemos obtenido, decidimos que en este 2008, vamos a ofrecer formalmente una práctica de consultoría en simplificación y automatización de procesos sobre WSS 3.0 (y Office SharePoint 2007, del cual hablaré en un post futuro). Con el uso interno que le hemos dado, estamos totalmente convencidos del valor de negocio de esta plataforma. Simplemente mejora nuestra rentabilidad. De pocas tecnologías podemos decir eso.

sábado, 26 de enero de 2008

Vista Media Center Blues o El Terror de HDCP

Y En mi último post sobre mi experiencia configurando Vista Media Center mencioné que adelante veríamos porque HDCP es importante. HDCP significa High-Bandwidth Digital Content Protection y también es una pesadilla para los consumidores. Resulta que cuando quise reproducir un disco Blu-Ray en mi flamante HP Media Center que conecté a una televisión DLP HD 720p Samsung de hace un par de años mediante DVI, después de 5 segundos de reproducción esta se detenia con la leyenda "Este contenido está protegido y su reproducción no está soportada por este sistema." En resumen lo que ese mensaje quiere decir es:

  • En la industria de electrónicos nos importa un bledo que usted quiera utilizar su TV HD de hace dos años para reproducir contenido HD. Haga favor de proceder a su tienda más cercana para comprar una nueva TV que soporte HDCP.


 

Me parece un abuso total. Por lo tanto, me di a la tarea de investigar cómo resolver este tema y comprar una nueva T.V. cuando a mí se me de la gana y no cuando la industria me lo quiera imponer. HDCP es un protocolo para encriptar contenido de alta definición digital como discos Blu-Ray, HD-DVD y estaciones de cable HD de contenido protegido. La novedad es que si quieres reproducir contenido protegido HD con tu computadora, necesitas:

  1. Un disco Blu-Ray o HD-DVD
  2. Un sistema operativo que soporte HDCP (por ahora solo Windows Vista lo soporta)
  3. Una tarjeta de video que soporte HDCP (la mayoría no lo soportan aunque las mas nuevas si)
  4. Una TV o monitor que soporte HDCP.

"Soportar HDCP" implica tener conjuntos de llaves PKI que le permiten al dispositivo encriptar/desencriptar el contenido. Las TVs de alta definición de hace relativamente poco (unos dos años) no soportan esto y NO PUEDEN REPRODUCIR CONTENIDO DIGITAL HD. Como muchos otros esquemas de protección, este solo le hace la vida difícil a los consumidores "normales", ya que me tomó sólo unas cuantas horas encontrar en Internet "cracks" a los sistemas de protección tanto de Blu-Ray como de HD DVD. Hay programas de código libre que permiten "rippear" uno de estos discos a disco duro quitándole la encripción. Sin embargo, resulta un proceso tardado y tedioso (que además requiere espacio en disco). La mejor solución que encontré es un software de una compañía que se llama SlySoft que ha tomado estos cracks y armado un producto integral para quitar la protección HDCP. Funcionó perfecto con las tres películas que tengo en Blu-Ray: Eranor, El Quinto Elemento y Dinosaurio.

Francamente, cuando los esquemas de protección de contenido impiden el uso legitimo de un producto, en mi opinión los consumidores tenemos todo el derecho a buscar alternativas. Ya es hora de que los estudios productores de música, cine y contenido digital entiendan que no pueden seguir viviendo de un modelo de negocios obsoleto y tomen cartas en el asunto. Da gusto ver lo que Apple ha hecho con iTunes donde ahora ya puedes rentar películas a costos decentes aunque da coraje que no haya tienda de iTunes en México. ¿Para cuando?

miércoles, 16 de enero de 2008

Using a Broadband USB Wireless Card in Vista x64 (Without 64 bit drivers)

I recently got a 4GB upgrade for my Inspiron XPS M1710 laptop and decided to reformat it and install Vista 64 Ultimate. I am very happy, the OS feels a lot snappier than Vista 32. Most everything I use runs fine and faster. The only device for which I was unable to find drivers was for a Franklin Wireless CDU-550 USB card.

To get it to work under Vista 64, this is what I did:

  1. Set up a simple Virtual Machine using VMWare player and install Windows XP Pro SP2 on it with 256MB RAM (more than enough).
  2. Set the USB options of the VM so that it will get assigned a USB device whenever it has focus.
  3. Insert my Franklin USB card (while the VM has focus) and configure it under XP inside the VM using standard 32 bit drivers.
  4. Set the VM for host only networking.
  5. Enable and configure Internet Connection Sharing in the VM
  6. Set the VMWare virtual network adapter in the host machine to use DHCP.


 

Voila, now I have a working Internet connection from Vista x64 through the VM. At a cost of 256 MB RAM and a bit of a hassle when I use broadband. I cannot feel any difference in performance at all as the VM is mostly idling all the time and 256MB out of 4GB is not that big a deal.

Next up: Configuring Vista x64 on a 10GB RAM Mac Pro (Quad Core Dual Xenon) which should arrive within a month….

domingo, 13 de enero de 2008

Vista Media Center Blues (Con Final Feliz)

Esta Navidad Santa Clos me trajo una nueva HP Media Center 9060LA. Este equipo tiene varias virtudes que lo hacen, en mi opinión, un buen Media Center:

  • Diseño atractivo que se ve "padre" en la sala de T.V.
  • No es ruidosa, operación muy silenciosa
  • Un excelente control remoto de HP
  • Características muy razonables:
    • Procesador de cuatro nucleos Q6600
    • 2 GB RAM
    • 660 GB de Disco (160 removibles)
    • Vista Home Premium
    • Tarjeta decodificadora de video
    • Salidas HDMI y DVI
    • Soporte a HDCP (más adelante veremos porque es importante…)

La experiencia de configurarla como Media Center ha sido, por decir lo menos… interesante. Mi primera sorpresa fue descubrir que, contra lo que me dijeron los vendedores al momento de comprarla, este equipo no incluye un IR Blaster para poder controlar una caja de Sky o de Cable. Afortunadamente ya antes había configurado una desktop Dell para hacer esto mediante el Windows Media Center Remote que pedí desde Estados Unidos.

Pensé que bastaría simplemente con conectar mi control remoto adicional con IR Blaster y configurar la grabación del Sky. Desafortunadamente Media Center se cae al tratar de configurar el blaster aparentemente porque los dos controles remotos (el de Microsoft y el de HP) entran en conflicto. Así que tuve que abrir mi flamante HP para buscar donde podía desconectar su control remoto integrado directamente de la tarjeta madre. Encontré que el receptor del control remoto de HP está integrado en el lector multiformato (de SD, MMC, CompactFlash, etc) y bastó con desconectar el cable de energía de este módulo. Haciendo esto pude configurar sin problemas la recepción de TV de Media Center para mi caja de Sky.

El siguiente paso fue instalar una serie de utilerías para que Media Center pudiera reconocer más formatos de video y audio. Para el video, instalé el Haali Media Splitter y después el paquete de codecs ffdshow. Con eso es posible reproducir mucho más formatos de video dentro de Vista Media Center. Luego quería lograr que Media Center reconociera mi librería de música de iTunes. Se puede lograr instalando estos codecs de Orban y este extensor de tags para Windows Media Player.

Es muy importante instalar todo esto antes de agregar tus directorios con media a la librería de Media Center.