Usando el sensor de latidos en Microsoft Band


Microsoft Band nos ofrece diversos sensores con el cual podemos acceder mediante el SDK que nos ofrece Microsoft.

Esta aplicación es bastante sencilla y dejo todo el código en C# comentado (por lo menos lo más relevante) y dejo el proyecto publicado en Github. Continue reading “Usando el sensor de latidos en Microsoft Band”

Crear Website básico en Microsoft Azure


El pasado jueves 11 de Diciembre en Microsoft Branch Colombia se estaba llevando a cabo unas sesiones técnicas para emprendedores del país, en esta sesión accedí a dictar la charla donde se tomarán los siguientes temas:

  • Websites Azure
  • Virtual Machines Azure
  • Windows Phone
  • Xamarin

Por lo cual decidí compartir este código usado durante la sesión en varias secciones, la primera es acerca de la creación básica de Websites en Azure.

Creando el Front End

En esta ocasión se decidió hacer un sitio muy básico y estático que a la final solo se conectará con un Backend publicado en otro lado.

En este caso se simulará un negocio de una disquera musical, sin embargo aclaro que todos los logos y nombres de marca son propiedad registrada.

  • Seleccionar una plantilla adecuada, en este caso ir a http://startbootstrap.com/template-overviews/freelancer/
  • Descomprimir el contenido y renombrar la carpeta a algún nombre fácil de recordar.
  • Modificar las imágenes primarias, donde aparece el muñeco por una foto de algún Dj y agregarle un background a esa sección, esto se hace en el archivo freelancer.css
header {
    text-align: center;
    color: #fff;
    background: #18bc9c;

    background-image: url(../img/DJ-Background.jpg);
  
    /* Background image is centered vertically and horizontally at all times */
    background-position: center center;
  
    /* Background image doesn't tile */
    background-repeat: no-repeat;
  
    /* Background image is fixed in the viewport so that it doesn't move when 
       the content's height is greater than the image's height */
    background-attachment: fixed;
  
    /* This is what makes the background image rescale based
       on the container's size */
    background-size: cover;
}

Continue reading “Crear Website básico en Microsoft Azure”

WinAPI en aplicaciones de escritorio


Cuando estamos desarrollando aplicaciones de escritorio con tecnologías Microsoft lo hacemos con WPF o WinForms, pero muchas veces necesitamos acceder a funcionalidades extra que nos proporciona Windows ya que este cuenta con un gran volumen de funciones para los desarrolladores el cual podemos tener acceso desde las entrañas de Windows hasta los más altos niveles como es la interfaz gráfica, ya sea modificandola a nuestro acomodo o simplemente porque el desarrollo lo necesita.

En el desarrollo de Malware es muy común hacer uso de WinAPI porque como ya les comentaba se puede tener acceso a un nivel muy cercano de Kernel de Windows, hacer estos movimientos en aplicaciones con C++ y C es muy sencillo ya que Windows proporciona los headers para usarlos de manera muy cómoda; el problema viene cuando queremos acceder a estas funcionalidades desde C# o Visual Basic ya que por su propia arquitectura no acceder de manera convencional estas API.

Para entrar un poco en detalle, las API de Windows están contenidas en unas DLL ya compiladas ya que casi todas las aplicaciones que ves en la pantalla (si estás en Windows) acceden a estas y para hacer llamados a código nativo desde aplicaciones administradas como es el caso de las aplicaciones de .Net, me explico, acceder a funciones de DLL’s construidas en lenguajes como C++ (No Visual C++)  o C para ser usadas en aplicaciones que funcionan bajo el CLR

Sin ir más allá en teoría ya que si estás en este post es porque algo debes saber de WinAPI, les presento un portal Web donde recopilan todas las funcionalidades y ponen el código en C# y VB de como debe ser usado, en las más comunes ponen ejemplos de uso.

http://www.pinvoke.net/

Primeros pasos en Node.js


Casi siempre que tengo que escribir una nueva App con Node.js me toca buscar los pasos iniciales ya que mi frecuencia de desarrollo en esta tecnología no es alta, por lo que decidí re-copilar todos estos primeros pasos que desde mi perspectiva son los más generales.

¿Cómo instalar Node.js en Ubuntu 14.x?

Desde la consola ya sea directamente o un terminal PuTTY escribir los siguientes comandos:

sudo apt-get update
sudo apt-get install nodejs
sudo apt-get install npm

Cabe aclarar que la máquina virtual debe tener conexión a Internet.

¿Cómo instalar Express?

Continue reading “Primeros pasos en Node.js”

Auto KeyDown y KeyUp en C#


En alguna ocasiones necesitamos desarrollar un programa o aplicación donde simule un evento del teclado para hacer diversas cosas, como por ejemplo controlar un videojuego de manera remota, haciendo spam, usando Kinect para leer los movimientos y controlar el flujo de un programa externo, en fin… para mi caso lo necesito para automatizar el tecleado de la flecha hacia arriba y hacia abajo, en los próximos post explicaré el motivo.

Inicialmente lo iba a hacer en Javascript nativo pero dadas las políticas de seguridad de Internet Explorer 11 me vi obligado a hacer otra solución, lo único que se me ocurrió fue hacerle una trampilla a IE y hacerle creer que el usuario era quien enviaba el comando del teclado, desgraciadamente no soy el único que se le ha ocurrido y no solo con buenas intenciones, averiguando a puro ensayo y error me di cuenta que para llevar a cabo esta acción la aplicación debe estar con permisos administrativos, de lo contrario IE 11 cierra la aplicación al detectar que está siendo aplicada esta técnica que comunmente se usa para generar spam.

Ok, luego entendiendo esos puntos claros no queda más que comenzar con un proyecto nuevo en Visual Studio, para este caso estoy usando el Framework 4.5 pero según la documentación la función que se usará es soportada desde el Framework 2.0.

En esta solución nueva seleccionar un proyecto para consola.

Se y entiendo muy bien que la función keybd_event fue sustituida por SendInput, pero nuevamente entra a jugar la seguridad de IE y es como si no le hiciera nada.

Entonces declararemos el siguiente método:

 

        private static void SendInput(byte key, int time)
        {
            keybd_event(key, 0, KEYEVENTF_EXTENDEDKEY | 0, 0);

            Thread.Sleep(time);

            keybd_event(key, 0, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);
        }

Continue reading “Auto KeyDown y KeyUp en C#”

Creando y entendiendo nuestro primer Web API


Cover Entry

Continuando con esta serie de tutoriales para aprender a usar Web API, comenzaremos con lo más básico e ir gradualmente aumentando la complejidad hasta llevar al objetivo inicial.

En este tutorial crearemos nuestro primer proyecto de ASP .NET Web API y ASP .NET MVC, donde consumiremos el API desde JQuery que ya viene por defecto en la plantilla de Bootstrap, recordemos que se está usando Visual Studio 2013 en su último update. Continue reading “Creando y entendiendo nuestro primer Web API”

¿Cómo guardar una imagen en SQLite para WinRT?


Muestra de almacenamiento en SQLite

Cuando se está trabajando con bases de datos de lado del cliente o locales, muchas veces se desea guardar una imagen, ya sea un avatar, una imagen representativa, lo que sea. Por lo que suponiendo que ya se cuenta con el entorno de desarrollo configurado incluso SQLite (click aquí por si no sabes como instalarlo), seré breve.

El mecanismo es sencillo siempre y cuando se sabe como hacer las cosas, y hay que aclarar que SQLite no permite guardar imágenes como tal, la razón la desconozco porque si no me tocaría leerme la documentación oficial 😛 por lo que toca buscar una medida alternativa para guardar una imagen, una primera forma es usar el API de algún hosting de imágenes y guardar la URL (así como Imgur), pero si pensamos un poco mejor consumiría mucho plan de datos móviles o Internet Móvil de parte del usuario; así que a mi manera de ver la situación no es una manera viable de guardar una imagen en SQLite, para resolver esto existe algo que se llama Base64, la cual invito a que investigues ya que es un sistema bastante interesante que se podría aplicar para muchas otras cosas como la criptografía, comunicaciones, enviar correos electrónicos, entre otros.

Continue reading “¿Cómo guardar una imagen en SQLite para WinRT?”

Pluralsight tu mejor herramienta de aprendizaje


pluralsight logo

Cuando quieres comenzar a estudiar alguna tecnología en específico y sobre todo tecnologías modernas te encontrarás con recursos que son solo foros o muchas veces cursos desactualizados… en fin, buscar un curso BUENO cuesta y vale un montón de plata, pero uno como estudiante por lo general en mi caso no se cuenta con una tarjeta de crédito personal, si no es que es de los padres!, o no se tienen $98 USD (dólares) en el momento de inscripción.

Por esas razones y muchísimas otras uno termina regresando a los foros y aprendiendo muchas veces a las malas! esa tecnología; cuando digo que a las malas es porque uno puede aprenderse malos hábitos en ese lenguaje de programación o deja agujeros de seguridad, y aquí es donde pluralsight se vuelve una herramienta super eficaz a la hora del aprendizaje, cuenta con profesionales certificados, puedes repetir los vídeos una y otra y otra vez, cuentas con soporte 24/7 y lo más importante es que la biblioteca de cursos se actualiza como mínimo cada mes o esa es la frecuencia de nuevos cursos que me llegan al correo pero esa actualización no solo es para reemplazar material obsoleto si no para agregar cursos de las tecnologías más relevantes en todo el mundo como lo son:

Continue reading “Pluralsight tu mejor herramienta de aprendizaje”

Curso de Python – IngeniaTuCodigo


Logo Python

IngeniaTuCodigo hace el segundo vídeo pero esta vez será de Python donde se verá:

  • Introducción
  • Instalación
  • Cosas básicas
  • Hola mundo, entre otras cosas mas

Continue reading “Curso de Python – IngeniaTuCodigo”

Tutorial: Como hacer un reproductor de música global a la aplicación – MediaElement Windows 8


Cuando estamos construyendo una aplicación para Windows 8, muchas veces se quiere amenizar la aplicación colocando sonidos de fondo o música, el problema viene es cuando comenzamos a indagar en la documentación de MSDN y vemos que los elementos de una página solo existen en solo esa página, por lo que si se hace un Navigate.From(…) es casi que imposible acceder al de otra página, todo esto es gracias al modelo de aplicación y más que todo por seguridad de las mismas aplicaciones.

Teniendo esto en cuenta vamos a crear nuestra aplicación llamada “Reproductor”:

Primer paso

Continue reading “Tutorial: Como hacer un reproductor de música global a la aplicación – MediaElement Windows 8”