EtiquetaProgramación

Taller/charla en el CDSL

Se me ha invitado a dictar un taller o charla en el Centro de Difusion del Software Libre (CDSL) sobre el modelamiento de bases de datos utilizando herramientas libres. La fecha, que aun no esta decidida, sera mas o menos a principios de mayo y sera dictada en dos sesiones, una primera parte de Introduccion conceptual a SQL y una segunda parte donde se enseñara a modelar una base de datos.
El temario, la fecha y la hora aun no esta definido, pero a medida que pasen los dias ire actualizando la informacion que pueden encontrar en la siguiente direccion:

Wiki de tallers en el CDSL

Chevereto

Si alguna vez pensaste en tener un hosting de imágenes corriendo en tu servidor con un script open source que te permite modificarlo como te dé la gana y compartir con personas de todo el mundo esta experiencia… Piensas igual que nosotros.

Con esta frase se presenta el sitio en desarrollo de Chevereto , un futuro sistema libre para el alojamiento de imagenes.

chevereto’s logo

Ya deben conocer Imageshack (https://imageshack.us) o Godlike, el primero un sitio popular a nivel mundial de almacenamiento de imagenes y el segundo un sitio Chileno que a menos de un año de vida se esta popularizando en distintos paises.
Chevereto es un sistema que hace un par de meses se esta desarrollando pero que tambien hace mucho tiempo esta estancado y que ahora retomare con mucho mas animo. Espero poder tener lista una beta del sistema en menos de un mes, junto a Rodolfo Berrios (autor intelectual del asunto) y Pons (un desarrollador desmotivao’).

Seguir leyendo

Twitsh – twitea fácilmente!

Como usuario de fluxbox y, para facilitarme el uso de twitter (a pesar de usar twitbin), cree un script que si bien no es solamente para fluxbox, es muy util con fluxboxo con algún otro gestor de ventanas que nos permita configurar hotkeys.

Si bien no podre con este script ver los updates de mis contactos, si podre actualizar mis acciones de una manera sencilla sin tener que abrir el navegador web para poder actualizar desde la web o desde twitbin y sin usar ningún cliente para twitter. Es un script sencillo que, configurandolo bien, podra ser muy util.

Para dejarlo funcionando de lujo en fluxbox, la instalacion y configuración paso a paso.
Descargar el script desde acá o copiar el código desde:

#!/bin/sh

CONFIG_FILE=$HOME/.twitshrc

function sendUpdate
{
USERNAME=`grep -v “^#” $CONFIG_FILE |grep username |cut -f2 -d ” “`
PASSWORD=`grep -v “^#” $CONFIG_FILE |grep password |cut -f2 -d ” “`
MY_UPDATE=`zenity –entry –text=”What are you doing now? (140 chars. max)”`
until [ `echo $MY_UPDATE|wc -c` -lt 140 ]; do
zenity –error –text=”Your update has more than 140 characters. Please edit this.”
MY_UPDATE=`zenity –entry –text=”What are you doing now? (140 chars. max)” –entry-text=”$MY_UPDATE”`
done
curl -u “$USERNAME:$PASSWORD” -d “status=$MY_UPDATE” “https://twitter.com/statuses/update.json” |zenity –progress –text=”Sending …” –auto-close auto-kill
}

if [ -f $CONFIG_FILE ];
then
sendUpdate
else
echo “ERROR: Couldn’t open config file ($CONFIG_FILE)”
fi

Seguir leyendo

TwitteRead (Plugin para WP)

Estaba aburrido y pense en poner mis updates de twitter en el sidebar del blog, no queria buscar y/o usar algun plugin o addon ya escrito por otra persona, por esto, decidi crear mi propio plugin.

Lo llamé TwitteRead y funciona perfectamente, lo pueden ver al final de la barra de navegacion que esta al costado derecho del blog.
El plugin es bastante basico pero se le pueden ir agregando mas funcionalidades y quizas generar un algoritmo más óptimo para leer los últimos updates de cada usuario, pero para este caso (el mio) basta y sobra con lo que hace. Si en algun momento comienza a fallar entonces reconsideraré la opcion de volver a escribirlo. Si alguien quiere probarlo lo puede descargar desde acá.
Para instalarlo y usarlo es muy sencillo, vayan al directorio de los plugins de wordpress (wp-content/plugins) y desempaqueten el fichero descargado:

$ tar zxvf twitteread-0.5.tar.gz
twitteread/
twitteread/twitteread.php

Luego deben ir al panel de administracion de WP y activen el plugin, una vez activado, deben editar el sidebar del Theme que esten usando y, en la posicion que ustedes quieran, llaman a la funcion que devolvera o mostrara los post en twitter.

<? getTwitterFrom( usuario, cantidad_de_updates ); ?>

Router && Firewall: Script para iptables

Un router nos permite crear una ruta de ida y de vuelta de un paquete, se encarga de que dicho paquete llegue a su destino y que la respuesta llegue correctamente a su remitente. Nos servirá para “compartir” internet en nuestra LAN.

Un firewall nos va a permitir filtrar cierto trafico en nuestra red, por ejemplo habilitar o deshabilitar puertos, redireccionar, etc.

Para simplificar todo esto y poder compartir internet he creado un script bastante facil de usar y de configurar.

El script cuenta con lo siguiente:

  • fichero para habilitar puertos (whitelist): Nos permite indicar que puertos están disponibles para usar.
  • fichero para bloquear o banear ip (blacklist): Nos permite banear una serie de direcciones ip o host para que no puedan acceder a nuestra red.
  • fichero para redireccionar puertos (redirect): Nos permite habilitar puertos para cualquier maquina que este en nuestra red y redireccionar todo el tráfico.

Seguir leyendo

Algoritmos de ordenamiento

Por motivos de estudio, he estado durante unos dias investigando sobre los distintos metodos de ordenamiento. Imaginemos un vector o una matriz con numeros o letras (o palabras) desordenadas u ordenadas, los algoritmos de ordenamiento nos permite ordenar en distinto orden los elementos de nuestro vector o matriz. Cada algoritmo tiene distinta complejidad.

Existen algoritmos o metodos simples como el conocido “Burbuja” o “Bubble”, siendo algo tan facil de entender y de escribir, existen tres versiones, una mas eficiente que otra, donde el tiempo de ejecucion o de ordenacion puede reducir hasta “n” veces. (donde n es la cantidad e elementos). Existen metodos aun mas eficientes y usando la tecnica de recursion podemos llegar a ordenar millones de elementos en menos de 1 segundo, como el conocido como “Ordenamiento Rapido” o “Quicksort”.

He hecho un informe o trabajo de investigacion comparando y explicando distintos tipos de ordenamiento. El lenguaje de programacion que he usado para los algoritmos y el para medir el tiempo de ejecucion es Java.

Descargar Documento (Informe):
PDF