Instalando Sentry con docker + systemd

Hace un tiempo había hecho un post de como instalar Sentry en Ubuntu server y lo hacía utilizando VirtualEnv2 y Supervisord.

Ahora mucho tiemp...

Publicidades gráficas de computadoras y videojuegos viejos

Una larga colección de posters, publicidades en revistas y demás de computadoras de la época, muchos KB y aveces hasta algunos MB!

Vintage Computer an...

La primera grabación de música generada por computadora

Investigadores neozelandeses han restaurado la grabación que registra la primera vez que se produjo música con un ordenador. Fue en 1951 usando un enorme apa...

Creando una directiva en Angular que soporte ng-model

Esto es simple, pero buscando en internet me di cuenta que la documentación que hay es mala, y en español sobretodo, inexistente.

Lo que vamos a hacer e...

Todas las patentes de Nikola Tesla en un gigantesco documento PDF de 500 páginas

Original: http://www.microsiervos.com/archivo/tecnologia/patentes-nikola-tesla-pdf.html
Via: http://www.ewao.com/a/download-n...

Configurando un SSL gratis con Let's Encrypt en Nginx

Con configuración fácil para proxies reversos

Hace un tiempo se pueden obtener certificados SSL gratuitos gracias Let's Encrypt....

Configurando Thunderbird con local Mailbox (MoveMail)

Bueno, seguí una guía muy recomendable de como configurar un mailbox exclusivo para TOR (Solo para usua...

CountDown sencillo en Angular

Una directiva muy simple para hacer un count down, simplemente eso.

["$interval", function($interval) {
    return {
        // Restringido a usarse solo como elemento...

safeApply para Angular

Avitando el "Error: $digest already in progress"

Algo que odio de angular es como se van del paradigma de programación orientada a eventos, a diferencia de Backbone y otras librerías que s...

Listar directorios que ocupen mas de 1G

Nada, una tontería pero lo uso mucho cuando tengo que fijarme que directorio es el que se esta llevando "el peso pesado", con usos prácticos como buscar directorios pesados en...

Configurando Dropbox con Docker en Archlinux (+ systemd)

Corriendo software privativo encapsulado con cgroups :)

Para un trabajo necesito tener un directorio sincronizado con este servicio privativo, aunque soy...

wrap en JavaScript simple

Necesitaba cortar un base64 en varias lineas de tamaño fijo, y busqué una función de wrap en google, pero me encontré con funciones complicadas, muchas transformaban el string a un array y...

Problemas cargando youtube:

Al parecer uno de los dominios a bloquear de ads lo usa youtube como CDN de archivos de estilos, si usaron la lista linkeada acá, hay que sacar la negación de:

s.ytimg.com

s.ytimg...

Configurando DNSCrypt con caché (con pdnsd) en Archlinux

Con yapa anti ads

Nota: El manual es para ArchLinux, pero no tendría que ser difícil de aplicar en otras...

Cambiar nombres de archivo de ISO-8859-1 a UTF-8

Leo un post interesante en mi lector de RSS, sobre como resolver el problema del cam...

Subida de archivos por Ajax usando FormData y JQuery

Método tan fácil como compacto

Hace poco tuve que agregar la opción de adjuntar un...

Extendiendo la clase "Error" en ES6 con babel

Y otras built-in

Me pasó usando la librería bluebird no poder capturar un error personalizado, estoy usando Babel y el preset es2015.

Pen...

Prevenir que Ionic cierre el activity al presionar back button

Ionic por defecto captura el back button por hardware para disparar un history.back() en la navegación....

Restringir a los usuarios SFTP acceso a un directorio principal de un sitio web

La siguiente es una guía para la creación de usuarios SFTP y la restricción de acceso hacia el directorio home del usuario.

La confi...

La mejor forma de prevenir ataques de fuerza bruta a SSH con iptables

Acá hay incontables '[HowTo's de cómo prevenir ataques de fuerza bruta con iptables (en)](https://encrypted.google.com/search?hl=en&q=Howto+preve...

Agrupar array en arrays de tamaño fijo en JavaScript

Una cosa simple, pero que librerías como underscore no hacen, dejo el código de una implementación 100% nativa:

var groupEach =...

shred recursivo

shred'eando todos los archivos de un directorio

Lamentablemente el comando shred no tiene una opción para hacerlo recursivo, pero eso en Linux *(...

Updata mal publicado :P, va de nuevo

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

# OTR fingerprints

    Actualizado: 10/04/2015 
    Updated: 04/10/2015

## tioscar at...

Mercadolibre: "Notamos que no estuviste abriendo nuestros mails"

Hace rato que Mercado Libre, por lo menos en Argentina se volvió uno de los sitios con mas mecanismos de tracking de la actividad de sus usuarios (tan...

Borrar la meta-data de todas las imágenes de un directorio

Desde linea de consola y en una sola linea :)

Para esto voy a usa ExifTool, un script en Perl para ver/...

Vulnerabilidad de inyeción de comandos de shell en código de maquina de votación Vot.ar de empresa MSA (msa.com.ar)

Hoy a la mañana alguien subió el código fuente de [vo...

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256

# OTR fingerprints

Actualizado: 10/06/2015 
Updated: 06/10/2015

## tioscar at gmail dot com (XMMP/Jabber)
5CB601DA 6ED7FB69 AC22D035 15457...

Tracking Protection nativo en FireFox

Hola gente, me enteré a través de un post en Barrapunto que FireFox tiene su propio método de protección de trackeo, y n...

Privilegios de root para comandos específicos con SUDO

Y como ejecutarlos sin password

Me puse a hacer un script para bloquear y desbloquear mi desktop con algunas utilidades como la de apagar el sonido, detener...

apt-get install PHP (para Debian Jessie)

Bueno como en Debian Jessie deprecaron los paquetes php5-ming y php5-ps el snipplet anterior falla, así que para Debian Jessie es:...

Cambiando la contraseña de EcryptFS de tu home

Anteriormente hice un post llamado Cifrando tu home en Archlinux, este usa la autentificación PAM para automontar la home al logueo del u...

Como arreglar el problema con Nginx + PHP-FPM que no devuelve nada ni tira error

Problema desde actualización.

Me paso en varios servidores, luego de actualizar Nginx los si...

Generador de configuraciones SSL seguras

Online, desarrollado por The Mozilla Foundation

Una herramienta útil para configurar diferentes servidores con SSL.

Soporta:

  • Apache *...

Generador de passwords fuertes en bash

Nada siempre que configuro servers me gusta ponerle una contraseña fuerte, si después el usuario la cambia por una mas devil ya no es mi culpa, pero bueno, para hacerlo desde l...

Descargando de forma parelela con wget

Si necesitamos descargar un par de urls pero de forma paralela, solo necesitamos tener el listado en un archivo y ejecutar:

$ cat url.txt | xargs -n 1 -P 10 wget

Los...

Evitar ataques de temporización o "Timing attacks" en PHP

Para los que no saben de que se trata, transcribo de la esta web:

En criptograf...

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256

# OTR fingerprints

    Actualizado: 10/04/2015 
    Updated: 04/10/2015

## tioscar at gmail dot com (XMMP/Jabber)
5CB601...

OTR Fingerprints de exos

En los posts anidados hacia este iré publicando mis fingerprints de mis llaves OTR, con su respectiva firma PGP de mi clave pgp.

Si no sabés qu...

AngularJS MTV Meetup: Best Practices

http://www.meetup.com/AngularJS-MTV/events/93943412/

Presentation slides available at: http://goo.gl/CD0Is

Live from the Mountain View, CA meetup, Miško Hevery discusses th...

Geek code de exos

Bueno acá voy a ir actualizando mi geek code:

-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCC/IT d--- s:++ a- C+++$ UBL+++$ !P L+++$ E--- W+++$ !N !o K...

Recuperar raid por software desde un Ubuntu Live

Hay que instalar mdadm y luego correr:

mdadm --assemble --scan

X.Org Security Advisory: March 17, 2015

More BDF file parsing issues in libXfont

Hablando del tema:

http://lists.freedesktop.org/archives/xorg/2015-March/057236.html

A...

Como hacer cajas flexibles HTML5 en Android 4.3 para atrás.

Útil para Cordova, Phonegap, Ionic, etc.

Me encontré con un problema, maqueté unos templates HTML5 y me di cuenta que en Android 4.3 para abajo, la pro...

Tunning GIT (v2.1)

Completa guía para tunear la herramienta de git de consola!

Mejora a la primera versión publicada en http://esfriki.com/nm y Arreglos de ortografía de la versión 2.0 http://esfriki.com/9p...

Los mejores DevOps Reactions gifs del 2014

El blog de tumblr DevOpsReactions que se dedica a postear gifs animados que describen que sienten los programadores, administradores de...

Usando Xdebug con PHP-CLI

Incluyendo el server embebido en php-cli

Xdebug es la herramientas mas utilizada para debuggear (hay que ver que pasa con [php>dbg](http://log.exo...

Generar certificado SSL autofirmado con un solo comando :D

# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /ruta/de/llave-privada.key -out /ruta/de/certificado.crt

Robado de acá: https://www.dig...

Configurar versión de python para node-gyp

Si tuviste un error así:

gyp ERR! configure error 
gyp ERR! stack Error: Python executable "python" is v3.4.2, which is not supported by gyp.
gyp ERR! stac...

Casteo de String a Array en PHP

Una simple curiosidad, si se espera tanto un srting como un array (ej, datos por ajax).

php > $arr = (array) "hola";
php > print_r($arr);
Array
(
    [0]...

Usando eventos keypress, keyup y keydown de forma correcta

Aveces simplemente tenemos que correr alguna función que vaya validando o formateando un texto dentro de un input o un textarea, y si esta rutina es d...

Creative Commons Attribution-ShareAlike 3.0 Github