jueves, 28 de septiembre de 2017

#FuerzaMexico | ¡Ayuda a nuestro país y capacítate en Xamarin!

¡Hola! Es de todos conocida la situación por la que pasó nuestro país debido a los terremotos de los días 7 y 9 de Septiembre. A pesar de que hoy es fin de mes, operaciones de rescate y apoyo a nuestros compatriotas siguen realizándose, además de que mucha gente perdió sus viviendas o está pasando por una situación desagradable.

Sin embargo, es en este tipo de hechos cuando la humanidad que muchos de nosotros tenemos guardada sale a relucir. Mucha gente (no solo mexicanos, sino también extranjeros) han dado seguimiento a lo que acontece en nuestro país, manifestando su apoyo con donaciones, alimentos, ayuda en sitio e incluso apoyo moral, que se necesita tanto hoy en día. Hemos visto en redes sociales cómo la gente se ha unido para ayudar a quien más lo necesita.

Estar lejos de mi país me hace ver que todos podemos apoyar de alguna manera sin importar la distancia gracias a la tecnología, pues podemos hacer donaciones en línea, depósitos bancarios, incluso colaborar para construir una app móvil que agilice las operaciones de rescate y apoyo.

Pero esto no terminó la semana pasada. Aún hay labor por realizar, cosas que podemos hacer para que las personas puedan poco a poco volver a una situación normal. Por eso, quiero apoyar de la mejor manera que sé, que es compartiendo mi conocimiento. ¿Te unes a esta labor? Es muy fácil =)

Te propongo lo siguiente: realiza una donación de la manera que consideres más adecuada. Puede ser:


Después de eso, envíame un comprobante de la forma en que ayudaste (una foto, scan, etc., puedes omitir los datos que desees, como el monto, tu dirección, etc) a mi correo (luis.beltran@itcelaya.edu.mx). A cambio, en los próximos días ofrezco dar 3 talleres en línea de Xamarin en vivo y te enviaré el enlace donde podrás estar en la sesión para aprender sobre:

  • Mapas en Xamarin.Forms: Sábado 14/Oct
  • Twitter en Xamarin.Forms: Sábado 21/Oct
  • PayPal en Xamarin.Forms: Sábado 28/Oct


Las clases serán grabadas y te enviaré a tu correo un enlace donde podrás descargar el video de la sesión el mismo día que se realice. Eso sí, a partir de Noviembre, estos videos estarán públicos en mi canal de YouTube.

NOTA: Si ya ayudaste previamente y tienes manera de comprobarlo, también sirve :) eso sí, si está en tus posibilidades, una ayuda extra no está de más.

Todo proceso es perfectible y se aceptan sugerencias sobre temas, maneras de ayudar, etc. (incluso si quieres sumarte a esta iniciativa dando algún tema, ¡adelante, todo esfuerzo suma!) Lo hago con la mejor de las intenciones de ayudar con un granito de arena, tal vez no sea lo mismo que estar físicamente allá ayudando, pero es una manera en que creo que puedo ayudar.

Otra cosa... ¿me ayudas compartiendo este enlace en tus redes sociales? De esta manera podemos llegar a más personas y aportar en más cantidad.

¡Gracias!

- Luis

#FuerzaMexico

martes, 18 de julio de 2017

Diplomado gratuito: ¡Xamarin.iOS en español!

¡Hola! Les traigo una excelente noticia nuevamente. Después del éxito del XamarinDiplomado Latinoamérica 3.0, el aprendizaje no termina y ahora tenemos disponible el registro a la especialidad de Xamarin.iOS, un diplomado impartido por Microsoft y TI Capacitación para toda Latinoamérica (y para todo aquél que hable español también, por supuesto).



Simplemente da clic en el siguiente enlace: https://ticapacitacion.com/registro/xamarinios.

El diplomado es gratuito completamente, en español y aunque no se ha publicado el temario del curso, ¡te garantizo que aprenderás muchas cosas! Habrá sesiones teóricas y prácticas (laboratorios). Si realizas todas las actividades, al final del curso obtendrás un diploma a manera de reconocimiento de tu aprendizaje y esfuerzo realizado.

Importante: El registro sólo se encontrará abierto del 17 de julio al 24 de julio de 2017.

El acceso al aula es totalmente online, disponible 24/7, es decir, tú decides cuándo acceder a los recursos, videos, laboratorios, PDFs, etc. Ocasionalmente habrá sesiones en vivo con los instructores del diplomado.

También únete a nuestro grupo de Facebook, donde resolvemos dudas acerca del diplomado, compartimos más noticias y conocimiento de Xamarin y nos apoyamos entre todos :) Solicita tu acceso aquí: https://www.facebook.com/groups/xamarindiplomadoitc/


jueves, 13 de julio de 2017

Otro reto para ganarte un AzurePass

¡Hola! Bueno pues nuevamente les propongo un reto dado que aún me sobraron pases de Azure.

Esta entrada es una competencia.

¿Quieres ganarte un Azure Pass? Un Azure Pass te permite utilizar Azure por cierto tiempo SIN tarjeta de crédito.

Aprovecha los conocimientos que has adquirido en el #XamarinDiplomado y desarrolla un juego utilizando Xamarin (puede ser Xamarin.Forms o Xamarin en cualquier plataforma -Android, iOS, UWP, Windows Phone, Windows 8)- de entre la siguiente lista:


  • El juego del gato (también conocido como 3 en raya o Tic-Tac-Toe). Basta con que sea entre 2 jugadores humanos, pero si quieres implementar la versión de 1 jugador vs el teléfono, adelante.
  • Memorama (o juego de memoria). El tablero consta de 10 cuadros que tienen 5 figuras repetidas en pares. El objetivo es descubrir las parejas en el menor tiempo o intentos posibles. Tú eliges si quieres programar temporizador o número de turnos. 
  • El juego de Boston (este está bueno como ejercicio de programación, de igual manera tú decides si haces la versión de 2 jugadores humanos o de 1 humano vs el teléfono)

Requisitos:
  1. La app debe estar en español.
  2. La app debe mostrar tu nombre y correo electrónico.

Sube tu proyecto a GitHub y enviame un correo a la siguiente dirección: luis.beltran@itcelaya.edu.mx con el enlace a tu solución. Si tu app funciona, te enviaré un pase de Azure. En caso de que no funcione, pues te contesto el correo con mis sugerencias.

Como la idea es que aprendan, NO está permitido copiar la solución de otro compañero. Si yo detecto 2 soluciones iguales, a ninguno le otorgaré el Azure Pass. 

Solo se vale un pase de Azure por persona. Si ganas un pase en este reto, ya no puedes obtener otro (pero eres libre de participar en futuros retos). Si ya ganaste un pase con anterioridad, no te puedo dar otro, pero eres libre de practicar y resolver el reto por supuesto :)

Esta oferta es válida mientras tenga Azure Passes disponibles o antes del 22 de Julio (fecha de expiración de los pases)

Si hay dudas, favor de comentar en la publicación.

¡Saludos!

lunes, 19 de junio de 2017

¡Gánate un Azure Pass desarrollando una app de Xamarin!

¡Hola! Después de tiempo sin escribir, les comento que ya me pasaré seguido por aquí, aprovechando que tengo varios ejemplos por compartir y describir :)

Esta entrada es muy rápida. Es una competencia.

¿Quieres ganarte un Azure Pass? Un Azure Pass te permite utilizar Azure por cierto tiempo SIN tarjeta de crédito.

Aprovecha los conocimientos que has adquirido en el #XamarinDiplomado (si no te has inscrito, da clic en el siguiente enlace) y desarrolla una aplicación utilizando Xamarin (puede ser Xamarin.Forms o Xamarin en cualquier plataforma -Android, iOS, UWP, Windows Phone, Windows 8)- que cumpla con los siguientes requisitos:


  1. Cuando la app se abra, debe obtenerse la ubicación del dispositivo muy fácil si usas el siguiente plugin)
  2. Con las coordenadas obtenidas, muestra información del país en el que te encuentras: Nombre, Capital, Continente, Extensión Geográfica, Idiomas y Moneda.
  3. La app debe mostrar tu nombre y correo electrónico.

Para cumplir el requisito puedes utilizar algún servicio que te devuelva dicha información. Uno de ellos, gratuito, es GeoNames. Simplemente crea tu cuenta aquí y de la lista de web services disponibles en este enlace, utiliza 2 servicios:

  • CountryCode (pasando como parámetros la latitud y longitud, puedes obtener el código del país)
  • CountryInfo (pasando como parámetro el código de un país, puedes obtener información a detalle de un país)

Sube tu proyecto a GitHub y enviame un correo a luis.beltran@itcelaya.edu.mx con el enlace a tu solución. Si tu app funciona, te enviaré un pase de Azure que tiene vigencia hasta el 8 de Julio (sé que es poco tiempo, pero algo es algo...). En caso de que no funcione, pues te contesto el correo con mis sugerencias.

Como la idea es que aprendan, NO está permitido copiar la solución de otro compañero. Si yo detecto 2 soluciones iguales, a ninguno le otorgaré el Azure Pass. 

Realmente la app es muy sencilla. Si aún me sobran pases, la próxima semana lanzo otro reto. 

Solo se vale un pase de Azure por persona. Si ganas un pase en este reto, ya no puedes obtener otro (pero eres libre de participar en futuros retos).

Esta oferta es válida mientras tenga Azure Passes disponibles o antes del 8 de Julio o antes de que lance el siguiente reto.

Si hay dudas, favor de comentar en la publicación.

¡Saludos!

martes, 9 de mayo de 2017

Enviar mensaje de WhatsApp via Xamarin.Android

¡Hola! Ya sé que tengo pendientes con la serie de WCF y Xamarin jeje, pero este fin de semana probé un código rápido que creo les será de utilidad. Platicando con varios compañeros del #XamarinDiplomado, uno de los requerimientos más comunes hoy en día en las aplicaciones móviles es la opción de enviar información vía WhatsApp, y si bien no se cuenta con un API oficial, sí es posible integrar esta funcionalidad en nuestras aplicaciones con Xamarin con código específico de platforma.

En esta entrega te mostraré lo fácil que es hacerlo usando Xamarin.Android a través de un Intent. En una futura entrega (más tarea para mí xD) lo haré con Xamarin.iOS, pues al parecer tiene más capacidades que en Android. El código es muy sencillo y el mismo sitio de WhatsApp lo menciona desde su FAQ:



Por cierto: Este código solo puede ser probado en un dispositivo físico (teléfono) con WhatsApp instalado. Por ahí dicen que es posible instalar Whatsapp usando Bluestacks en un emulador, así que lo dejo a tu consideración en caso de que no cuentes con un teléfono Android.

El código fuente está disponible en mi GitHub para quien desee probarlo inmediatamente, pero si quieres realizarlo paso a paso, pues ¡manos a la obra!

Paso 1. Crea una aplicación de tipo Aplicación en blanco (Android), que corresponde a Xamarin.Android



Paso 2. Localiza el archivo Strings.xml en la ruta Resources > values del proyecto y reemplaza su contenido por lo siguiente:


<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="Mensaje">Mensaje</string>
    <string name="ApplicationName">XamarinWhatsapp</string>
    <string name="Enviar">Enviar mensaje</string>
</resources>


miércoles, 3 de mayo de 2017

Reto 6 del Xamarin Championship

¡Hola! Si estuviste como yo haciendo F5 en el GitHub del Xamarin Championship te habrás dado cuenta que ayer se publicó el Reto 6, en el cual aprendes a incorporar los Microsoft Cognitive Services en una aplicación de Android con Xamarin (espero haber sido de los 5 primeros xD).

Bien, en la guía aprendes a tomar una foto de tu dispositivo mediante la cámara y enviarla al servicio para que devuelva información del estado de ánimo del rostro detectado.



Sin embargo, si estás usando el emulador, verás que es imposible tomar una foto, pues solo aparece la imagen en movimiento.



Una forma de resolver esta situación es diciéndole que seleccione una foto de la galería del emulador, lo cual es muy sencillo. Solo sigue estos pasos.

Paso 1. Inicia el emulador (no requieres Visual Studio para esto, puedes hacerlo desde el menú de Inicio).

miércoles, 26 de abril de 2017

Consideraciones a tener en cuenta al descargar un proyecto de Xamarin desde Internet

¡Hola! En esta entrada rápidamente les cuento una de las situaciones más comunes al descargar un código fuente de un proyecto de Xamarin de Internet, principalmente desde GitHub. Normalmente al encontrar un proyecto queremos compilarlo y ejecutarlo inmediatamente para probar su funcionamiento. Sin embargo, en muchas ocasiones recibimos una serie de errores que impiden su ejecución y creemos (erróneamente, por lo general) que el proyecto NO funciona y lo descartamos.

Algunos de los errores (que más que errores son detalles) más comunes al momento de compilar y ejecutar un proyecto descargado de Internet son:


  • La ruta del proyecto es demasiado larga debido a que lo ejecutamos desde la carpeta Descargas (cuya ruta absoluta por lo general es C:/Usuarios/TuUsuario/Descargas/CarpetaConNombreLargo/CarpetaConNombreLargo/proyecto/
  • La seguridad de nuestro equipo (firewall, antivirus) impide la ejecución de archivos que proceden desde otros equipos, al ser considerados maliciosos (falsos positivos)
  • Se mantienen las referencias relativas al equipo de cómputo donde fue creado el proyecto original (generando referencia a carpetas que pueden no existir en nuestro equipo)
  • Configuración incorrecta de la solución en Visual Studio.
  • No está habilitada la compilación o implementación del proyecto de Android/iOS/UWP 

Todo esto es solucionable. Claro, en ocasiones me he encontrado con proyectos que en versiones actuales de Xamarin ya no funcionan al utilizar código obsoleto o alguna librería que de plano ya no existe o usa dependencias antiguas. Esto es normal, pues la tecnología avanza y se van creando nuevas (y optimizadas) versiones de las librerías disponibles para crear nuestras aplicaciones.

A continuación te presento una breve guía que me ha funcionado para ejecutar la mayoría de proyectos que encuentro en Internet. 

1. Descarga tu proyecto. La tendencia actual es que los desarrolladores usamos GitHub para compartir nuestros proyectos, en cuyo caso se usará el botón Clone or download y luego Download ZIP para que se descargue el proyecto en una carpeta comprimida en nuestro equipo de cómputo.


lunes, 24 de abril de 2017

Instalación de Xamarin en Visual Studio 2017

¡Hola! Hago una pausa de la serie de Xamarin, WCF, Stored Procedures y Entity Framework y les comparto una entrada rápida aprovechando que se reinician las actividades del #XamarinDiplomado, al cual te puedes inscribir dando clic aquí, si aún no lo has hecho.

Precisamente al respecto del diplomado, se mencionó que ahora puedes utilizar Visual Studio 2015 o Visual Studio 2017 (Community Edition en ambos casospara realizarlo. En esta entrada vamos a ver qué necesitas para instalar Xamarin junto con Visual Studio 2017 desde una instalación nueva, pues el asistente de instalación de VS2017 cambió con respecto a la versión anterior.

Aclaro el siguiente punto: Puedes tener instalado tanto VS2015 como VS2017 en tu mismo entorno de trabajo sin problemas. Sin embargo, por cuestiones de poco espacio disponible en disco duro, yo decidí primero desinstalar completamente VS2015 y luego instalar VS2017.

También les comento otra cosa: Primero instalé VS2017 en Windows 8.1 Professional y nunca pude crear ni mucho menos ejecutar los proyectos de Windows 10, así que primero tuve que actualizar a Windows 10 mi equipo de cómputo y luego reinstalar VS2017. En resumen: Se recomienda instalar VS2017 en Windows 10 Pro (si tienes la versión Home, en lugar de usar los emuladores de Visual Studio -basados en Hyper-V- ocuparás otros como Genymotion o Xamarin Android Player).

(Y en caso de que desees utilizar la versión 2015 de Visual Studio, aquí te dejo una guía de instalación de Xamarin muy buena creada por Miguel Muñoz Serafín, MVP de Microsoft).

¡Manos a la obra! Observa lo sencillo que es instalar Xamarin:

Primero que nada, el instalador de Visual Studio 2017 introduce el concepto de workloads (cargas de trabajo), las cuales básicamente son grupos de componentes relacionados entre sí para crear tipos de proyectos similares. Entonces, al ejecutar el instalador de Visual Studio, en primer lugar busca el workload Windows y marca tanto Desarrollo de Universal Windows Platform y Desarrollo de escritorio .NET.


miércoles, 19 de abril de 2017

Xamarin, WCF, Stored Procedures y Entity Framework (Parte 2)

¡Hola! Bienvenido a la parte 2 de la serie Xamarin, WCF, Stored Procedures y Entity Framework en la que crearemos un servicio WCF que combinará las tecnologías de Entity Framework y JSON a fin de recuperar la información de una base de datos.

En la parte 1 (disponible aquí) creamos una base de datos con información de Artistas, Canciones y Conciertos (así como su detalle) junto con los procedimientos almacenados a fin de realizar las operaciones CRUD.

Antes de comenzar con el tema de hoy, quiero agradecer enormemente a todos los que se tomaron la molestia de leer la primer entrega 😃. Es motivante saber que la respuesta ha sido muy grata e incluso he recibido sugerencias y comentarios que permitirán mejorar futuras sesiones :) Los comentarios han sido positivos y la retroalimentación muy buena. Por ejemplo, en uno de los grupos de Facebook me solicitaron hablar de WebApi, otra sugerencia fue hablar de seguridad con JWT y finalmente, hacer la versión en video de estas sesiones. Dado que son muy buenas ideas, las voy a tener en cuenta, esperen su implementación en próximas entregas... Lo prometo

Espero que estas sesiones, aunque son algo largas, sean de utilidad para sus proyectos. Por otra parte, disculpen si me extiendo en ocasiones jeje, pero es que hay tanto de qué hablar que quiero compartir lo más que se pueda. Así que gracias por sus mensajes y sigan comentando de qué otros temas quisieran que hablara en el blog, así aprendemos entre todos 😀

Continuamos entonces. El repositorio de GitHub donde actualizaré el proyecto poco a poco se encuentra aquí (ya incluye la parte 2, por supuesto :) )

Consideraciones si descargas y quieres ejecutar la solución inmediatamente:

  • Debes haber realizado la práctica 1, es decir, que los procedimientos almacenados estén en la base de datos.
  • Debes modificar la cadena de conexión en Web.config para incluir los datos de tu servidor, usuario y contraseña.
  • Se recomienda limpiar la solución en Visual Studio (Build --> Clean Solution)
  • Debes restaurar los paquetes Nuget del proyecto (se debería realizar al compilar y ejecutar la aplicación).

domingo, 16 de abril de 2017

Xamarin, WCF, Stored Procedures y Entity Framework (Parte 1)

¡Hola! En días anteriores en el grupo de Facebook de Xamarin Diplomado ITC me hicieron una consulta sobre el uso de Xamarin con SQL, lo cual ya había publicado con anterioridad aquí. Como bien sabemos, lo ideal es NO hacer la conexión directa entre la app móvil y la base de datos, pues la cadena de conexión queda expuesta al ser incluida en la applicación, lo cual implica un alto riesgo a la seguridad de nuestra información.

Dado que la conversación siguió hasta tratar el tema de procedimientos almacenados (para las operaciones CRUD) y servicios WCF (para el acceso a la información) y en vista de que una actualización de la publicación de SQL era necesaria, pues he decidido hacer una serie titulada Xamarin, WCF, Stored Procedures y Entity Framework, la cual constará de 3 a 5 partes en la que construiremos una aplicación móvil que obtiene información de un servidor (primero local con IIS, luego lo montaremos a Azure) utilizando un servicio web.

El repositorio de GitHub donde actualizaré el proyecto poco a poco se encuentra aquí.

Consideraciones si descargas y quieres ejecutar la solución inmediatamente:

  • Ninguna, solo ejecuta el script de la base de datos :)


En cada parte trataremos un punto específico de la aplicación. ¿Listos? ¡Pues comenzamos!

En esta primer parte trabajaremos con algo sencillo: la base de datos. Solo necesitas tener SQL Server instalado, así como SQL Server Management Studio, desde donde escribiremos y ejecutaremos el script. Cualquier versión te sirve (2008, 2012, 2016... yo lo hice con 2012).


El script completo lo puedes bajar desde GitHub. Se encuentra ubicado en la carpeta BaseDatos. Simplemente descárgalo y ejecútalo por completo en SQL Server Management Studio.

martes, 11 de abril de 2017

SGVirtual 11a edición

¡Hola! El próximo 24 de Mayo tendrá lugar el SG Virtual Conference 11a. Edición, un evento de un día de duración con conferencias gratuitas online cuyo propósito es promover la participación de entusiastas y expertos tecnológicos en la difusión de temas de interés entre los profesionistas de software.


Ya está abierta la convocatoria de ponencias (hasta el 30 de abril), por si deseas participar como expositor con un tema que quieras presentar durante una hora. En mi caso, yo he propuesto participar con el tema Apps móviles inteligentes con Xamarin y Microsoft Cognitive Services, en el que a grandes rasgos mostraré los principios básicos del desarrollo de aplicaciones móviles (en Xamarin) con los servicios de inteligencia artificial creados por Microsoft, los Microsoft Cognitive Services, para darle inteligencia a tus aplicaciones; también presentaré 3 demos (con su código fuente en GitHub, por supuesto). Mostraré cómo puedes crear una aplicación móvil capaz de identificar emociones en una fotografía, reconocer usuarios autorizados mediante comandos de voz y cómo construir un sistema recomendador de productos a través de datos históricos.

Para más información de mi propuesta, visita https://sg.com.mx/sgvirtual/12/sesion/apps-m-viles-inteligentes-xamarin-y-microsoft-cognitive-services#.WOyjZ9J96Uk

Si crees que mi propuesta es interesante y vale la pena presentarla durante el evento, vota por ella compartiéndola utilizando alguno de los botones de redes sociales que aparecen en la página de SGVirtual debajo del título de la ponencia, es decir:

lunes, 10 de abril de 2017

Xamarin Challenge

¿Estás listo para participar en otro reto de Xamarin? ¿Qué tal te vendría ganar una Microsoft Surface Studio? Si te interesa aprender a desarrollar aplicaciones móviles multiplataforma o ya sabes y quieres demostrar tus conocimientos, te invito a participar en el Xamarin Challenge, una iniciativa de Paul Thurrot y Xamarin.



El Xamarin Challenge consiste en desarrollar e implementar una aplicación móvil multiplataforma con Xamarin totalmente funcional siguiendo 3 etapas (o pasos). Realmente es muy sencillo porque solo tienes que seguir las instrucciones que se presentan en cada etapa. La desventaja es que al completar una etapa tendrás que esperar 72 horas, por lo que este reto también es de paciencia, jeje.

Si has participado en los Diplomados de Xamarin Latinoamérica, ¡cuentas con una gran ventaja, pues muchos de los conocimientos necesarios para superar los retos ya los tienes, solo es cosa de implementarlos siguiendo las instrucciones!


Xamarin Alliance Challenge

¡Hola! En esta entrada les comparto la información sobre Xamarin Alliance, el cual consiste en una serie de 5 retos quincenales en los que desarrollarás una aplicación multiplataforma usando Xamarin y que puedes implementar en Android, iOS y Windows 10.


Xamarin Alliance es una iniciativa de Microsoft Belux (Bélgica y Luxemburgo) que te motiva a desarrollar tu primer aplicación de Xamarin de una manera ágil, sencilla e intuitiva con instrucciones que facilitarán tu entrada en el desarrollo de aplicaciones multiplataforma combinadas con el cómputo en la nube de Microsoft Azure.

Esta es una iniciativa internacional, por lo que está abierta a todo público interesado. Al completar los 5 retos deberás enviar tu aplicación final para revisión. Si es aprobada, ¡te harás acreedor a un diploma con el se reconocerán tus logros como Xamarin Developer!

Si has participado en los Diplomados de Xamarin Latinoamérica, ¡cuentas con una gran ventaja, pues muchos de los conocimientos necesarios para superar los retos ya los tienes, solo es cosa de implementarlos siguiendo las instrucciones!

No hay página de registro, simplemente comienza con el primer reto y continúa con tu aplicación siguiendo las instrucciones mostradas en cada uno de ellos.

lunes, 27 de marzo de 2017

Validación de datos usando Behaviors en Xamarin.Forms

¡Hola! Hace unos días me escribieron al correo preguntando sobre cómo validar mediante Behaviors la entrada de datos del usuario, por ejemplo, que sólo haya números en un Entry; también había duda sobre cómo limitar la cantidad de caracteres en el Entry, por ejemplo, que solo acepte 10 caracteres.

Investigando, encontré el siguiente enlace, en el cual está basado este post con ciertas modificaciones que voy a mencionar. La idea de esta publicación es validar las entradas de datos que el usuario realiza típicamente en un formulario. En la siguiente publicación veremos cómo validar correos electrónicos, fechas, números telefónicos e incluso verificar la relación entre dos controles (verificando que el texto introducido en dos Entrys sean iguales, por ejemplo). Para ello, utilizaremos Behaviors, que son elementos que permiten añadir funcionalidad a nuestros controles y que los podemos reutilizar, lo cual ayuda a tener un código más compacto y disponible donde lo necesitemos. También haremos uso de otras técnicas, por ejemplo expresiones regulares.

Básicamente, lo que hay que hacer es declarar una clase que herede de la clase Behavior, donde T es un control (por ejemplo, un Entry, un DatePicker, etc). Esta clase puede contener una BindableProperty, es decir, un elemento que se desee enlazar al control para interactuar con él desde el código XAML. Lo que si debe realizarse es hacer un override de 2 métodos: OnAttachedTo y OnDetachingFrom, en los cuales nos suscribimos y desuscribimos respectivamente a los manejadores de evento que vamos a considerar para el control. También se pueden hacer operaciones de inicialización y finalización del control. Es importante sobre todo remover las referencias a manejadores de eventos que no vamos a manejar más (mediante OnDetachingFrom) por cuestiones de manejo de memoria en nuestras aplicaciones móviles. Finalmente, otro código opcional (pero casi seguro que lo agregamos) pues es precisamente el de los manejadores de evento agregados desde OnAttachedTo.


public class MiClase : Behavior<Control>
{
    public static readonly BindableProperty MiPropiedad = BindableProperty.Create("Propiedad", typeof(tipo), typeof(MiClase), valorInicial);

    public int Propiedad
    {
        get { return (tipo)GetValue(MiPropiedad); }
        set { SetValue(MiPropiedad, value); }
    }

    protected override void OnAttachedTo(Control c)
    {
    }

    protected override void OnDetachingFrom(Control c)
    {
    }
}



viernes, 24 de marzo de 2017

Xamarin Diplomado Latinoamérica 3.0

¡Hola! Les traigo una excelente noticia. El día de ayer durante el Facebook Live de Microsoft México se anunció una nueva versión del #XamarinDiplomado: Xamarin Diplomado Latinoamérica 3.0, el cual abarcará desde los temas básicos (instalación de herramientas) hasta temas más avanzados, con nuevos speakers y sorpresas.



De momento no se ha dado más información sobre la fecha de inicio y los temas específicos del diplomado, pero ya te puedes registrar, dando clic en el siguiente enlace:

http://bit.ly/diplomadoxamarin

En el momento en que se dé más información al respecto del diplomado, se los haré saber en este blog. Por lo pronto, aparta tu lugar e inscríbete. Créeme, valdrá la pena :)

viernes, 10 de marzo de 2017

Xamarin Fest Celaya

¡Hola! Además del Xamarin Dev Days Celaya del cual te hablé en la anterior entrada, te invitamos a otro evento que estamos organizando en el mes de Mayo en el Instituto Tecnológico de Celaya, el Xamarin Fest Latam.



Citando del sitio oficial:

Xamarin Fest es una iniciativa de capacitación para Latinoamérica que te permitirán tener el conocimiento para desarrollar y desplegar aplicaciones móviles desde cualquier plataforma con Xamarin, conectarlas con todo el poder que te trae la nube y realizar tus propios proyectos en nuestros talleres prácticos utilizando algunas de las tecnologías más innovadoras del momento.

viernes, 3 de marzo de 2017

¡Invitación al #XamarinDevDays Celaya 2.0!

¡Hola! Estoy muy emocionado por compartirles esta noticia y es que hoy se ha anunciado el primer bloque de ciudades aceptadas para organizar un Xamarin Dev Day... ¡y Celaya está presente nuevamente en este evento internacional! 👍 El anuncio oficial con las ciudades que organizarán un evento de Xamarin este año está disponible en el siguiente enlace.






Así es, me complace anunciar que en el Instituto Tecnológico de Celaya organizaremos de nueva cuenta un evento oficial de Xamarin el próximo Sábado 27 de Mayo en el Campus II.


Regístrate en este enlace para apartar tu lugar en el segundo Xamarin Dev Days Celaya, pues los cupos son limitados ;) Al registrarte, obtendrás un ticket que incluye un código QR (o puede ser que lo revibas en tu correo). El día del evento asiste con tu ticket (en digital o impreso) para que podamos registrar tu asistencia. Hablaremos de temas interesantes como los Servicios Cognitivos, Azure, códigos QR y muchos más temas. No dejes pasar esta oportunidad de capacitarte gratuitamente en una de las tecnologías por las que Microsoft está apostando fuertemente para ofrecer a los desarrolladores de aplicaciones móviles una plataforma sólida y funcional.


viernes, 17 de febrero de 2017

ZXing.Net.Mobile for Forms, una librería para escanear códigos de barras, QRs y más

¡Hola! En la entrada de esta semana te hablaré acerca de ZXing.Net.Mobile for Forms, el cual es una librería basada en otra librería de código abierto para escanear códigos de barras llamada ZXing (Zebra Crossing) y que hace uso del ZXing.Net.Port.

Esta librería funciona para diversos proyectos .NET, incluyendo por supuesto, Xamarin (Forms, Android, iOS, Windows Phone, UWP...) y reduce el esfuerzo para implementar un scanner de códigos de barras, QRs y más en nuestros proyectos multiplataforma.

¡A continuación te explico qué fácil es utilizar esta librería!

Paso 1. Crea un proyecto de tipo Xamarin.Forms Portable. Para este caso, he puesto el nombre ScannerZXing.


Paso 2. Da clic derecho en la solución y elige Administrar Paquetes Nuget para la Solución

viernes, 10 de febrero de 2017

Oxyplot: Una solución gratuita y open-source para crear gráficas en .NET y Xamarin

¡Hola! En esta entrada te mostraré lo fácil que es agregar gráficas en un proyecto de Xamarin.Forms utilizando Oxyplot, la cual es una librería multiplataforma para agregar charts en soluciones basadas en .NET Framework, tales como WPF, Windows Forms, Windows, Windows Phone, Silverlight, y por supuesto, Xamarin (Forms, Android, iOS, etc).

Existen 4 pasos básicos a seguir:
  1. Agregar el paquete Oxyplot a tu proyecto mediante el Nuget Package Manager.
  2. Agregar un control PlotView en tu interfaz de usuario
  3. Crear un objeto PlotModel.
  4. Asociar (mediante Binding, por ejemplo) el PlotModel a la propiedad Model del PlotView.

Ahora vamos a ver cómo se hace paso a paso en un proyecto de Xamarin.Forms.

Paso 1. Crea un proyecto de tipo Xamarin.Forms Portable. Para este caso, he puesto el nombre GraficasOxyplot.


Paso 2. Da clic derecho en la solución y elige Administrar Paquetes Nuget para la Solución.

jueves, 9 de febrero de 2017

Crea una cuenta de Azure SIN tarjeta de crédito

A continuación les paso un método para obtener un Azure Pass, el cual les permitirá utilizar Azure con créditos de manera gratuita y sin requerir tarjeta de crédito. De esta manera, podrán iniciar bien el diplomado de Xamarin Intermedio (ya inició, aquí la noticia) y de Azure University (está por iniciar, la noticia aquí). Azure y el cómputo en la nube son una parte esencial en ambos cursos.

NOTAS:

  • NO ABUSAR DEL SERVICIO. Solo genera un código porque sólo necesitas uno. Se recomienda no compartir el método con personas ajenas al diplomado, para evitar un mal uso de Azure. El método es gratuito, evitemos que lo den de baja por usuarios que hacen uso indebido de Azure.
  • El código tiene una vigencia de 3 meses
  • Cuentas 100 USD mensuales para tus servicios (máquinas virtuales, bases de datos, servicios en la nube, servicios móviles, etc).
  • Si ya usaron Azure gratis con su cuenta por alguna otra razón (DevEssentials, AzurePass, ITProCloudEssentials, Trial) es probable que el código obtenido no funcione. Tendrán que crear otra cuenta de Outlook/Hotmail/Live
  • Solo funciona con Internet Explorer. Con Chrome y otros navegadores (Edge, Firefox) la pantalla se queda en negro. Esto es porque se instala un ActiveX y bueno, ya saben, Internet Explorer...

Pasos a seguir:

Ingresa a https://aka.ms/ignite2016labs

Inicia sesión con tu cuenta de Hotmail/Live/Outlook y acepta los 2 permisos solicitados.

Diplomado en línea: Azure University

Microsoft continúa ofreciendo cursos gratuitos para que sigas preparándote y aprendiendo de sus tecnologías. En esta ocasión, se han abierto las inscripciones para el Diplomado en línea Azure University.


En este nuevo diplomado, aprenderás 2 temas por semana y habrá sesiones en directo con los instructores y expertos internacionales, donde podrás preguntarles y aprovechar al máximo la experiencia de aprendizaje.

Además, los recursos (videos, pdfs, enlaces) estarán disponibles on-demand mientras el curso esté vigente.

Para aprobar y recibir un diploma digital otorgado por Microsoft que valida tu superación del curso, deberás realizar exámenes en línea semanalmente. El criterio de aprobación es obtener 8/10.

Los módulos del curso son:

  • Computo de nube Empresarial
  • Tipos de soluciones de la nube como centro de computo
  • Redes de Datos en Azure (Networking)
  • Seguridad y Firewalls en Azure
  • Resguardo y recuperación
  • Monitoreo de componentes de Azure
  • Manejo de Identidades en la Nube
  • Bases de datos y analítica en Azure

Para más información y realizar tu registro, da clic en el siguiente enlace. Todavía no se define una fecha de inicio, pero si te registras, te llegará posteriormente un correo cuando el aula esté abierta.


Te invito a que participes en esta experiencia de aprendizaje. Si gustas, puedes unirte a nuestro grupo de estudio en Facebook, donde varios alumnos del curso nos apoyamos resolviendo dudas, compartiendo conocimiento y más. (Nota: Anteriormente hubo un diplomado llamado Windows 10 University y decidimos que reutilizaremos el mismo grupo, por eso momentáneamente se sigue llamando así).


¡Saludos y a seguir aprendiendo!

lunes, 6 de febrero de 2017

Data Science and Analytics Free Beta Certification Exams!

¡Hola! En esta entrada te comento que Microsoft está ofreciendo !2 exámenes de certificación totalmente gratuitos! Si estás interesado en las ciencias de datos y análisis, has utilizado Azure Machine Learning para desarrollr soluciones inteligentes en la nube y quieres evaluar tus conocimientos en estas áreas, esta información te interesa :)

La idea es que solicitarás el examen, agendarás cada uno en una fecha no posterior al 31 de Marzo y al momento de hacer la compra, colocarás un código (voucher) para que salga gratis el examen (solo hay 300 disponibles en todo el mundo, así que apresúrate a aplicar!)

El primer examen es el 70-774: Perform Cloud Data Science with Azure Machine Learning, el cual evalua 4 habilidades:

  • Preparación de datos para el Análisis en Azure Machine Learning y su exportación
  • Desarrollar modelos de Aprendizaje Automático
  • Operar y administrar servicios de Azure Machine Learning 
  • Usar otros servicios para Aprendizaje Automático

Para obtener gratis este examen, ingresa a su página y sigue la guía que coloco más abajo. El voucher que utilizarás es SCPAZ774EP.

El segundo examen es el 70-775 Perform Data Engineering on Microsoft Azure HDInsight (beta), el cual se centra en las siguientes habilidades:

  • Administrar y provisionar clústeres HDInsight 
  • Implementar soluciones de procesamiento por lotes de Big Data
  • Implementar soluciones de procesamiento interactivo de Big Data 
  • Implementar soluciones de procesamiento en tiempo real de Big Data Real

De igual forma, sigue la guía para solicitar el examen desde esta página. El voucher a utilizar es BPERB775VM.

No lo pienses tanto porque hay solo 300 asientos disponibles por examen, así que cuanto antes lo solicites, mejor :)

Esta información la obtuve desde el blog Born To Learn, el cual es oficial de Microsoft. Te sugiero lo revises constantemente, pues siempre colocan entradas interesantes, incluyendo la oportunidad de realizar exámenes betas gratuitos.

Ahora sí, la guía para solicitar el examen gratis. Para este ejemplo, utilicé el 70-774:

Paso 1. Ingresa a la página del examen y da clic en Schedule exam.


viernes, 27 de enero de 2017

¡Regístrate al #XamarinDiplomado y continúa con tu aprendizaje!

Después del éxito obtenido gracias a la iniciativa de Microsoft Latinoamérica y a los Xamarin MVPs de Latinoamérica, regresa el #XamarinDiplomado ahora en su Nivel Intermedio y en esta ocasión orientado a Conectar apps móviles a la nube. Nuevamente, contaremos con el inigualable apoyo y los conocimientos de los Xamarin MVPs de Latinoamérica Humberto Jaimes, Esteban Solano Enrique Aguilar. A esta iniciativa se suma el experto Roberto Cervantes.


Al igual que el diplomado básico, es en español, totalmente gratuito y al finalizarlo obtendrás un reconocimiento digital oficial otorgado por Microsoft donde avala que cumpliste con las actividades del diplomado (en caso de acreditar, por supuesto).

El curso, impartido en la modalidad de aula virtual, consta de 4 módulos repartidos en 4 semanas, en los cuales los expertos te guiarán con sus conocimientos para que aprendas diferentes temas relacionados con Xamarin y Azure. Mediante videos, podrás seguir sus explicaciones y prácticas donde demostrarán cómo conectar tus aplicaciones móviles a la nube.

Los 4 módulos del curso son:

Módulo 1 - Acceso a Azure Storage (Blobs y Tablas NoSQL) con Xamarin.iOS y Xamarin.Android
Impartido por Enrique Aguilar en la semana del 30 de Enero

Módulo 2 - HockeyApp para manejar betas
Impartido por Esteban Solano en la semana del 6 de Febrero

Módulo 3 - Xamarin.UITest y Xamarin.TestCloud
Impartido por Humberto Jaimes en la semana del 13 de Febrero