Mostrando entradas con la etiqueta Microsoft. Mostrar todas las entradas
Mostrando entradas con la etiqueta Microsoft. Mostrar todas las entradas

jueves, 28 de abril de 2016

Lo bueno, lo malo y lo feo de Xamarin (Mi experiencia con Xamarin)

Decidí escribir este post para hablar un poco como me ha ido estos últimos años trabajando con Xamarin y compartir algunos aspectos que pueden ser de ayuda cuando hay que decidir entre usar esta plataforma o crear apps nativas.

Los últimos tres años he trabajado con Xamarin (Xamarin.Android y Xamarin.iOS no he usado Xamarin.Forms en proyectos "reales") creando todo tipo de apps y en distintos escenarios, he creado apps para las plataformas móviles, otra que solo son Android y Desktop, una mas que además de los móviles comparte código con una pagina web, apps que se ejecutan en tabletas Android con hardware a la medida, he integrado dispositivos de hardware de terceros, entre otras cosas.

A lo largo de esos desarrollo me he encontrado con muchos retos, retos técnicos relacionados directamente al código que estoy creando y otros relacionados a los factores que son importantes durante el desarrollo, por ejemplos los entornos de desarrollo, la documentación, la calidad del soporte técnico de Xamarin, etc.

Básicamente en ese contexto ha sido mi trabajo y partiendo de eso voy a escribir sobre las cosas que mas me han gustado y las que no me han gustado sobre esta plataforma, por supuesto hay mas cosas que puedo no estar mencionando.



Lo bueno


1 – Uso de código .NET

La causa por la que se decidió usar Xamarin en la empresa en la que trabajo fue porque ya se tenía una lógica de negocios en C# (mas de 50 clases), la cual llevaba muchos años funcionando en ambientes “tradicionales” (desktop y servidor). Para usar esta lógica en Xamarin.Android y Xamarin.iOS fue tan simple como compartir el proyecto Core con estas plataformas usando un plugin para Visual Studio (Project Linker, *ya VS permite hacerlo sin plugins), en el caso de WP hubo que modificar algunas clases por unas mas modernas para el manejo de XML, lo mejor es que esta actualización de clases funcionaba en las demás plataformas, de este modo no hubo que mantener varias versiones del Core.


2 – El soporte técnico

Otra de las ventajas es el soporte técnico, en general cuando he preguntado algo al mail de soporte obtengo respuesta al siguiente día hábil y siempre me ha respondido gente con toda la disponibilidad de resolver el resolver el problema.


3 – La documentación

La documentación es muy completa, prácticamente todo lo necesario para comenzar se encuentra en su sitio web para desarrolladores, también los errores mas comunes ya tienen respuesta en su foro o en sitios como stackoverflow. Si eso no funcionaba había mucha documentación buscando como MonoDroid y MonoTouch (antecesores de Xamarin.Android y Xamarin.iOS) aunque hace mucho tiempo que no he tenido que recurrir a eso.


4 – Uso de código Java y Objective C

Algo que me ha parecido muy bueno es la capacidad de poder utilizar librerías nativas en los proyectos Xamarin, por ejemplo si por cuestiones de tiempo o falta de experiencia es necesario el apoyo de alguien que solo conoce de Android con Java u iOS con Objective C, para mi ha sido muy sencillo que esta persona de apoyo encapsule todo en una librería nativa y yo consumirla desde Xamarin. 


5 – Curva de aprendizaje para iOS

De las cosas que mas me han gustado de iOS es que no es necesario conocer Objective C para poder crear apps si solo usaremos código C# sin usar alguna librería creada en Objective C podemos manejar métodos, el ciclo de vida, objetos, etc. como en cualquier programa .Net con C#, por ejemplo no es necesario crear outlets y actions de manera manual cuando se trabaja con interfaces gráficas, Xamarin hace esto transparente para nosotros.


6 - ALM

Finalmente algo que me ha funcionado perfectamente bien es la integración con Visual Studio Team Services para el control de código fuente, nunca he tenido problemas con los diferentes archivos que se usan para el trabajo con las apps Xamarin.Android o Xamarin.iOS. Hace poco comencé a probar HockeyApp en una de mis apps y ha funcionado de maravilla.


Lo malo y lo feo


1 – Actualizaciones

Creo que una de las cosas que deben mejorar es el tema de las actualizaciones, en ocasiones cuando he actualizado cualquier cosa del entorno (principalmente la Mac) todo deja de funcionar, por ejemplo una vez salió una versión nueva de Xamarin Studio en el canal “estable” de actualizaciones y dejo de funcionar todo mi proyecto de iOS, tuve que regresar a la versión anterior (un proceso muy tedioso) y esperar a una versión mas actual para poder actualizar. Contactando al soporte me pedían usar una versión Beta, lo cual para una app empresarial conlleva ciertos riesgos.  Creo que si el instalador de actualizaciones y/o el IDE verificaran las versiones compatibles de ambiente (Sistema Operativo, XCode, Java, etc. ) se evitarían estos problemas o sería mas fácil saber que corregir.


2 – Soporte técnico

Otro tema es que aunque el soporte es muy amable y busca solucionar los problemas, siempre solicitan el código fuente de tu proyecto que falla, lo cual es difícil porque no siempre puedo obtener autorización para andar enviando proyectos por correo. Algo importante que mencionar es que generalmente los problemas son del entorno de desarrollo y no del código por lo cual no me hace sentido que me pidan el código si les informo de un problema de con el diseñador de interfaces de Android o si Visual Studio se cierra cuando quiero ver las propiedades del proyecto y eso no sucede en Xamarin Studio. Los logs que genera Xamarin tanto en PC o en Mac tiene mucha información y muy rara vez los solicitan, por lo cual si uno no sabe de su existencia puede perder mucho tiempo antes de que ellos los soliciten, explicando de donde se deben obtener.


3 – Dificultad para usar librerías Objective C

Es muy útil poder usar código nativo sin embargo en el caso de iOS es un poco complicado hacer los binding para utilizar librerías nativas en el proyecto Xamarin,   hay que tener conocimientos medianamente solidos de Objective C, lo cual quita la ventaja de la curva de aprendizaje si nuestro proyecto depende de algo ya creado de manera nativa, por ejemplo el SDK de un dispositivo de hardware.


4 – Dificultad para ejecutar un proyecto nuevo

Uno de los temas que no me parece muy grave pero si es un poco molesto es lograr que un proyecto se ejecute por primera vez, sobre todo Xamarin.Forms. Entre errores por la descarga de paquetes nuget, errores con las API de Android seleccionadas por defecto, etc. podemos perder un par de horas (sobretodo si estamos empezando a conocer la plataforma) en lograr ejecutar el proyecto en blanco. La parte rescatable es que mucho errores son comunes y la solución es fácil de encontrar en los foros de Xamarin, la otra parte buena es que después de que logramos ejecutarlo casi nunca vuelve a haber problemas de este tipo a lo largo del desarrollo.


5 – Integración con Visual Studio

Por último algo que creo debe mejorar mucho (sobretodo ahora que están pidiendo que se use Visual Studio y nos olvidemos de Xamarin Studio para PC) es el soporte para Visual Studio, este es demasiado inestable cuando se trabaja con Xamarin, en ocasiones un mismo proyecto puede funcionar perfecto en Xamarin Studio y no en Visual Studio. Es importante aclarar que no he tenido ningún problema de estabilidad con las apps ya empaquetadas,.



Al final ¿recomiendas Xamarin?

Si lo recomiendo, les puedo decir que es una plataforma muy buena para el desarrollo de apps iOS y Android (Mac no lo he usado) y fácilmente se integra con proyectos Microsoft .NET (Desktop, Web, Consola, ensamblados dll, etc.). La plataforma aun tiene mucho por mejorar (en ocasiones hay que tener mucha paciencia, sobretodo siendo nuevo) sin embargo al día de hoy no tengo quejas en cuanto a la estabilidad de los productos finales y creo que la clave para lograr crear aplicaciones que aprovechen esta plataforma esta en entender los conceptos básicos sobre los diferentes tipos de proyectos y las estrategias para compartir el código, de lo contrario se terminan haciendo aplicaciones nativas independientes con la diferencia de usar C# en lugar de Objective C y Java.

martes, 9 de febrero de 2016

Fundamentos de .NET y C# en TelmexHub

El día sábado 6 de Febrero comencé un curso de C# en TelmexHub. La idea de esta primera sesión era mostrar a los asistentes los fundamentos teóricos del lenguaje C# y la paltaforma Microsoft .NET, esto con la finalidad de que en un futuro cercano se de un curso de Xamarin donde se puedan aprovechar estos conocimientos desarrollando apps móviles.








También les comparto la presentación que utilice durante la primera sesión del curso.

Los temas que abarca son:

  •  Fundamentos de .NET (CLR, CLI, CIL, proceso de compilación, componentes de .NET) 
  • ¿Qué es C#? 
  • Variables y tipos de datos 
  • Expresiones Operadores


 

viernes, 29 de enero de 2016

Universal Windows Platform con Xamarin

Hola,

Les comparto este vídeo con el procedimiento de como utilizar Xamarin.Forms para crear aplicaciones para Windows 10 o de la llamada Plataforma Universal de Windows.


lunes, 21 de diciembre de 2015

Xamarin 4 Party Ciudad de México

WP_20151217_10_10_49_Pro
El pasado jueves 17 de Diciembre se llevo a cabo una Xamarin 4 Party en la ciudad de México.
En las oficinas de Microsoft México tuve la oportunidad de dar una serie de charlas sobre las novedades que tiene la versión 4 de Xamarin la cual fue lanzada en noviembre de este año.
Los temas fueron:
  • La plataforma Xamarin y Xamarin University
  • Xamarin.Forms 2.0
  • Xamarin Insigths
  • Xamarin UI Test
A continuación les dejo la galería de fotos del evento.
 
Y también les comparto las presentaciones que sirvieron de apoyo para mis exposiciones.

martes, 17 de noviembre de 2015

Serie de vídeos en español sobre Xamarin en Microsoft Channel 9

El día de hoy se publico el primer vídeo de una serie de vídeos sobre desarrollo con Xamarin, estos vídeos van a abarcar los temas básicos para comenzar a desarrollar apps IOS y Android y lo mejor de todo es que estarán en español.

En este primer vídeo hablo sobre los productos que ofrece Xamarin, cuales son las ventajas de utilizar la plataforma en el desarrollo de apps para IOS y Android; y también muestro como crear una cuenta con licencia de tipo Starter para comenzar a crear proyectos desde Visual Studio. 

Sin mas que decir este es el vídeo:


jueves, 20 de agosto de 2015

Guardar datos de contacto en una etiqueta NFC con WP 8.1

Hace unos días encontré una etiqueta NFC que tengo desde hace unos años y por curiosidad decidí probar si aun funcionaba. Después de comprobar que aun funciona decidí actualizar mi App, la cual estaba hecha para Windows Phone 8, a Windows Phone 8.1 utilizando la función que sirve para generar una vCard para compartir datos de contacto mediante NFC.

Parte teórica

Elegí esta función sobre otras (escribir un “Hola Mundo” o un enlace a una página web) debido a que el crear una vCard involucra entender de mejor manera un estándar para almacenar datos NFC, voy a tratar de explicarlo de manera muy rápida, dejando algunas fuentes que me sirvieron por si quieren conocer mas a fondo del tema.

El estándar NDEF (Data Exchange Format) creado por el NFC Forum sirve para definir la estructura de datos de aplicación que se transmiten entre dos dispositivos NFC. Por otro lado el NFC Forum también definió el concepto de “NFC Forum Type Tag Operations” el cual sirve para identificar el tipo de operación que va a realizar una TAG NFC.

Para una referencia formal sobre este tema pueden visitar este documento; http://www.nxp.com/documents/other/R_10014.pdf y por supuesto la página del NFC Forum con las especificaciones http://members.nfc-forum.org/specs/spec_list/ 

Ya entrando al tema importante del post, lo primero es tener el formato en que se guardara la información de contacto en la etiqueta NFC, el cual es el siguiente para este ejemplo:

BEGIN:VCARD
VERSION:2.1
FN:
N:;
TEL;CELL:
EMAIL;INTERNET:
END:VCARD

Se pueden agregar mas datos siguiendo el estándar de una vCard, en este caso con la información de Wikipedia es suficiente https://en.wikipedia.org/wiki/VCard

Resumiendo todo lo mencionado anteriormente, lo que se va a hacer el lo que muestra este diagrama tomado del primer pdf sobre NDEF que deje mas arriba
image
  1. La entrada son los datos que se van a almacenar, en este caso los de la tarjeta de contacto
  2. El mensaje NDEF que encapsula lo anterior. Este mensaje tiene la siguiente estructura:
image
Parte importante aquí es que el mensaje define el tipo de dato que contiene, en el PDF se encuentra una lista muy completa de los tipos de dato. Algunos ejemplos (incluido el que usaremos)
image
  1. El NFC Type Tag Platform, para entender mejor esto si hay que leer la especificación del NFC Forum  debido a que habla de las especificaciones de las etiquetas como la memoria, velocidad, etc.
  2. Y finalmente la etiqueta donde se va a almacenar esta información.

Parte practica

Ahora si ya viene el código, para empezar definimos la interfaz XAML de nuestra aplicación, la cual simplemente contiene los campos con los datos (Nombre, apellido, teléfono y e-mail)
<Page
    x:Class="NfcVCard.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:NfcVCard"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d"
    Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">


    <Grid x:Name="LayoutRoot" Background="Transparent">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>

        <!--TitlePanel contiene el nombre de la aplicación y el título de la página-->
        <StackPanel Grid.Row="0" Margin="12,17,0,28">
            <TextBlock Text="NFC Writer" Style="{StaticResource SubheaderTextBlockStyle}"/>
            <TextBlock Text="vcard" Margin="9,-7,0,0" Style="{StaticResource HeaderTextBlockStyle}"/>
        </StackPanel>

        <!--ContentPanel. Colocar aquí el contenido adicional-->
        <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
            <StackPanel>
                <TextBlock>Nombre</TextBlock>
                <TextBox InputScope="NameOrPhoneNumber" x:Name="txtNombre"></TextBox>
                <TextBlock>Apellido</TextBlock>
                <TextBox InputScope="NameOrPhoneNumber" x:Name="txtApellido"></TextBox>
                <TextBlock>Telefono</TextBlock>
                <TextBox InputScope="TelephoneNumber" x:Name="txtTelefono"></TextBox>
                <TextBlock>Mail</TextBlock>
                <TextBox InputScope="EmailSmtpAddress" x:Name="txtMail"></TextBox>
                <Button x:Name="btnEscribir" Click="btnEscribir_Click">Escribir Tag</Button>
            </StackPanel>
        </Grid>
    </Grid>


</Page>



Y el código de funcionalidad es el siguiente:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices.WindowsRuntime;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.Networking.Proximity;
using Windows.Storage.Streams;
using Windows.UI.Popups;
using Windows.UI.ViewManagement;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;

// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=391641

namespace NfcVCard
{
    /// <summary>
    /// An empty page that can be used on its own or navigated to within a Frame.
    /// </summary>
    public sealed partial class MainPage : Page
    {
        public MainPage()
        {
            this.InitializeComponent();

            this.NavigationCacheMode = NavigationCacheMode.Required;

        }

        /// <summary>
        /// Invoked when this page is about to be displayed in a Frame.
        /// </summary>
        /// <param name="e">Event data that describes how this page was reached.
        /// This parameter is typically used to configure the page.</param>
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            // TODO: Prepare page for display here.

            // TODO: If your application contains multiple pages, ensure that you are
            // handling the hardware Back button by registering for the
            // Windows.Phone.UI.Input.HardwareButtons.BackPressed event.
            // If you are using the NavigationHelper provided by some templates,
            // this event is handled for you.

        }

        ProximityDevice _device;
        private void btnEscribir_Click(object sender, RoutedEventArgs e)
        {
            StatusBarProgressIndicator progressbar = StatusBar.GetForCurrentView().ProgressIndicator;
            progressbar.ShowAsync();
            progressbar.Text = "Acerca la etiqueta";
            btnEscribir.IsEnabled = false;

            string nombreCompleto = txtNombre.Text + " " + txtApellido.Text;
            string nombre = txtNombre.Text;
            string apellido = txtApellido.Text;
            string celular = txtTelefono.Text;
            string mail = txtMail.Text;
     //Obtenemos el dispositivo NFC del teléfono
            _device = ProximityDevice.GetDefault();
            //Creamos la tarjeta virtual con el formato que debe ser
            var vcard = string.Format("BEGIN:VCARD\nVERSION:2.1\nFN:{0}\nN:{1};{2}\nTEL;CELL:{3}\nEMAIL;INTERNET:{4}\nEND:VCARD", nombreCompleto, apellido, nombre, celular, mail);
            //El DataWriter que contiene los datos para escribir el mensaje binario a la etiqueta NFC
            var dataWriter = new DataWriter() { UnicodeEncoding = UnicodeEncoding.Utf8 }; dataWriter.WriteString(vcard);
            //Publicamos el mensaje binario en la etiqueta NFC, definimos el tipo de mensaje que es y támbien que método se va a ejecutar al finalizar el guardado
            _device.PublishBinaryMessage("WindowsMime:WriteTag.text/vcard", dataWriter.DetachBuffer(), MesssageTransmitted);
        }

        private async void MesssageTransmitted(ProximityDevice sender, long messageId)
        {
            //Le indicamos al dispositivo que deje de escribir el mensaje
            _device.StopPublishingMessage(messageId);



            await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
            {
                StatusBarProgressIndicator progressbar = StatusBar.GetForCurrentView().ProgressIndicator;
                progressbar.HideAsync();
                btnEscribir.IsEnabled = true;
                new MessageDialog("Contenido guardado").ShowAsync();
            });
        }
    }
}

Para que lo anterior funcione de manera correcta hay que hacer dos cosas extra, hay que darle los permisos necesarios a la aplicación para que pueda usar el sensor NFC, de lo contrario obtendremos el error

An exception of type 'System.UnauthorizedAccessException' occurred in NfcVCard.ni.EXE but was not handled in user code

Additional information: Access is denied.

Esto se hace en el Manifiesto en la secciones de “Requirements” y “Capabilities”

image

image

En este enlace dejo el código fuente: Proyecto NFC

Aquí también un pequeño video de muestra de como se ve el proyecto en acción y como la etiqueta se puede leer perfectamente desde WP y desde un dispositivo con Android.


sábado, 22 de diciembre de 2012

¿Quieres obtener experiencia profesional y trabajar en la mejor empresa de tecnología de México?



Microsoft te está buscando.

Buscamos a un estudiante bilingüe que al menos curse los 2 últimos semestres de una carrera profesional apegada al ámbito tecnológico o innovación en Monterrey, que sea apasionado por la tecnología y con ganas de formar parte de la transformación en la historia de la industria de Tecnologías de Información mostrando pro actividad, calidad, compromiso en su trabajo y las ganas por formar parte de la mejor empresa de México.

Nuestros Interns formarán parte del equipo de Servicios de Microsoft Monterrey y tendrán la oportunidad de desarrollar sus conocimientos así como adquirir experiencia en las áreas de desarrollo e infraestructura.

Nuestro proceso de reclutamiento funcionará de la siguiente manera:
1. Envía un correo con tu CV a v-dulceh@microsoft.com de nuestro departamento de Recursos Humanos, quien analizará tu perfil y seleccionará a los mejores candidatos para invitarlos al proceso de entrevistas (Fecha límite: 7 de Enero 2013 ). Es importante que residas en el Monterrey ya que es una posición de estudiante y por tal debes continuar en tu escuela.
2. Si fuiste seleccionado, te haremos una llamada para participar presencialmente en un proceso de entrevistas en nuestras oficinas de Microsoft Monterrey. (Sé paciente, no será de inmediato, analizamos muy bien a los candidatos).
3. Se notificará al candidato seleccionado para iniciar a trabajar con el equipo más tecnológico de Microsoft Monterrey!!

¡Si eres estudiante y soñabas con trabajar en Microsoft, esta es tu oportunidad!

domingo, 4 de noviembre de 2012

Verificar si nuestra computadora puede ejecutar el Emulador de Windows Phone 8

Para instalar el emulador de Windows Phone 8 es necesario que nuestra PC cumpla con algunos requisitos, los cuales podemos encontrar en a página de descarga del SDK de WP8 http://www.microsoft.com/es-es/download/details.aspx?id=35471


Requisitos del sistema
Sistemas operativos admitidos: Windows 8; Windows 8 Pro
Versiones de cliente Windows 8 de 64 bits (x64)

Hardware:
4 GB de espacio disponible en disco duro
4 GB de RAM
CPU de 64 bits (x64)

Windows Phone 8 Emulator:
Edición Windows 8 Pro o superior
Requiere un procesador que admita la traducción de direcciones de segundo nivel (SLAT)

*Si tu equipo cumple los requisitos de hardware y de sistema operativo, el SDK de Windows Phone 8.0 se instalará y se podrá ejecutar aunque el equipo no cumpla los requisitos de Windows Phone 8 Emulator. Sin embargo, Windows Phone 8 Emulator no funcionará y no podrás implementar ni probar aplicaciones en él.

Los requisitos para el SDK realmente no tienen ninguna complicación, en cambio en el caso del emulador muchos nos preguntamos como comprobar si nuestro equipo admite la virtualización y SLAT y por lo tanto va a poder ejecutarlo, esta es la razón de ser de este post en el cual explicare una manera sencilla de verificar si nuestro procesador soporta la virtualización por hardware y traducción de direcciones de segundo nivel (SLAT).

viernes, 3 de agosto de 2012

Los ganadores de Imagine Cup 2012: quadSquad

Después de algunos días de que termino Imagine Cup 2012, me di un tiempo de revisar la presentación del equipo que gano esta edición del concurso. Este proyecto Ucraniano esta excelente, ver la presentación puede ser de gran ayuda por si piensas participar en alguna de las próximas ediciones, con el fin de que sepas que debe llevar un proyecto digno de representar a tu país en una final mundial de este concurso. Les dejo el vídeo de la presentación.

lunes, 9 de julio de 2012

Premiación Imagine Cup 2012

Aquí la transmisión en vivo de la premiación de Imagine Cup Australia 2012.

*Es necesario que tu navegador o visualizador permita cargar el componente del vídeo.

Live stream videos at Ustream

martes, 14 de febrero de 2012

Mexicanos en Imagine Cup (Parte 3)

Imagine Cup Polonia 2010
Representantes Mexicanos del Instituto Tecnológico de Acapulco para participar en Varsovia 2010 con su proyecto LifePlant.

Equipos Mexicanos en Imagine Cup 2010 paseando en el centro de Varsovia.
Equipo mexicano Fomis de la Benemérita Universidad Autónoma de Puebla en categoría de desarrollo de videojuegos, en la feria de exposición internacional con su proyecto, The Chronicles of Balam. Este equipo participará por segunda vez consecutiva en las finales de NY.

Screenshot de Videojuego Las Crónicas de Balam del Equipo FOMIS.

Integrantes del equipo Fomis: Héctor Díaz, Ing. En Sistemas Computacionales y Marco Ángel Vela, Lic. En Derecho


Fuente: http://estilos.prodigy.msn.com/vida-digital/imagine-cup/galeria.aspx?cp-documentid=29278973&page=1

Mexicanos en Imagine Cup (Parte 2)

Imagine Cup Egipto 2009
Equipos Mexicanos: DYMO de la UP y Brownies del Tec de Monterrey de Guadalajara en paseo cultural en El Cairo.

Premiación de primer lugar del equipo DYMO de la Universidad Panamericana en finales locales en el CRIT del Estado de México con su Mentor, el Dr. Felix Martínez.

Equipo Sabiduría, de la Universidad Autónoma de Baja California segundo lugar de Imagine México 2009 con Juan Alberto González, director de Microsoft México y Juan Lozada, director de divulgación tecnológica de Microsoft México.

Equipo SE Braile del Tecnológico de Tepic, tercer Lugar en final local Imagine Cup 2009 con proyecto para uso de computadora para personas invidentes

El equipo IgnisNova del Tec de Monterrey CCM con el proyecto Misión Espacial, obtuvo el segundo lugar mundial de la categoría Software Accesible. Este proyecto es se encuentra implementado en 13 CRITS del Teletón de la República Mexicana. Fueron reconocidos como de los mejores proyectos en la Convención de Tecnología Accesible en Washington D.C.

Mexicanos en Imagine Cup (Parte 1)

Este es el primero de tres post sobre la representación que hemos tenido los mexicanos en Imagine Cup desde Imagine Cup Japón 2005.

Imagine Cup Japón 2005.
Jesús Cuauhtémoc Curiel y Sandra Carolina Briones Pérez que conformaron el equipo nacional y se hicieron acreedores a un premio de ocho mil dólares. 

De izquierda a derecha: Jesús Cuauhtémoc Curiel, Alejandro Emmanuel Félix Pimienta y Sandra Carolina Briones Pérez

Imagine Cup India 2006.
Finalistas de la categoría Software Design con el proyecto LifeLink. De izquierda a derecha: Armando Halbinger, Javier González (mentor), Alberto Belli, David Arditti, Ramiro Berrelleza y Sergio Marcin.

Imagine Cup Corea 2007.
De izquierda a derecha: Armando Halbinger, Francisco Sandoval, Ramiro Berrelleza, Sergio Marcin, Dimitri Limberopulos, Javier González (mentor de Wisdom Spice) y Rodrigo Fraga (finalista mundial de la categoría Desarrollo Web.

Imagine Cup Francia 2008.
El equipo Lava Lamp, del Tec de Monterrey CEM con su proyecto My Organic Robot y el equipo Chicos Karel del IPN Vocacional 9, Juan de Dios Bátiz con su proyecto Pepenators.


Equipo Chicos Karel en las finales Locales en México Imagine Cup 2008

Premiación del segundo lugar en París del equipo Lava Lamp del Tec de Monterrey CEM con el proyecto My Organic Robot.

Reconocimiento a Proyecto más Innovador del Instituto Superior de la Sierra Norte de Puebla con su proyecto OHTLI (Equipo The Climbers).

Equipo Pepenators del IPN Vocacional 9 en la Torre Eiffel de Paris.

lunes, 13 de febrero de 2012

Imagine Cup 2012 Kinect Fun Labs Challenge Captain Dan Waters

Les dejo este video en el cual Dan Waters nos habla sobre este nuevo reto Kinect Fun Labs Challenge.

El vídeo esta en ingles.


Imagine Cup 2011 - IT Challenge Ceremonia de premiación

En este video podemos ver como se viven las finales de Imagine Cup, en esta ocasión se muestra la cermonia de premiación del IT CHALLENGE 2011, donde los ganadores fueron:

  • 1er Lugar: Jean-Sébastien DUCHÊNE (Francia) 
  • 2do Lugar: Blazej Matuszyk (Polonia) 
  • 3er Lugar: Yunheng Mong (Singapur)

 

Experiencias Imagine Cup

Aquí tenemos algunas experiencias de estudiantes que participaron en alguna de las competiciones de Imagine Cup, los aportes están textualmente como me lo compartieron:

Ruben Dario Chalco Campos(Bolivia)

"No recuerdo si fue el anio pasado o el 2010, la tematica para el concurso fue open source, recuerdo que el primer puesto fue un ORM para postgres elaborado con .Net; por mi parte en mi trabajo intentaba ahorrar en licencias asi que decidi usar Open XML para generar reportes en word y excel; cuando me entere del concurso por el face pues decidi participar con esta herramienta. Bueno lo motivante de este concurso es el reto de la investigacion, claro ademas de los premios :D. Saludos"

"Claro, estimado el concurso fue muy agradable tuve la suerte de obtener un 3er puesto en uno de ellos con un articulo de OpenXML. Sin embargo para poder difundirlo de mejor forma es necesario que los nuevos Imagine Cup abarquen un temario mas definido y con material mas concreto, que haga referencia al tema al cual se orienta el concurso. Saludos."

Edgar Pérez Vásquez(Perú)

"Bueno me entere entere en la Comunidad Microsoft Peru ellos siempre nos estan informando a los Students Tech Club del cual soy lider del STC-UNSM y por primera vez mi Universidad esta participando y hay bastante entuciasmo! a poroposito acabamos de enviar nuestro proyecto! :)"

"Acabamos de enviar nuestro proyecto desing es la primera vez que mi Jungle Dream Team estamos partcipando estamos muy entuciasmados de poder participar y la posibilidad de poder contribuir a mejorar el mundo por el momento no te puedo compartir mucho del proyecto pero te comparto estee enlace visto de un modo general en https://www.facebook.com/notes/edgar-p%C3%A9rez-v%C3%A1squez/arquitectura-proyecto-siozeep-imagine-cup-australia-2012-microsoft/314487178599728 "


domingo, 12 de febrero de 2012

MICROSOFT IMAGINE CUP 10 th ANNIVERSARY SWEEPSTAKES

Para celebrar su décimo aniversario Imagine Cup va a regalar algunas cosas a los estudiantes que se registren, para participar las reglas son muy sencillas:


  • Debes ser estudiante activo mayor a 16 años.
  • Debes registrarte en www.imaginecup.com/register con el codigo de referencia #10
  • No residir en alguno de los siguientes países: Cuba, Iran, North Korea, Sudan, Syria.

Los premios serán 6 Kinect por semana durante febrero 8 y Marzo 13.

Al final se elegirán dos personas que ganaran 1 laptop sony Vaio y se elegira ademas una persona que ganara el viaje gratis para asistir a la final mundial de Imagine Cup en Sidney Australia.

Para leer las bases oficiales completas de este promoción visita el siguiente enlace. 
Y en el siguiente enlace el resumen oficial de la promoción: http://www.imaginecup.com/CompetitionsContent/promotions/tenth-anniversary-sweepstakes.aspx

Microsoft Imagine Cup 2012 Windows Azure Challenge

¿Creas aplicaciones para la plataforma Windows Azure?

Aún tienes tiempo de participar en la competición "Microsoft Imagine Cup 2012 Windows Azure Challenge" en la cual puedes crear una aplicación que ayude al mundo a resolver algunas de las 8 metas del milenio.

¿Tienes una idea pero no sabes utilizar la plataforma Windows Azure?

Puedes aprender en los siguientes lugares:
http://www.microsoftvirtualacademy.com/ 
http://www.microsoft.com/spain/thecloudmaster

O también si eres de México puedes registrarte al diplomado impartido por Microsoft México, revisa el siguiente link para mas información:
http://blogs.msdn.com/b/rmugar/archive/2012/02/07/diplomado-windows-azure-feb-mar-2012.aspx

Conoce las bases del reto Windows Azure en:
http://bit.ly/ICrAzure


Brain: Proyecto mexicano que participo en Imagine Cup 2011

En este vídeo los integrantes del equipo de la universidad Iberoamericana hablan sobre su experiencia durante el desarollo de su proyecto Brain, el cual represento a México en las finales de Imagine Cup Nueva York 2011.

El equipo que desarrollo este proyecto está integrado por Andrea Cesar Gil (Diseño Textil), Benjamín Morales (Diseño Interactivo), Brenda Möller (Diseño Interactivo) y Fernando Rivero (Diseño Industrial), y cuenta con un mentor quien es Jorge Meza, director del Departamento de Diseño en la UIA.

<a href="http://video.msn.com?vid=9319d4f6-45ac-44e6-9ba2-487149223163&amp;mkt=es-mx&amp;from=estilodevida_imaginecup&amp;src=FLPl:embed::uuids" target="_new" title="Proyecto Brain">Video: Proyecto Brain</a>

sábado, 11 de febrero de 2012

Últimos días para participar en la competencia de diseño de videojuegos.

Para mas información puedes entrar en:
http://bit.ly/ICVvideo
http://www.imaginecup.com