Luego de cuatro años trabajando en una multi-nacional como un consultor de IT a nivel de software para negocios (banca, Seguros, servicios...), Ramiro Pareja decidió ya era momento de cambiar de profesión y orientarse hacia la Ingeniería Electrónica.

[gallery link="file" order="DESC"]

El escenario es difícil, las agencias de empleo reciben cientos de currículum al día de gente que esta aplicando para la misma posición. Con esta avalancha de resumes es imposible que hagan un análisis de todos los candidatos y por ende el primer filtro es la presentación. Si tu currículum no causa una buena impresión es automáticamente descartado y el próximo currículum sera analizado. Es aquí cuando Ramiro decide diseñar su propia tarjeta de presentación para adjuntarlas a su currículum.

Esta tarjeta para poder ser llamativa debe cumplir con los siguientes requerimientos:

  • Tener su información de contacto (gracias Capitán Obvio!).
  • Mostrar profesionalismo.
  • Servir de ejemplo de sus cualidades de ingeniero.
  • Servir para algo mas que una tarjeta de presentación, de esta forma previene que sea descartada en la primera oportunidad.

La Tarjeta.

De entrada queda descartada la idea de usar Open RFID por que pocos reclutadores sabe de esta tecnologia o tienen un lector para RFID Tags. Lo mas comun seria usar algo estilo USB.

Una tarjeta del tamaño de una tarjeta de crédito (85.6 × 54 mm, pero mas gruesa) con dos esquinas perforadas y espacio suficiente para abrir una 'ventana' en el medio y meter un micro controlador soldado. Con la información de contacto impresa en el frente de la tarjeta y las esquinas que fueron perforadas pueden estas pueden ser arrancadas de forma fácil dejando un conector USB para que lo conecten a la computadora directamente.

La tajerta es reconocida como un dispositivo de almacenamiento automaticamente ejecuta un autorun.inf con su currículum, carta de presentación, portafolio y website además de cualquier otro documento.

Características Técnicas.

  • Micro-crontrolador PIC 24FJ64GB002 @ 32 MHz (16 MIPS).
  • 64 KB de flash y 8KB de RAM que puede ser aumentado a 32MB a tra vez de un I2C memory.
  • Hasta 11 I/Os digitales disponibles con cuatro de ellos tolerables a 5 voltios.
  • Hasta 4 canales analógicos.
  • Un puerto ICSP para depuración y programasion. los tres pines del ICSP también pueden ser usados como un GP de I/Os.

Usando `du` podemos encontrar los directorios y archivos mas grande dentro de un directorio. el siguiente ejemplo muestra como listar los 10 archivos y carpetas mas grande dentro del directorio 'HOME'

du -a ~/ | sort -n -r | head -n 10

En el script de arriba, lo que estamos haciendo es listar todos los archivos y directorios que están en el directorio donde nos encontramos junto a su tamaño, luego los ordenamos numéricamente y de forma inversa y finalmente elegimos los últimos 10.

Con `find` podemos conseguir los 10 archivos mas grandes recursivamente dentro de un directorio.

find ~/ -type f -exec ls -ls {} \; | awk '{print $6"\t"$9}' | sort -k1 -n -r | head -n 10

Este script busca todos los archivos dentro de nuestro home, y los pasa por el comando ls -ls que los va a listar mostrando su tamaño. El resto de esta linea solo toma los campos seis y nueve pertenecientes a el tamaño en bloques y el nombre. Al igual que el script anterior el ultimo segmento de este script ordena numéricamente la salida y de forma inversa para luego tomar los primeros diez resultados.

Hace un par de artículos publique como tener el servicio de push desde un canal de IRC para el iPhone. Después de esa instalación quede inconforme con la forma en que hay que arrancar y parar ZNC en el servidor así que decidí crear un script de arranque.

El siguiente script permite arrancar, parar, recargar la configuración y reiniciar el servicio. Echemosle una ojeada a /etc/init.d/zncd

#!/bin/bash # # Run-level Startup script for the ZNC Boucer # description: Startup/Shutdown ZNC Boucer ZNC_FOLDER="/usr/bin" ZNC_OWNR="orvtech" if [ ! -f $ZNC_FOLDER/znc -o ! -d $ZNC_FOLDER ] then         echo "ZNC startup: cannot start, it appears that it is not installed"         exit 1 fi case "$1" in     start)             echo -n "Starting ZNC: "             su - $ZNC_OWNR -c "$ZNC_FOLDER/znc"             touch /var/lock/subsys/ZNC             echo "OK"             ;;     stop)         echo -n "Shutdown ZNC: "         kill -9 `ps -C znc | awk '{print $1}' | grep ^[0-9]`         rm -f /var/lock/subsys/ZNC         echo "OK"         ;;     reload)         echo -n "Reloading ZNC:"     kill -HUP `ps -C znc | awk '{print $1}' | grep ^[0-9]`     echo "OK"         ;;     status)         if ps -C znc > /dev/null     then       echo "ZNC Bouncer is running"     else       echo "ZNC Bouncer is not running"     fi         ;;     restart)             $0 stop         sleep 2             $0 start             ;;         *)         echo "Usage: $0 start|stop|restart|reload|status"         exit 1 esac exit 0

Si su NSLU2/Servidor esta corriendo gentoo pueden agregar el servicio así:

rc-update add zncd default

El output debería de ser algo parecido a esto

* zncd added to runlevel default

Al parecer [joelinux] ha logrado hacer chroot de un stage3 en el Nexus one. [joelinux] solo siguio las instrucciones de xda-developers solo que uso el stage3 de gentoo para ARM.

Aun tiene muchos bugs pequeños pero funciona, se pueden compilar paquetes incluyendo el kernel lo que es una gran ayuda para desarrollar y portear mas paquetes para el Nexus One.