Tuesday, 28 December 2010

Simax + Martan –La simulación aplicada a la formación-

Hace pocos días, Martan fue galardonada con el Premio Cluster TIC al mejor Proyecto Tecnológico, por la incorporación de nuestros simuladores Simax dentro de sus procesos formativos. Aquí podéis encontrar un vídeo presentando el proyecto:

Martan from 601 Producciones Audiovisuales on Vimeo.

Monday, 20 December 2010

Fixing the MSB3247 Warning when compiling .Net Applications

If you are receiving a warning like: “Found conflicts between different versions of the same dependent assembly” when compiling your application, it’s because you are referencing different versions of an assembly in two different project of your solution.

In my case, it was a System.Drawing reference, which was not properly updated when switched to .Net Framework 4.0, and still was pointing to the 2.0 version of the System.Drawing DLL.

Visual Studio won´t tell you which reference is causing the issue (it’s admitted by Microsoft dev. team that they will probably include that feature in the future), so you have to search for it manually. It will tell you anyway in which project the wrong reference is, so you only have to look there.

Cheers!

Monday, 13 December 2010

Ofuscación de código y activación de informes en aplicaciones Windows Phone 7

Nota: Este post es una traducción personal (reconvertida en tutorial) de las explicaciones dadas por Bill Leach (CTO de Preemptive Solutions), en este vídeo grabado para Channel 9.

Introducción

En este artículo se describen los pasos necesarios para proteger el código fuente de aplicaciones Windows Phone (tanto XNA como Silverlight), e incluir en ellas la generación de informes sobre su utilización.

Para ello, se utilizará la herramienta Dotfuscator Windows Phone Edition en su versión 4.9, recientemente lanzada por Preemptive Solutions en colaboración con Microsoft.

En primer lugar, es necesario registrarse y descargar la herramienta desde esta página web. Una vez se recibe por email el número de serie necesario para activar el programa, solo resta lanzar la aplicación: Inicio –> Programas –> Preemptive Solutions –> Dotfuscator.

Interfaz de usuario

Aunque Dotfuscator Professional puede integrarse dentro de Visual Studio 2010, como un tipo de proyecto más, Dotfuscator Windows Phone Edition es una aplicación independiente, con su propio interfaz de usuario:

image

Como puede apreciarse en la imagen, el funcionamiento es sencillo. Consta de:

  • Menú principal y barra de herramientas con las opciones típicas para cargar y salvar un proyecto de ofuscación
  • Botón con el símbolo de Play en verde, en la barra de herramientas, el cual comienza la ofuscación del código que se haya seleccionado y genera las versiones protegidas de los ensamblados o programas.
  • Pestañas de configuración:
      • Settings: Configuración general de la aplicación
      • Input: Selección de qué ensamblados o ejecutables queremos proteger en el proyecto.
      • El resto: propiedades de configuración para cada una de las funcionalidades que ofrece Dotfuscator

Añadiendo ensamblados o ejecutables

Para empezar a trabajar, lo primero es indicar a Dotfuscator qué ensamblados o ejecutables debe proteger. Para ello, solo hay que ir a la pestaña Input y pulsar sobre el icono de abrir carpeta. Aparecerá el clásico cuadro de diálogo de selección de archivos, donde es posible seleccionar:

      • Ensamblados (librerías) de tipo .DLL
      • Ejecutables (aplicaciones) de tipo .EXE
      • Paquetes de despliegue de Windows Phone (contienen librerias DLL, contenidos, etc), de tipo .XAP. Esta será la opción que se utilizará en el ejemplo que nos ocupa.

Nota: Si, como es el caso, estamos trabajando con proyecto Windows Phone (y archivos XAP), Dotfuscator solo trabajará con los ensamblado que encuentre en dichos archivos. Los contenidos no serán protegidos ni modificados en absoluto.

Una vez se selecciona el paquete XAP a proteger, aparecerán sus contenidos en la ventana inferior, en forma de árbol desplegable:

image

Si se despliega cualquiera de las DLLs del paquete, aparecerán algunas propiedades de ofuscación activadas, en forma de CheckBoxes. Una de las más relevantes, según los objetivos que persigue este artículo, es la llamada Library:

image

Manteniendo esta opción marcada (viene marcada por defecto), Dotfuscator deja todos los nombres de los tipos y métodos públicos sin renombrar (sin ofuscar). Los tipos privados sí se renombrarán, y todo el contenido de los métodos se ofuscará, pero los nombres que sean visibles desde fuera permanecerán inalterados.

Esto es necesario cuando una librería, a pesar de estar ofuscada, va a ser utilizada por cualquier otro software después. Si se cambiaran los nombres de los tipos públicos, el interfaz de la librería sería distinto, por lo que dejaría de ser utilizable desde fuera.

Output de la aplicación

Dotfuscator genera versiones protegidas de lo que se selecciona en la pestaña Input:

  • Para ensamblados (DLL), genera DLLs protegidas
  • Para ejecutables (EXE), genera EXEs protegidos
  • Para paquetes Windows Phone (XAP), genera paquetes XAP protegidos

Por defecto, el directorio de salida es el mismo donde se encuentra el ensamblado de entrada, más una sub-carpeta creada por el programa con el nombre Dotfuscated. No obstante, este comportamiento se puede cambiar en la pestaña Settings -> Project Properties -> ConfigDir.

Aplicando una protección básica

Una vez se han seleccionado los Inputs del proyecto, es necesario seleccionar qué tipo de protección ha de aplicarse.

Aunque cada tipo de protección puede ser configurada en profundidad (en sus respectivas pestañas), pudiendo incluso aplicar comportamientos distintos para cada método o propiedad, primero se aplicará una configuración genérica en la pestaña Settings.

Por defecto, todas las protecciones están deshabilitadas, apareciendo de la siguiente forma:

  • Disable Control Flow: Yes
  • Disable Linking: Yes
  • Disable PreMark: Yes
  • Disable Removal: Yes
  • Disable Renaming: Yes
  • Disable String Encryption: Yes

image

Para una protección básica, lo indispensable es activar la ofuscación de Control Flow y el Renaming. En algunos casos, también puede ser interesante activar el String Encryption, sobre todo si la aplicación a proteger contiene strings con contenido sensible.

Para activar cada funcionalidad, debemos indicar a Dotfuscator que NO las deshabilite, es decir, poner valores como: Disable Control Flow: No y Disable Renaming: No.

Control Flow

La ofuscación del flujo de control se encarga de hacer más difícil la comprensión del código, mediante cambios en el flujo del programa. Aunque el resultado final siga siendo equivalente, a nivel funcional, hace cambios para que no sea nada obvio interpretar por donde va a transcurrir la ejecución, y así dificultar las tareas de ingeniería inversa.

Renombrado

El renombrado se encarga de cambiar el nombre a todos los tipos privados, cambiando los descriptivos nombres originales por valores como: “a”, “b”, “c”, etc. En la pestaña Renaming se pueden excluir a mano, uno por uno, métodos o propiedades que explícitamente se quieran dejar fuera del renombrado. No obstante, para un uso básico, esto normalmente no es necesario.

Con estas funcionalidades activadas, ya se cuenta con una protección básica del código fuente. Ahora se describirá como incluir informes en aplicaciones Windows Phone.

Añadir instrumentación, o Code Analytics

Además de protección y ofuscación, Dotfuscator puede añadir Instrumentación a los programas.

Ambas funcionalidades son independientes. Es decir, se pueden aplicar las dos a la vez, se puede aplicar protección pero no instrumentación, y vice-versa.

La instrumentación utiliza una plataforma de Preemptive Solutions denominada como: Runtime Intelligence. Lo que hace es inyectar en el programa que procesa ciertas líneas de código cuya misión es generar informes de uso del mismo cada vez que este se ejecuta, y subirlos al portal de Runtime Intelligence (u otro), al que cada desarrollador registrado tiene acceso protegido por nombre y contraseña.

Se trata de un comportamiento muy similar al que ofrecen otras plataformas de análisis en otros sectores, como Google Analytics para WebSites, blogs, etc.

La instrumentación se activa/desactiva desde la pestaña Settings, apartado Instrumentation (debemos dejar todas las opciones activadas –Yes-)

Identificando la empresa y la aplicación en los informes

Obviamente, el generador de informes debe saber para qué aplicación está reportando, y para que empresa. Ambas cosas se identifican en la pestaña Instrumentation.

En ella, es necesario expandir el nodo de la DLL que contenga la clase principal de la aplicación:

  • Para una aplicación XNA, será aquella DLL que contenga la clase de tipo Game
  • Para una aplicación Silverlight, será aquella DLL que contenga la clase App

Una vez desplegado dicho nodo, aparecerá una lista de atributos por defecto, como los de la siguiente imagen (para un ejemplo en XNA).

image

Para que la instrumentación funcione, es necesario añadirle dos más, pulsando con el botón derecho sobre el nombre de la DLL y seleccionando la opción: Add Attribute. Una vez hecho esto, se abrirá una ventana que pregunta el tipo de atributo a añadir, con una serie de valores predefinidos:

image

Los dos que hay que añadir son:

BusinessAttribute

Este atributo identificará a la empresa desarrolladora del software, mediante un Company Key único, proporcionado vía email por Preemptive Solutions cuando se efectuó el registro en el portal de Runtime Intelligence. También se puede encontrar en el Dashboard del portal una vez hecho login.

Resulta recomendable incluir además un nombre de empresa.

ApplicationAttribute

Para identificar la aplicación, es necesario proporcionar la siguiente información:

  • Application Type: Tipo de aplicación (se puede dejar en blanco)
  • Guid: Identificador del ensamblado principal de la aplicación. Debe ser único, ya que será utilizado en el portal para identificar a esta aplicación. En este campo se puede utilizar el Guid del proyecto, disponible en su Assembly Info (accesible en Visual Studio desde el Solution Explorer o desde la ventana de propiedades del proyecto –> Assembly Info).
  • Name: Nombre de la aplicación (se puede dejar en blanco, aunque no es muy recomendable)
  • Version: Versión de la aplicación (si se deja en blanco, el Reporter tratará de extraerla de los meta-datos del ensamblado).

Indicando dónde se debe inyectar el código

Para indicar a Dotfuscator dónde inyectar el código que genera los informes, solo hay que navegar (sin salir de la pestaña Instrumentation) un poquito hacia abajo, y expandir el contenido aún más la DLL de la parte inferior (en el siguiente ejemplo, la DLL Silverlight: WindowsPhoneApplication1.dll):

image

Expandiendo uno tras otro los sucesivos nodos, solo resta navegar hasta la clase principal de la aplicación.

  • En el caso de un juego XNA, ésta será la clase Game del juego
  • En caso de ser una aplicación Silverlight, ésta será la clase App
Informe de comienzo de ejecución

Para informar sobre el comienzo de una ejecución, se busca un método que se ejecute UNA SOLA VEZ en el proceso de inicialización.

En el caso de aplicaciones SilverLight, un candidato perfecto es el evento Application_Launching de la clase App. En caso de una aplicación XNA, una buena opción puede ser el método Initializing de la clase Game.

Una vez seleccionado el método, se pincha con el botón derecho sobre su nombre, y se selecciona la opción Add Attribute. De nuevo, se solicitará el tipo de atributo a añadir, aunque esta vez la lista de opciones es distinta:

image

El atributo a elegir esta vez es SetupAttribute, el cual tiene bastantes parámetros que se pueden dejar con sus valores por defecto. Aun así, cabe remarcar estos dos:

  • Custom Endpoint: En lugar de enviar los informes al EndPoint por defecto (el del portal de Runtime Intelligence), aquí se puede especificar otro EndPoint personalizado
  • Use SSL: Activa protección SSL para las comunicaciones
Generar los informes de comienzo en un thread aparte

Si la aplicación que estamos desarrollando tarda cierto tiempo en cargar (algo típico en juegos XNA), lo normal (o más bien lo recomendado) es tener la carga inicial de contenidos separada en un Thread aparte, para que mientras dicha carga se produce, se pueda mostrar un icono animado de tipo Loading…

En estos casos, es recomendable incluir la inyección del código de informes en dicho thread, por si la generación del report se demora un poquito por motivos de red, o cualquier otro (aunque no debería). De esta forma la experiencia de usuario no se verá entorpecida.

Si se observa el siguiente ejemplo, en el que se está protegiendo un juego XNA, dicho punto ejecutado en un thread aparte es el método denominado CreateAssets:

Informe de fin de ejecución

Si también se desea que los informes indiquen cuando se dejó de utilizar la aplicación, habrá que seguir un procedimiento muy similar, añadiendo un atributo a un método que se ejecute cuando la aplicación está terminando.

  • En el caso de juegos XNA, el método perfecto para esto es OnExiting, de la clase Game.
  • Para aplicaciones SilverLight, una buena opción es el evento Application_Closing, de la clase App

En este caso, el tipo de atributo a añadir es TearDownAttribute, el cual se puede dejar con sus parámetros por defecto.

Y con esto y un bizcocho, code-analytics a las ocho Guiño

Sunday, 12 December 2010

New version of Windows Blocks (1.2) uploaded to Windows Phone MarketPlace

Captura5I have just uploaded the 1.2 version of Windows Blocks. It’s waiting for validation, and will be available soon (probably tomorrow). It fixes several bugs found in the game, especially related to slow response of the main menu.

Hope you all like it!

 

Cheers.

La curiosa historia del Peugeot RCZ por la vieja Estella

Hace ya unos cuantos meses (allá por el mes de Marzo de 2010), varios Estellicas (con Fino a la cabeza) nos sorprendimos al ver varias veces una mula (o más bien una versión prácticamente final) del Peugeot RCZ circulando por nuestra tierra. Era algo remarcable por aquel entonces, ya que todavía no estaba en el mercado.

Recuerdo haber comentado con amigos el por qué de la presencia del coche… “Que si habrían venido técnicos de Peugeot a probarlo por estas tierras…” “Que si estarían rodando en el Circuito de Los Arcos, de inminente inauguración”… “Que si probablemente atraídos por el buen vino…”

Curiosamente, al poco tiempo de aquello, todos nos vimos sorprendidos al ver publicada la siguiente noticia en el periódico: “La A-12 no es una pista de pruebas”.

En ella, se relataba que habían pillado infraganti a un tipo (que hablaba en inglés) con un sorprendente deportivo, a 210 Km/h por la A-12. Se hace especial hincapié en lo estupefactos que quedaron los Policías Forales con el coche, y en que el conductor, a pesar de haber alegado estar haciendo pruebas con el vehículo (propiedad de Peugeot Europa), fue detenido y pasó la noche en el calabozo.

He aquí la prueba del delito (foto del radar):

Imagen captada por el radar de la Policía Foral, en el km. 58,9 de la Autovía del Camino, en Los Arcos.

Ahora viene lo bueno…

Nos equivocamos al creer que eran técnicos de Peugeot conduciendo a toda pascua por nuestras carreteras. Viendo el video de más abajo, existe la posibilidad de que en realidad fuera nada más y nada menos que un compi de Jason Plato (Graham, para ser exactos), presentador del programa Fifth Gear (mi segundo programa de bugas favorito, después de su competidor Top Gear).

En lo que no nos equivocamos fue en lo del vino, ya que como podéis apreciar, el programa se grabó alrededor de la bodega Marqués de Riscal (de Frank Gheri) en El Ciego. La marca francesa ofreció allí durante aquellos días una presentación para la prensa del coche:

Ante estos sorprendentes hechos, solo puedo parafrasear a mi querido Bender B. Rodriguez:

“Ahora entiendo… ya caigo... Ya me encajan las piezas del rompecabezas. El ascenso, el enano del club de lectores que copia mis opiniones... ¡Todo encaja! ¡Debo decir que esto me ha abierto los ojos! Otro caso resuelto, mi querido Watson. Estaba ciego, pero ahora ya veo.

¡Y pienso tirar de la manta!”

No podemos asegurar que fuera alguien de Fifth Gear quien cometió la infracción, ya que seguro que había más periodistas en el pase de prensa, pero pudo ser…. pudo ser… Sonrisa

Más info:

http://www.diariomotor.com/2010/05/17/un-peugeot-rcz-de-pruebas-pillado-a-210-kmh/

http://www.highmotor.com/coupes/cazan-peugeot-rcz-210-kmh-a-12.html

Friday, 10 December 2010

Gran Turismo 5 – The real driving simulator - jaaaaaaa ja ja jaaa….

Gran Turismo 5 is a good game. Nobody doubts that. But I´m pretty disappointed by it. Kazunori Yamauchi (a game development genius, creator of the game and CEO of Polyphony Digital) always said that it would be a REAL simulator, with a real physics system. Today, AutoBlog published this GT5 video:

If a Lamborghini Gallardo can drive at 150 Km/h with a Nissan GTR on its roof… that probably means something… ;)

Cheers!!

Thursday, 9 December 2010

Vive una nueva dimensión de la movilidad con Windows Phone 7

[Vía CES Navarra]

El próximo 14 de Diciembre podréis vivir una nueva experiencia en lo que a movilidad se refiere. Para ello traemos la jornada Windows Phone 7 Developer Hub a los CES, donde contaremos con:

Con Windows Phone 7 Microsoft ha dado una nueva dimensión a su plataforma de movilidad, centrándose además del área empresarial, en el área personal. Introduciendo “Experiencias” como XBOX LIVE, redes sociales, entornos dinámicos, etc...

WP7En el citado evento se mostrará cómo desarrollar entornos productivos, dinámicos y de alto rendimiento para conseguir interfaces de usuario enriquecidas mediante el uso de aplicaciones basadas en Silverlight.

Por otro lado, podréis ver la elaboración de juegos en 3D basados en la plataforma XNA, donde se aprovecha todo el potencial Hardware que ofrecen los terminales Windows Phone 7, y el cual nos permite disfrutar de las experiencias XBOX LIVE con un nivel superior de rendimiento.

Para obtener más información sobre el evento acceder aqui.

Tuesday, 30 November 2010

Comprueba tu nivel de inglés…

Si eres capaz de pronunciar, sin ningún titubeo y a la primera, el modulo de ingles “para masters” incluido a continuación, eres mi héroe personal…

MODULO BÁSICO

"Tres brujas miran tres relojes Swatch. ¿Cuál bruja mira qué reloj? "

En inglés:

"Three witches watch three Swatch watches. Which witch watch which Swatch watch? "

MODULO AVANZADO

"Tres brujas 'travestis' miran los botones de tres relojes Swatch. ¿Cuál bruja travesti mira los botones de qué reloj Swatch? "

En inglés:

"Three switched witches watch three Swatch watch switches. Which switched witch watch which Swatch watch switch? "

...Y ESTE ES PARA MASTERS

"Tres brujas suecas transexuales miran los botones de tres relojes Swatch suizos. ¿Cuál bruja sueca transexual mira qué boton de cual reloj Swatch suizo? "

En inglés:

"Three Swedish switched witches watch three Swiss Swatch watch switches. Which Swedish switched witch watch which Swiss Swatch watch switch? "

Juas!

Wednesday, 24 November 2010

Microsoft Coding Camp – Imagina Windows Phone 7

CODING CAMP- IMAGINA WINDOWS PHONE 7Este próximo fin de semana, Javier Cantón, creo que Vicente Cartas, y yo mismo (los 3 MVPs en DirectX/XNA que estamos en España), estaremos presentes en el Hotel Auditorium de Madrid en el evento Microsoft Coding Camp – Imagina Windows Phone 7.

Si te apetece aprender cómo desarrollar videojuegos para el móvil más cool del momento, y de paso sacarte una pasta vendiendo miles y miles de copias de tus creaciones (no se garantizan resultados ;) je je….), regístrate en el evento haciendo click aqui, y vente por allí, que seguro pasaremos un muy buen rato.

¡Espero veros allí!

Simax ECO-Driving and Road Safety HD video

At Simax, we have been working hardly the last months on improving the ECO-Driving and Road Safety training features of our simulators. Some results of this work are shown in the following video:

(I´d recommend you to see it in HD if you have a fast internet connection).

Some of the new features included are:

  • New hybrid cars
  • Pedestrians walking around cities, which interact with cars and traffic lights
  • New ECO-Driving indicators, to graphically monitor fuel consumption
  • New ECO-Driving advisers, which indicate you how to drive optimally, to reduce CO2 emissions
  • 2D digital copies of car’s displays and indicators, to make them clearly readable in small screens
  • And much more…

More info at: www.simaxvirt.com

Gravitards game for Windows Phone 7

Gravitards is my new, upcoming title for Windows Phone 7.

It was first introduced by Microsoft in the last TechEd Europe 2010 (in Berlin), and will be released very soon. In the meantime, you can see a couple of work in progress videos here:

 

Sounds are still temporary (borrowed from an ancient game), and will be replaced in the first release.

Hope you like it!

Cheers

Wednesday, 10 November 2010

Error en ResGen.exe (archivos .ResX, especialmente en controles ImageList) al compilar con VisualStudio 2010

La ultima versión de VisualStudio incorpora algunas diferencias en el modo en que se invoca el proceso ResGen.exe que pueden convertir la migración a 2010 en una pesadilla.

Este error es un problema conocido, probablemente a solucionar en el próximo HotFix o Service Pack, y está bien documentado aqui. Aún así, traduciré y trataré de resumir lo que en ese post se comenta.

Síntomas

Al compilar, aparece un error de tipo: <<ResGen.exe error: An attempt was made to load a program with an incorrect format>>

Ejemplo concreto de un error de este tipo: <<ResourceForm.resx(1436,5): error RG0000: Could not load file or assembly 'file:///C:/Users/sjoiner/Desktop/TestForm/ResTest/bin/x86/Debug/Foo.dll' or one of its dependencies. An attempt was made to load a program with an incorrect format. Line 1436, position 5.>>

Ejemplo concreto de un error de este tipo en Castellano: <<ResourceForm.resx(1436,5): error RG0000: No se pudo cargar el ensamblado 'file:///C:/Users/sjoiner/Desktop/TestForm/ResTest/bin/x86/Debug/Foo.dll' o una de sus dependencias. Se intentó cargar un programa con un formato incorrecto. Line 1436, position 5.>>

Nota: La ruta y el nombre del ensamblado (Foo.dll) son solo un ejemplo. A cada uno os aparecerá ahí el nombre del más abajo llamado Ensamblado B.

Al hacer doble-click en el error, VisualStudio nos lleva automáticamente al archivo ResX del formulario.

Escenario donde se produce el error

  • Estamos en un sistema operativo de 64-bit
  • Y - Cualquier proyecto que contiene archivos de recursos .ResX (como Windows Forms). Le llamaremos Proyecto A
  • Y - El Proyecto A referencia un ensamblado (lo llamaremos Ensamblado B)
  • Y - Alguno de los archivos de recursos (.ResX) del Proyecto A utiliza algún tipo definido en el Ensamblado B
  • Y – Se da una de las siguientes combinaciones marcadas con una X en la siguiente tabla.

image

Es decir, el error aparecerá (resumen de los casos más frecuentes):

  • Siempre que el Proyecto A se esté compilando para .Net Framework 3.5 o inferior, y el Ensamblado B esté compilado específicamente para 32-bits.
  • O - Siempre que el Proyecto A se esté compilando para .Net Framework 4.0, y el Proyecto A y el Ensamblado B estén compilados para plataformas específicas, que además sean distintas.

Soluciones, o más bien apaños

Mientras Microsoft no distribuya un Service Pack que solucione esté problema, lo único que se pueden hacer son apaños más bien cutres.

Apaño 1 – Evitar los escenarios críticos descritos en la tabla, cambiando la plataforma de compilación al Ensamblado B, a una plataforma que no entre en conflicto según la tabla de arriba. O mejor aún, poniéndole como plataforma “Any CPU”. Obviamente, esto no siempre es posible (si el ensamblado es de una tercera empresa, por ejemplo).

Apaño 2.- Evitar los escenarios críticos descritos en la tabla, cambiando la plataforma de compilación del Proyecto A. Por ejemplo, pasando dicho proyecto a .Net Framework 4.0. Obviamente, esto tampoco es siempre posible.

Apaño 3 - Ordenar a ResGen.Exe que siempre se ejecute en 32 bits, haciendo lo siguiente:

  1. 1. Cd “%ProgramFiles(x86)%\Microsoft SDKs\Windows\v7.0A\Bin”
  2. 2. Corflags /32Bit+ /Force ResGen.exe

Lamentablemente, esto provoca un segundo error de tipo: “The specified task executable "ResGen.exe" could not be run. The handle is invalid”. Para solucionarlo tenemos 3 opciones:

  1. 1. Añadir la propiedad <ResGenToolArchitecture>Managed32Bit</ResGenToolArchitecture> a un PropertyGroup en los archivos de todos los proyectos que generen archivos ResX.
  2. 2. O – Si se está invocando MSBuild.exe directamente, pasarle el parámetro /p:ResGenToolArchitecture=Managed32Bit
  3. 3. O – Establecer una variable de entorno en la ventana Command en la que se está ejecutando MSBuild.exe o desde la cual se está abriendo el entorno de VStudio.  ‘set RESGENTOOLARCHITECTURE=Managed32Bit’

Apaño 4 – Forzar al CLR a cargar todas las aplicaciones MSIL en 32-bits, haciendo lo siguiente:

  1. 1. Cd “%windir%\Microsoft.NET\Framework64\v2.0.50727”
  2. 2. Ldr64.exe setwow

Esta solución no me gusta nada, ya que afectará a todo tu sistema y a todas las aplicaciones .Net que ejecutes.

Conclusiones

Este problema resulta una molestia bastante importante, y por el momento no hay una solución satisfactoria. En el IDE de VisualStudio, debería poder especificarse el Bitness en el que deseamos que se ejecute ResGen.Exe para cada proyecto. No parece una solución tan compleja de implementar, así que esperemos se incluya pronto en un HotFix.

Si deseas saber más sobre este problema, así como leer conversaciones con las experiencias de otros usuarios, te recomiendo que leas el Post original (en inglés), disponible aqui.

Saludos!

The Nespresso Experience

Yesterday, I bought a new Nespresso coffee machine. I must say it is great. It’s very clean, fast and makes a great great coffee. I bought it despite the price of the coffee, because I liked the fact that capsules must be bought from the Internet (you don’t need to go to the shop to get them).

But I´m here to talk about their web service, which is, I must say, horrendous.

The website: www.nespresso.com

  1. It does not work on Internet Explorer 8 (it wrongly redirects you to the mobile version of the website, which holds only a few options to order coffee)
  2. In FireFox, it works, but only the English version. If you click in the language selector to choose Spanish, it shows a “Server Not Found” error.
  3. I went to the “I just bought a Nespresso mahcine”, and I couldn’t find were to activate my account. It says “Activate your account here”, but there’s no link to click in.
  4. It offers a telephone contact, but with a non-Spanish number

Google positioning of Nespresso

As I couldn’t find a way to register myself up and make the first order, I decided to google Nespresso up.

First entry: “Nestlé Nespresso: The art of bla bla bla…”, linked to the above www.nespresso.com

Sub-entries:

  1. First: Die Kunst des Espresso, exklusive in German, redirected to the Nespresso production center.
  2. Second: Nespresso - Quality Coffee machines , in English, redirected to a U.K. website
  3. Third: JOIN THE CLUB. Finally I found it? No!, it redirects you to the Nespresso club of KOREA !!!, which seems to be: http://boutique.nespress.com/kr. As I’m an avid computer geek, I decide to use my advanced knowledge and remove the “kr”, trying to reach the global boutique website. Error! It redirects me to an ugly website were it just offers Nespresso boutiques for Korea, Russia and China.

I desist, and try a second path:

The professional website: www.nespresso-pro.com

It works on IE8, but when you click on “Create new account”, it asks you to contact them by email or phone. Once you click on that option, neither way is offered, but a form (which doesn’t seem to match very well with my needs) instead.

Once filled with the required info, then it offers you the option to contact them, but says: “Contact us. You can call an assistant dialing…” and no phone number is shown.

Then I saw in the bottom-left part of the screen the promised contact options: a Spanish phone number (902 11 00 20) and the previous form. So I fulfilled the form and tried to contact them by phone:

  • “Welcome to Nespresso… bla bla bla… If you want to register in the Nespresso Club, press 4”
  • 4
  • Good morning?
  • Yes I want to register in the club, to make my first order.
  • Ok Sir, what kind of coffee machine do you have?
  • A normal one. Krups branded
  • Ok Sir, you are calling to the professional service. You must call to a different number
  • Ok, which number?
  • 900 259 259
  • Ok then. Thanks…

Then I dialed the above number.

  • “Welcome to Nespresso… bla bla bla… If you want to register in the Nespresso Club, press 1”
  • 1
  • Beeep. Beeep… hang up…
  • Damn… Dial again.
  • “Welcome to Nespresso… bla bla bla… If you want to register in the Nespresso Club, press 1”
  • 1
  • Beep… Beeep… Now it finally works. A polite woman assist me with the registering process… I think they even asked for the size of my pants… but I finally made it.

One day and a half to register in the Nespresso club. It’s exclusive indeed !!

Some VIP Info, now that I´m a member

Now that I’m already in, I found some info that it seems to be secret. The proper URL address for the Nespresso Club (at least one that works):

http://nesclub.nespresso.com

It’s not listed in Google, not listed in Bing, but that’s the one you must use if you want to deal with the Nespresso club, at least here in Spain.

Conclusion

I can’t believe a company that intends to make business on the Internet shows so poor care and attention to their websites.

Bad first impression, indeed. I understand George now:

Tuesday, 9 November 2010

Some technology behind Kinect

I cannot wait to have this thing -tomorrow is the day here in Europe-. I must admit that I was a bit skeptical at first. I could barely test the device at the Microsoft Spain&Portugal MVP Open Day, several weeks ago, but the more videos I see, the more convinced I am about the potential of the device. For instance, check this XBox dashboard demo:

The smoothness and precision of hand movements are amazing. It could even be an alternative to multi-touch technology. It seems that Microsoft is almost out of stock in the U.S. what means that it’s been a very successful launch. Congrats!

Adaptability and calibration

The Kinect includes a small electric motor that allows the device to tilt the camera up and down (up to 30 degrees), and also operates the zooming functionalities. This allows the device to properly adapt to any space. If you want to know more about the motor, you can check this site.

Sound Processing

The Kinect includes an array of 4 microphones, which provide:

  • Acoustic source localization: 3D localization or positioning of sound, to help detecting which player is talking, for example.
  • Ambient noise suppression: To make speech recognition more efficient, it filters sounds to remove any ambient noise that could distort voices and sounds to be processed.

Both functionalities allow to control the XBox with your voice (see above video for a demo), and probably will enable headset-free chat on XBox Live (though I haven’t seen this in action yet).

More about Voice Recognition on Kinect

Facial and skeletal Recognition

The video camera included on Kinect allows to automatically recognize players just by looking at them. So, you just need to jump in the game, and it will automatically detect you, keeping your scores, etc. This is awesome.

Gesture and movement recognition

Of course, the most important feature of Kinect is gesture and movement reco. It can handle up to 6 players, but making motion recognition to two of them at a time. Regarding this, both hardware and software are extremely important.

Hardware was firstly developed by the company –later acquired by Microsoft- PrimeSense. The diagram of the setup is:

As you can see, the righter part of the diagram includes a normal color camera, to detect the human visual spectrum with a resolution that seems to be: 640x480, according to some non-official sources. It is used for facial recognition and to include images of players in games, among other things.

The other part is regarding depth, space or 3D detection, whatever you want to call it.

How can a 2D camera extract 3D information?

The secret is the IR setup it includes, with both a projector and a camera. It first projects thousands of IR dots to you and your living room, and then read that information back with the IR camera (Depth Image CMOS). Depending on the size and distance between the projected dots, it calculates the depth map. The following is a representation of the result of this depth map:

This IR dots that Kinect projects use a similar technology to the one used in those video-recording cameras which include the so-called Night-Shot technology.

Those cameras project IR light in front of you with a small IR beamer, and then switch to a sensor which is sensible to IR light. This way, they project light ahead (what makes seeing possible), but in an invisible way to the human eye.

Knowing that, anyone else is thinking the same thing than me? I guess so…

This is what happens if you record your Kinect with a Night-Shot camera (I recommend you to see it in FullHD):

Et Voila! There are the dots. The IR projector seems to be projecting a matrix of 320x240 dots at 30 frames per second (again, according to non-official sources). Another example:

So, starting with info like this:

image

Kinect takes the distance between dots, and calculates a depth-map of your living room:

Some personal conclusions

I’m sure that the hardware included on Kinect is awesome. It’s been launched with a few titles, but I can guarantee you that best is yet to come. Now it’s time for software. New titles will come, and new ways to explore and use this device. And I’m 100% sure they will be incredible.

Go Microsoft !!

Want to know more?

http://www.ifixit.com/Teardown/Microsoft-Kinect-Teardown/4066/1

http://en.wikipedia.org/wiki/Kinect

http://www.t3.com/feature/exclusive-how-does-microsoft-xbox-kinect-work?

http://consolepress.com/main/2010/08/23/the-tech-that-drives-kinect/

Monday, 8 November 2010

Kinect me !

A esto del Kinect empiezo a verle cada vez más ventajas sobre competidores como la Wii.

Este video me ha parecido muy muy interesante:

Your Shape: Fitness Evolved Video Game, Casual Workouts Trailer HD Video Clip Game Trailers & Videos GameTrailers.com

Creo que cuando llegue a las tiendas mañana o pasado no me voy a poder resistir...

Friday, 5 November 2010

Cuidadín, amigo conductor… Spam maligno con forma de Facebook

Hoy he recibido uno de esos emails con bastante mala uva, que engañan al más pintado. Se trataba de un email de Facebook, formateado como los emails de Facebook, y con toda la pinta de ser un email de Facebook, recordándome que ciertas personas habían solicitado ser mis amigos. Normalmente, todo el mundo aplicamos ese viejo lema de “si anda como un pato, vuela como un pato, y huele como un pato… probablemente sea un pato”. Esta vez no era un pato, sino algún capullo con ganas de hacer el mal.

En fin, que una vez uno pinchaba en el link sugerido, aparecía una página formateada como Facebook, pero que lo primero que hacía era pedirte tu Password. No el nombre de usuario, solo el password. Ummmmhhhh… raro raro…, así que la he cerrado y he vuelto a ver el email.

Primer problema, aunque el remitente decía ser “Facebook”, en realidad la dirección de envío era: update+zrdoc1rfvdpf@facebookmail.com

Segundo problema: estaba enviado a mi dirección de email secundaria, no a la que tengo registrada en Facebook

Tercer problema: En el nombre del destinatario no ponía mi nombre completo, sino “Iñaki Ktm200”, sin duda extraído por algún robot de alguna web de anuncios de 2ª mano, donde hace tiempo vendí una KTM 200.

Cuarto problema: Una de las personas que solicitaba ser mi amigo, ya está en mi lista de amigos. La otra está en la lista de amigos de uno de mis amigos. Nombres sin duda extraídos también por robots de las bases de datos de Facebook.

Así que cuidadín.

¿Mi consejo? Si no entendéis un poco de informática, o sois nuevos en esto de Facebook, ignorad todos los emails que os vengan desde esa cuenta. O cuando menos, no “clickéis” directamente en los enlaces que os vengan en los emails. Si os llegan notificaciones, podéis leerlas, pero luego navegad manualmente hasta la página de Facebook. Si realmente eran notificaciones legítimas, las tendréis bien archivadas en los avisos que aparecen arriba.

Wednesday, 3 November 2010

World of batteries

Today, I´m receiving my new laptop and I wondered what myths about battery handling were true or false. I decided to Bing a bit around, and found some very interesting articles, like this blog post (in Spanish).

I also found the Battery University, an incredible resource to learn and understand how batteries work.

Here is a translated summary of the interesting battery FAQ I found in the above Spanish blog post, which talks about the most frequent batteries nowadays: the Li-Ion.

Note: This FAQ is provided “as is”. We do not take any responsibility on the veracity of this information or on any damage your battery could have. It’s still recommendable to check this information with other sources or consult the builder of your system.

Is it recommendable to make a first charge of 10-12 hours for a new battery?

NO. Li-Ion batteries do not require a long first charge. In fact, no Li-Ion battery requires a charge cycle longer than 8 hours, ever.

Is it true that the battery will reach its maximum performance after several charge/discharge cycles?

NO. Li-Ion batteries offer their maximum capacity from the very first usage.

Is it true that I should wait for the battery to completely discharge, before charging it again?

Absolutely NO. This is one of the most frequent mistakes, inherited from the “memory effect” the Ni-Cad batteries had. Chemical composition of Li-Ion batteries fits better with partial-charge cycles. Constant complete discharges could even damage their circuits. However, there’s and exception: it is recommendable to sometimes discharge the battery completely, to allow their charge-measurement system to be reset. This should happen once in every 30 cycles or so.

Is it bad for the battery to remain connected to the AC adapter, once it’s completely charged?

NO. This belief is also inherited from Ni-Cad batteries (which could even catch fire in this cases). Li-Ion batteries have circuits to stop the energy flow when they reach the 100% charge. However, a failure in this circuit can always happen, so it’s still recommendable to remove the battery from the AC adapter once it’s charged.

Is it bad for the battery to remain connected to my laptop, while it’s plugged to electricity?

YES. It is bad. Very bad. Heat and stress will not be good at all for your battery. If you are going to use your laptop plugged to electricity for long periods, it is very recommendable to remove the battery from the laptop. However, be careful with this, as this operation will leave the back part of your laptop open, and therefore this wouldn’t be recommendable if you are in an environment with dust or similar. Some devices have software-specific drivers which can avoid constant stress of the battery while plugged to electricity, but check this with your own builder.

Talking about Hand Held Devices, is it the same to charge them with the AC adapter than with a USB cable?

NO. According to Palm, the AC Adapter is the preferred charging method, as the USB port of some computers (specially laptops), won’t always maintain the required 500 mA to properly charge the battery. The charging times in this case could be even 3 times longer.

How should I store my battery if it’s not going to be used for a long time?

According to BatteryUniversity, Li-Ion batteries will resist time better with a 40% charge. In fact, most devices are released to the market with an initial charge of a 40%. You should never store a Li-Ion battery totally discharged, this could damage your device.

 

Hope this little FAQ helps out!

Thursday, 28 October 2010

Asegura IT Camp 2, by Informática 64

image

Lo pasamos bien. Francamente bien.

Y eso que cada vez que escucho una charla del Maligno, o de cualquiera de sus secuaces dedicados a la seguridad informática se me ponen de corbata…

Más info en Windows Tecnico:

http://www.windowstecnico.com/archive/2010/10/28/asegurait-camp-ii-de-nuevo-un-233-xito.aspx

Salud!

Wednesday, 27 October 2010

Windows Blocks for Windows Phone 7 video

Today, I uploaded a video of the game to YouTube. You can watch it here:

 

Hope you like it!

Tuesday, 26 October 2010

Where is Springfield?

I´m a big fan of The Simpsons (seasons 6-10 especially). I always had the idea that they did never actually revealed the location of Springfield. Of course, it´s located nowhere, as it doesn’t exist, but as there are several Springfields in the U.S., they never mentioned what state it was located in. In fact, there are many episodes where they “almost” say it, but something always happens in the last moment that avoids revealing it.

This is an old and well known issue. There are even people with enough time to dedicate many hours trying to locate Springfield in the map, analyzing every episode. If you don’t believe me, check this site.

The strange thing is, today I was watching episode 7x07 (King Size Homer, with Spanish audio), and they ended the episode saying (Mr. Burns):

<<Thanks Homer, your bravery and quick thinking have turned a potential Chernobyl into just another Pennsylvania Plant>>

I couldn’t believe my ears. Did they really revealed the location of Springfield in this episode?

No, they definitely didn’t. Of course, it is quite unlikely that people with time enough to check episode by episode hints about possible locations for Springfield just missed this one. So I switched to the English version, just to realize that the dialogs in the original version were completely different:

<<Homer, your bravery and quick thinking have turned a potential Chernobyl into a mere Three Mile Island>>

I was curious as I didn’t know what a “Three Mile Island” was, so I checked out Wikipedia. I finally found it refers to a nuclear accident that took place in 1979, in a plant with the same name which (surprisingly), is located in Pennsylvania. People that translated the original text probably decided that Spaniards wouldn’t understand the “Three Mile Island” joke, and decided to change it. Just another reason to avoid watching movies in Spanish.

Original version is always better.

Cheers!

Sunday, 24 October 2010

Windows Blocks published in the Windows Phone 7 MarketPlace

  Yesterday, we published our first game for Windows Phone 7.

Captura5<<Windows Blocks brings the classic brick-breaker experience to the Windows Phone 7. With tens of different levels, with progressing difficulty, you will be able to check your skills breaking the bricks that block the views of your house, window by window. Test yourself controlling the magnetic platform with your device's accelerometer (other input methods available too), and learn to use all the Power Pills that can be hidden behind the bricks, to help you out with your duty. Go, break'em all ! >>

You can download a trial version from the MarketPlace and buy it if you like it. In the following days, we´ll publish our second game, the first in 3D.

Comments are welcome!

Other Pictures:

 

Captura7 Captura10  Captura11  Captura12  Instructions

Friday, 15 October 2010

New XNA Game Programming book available from PACKT Publishing

In the following weeks, I´m going to review a new book that just came out from PACKT Publishing, about XNA Game Programming.

XNA 4.0 Game Development by Example: Beginner's Guide

The book, written by Kurt Jaegers, is described by the author as:

“This book is a step-by-step tutorial that includes complete source code for all of the games covered. It adopts an engaging style to teach all the game development concepts. Each block of code is explained, and game development concepts are diagrammed and covered in detail. Each game begins with a concept description and concludes with suggestions for expanding on the finished game.”

You can find further details of the book here.

Will tell you more once I’ve read it.

Cheers!

Wednesday, 29 September 2010

“Error loading pipeline assembly” compile error on Content Projects

If when trying to compile a Content Project you see a “Error loading pipeline assembly” message, and don’t know why, keep reading:
As you already know, the Content Pipeline always executes locally in your Windows machine, to parse and process all the contents into the XNB files. If you don’t have this clear, I´d suggest you to read this Shawn Hargreaves blog post. The above error appears sometimes when you add in your Content Project a reference to a Windows Phone Game Library assembly, or to any other platform game library.
I say “sometimes” because this doesn't happen always. For example, it fails on my laptop, but not in my desktop machine (the first is Vista and second is 7, don’t know if that has anything to do with it).
The problem is that sometimes (especially since Content Projects where separated from regular projects), you need to reference the same assembly from both a Content Project and from a main game project. For instance, if you store in a extra assembly object proxies or descriptions to be used by the XML Intermediate Serializer, you will need them in both the Content Project (to make the serialization), and in the runtime game, to make the de-serialization.
So, if all of them are Windows-XNA based, no problem. But what happens when the main game project is a Windows Phone project? The scenario is:
image
As I said, if the Aux. Game Library is a Windows Phone game library, for example, it will give you the mentioned compiling problems if you reference it in the Content Project. And if it’s a Windows game library, you won’t be able to reference in the Main Game Project, which is a Phone project. How we solve this?

Creating a Project Copy

Obviously, the solution is to have two different projects/assemblies. One for Windows and another one for WindowsPhone. Of course, as we said that duplicating is wrong, we don’t want to duplicate the classes and code in both projects, so the solution is to create a <<project copy>>: an additional project that produces a different assembly type, but that links to the same source files than the other project.
This is a extremely useful feature automated in XNA solutions (you can always do the same manually in other project types). To do so, you just need to right-click in the Solution Explorer, on the project you want to copy, and select:
  • Create a copy of project for Windows
  • Create a copy of project for Windows Phone
  • Create a copy of project for XBox
The task will be done automatically for you. Now you end up with this scenario:
image
This way, you can keep the Content Project always referencing Windows Game Libraries, and your main Game project referencing the assembly appropriate for each platform, without duplicating code.
Cheers!

Friday, 24 September 2010

Comment, I mean… Connect, I mean… KINECT !!!!!

It’s closer. Closer….. I cannot wait to have fun at home with this thing.

The dancing game promises to be epic, with a bunch of guys and a couple of beers…. ufff… just check out the guy with glasses in the video…

image

EPIC !!!!!

Tuesday, 21 September 2010

Fixed -problems installing Windows Phone Developer Tools-

Today, I had some troubles first uninstalling my existing CTP release of the Windows Phone Developer Tools (depicted here). It was a required step to be able to install the newest release of these tools.
Now that I managed to uninstall the previous version, I have found other problems installing the newer one. More precisely, the problem appeared when trying to install the Windows Phone Developer Resources package, getting an error like the following in the automatic web installer (it surprisingly required a reboot when starting to install it, and the error did pop up when resuming the install process after the reboot).
image
I searched in the log file where the individual installer packages were located, and I found the location of the WindowsPhoneDeveloperResources_en.msi file in question. After trying to launch it manually, I received the following errors while trying to register a DLL (that’s probably why the web installer decided to reboot, expecting to be able to register the dll in a fresh Windows start):
image
image
After a while trying to find the reason for this, I found this site with similar problems, suggesting to uninstall any Microsoft Silverlight related entry in the Program&Features list. Unluckily, it didn’t work for me.
In my case, I had at the same time Visual Studio 2008 & 2010. I uninstalled the 2008 just in case that was the cause. But no. Again no luck.
Then, as a desperate measure, I tried to uninstall anything related to Microsoft .Net Framework 4, and magically, THAT DID THE TRICK.
Now both the Windows Phone Developer Resources standalone installer and the automatic full web setup work flawlessly. I recommend you using the automatic web setup, as it will download and restore everything: Silverlight, .Net Framework 4, XNA Game Studio 4, etc.
May be it was a combination of factors, so if any of you have similar experiences, please share them here, so we can find out what was going on with it.
Thanks!

How uninstall Windows Phone Developer Tools CTP

If you try to install any newer version of the Windows Phone Developer Tools, you will probably see a dialog box complaining about older versions of these tools, like the CTP, which cannot be updated automatically, and have to be removed before continuing with the new installation:

So, when you go to the Properties & Features window, select the Windows Phone Developer Tools, and click on Remove, you will find that the default uninstaller won’t work, finding the following dialogs:

To properly uninstall these tools, you have two options:

  1. 1.- Use the XNA Game Studio Cleanup Tool, which supports the Windows Phone Tools. More info here.
  2. 2.- An easier way depicted here: go to your default Windows Phone Tools installation folder (by default: C:\Program Files (x86)\Microsoft Visual Studio 10.0\Microsoft Visual Studio 2010 Express for Windows Phone  CTP – ENU), right-click on the file vs_setup.msi, and select Uninstall.

Et’voilá. Tools uninstalled.

Cheers!

Wednesday, 8 September 2010

Pequeños calambres en portátil Dell XPS M1530

Desde hace un tiempo, y al igual que muchos otros usuarios de este ordenador, o del modelo 1330, sentía unas descargas eléctricas muy pequeñas en mi portátil, al tocar la parte metálica del mismo, y únicamente cuando estaba enchufado a la red. No era como si te electrocutaras, pero resultaba molesto.

Esto se debe a que el cargador o adaptador eléctrico por defecto de Dell no incluye toma de tierra, por lo que las pequeñas derivaciones eléctricas, en lugar de salir por la toma de tierra, salen por ahí.

No he tenido más que llamar al servicio técnico de Dell (magnífico, como siempre), y me han enviado otro que si la incluye.

Si vais a comprar un portátil, os recomiendo que os decantéis por esta marca, y que escojáis la opción de garantía extendida. Merece la pena pagar un poco más, ya que si un portátil se estropea, normalmente no hay nada que hacer con él (salvo cambiar la placa entera, algo que es casi tan caro como un portátil nuevo).

Si además escogéis un modelo XPS, contaréis con el servicio técnico XPS Premium, el cual es mejor todavía que el normal. Te atienden las 24h, todos los días de la semana.

Realmente satisfecho con ellos, si señor.

Wednesday, 1 September 2010

Apple reinvents the wheel

According to the following video, Apple is about to launch a new revolutionary laptop with no keyboard on it. They promise to have a battery life of up to 19 min. and an email sent in less than 45 min.

LOL!

Friday, 13 August 2010

Creating shortcuts to .Exe files in Windows Mobile 6.5

Many people asks how to do this exactly, when you have an exe file, not an installed application (through .CAB or whatever), and you want to have it in the Programs menu, to be able to add as shortcuts, widgets, etc.

It´s easy:

1.- Open Windows Explorer and go to the folder where the EXE file is

2.- Select the file and and click on “copy” it

3.- Click on Menu->Edit->Paste as shortcut. This will create a shortcut to your exe file

4.- Select the shortcut and “cut” it

5.- Go to “YourDevice\Windows\Start Menu\Programs” and paste the shortcut there.

Now, your exe file will be available through the “Programs” menu option, so it will be visible for any "skin” or “today” application you have installed.

Cheers!

Friday, 16 July 2010

A vueltas con los medios (y III)

Y dale con los aceleradores kamikaze de Toyota. Otra vuelta de tuerca… y ya van 3…

Las autoridades de EEUU dicen que Toyota plantó la noticia sobre errores humanos en los casos de

Lo dicho en el anterior post, no formemos opiniones hasta que el asalto haya terminado…

Wednesday, 14 July 2010

Historial de llamadas a revisión… a merced de los medios (II)

El pasado mes de Marzo ya escribimos aquí sobre este tema. Pero es que hoy he leído una noticia que me hace proseguir con ello: ¿Aceleradores defectuosos de Toyota?

Resulta que por el momento (y a falta de terminar las investigaciones), todos los accidentes mortales que se achacaban a un defecto en los aceleradores de Toyota, fueron en realidad causados por un error humano. Se ha demostrado que en todos los casos, los conductores equivocaron el pedal, pulsando el acelerador en lugar del freno.

Por el momento, solo UNO de dichos accidentes mortales fue culpa del vehículo (un accidente de un Lexus ES 350), pero fue debido al famoso defecto en la alfombrilla (que enganchaba el acelerador), no al propio acelerador.

Aunque la investigación sigue en curso (y habrá que ver), si finalmente se demuestra que el posible defecto en los aceleradores detectado por Toyota, todavía no ha causado ni una sola víctima, me da que muchos se van a tener que tragar sus palabras con aquello de que “Toyota lo sabía y no avisó”, etc etc.

Es muy triste comprobar como no exigimos ni la más mínima prueba antes de condenar a alguien. Mientras que los tribunales tienen investigaciones, jueces, abogados, testigos y jurados, y en ellos una “duda razonable” exculpa al acusado, en el mayor tribunal de todos, como es la opinión pública, no se exige ni la más mínima prueba antes de aplicar una severa condena.

Esto es muy alarmante, y un arma terriblemente poderosa que algunas multinacionales conocen bien. Basta con una campaña de acoso y derribo en los medios afines para que las ventas de esta o aquella marca caigan en picado.

¡NOS MANEJAN COMO A MARIONETAS AMIGOS!

Así que ya sabemos, hay que esperar a que la investigación termine. A que haya un veredicto firme, antes de formar nuestras opiniones. No todo lo que aparece en la tele es verdad (casi que al contrario).

Y por supuesto, mientras los medios no mejoren, informarnos de cuantas más fuentes distintas mejor y tratar de escoger más medios democráticos y menos tele.

¿Medios democráticos?

La televisión es lo peor. Así de simple. ¡Huye de ella como de la malaria, y más si es para informarte!.

Es un medio que funciona no por su profesionalidad ni veracidad, sino por los contenidos que emite (series, películas, concursos, etc.), que nada tienen que ver con la información.

  • ¿Y qué canales tienen mejores contenidos? Los que tienen más dinero.
  • ¿Y qué canales tienen más dinero? Los que tienen detrás a empresarios o políticos con poder (todos sabemos quién está detrás de grupos como Prisa, MediaPro, etc, los cuales controlan un amplísimo porcentaje de los medios del país).

Y claro, los benefactores que ponen las pasta no van a consentir que se hable mal ni de ellos ni de sus amigos en sus televisiones o periódicos. ¿Quién pierde? La verdad, la profesionalidad y en definitiva nosotros…

En mi opinión,

Mientras no exista una ley que obligue a separar los medios informativos de los dedicados al puro entretenimiento, nuestra opinión estará absolutamente manipulada en favor de las empresas o políticos que hayan tenido el dinero suficiente para pagar los derechos televisivos del mundial, o la ultima temporada de Lost.

Sunday, 11 July 2010

¡SI SEÑOR!

[foto de la noticia]

Thursday, 1 July 2010

MVP renewal

Today, I received some great great news. I have been renewed as a Microsoft DirectX/XNA MVP for 2010.

It’s a great honor for me to continue in this program. I’ll do my best to deserve it for next year too!

Thank you guys!!!

 

Wednesday, 16 June 2010

La TDT de los 80

Como ya comentamos aqui, desde que empezó la TDT, varias cosas han cambiado. Una de ellas es que, una vez la infraestructura básica funciona, cualquiera con un par de PCs monta un canal televisivo. La prueba es que cadenas regionales extremadamente pequeñas, han lanzado dos, tres o incluso cuatro canales a la vez. El problema ya no es tener un canal, sino más bien llenarlo con contenidos.

Y desde que esto es así, tenemos que ver todo tipo de reposiciones. No importa si tienen sentido o no. Solo importa que llenan minutos y que hoy en día salen casi “regaladas”. Algunas de estas reposiciones son cosa fina, como “El hombre y la tierra”. Otras sin embargo, resultan ridículas, como las reposiciones de concursos televisivos de hace 20 años, donde las preguntas que se hacen a los concursante son del tipo a “¿De qué potencia militar y económica es presidente Mijail Gorbachov”?

Viendo ahora uno de estos canales regionales, me he partido la caja con un documental que, a juzgar por su contenido, debía datar de mediados de los 80. Presentado por unos irreconocibles Meryl Streep y Robert Redford, trataba el tema del cambio climático desde una perspectiva ochentera.

Al principio ha resultado divertido escuchar afirmaciones como que “el principal problema del mar Mediterráneo son los vertidos de aguas fecales”. Quién lo iba a decir, yo creía que el verdadero problema del Mediterráneo eran los turistas borrachos… Cómo cambian las cosas. También ha sido curioso observar el asombro del presentador ante una nueva infraestructura que en el futuro iba a ser de obligada instalación en todas partes: una planta de tratamiento de aguas residuales, como la que se iba a inaugurar en Atenas en el lejano 1991. ¡Qué maravillas nos depara el futuro!

Conforme ha ido avanzando el documental, me he dado cuenta de que ver un programa de hace tantos años tenía algo bueno.

Y es que oír afirmar que los 5.000 millones de habitantes del planeta ya eran un problema por aquel entonces da que pensar, ahora que casi alcanzamos los 7.000. Comprobar cómo hace 25 años, conceptos como desarrollo sostenible, reciclaje, energías renovables, ya fluían por los discursos de políticos como Margaret Thatcher o George Bush (padre), hace que realmente te entre la risilla floja cuando escuchas decir exactamente las mismas cosas a Zapatero, Rajoy o compañia.

En 25 años, nada ha cambiado. O casi nada.

Así que cuando he terminado el documental escuchando al presentador afirmar que “La presión medioambiental está provocando cambios en mundos tan complicados como el de la política internacional”, o que “a los países ricos no les va a quedar otro remedio que colaborar con los países en desarrollo, para afrontar los problemas globales que se ciernen sobre nosotros”, ha sido la guinda del pastel.

Ni la presión medioambiental ha cambiado un carajo, ni los países ricos colaboran con nadie. Más bien al contrario: mandan las plantas de producción a los países con políticas medioambientales más laxas y con salarios más bajos (que no son los más desarrollados precisamente), para que contaminen allí, y así no nos molestan demasiado.

Así que la pregunta obligada es:

¿Hasta cuando vamos a seguir creyendo que los políticos van a solucionar los problemas del mundo?