MSDN Blogs
  • WarNov Developer Evangelist

    Hablar Ilimitadamente usando el plan de datos del Celular

    • 3 Comments

    Hoy un amigo aquí en la subsidiaria me compartió esta valiosa información al respecto:

    Loudtalk Site

    “Para quienes tienen plan de datos ilimitado o WiFi en su celular (y puedan acceder a Internet) y sus minutos de voz sean limitados, les presento esta aplicación que les permitirá hablar con un compañero de la siguiente forma:

    - De celular a celular

    - De celular a PC

    - De PC a PC

     

    NO IMPORTA DE QUE OPERADOR CELULAR SEAMOS, PUEDEN HABLAR ILIMITADAMENTE!!!

    La aplicación se llama Loudtalks y emplea el concepto denominado Push To Talk (PTT), parecido al servicio que tienen los Avantel, la cual permite emplear el canal de datos para enviar la voz (Voz/IP), a algunos de Ustedes les he hecho la demostración, esta es la última versión que han liberado.

    La aplicación tanto para el Windows Phone como para el PC es gratuita

    Adjunto el instalador para el celular (copiar en el equipo y luego ejecutar el instalador) y el link para quien desee instalarlo en el PC http://loudtalks.com/download/

  • WarNov Developer Evangelist

    De las mejores evoluciones de Visual Basic en 2010

    • 3 Comments

    Antes:

     

    VB vs C# 1

    Después:

    106894368

    Gracias a @afontang

  • WarNov Developer Evangelist

    Nuevo Ciclo del Conocimiento ALM con Visual Studio 2010

    • 3 Comments

    Como ya es toda una tradición, en Microsoft Colombia cada martes a partir de las 6.30pm, venimos realizando ciclos de conocimiento de manera presencial en nuestras instalaciones y también via LiveMeeting, para que personas de otras locaciones o los que no puedan asistir no se queden sin disfrutar de este contenido técnico.

    El mes pasado tuvimos nuestro ciclo de Windows Phone 7 Series. En este, nos estaremos enfocando en estudiar la herramienta Visual Studio 2010 en lo concerniente a la Administración del Ciclo de Vida del Software o ALM.

    image

    Es por esto, que para ustedes tenemos preparadas las siguientes 5 sesiones:

    1-Jun-10 Planeación de Proyectos con Visual Studio 2010: Introducción a VS2010 como herramienta de AALM, Planeación de Proyectos, Branching y Merging
    8-Jun-10 Arquitectura de Software con Visual Studio 2010 Primera Parte: Introducción y Descubrimiento de código usando las herramientas de arquitectura
    15-Jun-10 Arquitectura de Software con Visual Studio 2010 Segunda Parte: Class Coupling y Architecture Explorer
    22-Jun-10 Calidad de Software I: Introducción y creación y ejecución de pruebas Manuales. Administración de casos de prueba con Microsoft Test Manager
    29-Jun-10 Calidad de Software II: Introducción a las pruebas automatizadas de interfaz de usuario. Depuración con Intellitrace usando VS2010

    En este link pueden registrarse para asistir presencialmente o via Live Meeting.

    Los esperamos!

  • WarNov Developer Evangelist

    Windows Azure: Compilado de Recursos

    • 3 Comments

    A continuación les presento un conjunto de recursos acerca de Windows Azure que aplica sobretodo a la audiencia hispana.

    La primera, es una presentación de PowerPoint que da un recorrido global sobre la plataforma. El segundo recurso precisamente es un video donde hago la presentación de estos slides, de tal manera que les permitirá tener un mayor sentido de la presentación.

    El tercer punto presenta todos los artículos de este blog, relacionados con Windows Azure, desde el último hasta el primero. En general es buena idea que si están comenzando con esta plataforma, comiencen a leer desde el primero, ya que progresivamente va subiendo el nivel técnico de estos artículos.image

     

     

    Herramientas

    1. Cliente WPF para Administración de Blob Storage
    2. Windows Azure Service Management CmdLets
    3. Explorador de Tablas Azure Online
    4. Sitio de cmdlets de Azure para PowerShell

    Para finalizar, si tienen preguntas acerca de Windows Azure, tras algún evento, este es el post en el que en los comentarios las pueden anotar, y con mucho gusto trataré de resolverlas!

    Gracias por Asistir!

  • WarNov Developer Evangelist

    ALM con Team Foundation Suite 2010

    • 3 Comments

    Hace una semana, me reuní con el grupo de Entusiastas de Microsoft que logré unificar, con el fin de hacer actividades para reconocer su interés en nuestras tecnologías y además potencializarlo en beneficio de la comunidad de desarrolladores que es mi audiencia como Developer Evangelist.

    En esta reunión en las oficinas de Microsoft Colombia, hicimos una Clínica de Oradores para incrementar los niveles de cada uno de nosotros en cuanto a charlas al público se refiere. Dirigiendo esta charla se encontraba con nosotros Willy Marroquin. Un excelente orador que por años nos ayudó con la labor de evangelización y quien además posee grandes conocimientos técnicos y hoy se desempeña como consultor en Arquitectura y Estabilización de Aplicaciones Críticas.

    Luego de esta clínica, Sebastián Rincón especialista de Visual Studio Team Suite para preventa técnica en Microsoft Colombia nos estuvo exponiendo la cantidad de nuevas características que nos trae la Suite para la administración de proyectos o ALM.

    Decidí grabar un video de la charla que nos impartió Sebastián, pues consideré muy importante publicar con un punto de vista bastante informal (tal como se llevó a cabo su exposición) toda la discusión que tuvimos sobre el producto. Aquí encuentran apuntes hechos por nuestros entusiastas (claros representantes de la comunidad de desarrolladores) y en general información útil para tener un overview de la suite antes de entrar a trabajar con ella directamente.

    Para finalizar, quisiera agradecer la asistencia de nuestros siguientes entusiastas, de quienes dejo sus contactos, dado que estarán gustosos de entrar en contacto con ustedes para tratar temas de desarrollo de acuerdo a sus especialidades:

    Willy Marroquin Arquitectura de Soluciones/Aplicaciones  
    Sebastián Rincón  Especialista TFS/BizTalk  
    Pablo Cepeda Workflow Foundation (WF), WCF  
    Edinson Carreño Team Foundation Suite  
    Frank Silva Windows Azure – Emprendimiento con Microsoft  
    Benjamin Perdomo Tecnologías de Punta Microsoft  
    Gerardo Ramos SWAT Desarrollo Microsoft  
    Manuel Camarón Especialista Silverlight – Windows Live Services  
    Andrés Ortiz Especialista Sharepoint – Desarrollo Sobre Office  

    Estos no son todos nuestros entusiastas. Posteriormente estaré haciendo un post donde estén todos con mayor información acerca de ellos!



  • WarNov Developer Evangelist

    Programando desde varias máquinas sin TFS

    • 3 Comments

    Esta técnica solo es recomendable si es un proyecto que lleva usted solo (es decir no un equipo). Es muy sencillo. Solo es necesario usar Live Mesh para mantener sincronizadas las carpetas. Yo la uso porque tengo varias máquinas (en la casa, la oficina, etc.) Pero existen ciertas situaciones que hay que tener en cuenta:

    Hoy por ejemplo no podía ejecutar mi aplicación por este error:

    The located assembly's manifest definition does not match the assembly reference

    Sucede que mi app estaba buscando una versión de DLLs errada.

    Luego de mucho “cacharrear” encontré que esto sucede porque se copian las dlls de otras máquinas en la que esta ejecutándose el Live Mesh. Para solucionarlo, basta con eliminar todas las dlls producto de la compilación de nuestra solución y volverlas a generar.

    Estaré actualizando este post con más incidencias de esta modalidad.



  • WarNov Developer Evangelist

    Recursos para Windows Phone 7 Unificados

    • 3 Comments

    Dejemos que este post sea aquél en el que podamos encontrar todos los recursos que necesitamos para poder comenzar a desarrollar aplicaciones basadas en Windows Phone 7 (WP7).

    Material de Aprendizaje:

    Recursos para aprender a programar WP7

    image

    Windows Phone Development QuickStarts

    Unas guías rápidas que enseñan las bases para la creación de aplicaciones WP7. Está diseñado para dos tipos de audiencias. Los totalmente nuevos en WP7 y aquellos que tienen experiencia en la programación WP7, pero quieren aprender un poco.

    Update: Si desean estos recursos en español, los pueden encontrar aquí: Tutoriales de Desarrollo para Windows Phone–totalmente en español y gratuitos

    image

    Windows Phone 7 Development for Absolute Beginners

    Serie de videos de Channel 9, que ayudan a los desarrolladores aspirantes a dominar el desarrollo en WP7 a iniciar. Contiene código en C# y VB.

    image

    Windows Phone 7 in 7 Minutes!

    Videos de WP7 con cada uno de ellos mostrando directamente una característica de desarrollo en WP7 en menos de 7 minutos.

    image

    Windows Phone Virtual Labs

    Laboratorios virtuales que te permiten evaluar o aprender rápidamente cómo construir aplicaciones para WP7 a través de una serie de laboratorios que pueden ser completados en 90 minutos o menos. La mejor parte es que al ser un laboratorio virtual de MSDN, no se requiere instalación de ningún tipo, ya que se nos proveen máquinas virtuales de acceso directo a través de internet, que están disponibles para ti Gratis!

    image

    Windows Phone 7 Training Course

    Este curso de entrenamiento te dará un inicio rápido con la plataforma WP7 al proveer explicación paso a paso delas herramientas y conceptos claves para programar WP7.

    image

    Programming Windows Phone 7

    Este libro es un regalo del equipo de WP7 de Microsoft a la comunidad desarrolladora, escrito por Charles Petzold. Muestra los fundamentos de las aplicaciones para WP7 usando C# y XNA. Contiene laboratorios y videos.

    azure-logo

    Windows Phone 7 And The Cloud

    Laboratorio guiado que nos enseña los pasos necesarios para construir una aplicación Silverlight para Windows Phone 7, que consume servicios WCF Data Services de una aplicación hosteada en Windows Azure

    image_thumb1

    Windows Phone Programming in C#

    Este material, creado por Rob Miles, es una introducción al desarrollo de Windows Phone 7. Contiene 8 secciones con laboratorios, presentaciones de PowerPoint, demostraciones y notas detalladas.

    Recursos del Sistema

    Requerimientos de Sistema Operativo de la PC de desarrollo

    Sistemas Operativos Soportados: Windows 7 y Windows Vista

    • Windows Vista (x86 y x64) con Service Pack 2 – Todas las ediciones (Excepto Starter Edition)
    • Windows 7 (x86 y x64) – Todas las ediciones (Excepto Starter Edition)

    Datos adicionales:

    • La instalacion requiere de 3GB de espacio libre en disco
    • Memoria RAM: 2GB minimo
    • El emulador de Windows Phone 7 requiere una tarjeta grafica con capacidad de soportar DirectX 10 con el driver WDDM 1.1

    NO es recomendable el uso de Maquinas Virtuales mas detalles aqui

    Herramientas para desarrollar aplicaciones
    • Descargue las herramientas gratuitas aqui
      • Beta para trabajar con Mango
      • Beta 2 para trabajar con Mango
    • Descargue e instale la actualización de Enero de 2011 aqui
    • Opcionalmente si desea puede obtener las herramientas para desarrollo de Windows Phone 7 con Visual Basic .NET aqui
    • Visite el Create App Hub aqui

    Más información de Windows Phone 7 aquí.

  • WarNov Developer Evangelist

    IE10 Platform Preview 2 Disponible!

    • 3 Comments
    Hemos liberado nuestro segundo preview de Internet Explorer 10. Veremos cómo podemos crear sitios y aplicaciones aún más asombrosas gracias al soporte mejorado a HTML5. Cada vez estamos más cerca de la promesa de las aplicaciones de HTML5 según la cual, distintos browsers soportan el mismo markup para que los desarrollos se vean iguales.

    Novedades en este preview:

      • Positioned Floats
      • CSS3 Gradients (en todos los tipos de imagen)
      • CSS stylesheet limit lifted
      • CSSOM Floating Point Value support
      • Improved hit testing APIs
      • Media Query Listeners
      • HTML5: Support for async attribute on script elements
      • HTML5 Drag and Drop
      • HTML5 File API
      • HTML5 Sandbox
      • HTML5 Web Workers
      • Web Performance APIs:
        • requestAnimationFrame
        • Page Visibility API
        • setImmediate

    Recuerden que Internet Explorer 10 estará disponible para Windows 7 y Windows 8. No habrá soporte para Vista ni sus predecesores. Futuras versiones del preview se liberarán cada mes o mes y medio. Esperamos una beta para finales de año. El preview actual, se lo pueden descargar del portal Test Drive de Internet Explorer

  • WarNov Developer Evangelist

    Configurando identidades y Accesos en IIS 7.5

    • 3 Comments

    Abstract:

    Veremos que IIS 7.5 tiene un nuevo manejo de identidad virtual independiente para sus Application Pools, y que por ende debemos buscarlos de una manera especial cuando queramos asignarles permisos sobre los recursos del servidor, como lo son el sistema de archivos.

    Nivel: Intermedio. Tecnologías: IIS (IIS Application Pool Identities)

     

    Windows 7 y Windows 2008 R2 vienen con IIS 7.5 por defecto.

    Para muchas personas IIS 7.5 puede ser un mundo totalmente diferente; sobre todo si vienen de IIS 6.0 y anteriores. Obviamente estos grandes cambios fueron generados para hacer al servidor más usable, con más características y además más seguro.

    Hablemos de un cambio en seguridad que debemos tener en cuenta si queremos probar o poner en producción nuestros sitios en IIS 7.5.

    IIS es un servidor que corre sobre Windows. Los procesos que corren sobre Windows requieren de un usuario en nombre del cual corren. Aplicaciones como Word, corren en nombre del usuario logueado en el sistema. Pero servicios como IIS corren con usuarios internos del sistema que no requieren de un proceso de logueo que dificultaría lanzar dichos servicios.

    Las últimas versiones de IIS corrían con la identidad de NETWORKSERVICE (tal vez lo recuerden en instalaciones como las de SQLSERVER). Este usuario tiene las limitaciones de un usuario estándar así que los privilegios son bajos, por lo que ofrece cierta seguridad ya que un bug en el servicio no podría ser usado para afectar la máquina.

    Sin embargo, dado que muchos servicios comenzaron a usar este usuario para ejecutarse, lo que sí puede pasar, es que servicios maliciosos corriendo con este usuario puedan afectar y manipular otros servicios o aplicaciones con este mismo usuario, sobre todo cuando hablamos de aplicaciones de terceros que corren sobre IIS.

    Así que esto fue solucionado en IIS 7.5 a través de lo que hoy conocemos como IIS Application Pool Identities. Un mecanismo que permite crear identidades virtuales únicas para cada Application Pool en IIS. Recordemos que en IIS un Application Pool es un entorno de ejecución para las aplicaciones Web que nos permite administrarlas eficientemente. Dicho esto, si por ejemplo para instalar el CMS Orchard usamos un APPPool dedicado llamado Orchard, veremos como IIS crea un usuario virtual llamado Orchard para correr el proceso w3wp.exe (responsable de servir el sitio web como tal):

    image

    Es muy importante tener esto en cuenta sobre todo cuando nuestra aplicación requiere acceder recursos del sistema como el sistema de archivos, pues deberemos darle permisos de lecto-escritura al usuario que ha iniciado el proceso w3wp.exe. En IIS 6 y 7 lo hacíamos con el usuario NETWORKSERVICE pero en IIS 7.5 deberemos especificar el usuario virtual del AppPool donde está corriendo la app. Para lograr esto con la interfaz gráfica hay cierto detalle que no nos permite hacerlo directamente como con cualquier otro usuario, dado que es una identidad virtual:

    image

    Aquí vemos que queremos darle permisos de lecto-escritura sobre el folder App_Data a la identidad orchard que es sobre la cual corre el sitio, pero vemos que la herramienta no encuentra ese nombre (dado que es virtual). Para poderlo encontrar deberemos asegurarnos de que estamos buscando en Built-in security principals, usando la locación de la máquina donde está el server y finalmente anteponiendo IIS APPPOOL\<nombre del pool>:

    image

    Entonces al dar click en Check Names obtendremos:

    image

    Con lo que ya tendremos la identidad justa para accionarle los permisos requeridos.

    Conclusión:

    Vimos entonces que IIS 7.5 tiene un nuevo manejo de identidad virtual independiente para sus Application Pools, y que por ende debemos buscarlos de una manera especial cuando queramos asignarles permisos sobre los recursos del servidor, como lo son el sistema de archivos.

  • WarNov Developer Evangelist

    Instalando Orchard en IIS 7.5 y SQL Server 2008R2

    • 2 Comments

    Abstract: En este video describo como instalar el CMS Orchard en la siguiente configuración: Windows 7 Ultimate + IIS 7.5 + SQL Server 2008 R2.
    Nivel: Básico

    Este es el segundo en una serie de posts acerca de el CMS Open Source basado en ASP.NET MVC 3, llamado Orchard. Si desea una introducción a los CMS y en especial a Orchard le recomiendo: Teoría de CMSs con Orchard y luego leer este post.

    Posts de esta serie:

     

    Contenido:

    Las instalaciones del CMS Orchard son muy pero muy sencillas. Sobretodo si se usa el Web Platform Installer WebPI (Un wizard que nos lo deja instalado automáticamente solo dando Next, Next, Next…). Es por eso que el video a continuación no se enfoca en este tipo de instalación sino en lo que yo llamaría instalación cruda de Orchard. Es decir, descargar la carpeta del aplicativo, instalarla en IIS y configurar una DB en SQL Server para su uso.

    Orchard puede ejecutarse bien sea en el IIS Express (Servidor web gratuito que viene en el WebPI), o en el ASP.NET Development Server de Visual Studio o en el IIS full (6, 7, 7.5), tal como lo veremos en este ejemplo.

  • WarNov Developer Evangelist

    Windows Phone 7 Convence

    • 2 Comments

    Windows Phone 7 es el sistema operativo para teléfonos móviles creado por Microsoft orientado completamente a consumidores finales (a diferencia de anteriores versiones dirigidas a usuarios corporativos).

    clip_image001

    Con un diseño totalmente innovador que le ha significado ser ganador de tres premios distintos en los Premios Internacionales de la Excelencia en Diseño (IDEA) entre ellos el de la mejor Experiencia Interactiva de Producto, WP7 garantiza una experiencia de usuario inigualable representada por sus más de 3 millones de dispositivos vendidos a la fecha y un marketplace con gran crecimiento en la industria que a hoy ajusta más de 25.000 aplicaciones de las cuales la mayor porción está representada por juegos con un 17%.

    Estas cifras representan resultados brillantes sobretodo en un campo tan competido y difícil como el de los teléfonos celulares. Tanto que firmas como Gartner y IDC auguran que para 2015, el marketshare de WP7 estará por encima de grandes hoy en día como RIM y Apple y solo justo atrás de Android, pero sin el gran problema de la segmentación que sufren los desarrolladores sobre esta plataforma. Y lo anterior sin haber considerado gigantescas alianzas recientes que ofrecen aún más ventajas para el futuro del producto, tal como sucedió con Nokia y Skype.

    Pero no solo la experiencia de usuario y el diseño es destacable tras el desarrollo de esta plataforma. El que Microsoft esté tras el producto implica que pone en el mismo toda su madurez desarrollando productos complementarios que por supuesto se integran transparentemente con la funcionalidad del teléfono. Tal como sucede con la XBOX y Kinect (el dispositivo electrónico de consumo más vendido en la historia). A tal punto, que juegos de XBOX se pueden integrar completamente con las versiones de teléfono y gran porcentaje del código creado para un juego en XBOX, puede ser usado para su versión en el teléfono y además en la PC. Igual sucede con servicios como Skydrive que nos permite almacenar archivos en la nube y trabajar integralmente con Office en la Web.

    Es un gran momento para ser desarrollador colombiano de aplicaciones y juegos para Windows Phone. Somos uno de los 3 países en Hispanoamérica en tener acceso local marketplace antes de finalizar el año cuando se espera también que tengamos comercialización oficial de los dispositivos. Hay un gran futuro por explotar y nada mejor que comenzar desde ahora a prepararnos.

  • WarNov Developer Evangelist

    WP7 Japonés

    • 2 Comments

    El primer teléfono Windows Phone 7.5 en Japón es resistente al agua y tiene una cámara de 13.2 MP con 32 GB de almacenamiento. Además viene en japoneses colores Smile

    clip_image001

    Es el IS12T de Toshiba:

    image

    Se estima que en Colombia tengamos los primeros modelos para Octubre aunque no sabemos si estos TOSHIBA se distribuirán por estas latitudes.

  • WarNov Developer Evangelist

    Windows Azure en el negocio

    • 2 Comments

    Abstract: Windows Azure es la joya de la corona en el desarrollo Microsoft. En general, aquí se agrupa el conocimiento de muchas tecnologías .NET para lograr desarrollos brillantes. Sin embargo, los roles de negocio en las organizaciones deben tener cierta comprensión de nuestra plataforma de cloud computing, para poderla implementar en sus empresas. Este artículo da un vistazo breve y de muy alto nivel, enfocado en el negocio para que puedan tomar decisiones más informadas.

    GoingToAzure

    Las ventajas de negocio de Windows Azure incluyen aspectos como el ahorro en costos, tiempo (time to market), administración, costo de implementación reducido (upfront), un retorno de la inversión más rápido y gran escalabilidad y disponibilidad.

    En cuanto al ahorro en costos y upfront reducido, estos se obtienen debido a que la plataforma de cloud de Microsoft se encarga absolutamente de todo el manejo de hardware y sistemas operativos en la nube, librando a sus clientes de tener que comprar máquinas que luego se depreciarán y también del manejo de licencias de los servidores. Por si fuera poco, la administración automatizada de Windows Azure permite a los desarrolladores enfocarse en hacer su aplicación cada vez mejor, sin tener que preocuparse de tareas alternas que no hacen parte del core del negocio, tales como estar pendientes de actualizaciones, patchs, antivirus y demás.

    El hecho de que en Windows Azure solo se paga lo consumido brinda una gran ventaja a los desarrolladores ya que minimiza el costo de upfront en sus soluciones. No tienen que hacer gigantescas inversiones en infraestructura. Por el contrario, van solicitando los recursos necesarios de Windows Azure transfiriendo los costos a sus clientes, a medida que estos van consumiéndolos servicios expuestos. Esto permite que así como el negocio va escalando, la inversión retorna inmediatamente.

    Para los clientes de los desarrolladores esto también es una ventaja, porque no tienen que preocuparse por la infraestructura de las soluciones que les están ofreciendo. Además en cuanto a costos, tampoco tienen que preocuparse por esquemas de licenciamiento ni por pagar altos costos. En general los servicios expuestos por Windows Azure se pueden cobrar a una tasa muy baja cada mes a los clientes que los estén usando. Y además también se les puede ofrecer la posibilidad de que paguen solo lo consumido.

    Esto sumado a todas las ventajas que representa el modelo de (Software as a Service) SaaS que está perfectamente mapeado dentro del modelo de (Platform as a Service) PaaS, le brinda a los clientes y desarrolladores muchas ventajas, pues las aplicaciones se encontrarán permanentemente online con unos SLA de altísima calidad y unas capacidades de distribución que son solo posibles bajo esta metodología. Es así como a través de nuestra plataforma de cloud computing el mensaje de Power of Choice se ve totalmente llevado a la realidad dado que los despliegues en Windows Azure nos permiten tener clientes tanto en el escritorio, como en la web y también en teléfonos móviles de una manera bastante sencilla. Windows Azure es una plataforma bastante abierta que permite el despliegue de aplicaciones creadas en los lenguajes y tecnologías más populares tales como lo son Java, PHP, Ruby y por supuesto, .NET. Por si fuera poco, se ofrece una amplia gama de opciones de almacenamiento para que las aplicaciones puedan persistir sus datos de acuerdo a la forma que más se adapte a las necesidades y al presupuesto. De esta manera se encuentra el Windows Azure Storage y SQL Azure. Esto nos permite también ofrecer la alternativa de que en Windows Azure podamos ubicar únicamente nuestras aplicaciones sin Storage, o solo el Storage sin aplicación o las dos cosas. La decisión es nuestra de acuerdo a lo que se requiera.

    Mi invitación es a que analicen un nuevo modelo no solo tecnológico sino de negocio, que le abrirá muchas puertas a su empresa.

  • WarNov Developer Evangelist

    Múltiples Líneas en los Textblock de Windows Phone 7

    • 2 Comments

    Nivel: Básico: 100.

    También surgido de otra pregunta que me hicieron en http://formspring.me/warnov, aquí una corta explicación de cómo funcionan los Texblock multilínea en WP7.

    Básicamente la duda de este developer, era cómo hacía para generar un Textblock (Texto no editable que aparece como nativo en la interfaz) que presentara varios párrafos.

    Lo primero que debemos garantizar, es que el TextBlock haga autoajuste de línea de acuerdo al ancho que tenga en determinado momento. Para esto ajustamos la propiedad de “ TextWrapping” en Wrap. Luego, existen varios métodos para agregar el texto que viene en párrafos.

    El primero, es aprovechando la mayor flexibilidad que nos da el editor XAML para asignar textos. Como ven, sencillamente podríamos traer nuestros párrafos tal y como están por ejemplo en Word o notepad y asignarlos al control:

    image

    Como ven es un sencillo copy paste o escribir las líneas y darles el salto de línea donde sea pertinente.

    Este copy paste también se puede ejecutar en el cuadro de propiedades:

    image

    Sin embargo si queremos escribir las líneas, observaremos que para darles un salto de línea el Enter no funciona. Sencillamente usamos Shift+Enter y listo. Tendremos nuestro salto de línea. Y el resultado es el esperado:

    image

    Obviamente, este tipo de ajuste de contenido no es posible en tiempo de ejecución, ya que no podremos copiar/pegar de ningún lado, sino indicar con una variable el contenido. Esta variable es fácil de armar con el carácter especial de cambio de línea \n:

    txbInstructions.Text = "primera larga línea \n segunda \n tercera";

    Esto nos da:

    clip_image008

    Y qué pasa si el texto está en un archivo de recursos?

    En un mercado de aplicaciones como el de Windows Phone 7, es muy importante ofrecer la capacidad de multilenguaje de nuestras aplicaciones, así que es muy frecuente que nos encontremos con la necesidad de crear un archivo de recursos distinto para cada lenguaje a usar. En estos casos, cada archivo tiene los textos a usar. Entonces cómo poner valores multilínea en los archivos de recursos?

    Allí también podemos copiar y pegar de otra fuente. Igual funciona el mecanismo de Shift+Enter para ingresar un salto de línea.

    image 

  • WarNov Developer Evangelist

    Entrenamiento Virtual para Desarrollar en La Nube

    • 2 Comments

    image

  • WarNov Developer Evangelist

    Review Invitado: IE9 por Andrés Ruiz

    • 2 Comments

    En mi afán por tratar de que la comunidad tecnológica no muy cercana a Microsoft observe que hoy en día la corporación es algo muy distinto a lo que tiene en sus mentes, estaré publicando una serie de reviews de nuestras tecnologías, escritos por grandes bloggers que conozco, cuyo posición ante Microsoft es de Neutral a Opuesta.

    En esta ocasión, le agradezco a Andrés Ruiz, especialista en temas de celulares y navegadores; campo en el cual se podría describir como amante acérrimo de Ópera. Esto último me obligó a reconocerle su gran imparcialidad al calificar a Internet Explorer 9.

    Sin más preámbulos, aquí les dejo el post:

    Después de meses de desarrollo, Microsoft libera la versión final de su nuevo navegador Web para Windows 7 y Windows Vista, promete mayor rendimiento, compatibilidad con los últimos Estándares Web y otras características.

    2011-03-15 19h31_15

    Soy un fanático a morir de Opera, también me gusta mucho Firefox, poco gusto de Google Chrome y nada gusto de Internet Explorer, las razones son básicamente por monopolio e irrespeto por los estándares Web, llevo años usando IE solo para descargar Opera y para probar mi trabajo como diseñador Web, pero este blog debe ser objetivo, así que comencemos desde el principio:

    Hay 2 formas básicas de obtener IE9, desde www.microsoft.com y desde www.beautyoftheweb.com, cualquiera de las 2 le ofrecerá un mini instalador a prueba de tontos que se encargará de descargar el real y grande instalador, realizar las operaciones necesarias y dejar listo IE9 funcionando en su máquina con Windows 7 o Windows Vista, no hay IE9 para Windows XP, Microsoft justifica esto diciendo que XP no es compatible con nuevas características del navegador, en especial su publicitada aceleración de gráficos por hardware, me parece una excusa tonta teniendo en cuenta que el próximo Firefox 4 tendrá aceleración por Hardware en Windows XP, al igual que próximas versiones de Opera (11.50) y Google Chrome, ¿es entonces Microsoft la única compañía que no puede tener aceleración por hardware en Windows XP?

    Luego de ejecutar el pequeño archivo instalador, este descarga silenciosamente el navegador sin hacer preguntas que confundan a un usuario común, no le preguntará en qué carpeta quiere instalarlo ni si quiere tal cosa o la otra, simplemente funciona sin molestar, pero luego se desquita; Internet Explorer 9 es el único navegador en el mundo que para instalarse requiere cerrar el software Antivirus, el software de la tarjeta aceleradora de video, el mismo explorador de Windows y cualquier otro programa que esté activo, simplemente cierra todo para poderse instalar, pero bueno, con tal de no tener que reiniciar el computador elijo esa opción, la segunda opción dice que ignore los programas abiertos pero que requerirá reiniciar la máquina, yo no quiero hacer eso.

    ie9setup

    Le digo que ok, que cierre todo y se instale, sorpresivamente aun haciendo lo que IE9 dice… me pide reiniciar la máquina… ¿ahh?
    Para nada sorpresivo, IE siempre ha sido el único navegador Web que requiere reiniciar el computador luego de ser instalado, desde épocas de IE7 pasa así, no veo por qué cambiarían en IE9.

    Luego de este nada sorpresivo parto de instalación, viene la parte buena, un navegador totalmente nuevo, a tono con las últimas tendencias de diseño tratando de ser tan minimalista como sea posible para maximizar el espacio disponible para el sitio web, que a la larga es lo que realmente importa; para lograr esto, Microsoft puso la barra de direcciones y la barra de pestañas en el mismo espacio vertical, eso logra reducir el espacio que usa la interface, pero también reduce el espacio para las pestañas, en la siguiente imagen, simulando un monitor tradicional de 1024 pixeles de ancho, solo caben 3 pestañas “cómodamente.

    2011-03-15 20h10_28

    Si abro más páginas web en pestañas, estas se vuelven más pequeñas a tal punto que con solo 10 pestañas ya no se puede leer el nombre de sitio web, toca guiarse por el ícono del sitio, y como muestro a continuación, no siempre es una forma confiable de identificación, en este caso, el popular Facebook no sale con ícono

    2011-03-15 20h28_34

    La característica más publicitada por Microsoft en relación a IE9 es la aceleración de gráficos por Hardware, con esta característica se logra usar el procesador gráfico del computador (GPU) para mejorar el rendimiento de páginas web que se prestan para eso, es el caso de la renderización en canvas de HTML5, algunos casos de JavaScript y otras tecnologías “acelerables” con hardware, en la práctica son una minoría, rara vez se encontrará con un sitio web hecho de esta manera con estas tecnologías, al menos en el futuro inmediato, olvídese que su correo o su Facebook va a funcionar más rápido por la aceleración por hardware, pero bueno, a quién le importa, personalmente creo que el tema de la velocidad está sobrevalorado, a futuro puede ser importante y Microsoft está lista para eso, bien por ellos, es una ventaja competitiva por el momento, aunque no se use.

    Microsoft dice que la aceleración por hardware es para texto, gráficos y video, pero no especifica si en todos los casos (lo dudo) luego habla de nuevo de lo mismo pero para HTML5, quedo con la duda.

    2011-03-15 21h38_46

    La nueva interfaz de usuario, a parte de ser minimalista, ha mejorado bastante en cuanto a calidad visual, el navegador es bonito, da gusto navegar en él, los botones son apenas los necesarios: (atrás, adelante, página de inicio, favoritos y herramientas), los primeros 3 no tienen submenús, el de favoritos abre una pequeña ventana que le muestra los favoritos, feeds y el historial, también tiene un botón que le permite agregar la página actual a favoritos con un desplegable para organizarlos y demás.

    2011-03-15 20h43_03

    En la barra de direcciones continúan con la excelente característica de resaltar el dominio real de la página web que se esté mostrando por sobre cualquier otra parte de la URL, esto da la seguridad de mostrar al usuario a quién pertenece la página web que está viendo, y no lo que le quieran hacer creer, además integraron unos discretos botones (¿tipo mac?) que sirven para: buscar, barra de autocompletar, vista de compatibilidad, recargar y Stop respectivamente, me parece buena idea aunque pueden pasar desapercibidos para el usuario corriente y/o alguien poco detallista.

    2011-03-15 20h46_51

    A propósito del sitio en cuestión, IE9 logra una calificación de 95/100 en el reputado sitio de Acid 3 Test, sin duda alguna un gran avance para Internet Explorer, espero que sea un real compromiso para irse ajustando a los estándares Web, y no solo una estrategia publicitaria como algunos “expertos” afirman.

    Al abrir una nueva pestaña se supone que se deben obtener una serie de sitios “populares” para uno, no fue mi caso, obtenía la página de inicio previamente configurada en IE8, logré obtener la nueva característica por medio de Tools > Internet Options > [tabs] Settings >When a new tab is opened, open: The new tab page. De esta manera obtengo otra buena imitación de lo que inició Opera con el SpeedDial, solo que acá no es uno el que inicialmente define los sitios que quiere tener sino que IE9 le da una mano poniendo automáticamente los sitios que más visita.

    2011-03-15 21h21_34

    Hay una integración especial con Windows 7, le permite anclar páginas web a la barra de tareas de Windows, eso lo llaman “Pinned Sites”, a mi no me parece una característica muy útil pero me parece que para muchas personas si puede serlo, cada cual usa el navegador a su manera.

    Hay mejoras en la seguridad con el SmartScreen Filter que le previene con sitios web de dudosa procedencia, también hay un filtro de los conocidos y discutidos “only on IE” controles ActiveX, debe ir a “Safety” y luego click sobre “ActiveX filtering”.

    IE9 mejora el manejo de Add-ons con un mejor “manager” y avisos automáticos sobre problemas de rendimiento derivados de los mismos.

    2011-03-15 21h40_08

    Si IE9 necesita mostrar un mensaje, ya no lo pondrá sobre la página web obstruyendo el contenido, ahora lo hace de una manera más discreta, hay un nuevo gestor de descargas que al fin se pone a tono con los requerimientos de un usuario avanzado.

    En cuanto a tecnologías Web, viene tomando mucha fuerza e importancia el soporte a HTML5, Microsoft habla mucho del tema y se anuncia como un navegador muy avanzado con respecto a soporte HTML5, para probar esto, usé el popular sitio web HTML5 Test que cualquiera puede usar en su navegador y obtendrá el puntaje correspondiente al navegador que esté usando en el momento de la prueba, en este caso, IE9 obtiene 130 puntos (de 400 posibles), lo cual es mucho más de lo que obtenía IE8 (32 puntos), pero está todavía muy lejos de los 288 puntos que obtiene Google Chrome 10, los 255 puntos de Firefox 4 RC y los 244 puntos que obtiene el Opera 11.10 Alpha que estoy usando en este momento. Así que bienvenido el soporte de IE9 a HTML5 pero hay que hacer más trabajo que publicidad.

    IE9 se ve y se siente años adelante de IE8, mucho más cerca de las tendencias mundiales, hablando en términos automovilísticos, IE9 es el primer IE que por lo menos corre, está en la competencia y va en la vuelta del líder de la carrera, y no como pasaba con versiones anteriores en donde parecía que IE apenas jugaba el papel de “Safety car” que ni siquiera estaba en la competencia.

    IE9 es ahora, por fin, un navegador que se puede usar en el diario navegar de un usuario promedio-avanzado, ya no es solo un navegador para quien no sabe que hay otras opciones, temo decir que ahora, IE9 es una opción válida, y no la única alternativa de quienes no tienen opción.

    Hasta la próxima…

    Corrección de errores:

    Gracias a los comentarios de Diego Alejandro y WarNov me doy cuenta que cometí 2 errores:

    El primer error fue asumir que el reducido espacio para las pestañas no tenía solución, pero me informan que al hacer click derecho sobre la barra de pestañas, y seleccionar [Mostrar las pestañas en una línea separada] las pestañas harán una nueva fila exclusiva para ellas.

    En este caso deseo tener más espacio para las pestañas y hago el procedimiento anteriormente descrito:

    2011-03-17 19h03_43

    De esta forma, las pestañas ya no compartirán el espacio con la barra de dirección y ocuparán su propio espacio exclusivo, la interfaz obviamente será más ancha, pero las pestañas no se verán tan abarrotadas, también puedo deshacer eso quitando el “chulo” de la misma opción para volver a la configuración predeterminada.

    2011-03-17 19h05_22

    Mi segundo error fue subestimar a los “Pinned Sites”, es una función que si, le permitirá anclar algunos sitios Web a la barra de tareas como si fueran aplicaciones aparte, pero no solo hace eso, en los sitios que el desarrollador haya querido integrar su página de una manera más profunda con IE9 procurando dar una mejor experiencia, usted obtendrá características extra, en mi caso, fanático de Twitter, decidí hacer la prueba con ese sitio Web:

    Abro la página de Twitter en IE9 de la manera normal, pero luego tomo la pestaña y la arrastro hacia la barra de tareas.

    2011-03-17 19h40_39

    Al llegar a la barra de tareas, Windows 7 me ofrece la opción de “anclar a la barra de tareas”.

    2011-03-17 19h42_47

    Con solo soltar la pestaña en esa zona, la Web, en este caso Twitter, queda anclada y se convierte en un “Pinned Site” con las siguientes características extra:

    Los botones ahora tienen una personalización especial para el “Pinned Site”, en el caso de Twitter, los botones de atrás y adelante ahora son de color “Twitter Blue”, y a la izquierda de los mismos está el “pajarito” de Twitter que además de cumplir una función decorativa, me sirve de botón “Home” es decir, siempre me lleva al Home de Twitter.

    2011-03-17 19h45_33

    Otra característica extra, tal vez la más importante, es que en la barra de tareas obtengo el mismo botón de Twitter pero con un interesante valor agregado, al hacer click derecho sobre él, obtengo funciones especiales propias de Twitter como: hacer un nuevo Tweet, ver mis mensajes (DMs), ver mis menciones (los replies), ver mis favoritos, buscar… y obviamente las funciones estándar como iniciar una pestaña de navegación privada (sin dejar huellas), desanclar el programa… (que ya no sea un Pinned Site) y cerrar la ventana por supuesto, lo cual no eliminará el Pinned Site, quedará ahí en la barra de tareas listo para cuando se necesite, como si fuera un programa más.

    2011-03-17 19h50_52

     

    El blog de Andrés Ruiz es http://andresruizsays.blogspot.com/ y su usuario en twitter es @andresruiz

    El original de este post lo encuentran aquí

  • WarNov Developer Evangelist

    SetConfigurationSettingPublisher needs to be called before FromConfigurationSetting can be used

    • 2 Comments

    Este error de Windows Azure nos indica que el método FromConfigurationSetting no puede usarse para obtener el valor de una variable de configuración del servicio cloud, pues para poderse usar, es necesario haber establecido un publicador de ajustes de configuración.

    clip_image002

    Se soluciona sencillamente inicializando el publicador con éste código estándar:

    CloudStorageAccount.SetConfigurationSettingPublisher((configName, configSetter) =>
    {
        configSetter(RoleEnvironment.GetConfigurationSettingValue(configName));
    });

    Aquí vemos como Windows Azure es muy flexible pues no nos limita a extraer las variables de configuración de un único archivo (como en el Web.config en el caso de ASP.NET) sino de donde queramos a través de un delegado anónimo.

    Este código se puede poner por ejemplo en el inicializador del WebRole, para que quede disponible durante el resto del ciclo del vida del servicio.

    Pero en este momento algunos de ustedes deben estarle gritando a la pantalla: “Pero si yo ya hice eso!!!”

    No se preocupen… en este caso lo que sucede es que puede que ya estén usando el modo Full IIS propio de la versión 1.3 de las herramientas y SDK de Azure. Esto implica que a pesar de que ya escribieron el inicializador del Publisher, este no se ejecutó en el IIS (w3wp.exe). El inicializador del publicador de configuraciones (aquel que nos permite leer programáticamente las variables que ponemos en los archivos de configuración de los roles) no se inicializará en el sitio Web (que corre en el IIS) pues el código de inicialización que teníamos antes, solo funciona en el entorno de ejecución del WebRole (WaWebHost.exe) pero cuando usamos Full IIS lo que pasa es que el sitio web se ejecuta en el IIS (w3wp.exe) mientras el inicializador del WebRole lo hace en el WaIISHost.exe. Por ende cualquier llamado al archivo de configuraciones desde el sitio Web fallará pues el publicador no se inicializó allí.

    Entonces hay tres opciones de solución.

    1. Elimine la sección de Sites para indicar que todo correrá en HWC (Esto en el caso en que no requiera múltiples sitios en el mismo web role.

    2. Ejecute la inicialización del Publisher en el Application_Start del Global.asax

    3. No use el Publisher para obtener los valores de los setting, sino un código similar a:
    var storageAccount = CloudStorageAccount.Parse(RoleEnvironment.GetConfigurationSettingValue("ConnectionString")); (Esta sería la opción menos clara y menos recomendada, a menos de que solo necesite llamar un par de variables).

  • WarNov Developer Evangelist

    Programar en Windows Phone 7 es cosa de niños

    • 2 Comments

    En este video vemos como un niño de 12 años ya ha creado un par de aplicaciones para Windows Phone 7 y las ha puesto en el marketplace para comenzar a ganar dinero a través de ellas.

    Windows Phone 7 es la nueva alternativa en experiencias de usuario que a nosotros los desarrolladores nos brinda muchas ayudas para poder ser productivos en muy poco tiempo, aprovechando los conocimientos de desarrollo que tenemos en .NET, Silverlight y XNA.

  • WarNov Developer Evangelist

    Cómo empezar con Windows Azure

    • 2 Comments

    Ya he escrito muchos artículos sobre Azure en este blog. Desde básicos hasta avanzados. Sin embargo, con el tiempo más y más personas quieren saber de la plataforma y es útil que tengan un punto de partida sencillo para comenzar. Aunque en mis posts anteriores existe este punto de partida, la plataforma tanto operativa como administrativa de Windows Azure ha sufrido cambios y por ende me permito escribir este post que muestra de manera actualizada cómo escribir una aplicación para Windows Azure y cómo desplegarla en la nube.

    Audiencia: ITPROS y Developers con poco o ningún conocimiento de Windows Azure.

    Si ud. es ITPRO, puede que solo desee ver el Video 2, que es orientado a su rol (Cómo desplegar una aplicación en Windows Azure)

    Si ud. Es Developer, le recomiendo especialmente el Video 1 y también que vea el Video 2 que aunque está enfocado a ITPROS, también tiene contenido que le puede ser útil.

    Esta es más que una simple aplicación Hello World para Windows Azure, pero lo suficientemente sencilla para comenzar con esta tecnología. Simplemente se trata de un sitio web usando la plantilla por defecto de Visual Studio al que se le añadió la funcionalidad de identificar el servidor en Windows Azure desde el cual se responden las peticiones. Esto permite ver que Windows Azure ofrece una naturaleza que permite muy fácilmente trabajar con varios servidores.

    Para exponer esto, les presento un video (Video 1), luego del cual, veremos en otro video cómo se puede desplegar dicha aplicación en la nube de Azure, pasarla de un ambiente de pruebas a producción y hacerla más escalable cambiando un sencillo valor de configuración.

    Video 1: Creación de una aplicación básica para Windows Azure.

    Video 2: Despliegue, paso a producción y escalamiento de una aplicación Windows Azure.

    En este video vemos cómo es de fácil desplegar una aplicación en Windows Azure. Está enfocado a ITPROS y Desarrolladores que desean saber cómo opera la nube de Azure en cuanto a despliegue de aplicaciones. Vemos cómo es de fácil pasar de entornos de pruebas a entornos de producción y también cómo hacer que la aplicación escale mediante la añadidura de nuevos servidores.

  • WarNov Developer Evangelist

    Web Designers vs. Web Developers

    • 2 Comments

    free website builder


  • WarNov Developer Evangelist

    Aprende Windows Phone con los Student Partners de Colombia!!

    • 2 Comments

    Una semana de sesiones dirigidas por Marylin Alarcón y Juan Giraldo sobre las principales características y funcionalidades de la plataforma.

    Al finalizar estarás en la capacidad de crear tus aplicaciones, publicarlas y distribuirlas a través de Marketplace y te enteraras de como participar por la oportunidad de ganar un teléfono Windows Phone 7 completamente nuevo para tus desarrollos o para uso personal.

    Sesion 1 - Preparando el terreno:

    Windows Phone 7 como plataforma para desplegar tus soluciones para tus clientes

    URL de Registro: http://bit.ly/WP7S1

    Sesion 2 - Controles, Launchers y Choosers:

    Utilizando el máximo potencial de los controles Silverlight y las características que nos provee WP7 para nuestras aplicaciones.

    URL de Regitro: http://bit.ly/WP7S2

    Sesion 3 - Databinding y servicios web:

    Cómo WP7 nos permite manipular y comunicar datos desde y hacia el dispositivo.

    URL de Registro: http://bit.ly/WP7S3

    Sesion 4 - Haz tu aplicación:

    Tips adicionales para el desarrollo de tus aplicaciones.

    URL de Registro: http://bit.ly/WP7S4

    Puede revisas la lista completa de requerimientos para trabajar con Windows Phone 7 siguiendo este vínculo: http://bit.ly/WP7HyS

    ¡¡No dejes pasar esta oportunidad de capacitación gratuita!!

  • WarNov Developer Evangelist

    Windows Phone 7 no solo en la nube, sino en la estratósfera

    • 2 Comments

    Hoy en día todo mundo habla de aplicaciones en la nube; y no es que hayan equipos de cómputo allá en el cielo; todos entendemos la metáfora.

    Pero esta genial historia que me cuenta un colega Evangelist del Reino Unido muestra que la metáfora deja de ser figura literaria para convertirse en algo real.

    Esta aplicación de software y hardware se ejecuta en ambas nubes. Se trata del ASTRA 7, un globo estratosférico de gas con un teléfono móvil Windows Phone 7 incorporado, se lanzó desde Cotswolds en Inglaterra. El teléfono hizo su camino a través de las nubes reales y en la estratosfera; donde ejecutó grabación y envío de datos de localización que se procesaron a través de la nube virtual de Windows Azure. El lanzamiento fue diseñado para probar las capacidades de la plataforma de computación móvil de Windows 7 para capturar, analizar y transmitir datos de ubicación de vehículos no tripulados en la atmósfera superior.

    Las aplicaciones del teléfono incluían un "modo de cazador", que permitió al personal ASTRA en terreno realizar un seguimiento de la carga durante su vuelo y además su recuperación.

    El ASTRA 7 alcanzó una altitud máxima de 18.237 metros durante un vuelo de 1 hora y 16 minutos hacia la estratosfera, donde la presión ambiental fue menos de 10 por ciento de su valor al nivel del mar y la temperatura cayó a -58 C. La velocidad máxima alcanzada por ASTRA 7 fue aproximadamente 145 kilómetros por hora y aterrizó a unos 75 kilómetros, muy cerca de la predicción de prevuelo basada en el modelo de simulación de vuelo. ASTRA 7 también tomó más de 1.200 fotos durante su vuelo; una pequeña muestra:

    clip_image001

    El teléfono y el resto de los equipos estaban protegidos por un gabinete de espuma de celdas de alto grado para garantizar el funcionamiento fiable de la electrónica de a bordo en las condiciones ambientales extremas de la atmósfera superior. El gabinete fue fabricado utilizando una herramienta de corte láser. Como parte del proceso de desarrollo de la Bahía de carga, el equipo ASTRA analizó el gabinete de espuma en una cámara de vacío para garantizar que sus propiedades mecánicas serían satisfactorias en el entorno de muy baja presión de la estratosfera.

    Luego ASTRA 7 emprendió un vuelo más largo para ver cómo la tecnología podría afrontar una más prolongada exposición a condiciones estratosféricas. La carga, consistente en un Windows Phone 7, batería y cámara, permaneció Aerotransportada durante aproximadamente 2 horas 40 minutos, cubriendo aproximadamente 110 kilómetros en el proceso.

    Los científicos de ASTRA están extremadamente satisfechos con el rendimiento del paquete Windows 7, que encaja perfectamente con el objetivo de la iniciativa de desarrollo y prueba plataformas capaces de ofrecer instrumentos científicos a través de vehículos no tripulados a altitudes que van desde la capa límite planetaria a la estratosfera superior. El Dr. András Sóbester, líder de la iniciativa ASTRA, resumió bien: "Nos entusiasma que esto constituye una oportunidad única para recopilar datos importantes que darán nueva visión sobre cómo la atmósfera superior afecta el clima de la tierra y el medio ambiente, utilizando tecnología asequible."

  • WarNov Developer Evangelist

    Gana un Windows Phone 7 aprendiendo!

    • 2 Comments

    image

  • WarNov Developer Evangelist

    Bueno si es HTML5, mejor si es nativo, genial si es con IE9 y súper si es con IE10!!!

    • 2 Comments

    “No sé por qué IE no es como Firefox y ya... una aplicación que se instala sin ser intrusiva con el OS a tal punto que ni siquiera exige que se cierre ninguna aplicación. No me gusta que tenga que reiniciar cada vez que instalo un Internet Explorer nuevo! Es como si el IE de alguna manera se entrecruzara con el sistema operativo en alguna suerte de simbiosis” –me dijo alguna vez un buen amigo…

     

    Ya a estas alturas uno sabe que HTML5 permite aplicaciones web de alto contenido interactivo y capacidades de presentación que anteriormente solo eran disponibles en los navegadores a través de plugins.

    La idea principal de HTML5 entonces es lograr que los desarrolladores web creen aplicaciones altamente interactivas que corran en todos los navegadores que lo soporten sin necesidad de la instalación de programas adicionales al browser.

    En parte esto es lo que ha demorado tanto la finalización y por ende la adopción del estándar. Es muy complicado lograr poner de acuerdo a todo el mundo tecnológico en algo que contiene tantas variables como la presentación en navegadores. Hay que definir cuál será el estándar de video, el de audio, el de animaciones, la forma en que se accederá a los periféricos, etc.

    No obstante, siendo esta una necesidad que la industria pide a gritos ser resuelta, desde hace poco más de un año, todo mundo ha enfocado sus esfuerzos a sacar el estándar adelante y se ha visto un avance sin precedentes.

    Cada vez se ve menos utópico el HTML5 finalizado y andando en producción. Y gran parte de estos avances se han logrado desde Microsoft.

    Obviamente la alta interacción se logra a través de una presentación de audio, video y animaciones impecable y a través de un excelente acceso a los periféricos de las máquinas cliente.

    Si uno se fija detenidamente, entonces observa que el éxito de un navegador con todas estas aptitudes radica en las capacidades que tiene para comunicarse con el sistema operativo cliente y de esta manera aprovechar los recursos de las máquinas. Tanto los chips de audio y video, como los dispositivos de entrada como cámaras y micrófonos.

    En este orden de ideas, se deduce entonces que gran parte del éxito del navegador depende de la forma en que este se acople con el sistema operativo. Si este acople es lo suficientemente bueno, las aplicaciones HTML5 sencillamente comenzarán a correr como aplicaciones nativas. Y esto redundará en velocidades y capacidades de ejecución solo vistas en aplicaciones de escritorio o de plugins; redundará en demos que superan con creces la velocidad de aquellos navegadores que no están acoplados al sistema operativo.

    Con el lanzamiento de la versión final de IE9, como siempre escuché divertidos comentarios acerca de cómo Internet Explorer siempre exige reiniciar la máquina para ser instalado, tal como lo cité en el epígrafe de este post.

    Usted amigo lector ya debe ir sabiendo por donde es que va el agua al molino. En un suceso más que afortunado, Microsoft tiene una gran ventaja en la competencia de browsers al tener su browser altamente acoplado al sistema operativo. Es claro a través del tiempo que IE no es una aplicación más en Windows, sino que es un elemento muy integrado al entorno.

    Precisamente este hecho permite que tras el advenimiento de HTML5, IE9 pueda aprovechar todo el poder de hardware de la máquina directamente. Esto a través de la alta integración con el sistema operativo. Ofreciendo esto a su vez una cantidad de funcionalidades y una velocidad asombrosa. Así que por lo menos para mí, reiniciar la máquina no será un problema si luego voy a tener aplicaciones que corren hasta diez veces más rápido que aquellas en otros browsers.

    Entonces, cuando ustedes vean la demo de los pescaditos o su versión modernizada en donde ya podemos oír sonidos HTML5, ver un fondo acuático que consiste en un video HTML5, y podemos además componer la escena con sombras, brillos, máscaras, frames y demás sabrán que la asombrosa velocidad no es debida a que son demos hechas por Microsoft, sino a que con Windows más IE9 se tiene una experiencia nativa de HTML5 que aprovecha mucho mejor el hardware.

    imageimage

    IE vs FF (parece que algún pez se convirtió en pescado a la derecha)

    No obstante, he oído comentarios de seguidores de otros navegadores que dicen que no les importa la aceleración por hardware, dado que están contentos con que su browser es 100% compatible con ciertas pruebas sobre diversos estándares (punto débil en anteriores versiones de IE. Pero para nada en la 9, donde tiene índices de compatibilidad y estandarización asombrosos). Pero quisiera que pensaran en aplicaciones altamente interactivas con muchas animaciones, videos y sonidos; en ese momento notarían la necesidad de poder aprovechar esta aceleración.

    Veamos a continuación algunos ejemplos de aplicaciones que son mejores cuando se generan nativamente, en un video que explica más que una mega de palabras:

    Las fuentes de este video son:

    IETestDrive

    De aquí pueden descargar el Platform Preview 1 de IE10 y además encuentran los demos de la pecera y de PaintBall así como innumerables aplicaciones adicionales que muestran el poder de IE10 sobre estándares y HTML5

    Forsquare Playground

    Aplicación que genera un vecindario visual basada en la información que brindan los usuarios de Forsquare y el api de localización de HTML5

    World’s Biggest Pacman

    El juego de pacman más grande del mundo

    Adicionalmente en este otro video, podemos ver una prueba realizada con una aplicación no realizada por Microsoft sino por gente de Mozilla, en la cual se explota el Canvas2D de HTML5. También se aprecian las ventajas nativas:

    Para finalizar con las pruebas, les recomiendo que con sus navegadores vean este sitio del artista Bon Jovi. Creado sobre HTML5 para explotar el tag de video en toda su extensión al presentar múltiples videos en una misma pantalla enmascarados y combinados. La idea es que existe un video musical con distintos ángulos de cámaras y nosotros nos convertimos en los directores al armar la secuencia de cámaras que deseamos. Y todo con HTML5 funcionando perfectamente en IE9. Al probarlo en Chrome el sitio demora mucho en funcionar y finalmente acaba con la paciencia del usuario que decide ir a probar en Firefox… Al probar en Firefox no aparecen los videos. Esperemos que pronto todos los browsers lleguen a un estado aceptable para que las aplicaciones que hagamos sobre HTML5 funcionen correctamente para todo el mundo.

  • WarNov Developer Evangelist

    URLs Limpias de MVC no funcionan en producción!

    • 2 Comments

     

    Hoy desplegué un sitio con ASP.NET MVC 2.0 en mi hosting, pero no funcionó bien. Me arrojó un 404 tratando de acceder http://warnov.com/MSBlog . Como puedes ver es una URL especial basada en el ruteo de MVC.

    clip_image001

    Para que este ruteo funcione, es necesario que IIS esté configurado para correr en Integrated Mode en mi aplicación. Yo creo que en vez de estar en Modo Integrado, ahora allá en mi proveedor de hosting, está en Modo Clásico.

    Por qué sucede esto?

    IIS 7.0 puede procesar las peticiones usando dos modos de proceso: integrado y clásico. El modo integrado provee más performance y características. El modo clásico está incluido para ofrecer compatibilidad hacia atrás.

    Les escribí a los operadores del hosting, que me gustaría saber si es posible que me puedan ayudar ajustando el IIS para mi aplicación en modo Integrado (DefaultAppPool) para que pueda correr mi aplicación con MVC2.

    Sé que esto podría acarrear problemas de compatibilidad con sitios viejos, pero lo bueno es que es un cambio a nivel de ApplicationPool, así que si mi aplicación no comparte el pool, será un cambio muy sencillo.

    Por el contrario, si el AppPool es compartido, les sugería que crearan un AppPool aparte, especial para todos los que queramos poner aplicaciones de avanzada que aprovechen todo el poder del Framework.NET

    Esperemos que me responden…

    Al final, les adicioné unas instrucciones de IIS 7.0 para que las ejecuten en caso de que me puedan colaborar… estas instrucciones deberían servirte si estás pasando por el mismo problema:

    1. Abrir el administrador de IIS

    2. Seleccionar la aplicación en el menú de Conexiones

    3. En el menú de acciones dar click en Basic Settings para abrir al diálogo “Edit Application”

    4. Seleccionar el tipo de ApplicationPool requerido:

    clip_image002

    En IIS 7.5 (el de Windows 7) es mucho más fácil; les dejo un cortísimo video:

Page 3 of 14 (335 items) 12345»