sábado, 29 de diciembre de 2007

Tamaño de tablas/BD en PostgreSql

PostgreSql posee algunas funciones muy útiles para determinar el tamaño en disco que ocupa una tabla o una base de datos. Estas son:
  • pg_relation_size
  • pg_total_relation_size
  • pg_database_size
Para visualizar mas facilmente el resultado de las funciones anteriores, de puede utilizar pg_size_pretty. Por ejemplo:

intranet=# select pg_size_pretty(pg_total_relation_size('requerimiento'));
pg_size_pretty
----------------
23 MB
(1 row)


Estas y otras funciones están documentadas en el sitio de PostgreSql.

miércoles, 12 de diciembre de 2007

Threads en JavaScript usando XPCOM

Encontré una pagina con algunos ejemplos de como utilizar threads con XPCOM, muy útil para desarrollar extensiones de Firefox (y supongo también Thunderbird y el resto de los "primos" de Mozilla).

Las instrucciones están en http://skrul.com/blog/projects/threaddemo y el código accesible via SVN en http://skrul.com/svn/threaddemo/trunk/

lunes, 10 de diciembre de 2007

Download Statusbar + Checksum para bajar

He "empaquetado" en un XPI los cambios en Download Statusbar... Es realmente facil! Simplemente descomprimi el XPI original, le aplique los parches, cambie el nro. de versión y lo volví a comprimir!

Pueden bajar Download Statusbar + Checksum desde aqui.

Tooltips con prototip

Encontré una librería para manejar tooltips, está bastante completa y permite generarlos de varias formas: http://www.nickstakenburg.com/projects/prototip/ (utiliza scriptaculous y prototype).

Download Statusbar + Checksum

Empecé a investigar para aprender a desarrollar extensiones para Firefox, y se me ocurrió empezar implementado una mejora a la extensión "Download Statusbar", que consista en mostrar las opciones para calcular el MD5 o SHA1 del archivo bajado.
Inicialmente mi idea era utilizar el comando correspondiente de linux (md5sum, sha1sum, etc), pero luego descubrí que Firefox ya posee una implementación de varios algoritmos de hashing.

En esta primera versión la interface se ve así:




En el caso anterior, elegí calcular el SHA256 del archivo bajado. El resultado se muestra en un popup:



Pueden bajar el diff (a aplicar al código en CVS del día 2007-12-08), o ver el diff coloreado.

Si te interesa empezar en el desarrollo de extensiones, te recomiendo que inicies con las siguientes páginas (y sigas los links de esas páginas... hay mucha información!!):

http://developer.mozilla.org/en/docs/Setting_up_extension_development_environment
http://kb.mozillazine.org/Getting_started_with_extension_development
http://kb.mozillazine.org/Dev_:_Extensions