Taller de Silverlight 3 @ Microsoft Colombia

Es para mí un verdadero honor el haber sido invitado por Microsoft Colombia para impartir el taller de Silverlight 3 en sus oficinas en la ciudad de Bogotá el próximo martes 01 de Septiembre.  Así que, amigos y amigas bogotanos: les invito cordialmente a que participen en este taller en donde veremos diversos temas relacionados con la plataforma de Silverlight.  Este taller está enfocado principalmente a desarrolladores que deseen conocer más acerca de esta extraordinaria tecnología.

La cita es el próximo martes 01 de Septiembre 2009 a las 18:30 horas en:

Microsoft Colombia

Cr.7 No. 71 – 21 Torre B, Piso 15

Bogotá, Colombia

Silverlight 3 como plataforma de desarrollo @ Fundación Universitaria CAFAM

Tengo el honor de haber sido invitado por la Comunidad Bogotá DotNet para participar como ponente en el evento que se realizará el próximo 02 de Septiembre 2009 en la Fundación Universitaria CAFAM en la ciudad de Bogotá, Colombia.  La sesión que estaré impartiendo es “Silverlight 3 como plataforma de desarrollo”.

Les invito a todos y a todas a que asistan, ya que platicaremos de muchas cosas entre ellas el por qué Silverlight es una perfecta opción para extender la funcionalidad de nuestras aplicaciones Web actuales, ¡reutilizando los conocimientos de .NET que ya tienes!

Durante la sesión veremos temas como:

  • Fundamentos de Silverlight 3: ¿por qué? ¿cómo? ¿dónde?
  • Expression Blend 3
  • Comportamientos, Proyecciones 3D, comunicación al servidor y más….

Además, si viven en Bogotá y aun no están inscritos a la Comunidad Bogotá DotNet les invito a que lo hagan para que estén enterados de próximos eventos, artículos técnicos y más.

La cita es en:

Fundación Universitaria CAFAM

AK 68 # 90 – 88

Bogotá, Colombia

18:30 a 21:00 horas

Regístrense para el evento en esta liga.

¡Los esperamos!

Solo 1 semana para el Silverlight Tour – Bogotá, Colombia (31Ago – 02Sep)

Esta es la última llamada para que se registren al Silverlight Tour – Bogotá, Colombia que se llevará a cabo los días 31 de Agosto al 02 de Septiembre 2009. 

SLT_Bogota

Tengo el honor de comentarles que en conjunto con mis buenos amigos de la Comunidad Bogotá DotNet se está ofreciendo un descuento del 30% de descuento a todos sus afiliados.  Si están en Bogotá o alguna de sus ciudades cercanas y aún no están registrados en la Comunidad esta es su oportunidad para hacerlo!

El Silverlight Tour Workshop en Español es un curso de 3 días acerca de Silverlight 3 e incluye:

ncluye:

  • Tres días de entrenamiento intenso de Silverlight 3
  • Arquitectura de Soluciones con Silverlight
  • Comunicación con el Servidor
  • Creación dinámica de contenido XAML
  • Comunicación con el DOM
  • Aplicaciones Fuera del Navegador
  • Diccionarios Merged y Estilos Based-On
  • Validación de Datos utilizando el Modelo de Controles
  • Framework de Navegación
  • Utilización de XML Binario
  • Utilización de la nueva API de Bitmaps
  • Pixel Shaders
  • Comportamientos
  • Blend 3
  • …y más
  • Material totalmente en Español

Todavía hay lugares disponibles y solo falta 1 semana.  ¡Regístrate ya!

Taller de Silverlight 3 en Microsoft Venezuela

SL3BetaPromo

Chamos y chamas, les invito a todos(as) a que asistan al taller de Silverlight 3 que impartiré en Microsoft Venezuela el próximo día martes 25 de Agosto (mañana!) a las 18:30 horas en:

Microsoft Venezuela

Av. Principal de la Castellana, edificio Centro Letonia, piso 10.

Caracas, Venezuela

Este taller va dirigido a desarrolladores y también a diseñadores que estén interesados en saber qué tiene Silverlight para sus aplicaciones, proyectos y empresas!  Este taller es 100% práctico y es totalmente participativo.  Traigan sus preguntas y dudas.

Más información en el blog de mi pana Eduardo Sojo.

¡Los esperamos!

Silverlight 3 FireStarter en vivo y en línea

3820799819_1147ab48ee_o

Anoten en sus calendarios: el día 17 de Septiembre 2009 a partir de las 09:00 de la mañana hora del pacífico se llevará a cabo el Silverlight 3 FireStarter en el Campus de Microsoft en Redmond, WA.  Este, además de ser un evento en vivo se transmitirá vía LiveMeeting para que todas las personas puedan estar presentes incluso de manera virtual.

Esta es, sin duda alguna, una gran oportunidad para que conozcan de una vez por todas qué tiene Silverlight 3 para ustedes y sus empresas en la voz de sus creadores.

Pueden revisar la agenda completa del evento y registrarse en esta página

Creando contenido dinámico en PHP para Silverlight

Introducción

Como mencionábamos en el artículo anterior, Silverlight puede ser hospedado en prácticamente cualquier tecnología Web del lado del Servidor.  Asimismo podemos utilizar las características de la tecnología que estemos utilizando para poder crear Xaml de manera dinámica y enviar dicho contenido a la aplicación Silverlight ya sea a través de parámetros de inicialización (parámetro InitParams en <object>) o a través de un endpoint que podamos descargar por medio de un objeto de tipo WebClient.  Es este último caso el que usaremos en este artículo para crear contenido dinámico con PHP.

Creación del proyecto

Siguiendo los mismos pasos que usamos en el artículo anterior para la creación de un Sitio Web en IIS y una aplicación Silverlight, crearemos un nuevo proyecto de tipo Silverlight Application en Visual Studio .NET con el nombre PHPDynamicXaml.  Inmediatamente después de haber creado el proyecto borraremos los archivos Default.aspx y PHPDynamixXamlTestPage.aspx y sus archivos relacionados, dejando únicamente el archivo .html.

Agreguemos ahora un archivo llamado Content.php usando la plantilla de Archivo de Texto disponible al seleccionar la opción “Agregar nuevo elemento” en el menú contextual del proyecto.  La siguiente figura muestra la ventana de Solution Explorer y la Solución actual:

Será en el archivo Content.php en donde escribiremos el código necesario para la creación dinámica de contenido Xaml.  En nuestro ejemplo el contenido será una serie de rectángulos, el cual su número será definido por medio de un parámetro en el Querystring llamado r.  El siguiente fragmento ejemplifica el código de PHP necesario para la construcción dinámica de contenido en Xaml:

Es importante resaltar en especial la siguiente línea:

header(‘Content-Type: text/xaml’);

la cual establece que el tipo de contenido que regresará la página .php será de tipo Xaml (también funciona con el content type text/xml ya que Xaml no es más que Xml).  Lo anterior es de suma de importancia ya que estamos redefiniendo el comportamiento predeterminado que tiene PHP de regresar HTML.

Ahora bien, como podrán darse cuenta el código obtiene el número de rectángulos a crear por medio del parámetro r del Querystring.  Lo que hacemos es simplemente hacer un bucle for para la creación dinámica del Xaml que represente el número buscado de rectángulos.  Recuerden que cuando generamos Xaml dinámico es necesario incluir el xmlns por default en el contenedor raíz, si es que interpretaremos este código Xaml utilizando XamlReader.Load().

Lo que resta será escribir el código necesario en nuestra aplicación Silverlight para ejecutar la página php y obtener el resultado de su ejecución (lo cual será efectivamente contenido Xaml).  El siguiente código muestra el manejador del evento Loaded del UserControl MainPage:

La propiedad HtmlPage.Document.QueryString (parte del Puente HTML) permite leer el parámetro r que puede establecer el usuario en la página .html y que a su vez será utilizado para la invocación de la página Content.php.  El resto del código se encarga de obtener el resultado de la descarga del endpoint (Content.php) e interpretar el resultado por medio del método XamlReader.Load().

La siguiente figura muestra el resultado de ejecutar la siguiente página:

http://localhost:9050/PHPDynamicXamlTestPage.html?r=12

Lo anterior demuestra que PHP, además de permitirnos hospedar las aplicaciones Silverlight, lo podemos usar para la creación dinámica de contenido Xaml.

Hospedando aplicaciones Silverlight en PHP

Silverlight es una tecnología agnóstica tanto del lado del Cliente como del lado del Servidor, esto es, las aplicaciones de Silverlight pueden ser hospedadas en prácticamente cualquier tecnología Web del lado del Servidor (asp, jsp, php, cgi…) y pueden las aplicaciones Silverlight ejecutarse en la mayoría de los Navegadores modernos hoy en día (Firefox, Internet Explorer, Safari, Chrome…) en la mayoría de los Sistemas Operativos (Windows [2000,XP, Vista, 2003, 2008, 7…], Mac OSX y Linux [por medio del proyecto Moonlight creado por Novell]).  Es muy importante hacer notar lo anterior ya que hoy día aún existe mucha confusión acerca de Silverlight como plataforma para construir aplicaciones RIA.

Silverlight es una tecnología multi-Plataforma y multi-Navegador.

En este artículo veremos cómo podemos hospedar nuestras aplicaciones Silverlight en PHP e incluso cómo inicializar correctamente las aplicaciones por medio de parámetros creados del lado del Servidor con esta tecnología.

Instalando PHP sobre IIS (usuarios de Windows)

Una manera sencilla para ejecutar aplicaciones PHP sobre Windows es utilizar Web Platform Installer, la cual es una herramienta que nos permite instalar fácil y rápidamente plataformas o aplicativos completos en nuestros equipos locales.  En otros Sistemas Operativos la manera de ejecutar y hospedar aplicaciones PHP varía y está fuera de alcance de este artículo.  La siguiente figura muestra Web Platform Installer una vez instalado PHP:

Creando la aplicación de prueba

Crearemos una aplicación Silverlight 3 llamada SLPHP y aceptaremos la creación del sitio Web ASP.NET de prueba.  Esto es simplemente por conveniencia ya que la plantilla de Visual Studio creará el archivo SLPHPTestpage.html el cual cambiaremos su extensión a PHP.  Además de lo anterior agregaremos un elemento de tipo TextBlock en MainPage.xaml para poder apreciar que la aplicación hay sido cargada correctamente en la página (y no veamos la pantalla de color blanco únicamente)./

Tal cual, la página PHP está lista para utilizarse ya que estamos reutilizando todo el contenido de HTML que se ha generado para nosotros, no obstante primero tenemos que publicar nuestra aplicación en un Sitio Web en IIS para que el archivo .php sea identificado como tal.  Lo primero que necesitamos hacer es crear el Sitio Web en IIS (en mi ejemplo, físicamente en D:\SLPHP y en el puerto 9000).

Una vez con el Sitio Web creado, publicamos la aplicación desde Visual Studio .NET al fólder físico en donde está montado.

Al ver este Sitio Web en el navegador podemos darnos cuenta que efectivamente la aplicación es ejecutada en la página .php de manera correcta.  La siguiente figura muestra la aplicación de Silverlight 3 ejecutándose en la página PHP:

Inicializando Parámetros de la aplicación desde PHP

Como ya habíamos comentado y demostrado antes, es posible mandar valores de inicialización en las aplicaciones de Silverlight a través del parámetro InitParams del elemento <object>.  Esto nos permite establecer datos que sean necesarios para la aplicación Silverlight.  Hacer esto con PHP es sencillo si utilizamos la directiva <?php …. ?> justo en el sitio donde establecemos InitParams.  El siguiente fragmento de código muestra cómo se establecen dos parámetros llamados n y p los cuales tendrán el valor de lo que se envíe a través del Querystring:

Finalmente, podemos utilizar el valor que traen dichos parámetros dentro de la aplicación de Silverlight si los leemos en el evento Startup:

De esta manera, además de estar hospedando la aplicación de Silverlight en la página de PHP, estamos estableciendo algunos parámetros iniciales del lado del Servidor.

En próximos artículos veremos un poco más acerca de cómo integrar Silverlight con PHP.

PDC 2009

Ya está abierto el registro para el Professional Developers Conference 2009 mejor conocido como PDC, el cual se llevará a cabo del 17 al 19 de Noviembre 2009 en el Centro de Convenciones de Los Angeles, California. El PDC es el evento magistral del año en donde Microsoft da a conocer nuevas tecnologías y tendencias en el mundo de desarrollo de su plataforma.

Si nunca han asistido a esta conferencia y tienen la curiosidad de ir se los recomiendo ampliamente ya que es una experiencia enriquecedora debido no solamente a las sesiones técnicas (que de hecho las pueden ver en línea desde la comodidad de su hogar a posteriori) sino también al hecho de que pueden compartir sus conocimientos y conocer personas con la misma pasión de ustedes.

Para el tema de Silverlight, ya han sido anunciadas algunas sesiones que sin duda alguna serán de muchísimo interés para los que nos dedicamos a esta tecnología.

Les sugiero seguirlos en Twitter para estar al tanto de las últimas noticias del evento

@PDC09

Silverlight Tour: Nuevas Ciudades (Medellín, Buenos Aires, San José)

Tengo el gusto de comentarles que se han abierto nuevas ciudades del curso Silverlight Tour Workshop en Español: Medellín, Colombia, Buenos Aires, Argentina y San José, Costa Rica.  Pueden ver la agenda completa de los cursos en la página oficial.

  • Medellín, Colombia: 04 de Septiembre
  • Buenos Aires, Argentina: 10 de Septiembre
  • San José, Costa Rica: 12 de Octubre

Les recuerdo que el Silverlight Tour es un curso de alta profundidad técnica acerca de Silverlight 3.  Se imparte en Latinoamérica totalmente en Español.

Se pueden registrar haciendo clic aquí.

¡Nos vemos próximamente!

Workshop de Silverlight con PHP @ Microsoft Venezuela

He sido invitado por Microsoft Venezuela para impartir el taller ‘Silverlight con PHP’ el próximo día 11 de Agosto de 18:00 a 21:00 hrs. en las oficinas de MS Venezuela localizadas en:

Av. Principal de la Castellana Centro Letonia, torre ING Bank, Piso 10, Caracas

Toda la información la podrán encontrar en el blog de Eduardo Sojo

En esta sesión podremos apreciar cómo Silverlight, al ser una tecnología agnóstica, puede ser utilizada con diversas plataformas Web como por ejemplo JSP, CGI o PHP.  Durante la sesión detallaremos algunas de las características más importantes que tiene esta tecnología y que pueden ser utilizadas independientemente del lugar en donde se hospeden nuestras aplicaciones.  Asimismo explicaremos por qué Silverlight es una tecnología que no hay que perderla de vista!

Este es un evento público y sin costo alguno enfocado principalmente a desarrolladores de software. El registro sigue abierto. Tendré muchísimo gusto de conocerles así que los espero. ¡Nos vemos en Caracas!