¡Microsoft MVP 2014 – APS.NET/IIS!

Microsoft MVPTengo la gran alegría de, por tercer año consecutivo, ser reconocido como Microsoft MVP (Most Value Professional) en el área deASP.NET/IIS y por supuesto no quería dejar de compartirlo con todos ustedes!.

Quiero agradecer a todos mis compañeros de trabajo y colegas de los cuales sigo aprendiendo muchísimo en el día a día y por supuesto a mi familia que siempre me está aguantando :). Agradecimiento particular a mi compañero y amigo @diegobersano, a mis compañeros de laburo @MfFerrero, @francoferrari86, @maxilovera y @camboris, a un gran colega como @jmaguilar y a @aschapiro que desde Microsoft siempre colabora conmigo y me da la oportunidad de participar en programas de MS. Por último agradecer a mi gran maestro @MartinSalias que siempre esta iluminándome!

Espero que este año pueda seguir ayudando a que esta gran comunidad siga creciendo.

¡Gracias a todos!

Nuevo blog! Microsoft Dev Blog

Es para mi un gusto compartir con toda la comunidad el blog Microsoft Dev Blog que comenzamos recientemente con mi gran compañero y amigo @diegobersano. Hace ya un tiempo que venimos con la idea de armar este blog en conjunto, pero por distintos motivos y falta de tiempo se venia postergando.

Microsoft Dev Blog tiene como fin poder compartir los conocimientos y experiencias  que vamos adquiriendo en tecnologías .NET, en principio arrancaremos con Azure pero tenemos pensado ir escribiendo sobre Windows Phone y ASP.NET entre otras novedades tecnológicas.

Microsoft Dev Blog

Microsoft Dev Blog

Espero que les sea útil y desde ya estamos a disposición de todos!

AppCeleration Program III

Tal como les prometí en una entrada anterior, les dejo la convocatoria a la tercera edición del programa!

AppCeleration Program III

Porque creemos que la construcción de nuestro negocio se logra mediante la obtención de resultados excepcionales para nuestros clientes y socios, estamos lanzando la 3ra edición del Windows Appceleration Program, el programa de Microsoft que ayudará a tu empresa a aumentar tus oportunidades de negocio y ganancias, acompañándote en el proceso de diseño, desarrollo, publicación y promoción de tu app y con la posibilidad de ganar un Windows Phone Nokia Lumia (bases y condiciones aquí ).

Acerca del programa

El Windows Appceleration Program estará dirigido a una cantidad reducida de proyectos que seleccionaremos entre las empresas de Argentina y Uruguay que se postulen. Quienes finalmente ingresen al programa serán acompañados de manera personal en el ciclo de vida completo del desarrollo de una aplicación ofreciéndoles nuestros recursos profesionales, capacitación y herramientas, con un enfoque de colaboración a largo plazo centrándonos en garantizar los mejores resultados de calidad, los cuales serán avalados mediante el logo de participación en el programa (que recibirán una vez finalizado el proceso) y mediante la posibilidad de recibir recursos de forma directa para la promoción de tu app por parte de Microsoft/Nokia.

Acerca de la oportunidad de mercado

Windows Phone:
Según IDC, es el tercer ecosistema global ampliamente consolidado en esa posición y el de mayor crecimiento (156% YoY). En Europa es el de mayor crecimiento en los 5 países más grandes, destacando crecimientos absolutos de 7.5 puntos YoY por ejemplo en UK según Kantar World Panel. Según IDC, en LATAM WP ya es el segundo ecosistema, con amplio crecimiento en Argentina, Brazil, Chile, Colombia, México y Perú. A nivel local, WP cuenta con las principales apps/marcas presentes en el Store, incluyendo medios, lifestyle, banca, juegos, deportes, y los niveles de descargas se ven apoyados por acciones puntuales de MKT y destaque de apps en el WP Store como parte de acciones locales.

Windows 8:
Hoy en día existen solo en Argentina y Uruguay, 15 millones de PCs con Windows. Windows 8 ya supera el 10% de Market Share en PCs y cumple la expectativa de ofrecer una experiencia “sin compromiso” que resulta ser fantástica de cara a la productividad y la movilidad. Resulta divertido para los usuarios y se administra fácilmente en la empresa. Windows 8.1 se ha creado sobre Windows 8 y habilita una nueva oleada de innovación en aplicaciones. En Windows 8.1, las aplicaciones continúan ocupando un lugar central y presentan nuevas maneras de interactuar con el sistema. La Tienda Windows continúa ofreciendo grandes oportunidades gracias a una mejor comercialización y a la mejora de la detección de las aplicaciones. Y, por supuesto, Windows sigue ofreciendo a los desarrolladores un abanico de opciones incomparable: podrán elegir el lenguaje de programación (C#, C++, JavaScript o VB), la tecnología de presentación (XAML, HTML o DirectX) y el modelo de negocio a través de la Tienda Windows.
La plataforma permite integración con servicios móviles en la nube, in-App purchasing, posibilidad de preinstalar las aplicaciones en los equipos a través de los fabricantes, y el porcentaje de las ventas generadas que Microsoft entrega al desarrollador aumenta a un 80% a partir de los 25.000 USD de facturación.

Windows 8 y Windows Phone juntos permiten llegar a un amplio espectro de dispositivos, no solo cubriendo Smartphones, sino también PCs de escritorio, laptops y tabletas, facilitando una mayor cantidad de descargas.

Me interesa. ¿Cómo sigo?

Interiorizate sobre los detalles del programa y postulá tu proyecto antes del 7 de marzo, contándonos la empresa, aplicación a realizar como parte del programa, plataforma para la cual se hará, estado del proyecto, cantidad de miembros que participaran, experiencia previa, objetivos de la participación, etc.

AppCelerationProgam.Resume();

Este año tuvimos la oportunidad de participar en la primer y segunda edición del AppCeleration Program que lanzo Microsoft a principios de este año. En la primer edición participamos con un proyecto para Windows Phone y en la segunda edición ya como tutores de otros proyectos.

AppCeleration Program

¿De qué se trata el AppCeleration Program? En este programa Microsoft selecciona proyectos móviles de agencias del mercado y los acompaña en un proceso de 2 meses de aceleración para el desarrollo de sus aplicaciones móviles en Windows 8 y/o Windows Phone. En las primeras semanas Microsoft ofrece capacitaciones en sus oficinas y luego se establecen entregables o hitos que son monitoreados por los tutores (entre ellos se encuentran definición funcional de la app, registración en el store, publicación versiones 1.0, 2.0 y 3.0) . Además, esta la posibilidad de que tu aplicación figure en el Nokia Application Highlights durante 15 días!

En la primera edición (que arrancó el 10 de abril) presentamos un proyecto para Windows Phone de una app que ya teníamos desarrollada en otras plataformas móviles. Tuvimos la suerte de trabajar junto a dos grandes de Microsoft ArgentinaAriel Schapiro y Miguel Saez. y junto a Daniel Priego quien nos dio una mano en las cuestiones de UX. De las cosas que mas destaco, es que en un periodo relativamente corto de tiempo y teniendo poca experiencia en este tipo de proyectos, pudimos tener la cuenta del store creada y la aplicación publicada. Además tuvimos la suerte de conocer y compartir experiencias con otros colegas.

AppCeleration Program I

AppCeleration Program I

En la segunda edición (inicio el 12 de septiembre) participamos como tutores del programa. En esta oportunidad dimos asesoramiento a dos proyectos para Windows Phone: uno del Ministerio de Agricultura y Ganadería de la Nación – app Precios – y el otro una aplicación desarrollada con PhoneGap – app Conectate -. Para nuestra alegría, la aplicación Precios obtuvo un reconocimiento por parte de Microsoft y Nokia quienes destacaron el uso eficiente de las características que tiene WP. Otra cosa que rescato fue el feedback entre MS y los tutores acerca del programa en general.

AppCeleration Program II

AppCeleration Program II – Tutores

Esta en los planes una tercera edición para principios del año que viene, por lo que les recomiendo que estén atentos y puedan aprovecharlo al máximo! Prometo mantenerlos al tanto 🙂

One ASP.NET

Para quienes llevan un buen tiempo programando con tecnologías .NET recordaran que aya por el 2001 Microsoft sacaba al mercado algo llamado .NET Framework y acto seguido una nueva tecnología llamada ASP.NET. En aquellos años Internet empezaba a jugar un papel cada vez mas importante y era el momento de entrar en ese mercado. Y ASP.NET fue pensado justamente para atraer a los desarrolladores de aplicaciones de escritorio al desarrollo de páginas-aplicaciones web. Para que el cambio fuese lo mas transparente posible para los developers, ASP.NET adoptó el concepto de WebForms: formularios web donde podíamos arrastrar controles y con un simple “doble click” bindear eventos a los mismos y programarlos en el code behind (una forma de desarrollo muy parecida a la de WinForms).

Luego de un largo tiempo, a principios de 2009, aparece dentro de ASP.NET el patrón MVC y con él ASP.NET MVC 1 (una gran alegría para muchos de los desarrolladores web que esperábamos un cambio en el framework para que sea más orientado a la web!).  A medida que avanzaron los años este framework fue creciendo y con el aparecieron las versiones 2, 3, 4 y recientemente la versión 5.

Pero ASP.NET no solo se conforma de estos dos frameworks (Web Forms y MVC), con los grandes avances en el mundo web, en 2012 se añaden nuevos frameworks a la familia: Web API, SPA y SignalR (tengo pendiente un post sobre el mismo).

Ahora bien, aunque todos forman parte de la familia ASP.NET, generalmente se los suele identificar como proyectos independiente entre sí, sin relación uno con el otro. Esta visión no es correcta y con One ASP.NET se quiere reforzar esta idea.

La idea tras One ASP.NET es tener un único proyecto ASP.NET que podemos customizarlo a partir un conjunto de tecnologías web:

One ASPNET

One ASPNET

Por eso con Visual Studio 2013 cuando vamos a crear un nuevo proyecto web nos vamos a encontrar con una única plantilla “ASP.NET Web Application“:

ASP.NET Web Application

ASP.NET Web Application

Este cambio claramente refuerza el concepto de una única aplicación ASP.NET.

Una vez que creamos el proyecto se nos pedirá que elijamos las tecnologías con las que vamos a trabajar:

Seleccionando las tecnologías ASP.NET con las cuales trabajar.

Seleccionando las tecnologías ASP.NET con las cuales trabajar.

También podemos configurar de forma unificada aspectos como autenticación y testing unitario.

Algunos podrán decir que esto es simplemente un paso “extra” en la selección del template de proyecto a utilizar, sin embargo tras esta idea hay una nueva visión que pretende integrar este conjuntos de tecnologías bajo una única plataforma y finalmente borrar ese concepto que tenemos de proyectos independientes e incompatibles entre sí.

Por último recomiendo el post de José Manuel Alarcon hablando al respecto!

Abrazos!

Bienvenido ASP.NET MVC 5!

ASP.NET MVC

ASP.NET MVC

Como muchos ya sabrán hace poco Microsoft lanzo nuevas versiones de sus productos y frameworks, entre ellos Visual Studio 2013 (producto) y ASP.NET MVC 5 (framework).

ASP.NET MVC 5 no trae demasiadas novedades (como en versiones anteriores) y por el momento solo esta disponible – de forma totalmente integrada – con VS2013 (es posible utilizarlo en VS2012 instalando los binarios por medio de Nuget: Install-Package Microsoft.AspNet.Mvc).

En este post solo vamos a nombrar las nuevas features del framework, y en siguientes post vamos a ampliar sobre cada una.

Características:

  • One ASP.NET
    Es una nueva plantilla de proyectos ASP.NET que permite customizar y configurar nuestras aplicaciones MVC.
  • ASP.NET Identitity
    Los templates de proyectos ASP.NET MVC se han actualizado para usar ASP.NET Identity en cuestiones de autenticación y gestión de identidad.
  • Bootstrap in the MVC template
    Integración de Bootstrap en las vistas para proporcionar un aspecto elegante y responsivo a nuestras aplicaciones.
  • Authentication Filters
    Nuevos tipos de filtros de autenticación que se complementan al filter [Authorize]. Estos se ejecutan previamente y permiten añadir lógica para validar un usuario y asociarlo a la petición (ya sea a nivel de una acción, controlador o de forma global).
  • Filter overrides
    Permiten definir que filtros no se deben ejecutar en un método de acción o controlador. Por ejemplo podemos definir un filter de forma global y especificar que para cierto controlador o acción el mismo no se ejecute.
  • Attribute routing
    Soporte para routing basado en atributos (gracias a la contribución de Tim MacCallhttp://attributerouting.net). Esta característica nos permite definir nuestras rutas utilizando atributos sobre las propias acciones y controladores.

Si bien nos son revolucionarios los cambios de esta nueva versión de ASP.MVC, hay mucho por investigar, estudiar y conocer 🙂

Nos vemos en próximos post ampliando cada una de estas características!