Archivo del Autor: blashadow

Scanear codigo QR con android

Muchos desarrollo ven utilidad en el hecho de tener que escanear un código QR para hacer x funcionalidad, bueno hasta hace unos anos esto con android no era tan fácil, pero ahora con gradle android studio, es cuestión de mins y se logra el objetivo.

En su momento la forma de lograr esta funcionalidad era llamar una aplicación que ya implementara esto y que esta hiciera el trabajo por nosotros.

Sigue leyendo

Integración Continua & Entregado continuo CodeShip (Python Fabric)

Integración Continua y Entregado continuo son términos que en estos últimos anos han estado tomando bastante auge, los principios han existido desde siempre en esta área de la tecnología pero ultimamente son tendencia en el área del desarrollo de Software.

Estos términos toman este auge con la tendencia y la gran cantidad que nuevas aplicaciones que necesitan que sus cambios lleguen mas rápido a sus usuarios, cosa de que una funcionalidad sea contemplada en el día 1, en el día 2 se desarrolle y se pruebe y en el día 3 este puesta en producción para el disfrute de los usuarios.

Sigue leyendo

Multiple configuraciones en Django

Mientras estamos desarrollando cualquier proyecto y tenemos nuestra configuración todo va bien, pero en el momento que hay que desplegar dicho proyecto y necesitamos cambiar esa configuración en producción, se convierte en algo incomodo, cuando estas trabajando con un ambiente que tiene integración continua ahi es donde se convierte en un problema.

Lo recomendable es crear un archivo de configuración base de donde cada entorno estará en caso de ser necesario sobre-escribiendo cada configuración.
Sigue leyendo

Como Obtener un Certificado SSL Gratis (letsencrypt) Y Configurarlo para Nginx

Asi mismo como dice el titulo, un certificado ssl gratis, ya no tenemos que pagar para que nuestra pagina aparesca como segura sino que podemos obtenerlo gratis gracias al proyecto letsencrypt.

El proyecto letsencrypt es una iniciativa para contrarrestar este sistema / monopolio de los ssl ofreciendo una alternativa gratis, hasta el momento se encuentra en una etapa beta y queda a nuestro criterio usarlo o no. Los certificados generados por este proyecto duran solo 90 dias luego de eso tenemos que generar otro con ellos mismo, pensaran que es poco tiempo pero por que preocuparse “esto es gratis” podemos actualizar sin costo alguno la vigencia de nuestros certificados sin problemas.

Sigue leyendo

Notificaciones Android

Las notificaciones son una buena forma de darle feedback al usuario de que algo sucedió y le concierne, se debe usar estas con precaución sabiduría ya que el mal uso de las mismas podría llevar a que el usuario simplemente las inhabilite para nuestra aplicación.

NotificationCompat.Builder mBuilder =
    new NotificationCompat.Builder(this)
    .setSmallIcon(R.drawable.ic_launcher)
    .setContentTitle("Mi Aplicacion")
    .setContentText("Hola mundo");

NotificationManager mNotificationManager = (NotificationManager)this.getSystemService(Context.NOTIFICATION_SERVICE);

int notificacion_id = 2345;

mNotificationManager.notify(notificacion_id, notification);

Sigue leyendo

$Http & $q AngularJs

Es poco probable encontrar hoy dia una aplicación web hecha en cualquier framework que no realice alguna petición ajax, debido a esto y al gran uso de AngularJS este tutorial sera de estos 2 AngluarJS service $http y $q.

$http

Servicio que nos proporciona todo un set de metodos para realiza nuestras peticiones xhr de la forma es que mejor nos guste y cumpla con los requerimentos de nuestras apies.

Realizar un request con angular es tan facil como:

var config = {};
$http.get('http://localhost/api/test', config)
     .then(function(response){ console.log('request exitosa.') }, 
           function(response){ console.log('error'); });

Sigue leyendo

Socket.IO Rooms & NameSpace

Socket.io es una excelente herramienta para lo que conocemos como aplicaciones en tiempo real, si tenemos una gran cantidad de usuario y queremos organizarlos y/o segmentarlo para saber a que grupo de usuarios le enviamos cierta información las características de Room y Namespace.

Los namespace

Son una segmentación de nivel superior, tanto el cliente como el server deben tener definidos estos contextos ya definidos una vez la aplicación esta en ejecución a diferencia de los rooms. Por defecto todas las instancias de socket.io usan un namespace ‘/’ dependera de nosotros queremos usar uno extra.

var server = require('http').Server(app);
var io = require('socket.io')(server);

Sigue leyendo

Tomar una foto con android y cortarla

Tomar una foto con android es bien facil de hacer:

Tomar Foto

Permisos necesarios:

<uses-permission android:name="android.permission.CAMERA" />

Codigo:

Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);

//3434 es un int que esperaremos como resultado una vez sea tomada la foto.
startActivityForResult(intent, 3434);

Sigue leyendo