inicio mail me! sindicaci;ón

Archive for July, 2006

Contador de fisgonas

Me intrigaba saber cuánta gente accedía a la fisgona según la hora que fuera y el día, ya que supuse que no sería lo mismo a las 4 de la mañana que a las 10, ni sería lo mismo un domingo o un día de agosto, que un miércoles o un día de febrero. Así que en una madrugada de ahce 15 días aproximadamente escribí una chapucilla en shell script que me permitía dibujar unas gráficas representando número de usuarios respecto a la hora dada. Pese a que debía de haberlo publicado antes, ya que desde entonces ha estado cogiendo polvo, lo he publicado hoy, donde le he dado algún que otro retoque que le faltaba. Of course, sigue siendo cutre a más no poder, pero su función la acomete con eficacia y sin chistar, salvo por un problema: que alguien (o algo) de dreamhost debió matar el proceso allá por el día 23. Así que algo habrá que inventar que permita que se esté ejecutando de continuo el proceso de sondeo, p.ej. programar un cron cada minuto para sondear, y otro cada 10 o 20 minutos para dibujar.

Como ahora mismo tengo mejores cosas que hacer, y no tengo noticias de que a nadie le interese seguir mejorando esto, lo dejo paralizado (freeze).

El contador de fisgonas se puede acceder aquí, y el código fuente del contador de fisgonas acá, y el resto lo sabréis leyendo el código fuente, que es muy reducido.

Creo que respecto a este tema nada más, y si no, pues a los comentarios. Y si a alguien le interesa el contador éste y quiere que se siga mejorando o bien lo mejora él/ella, o bien que pida y [a lo mejor] se le dará.

Actualización (20060820): Aviso que esto de los resultados del siguiente párrafo son elucubraciones mías, así que no tomárselo muy en serio. Lo digo por que esta noticia ha sido meneada, y alguien en los comentarios rebatía, posiblemente con toda la razón, lo que yo escribí.

Bueno, los resultados: se aprecia que de lunes a viernes, y especialmente de martes a jueves, hay unas grandes subidas de usuarios algo después de las 8 de la mañana –hora de entrar a trabajar– y bajadas algo antes de las 12 de la noche –hora de irse al saco. Los lunes la subida es más discreta, al igual que la bajada el viernes. Durante el fin de semana se ve que se alcanza el mismo número de usuarios pico, pero cuesta más y se mantiene por menos tiempo, la subida es más relajada. Ese jueves de esa semana (porque los datos son de sólo una semana) se inicia la subida de usuarios algo antes de las 8 de la mañana, por lo que hubo gente que llegó antes a trabajar ese día.

Acutalización (20060817): Hoy le he hecho algunas mejoras al sistema, por ejemplo, ahora funicona mediante cron. Ya no es un script que tiene que estar permanentemente ejecutándose (los de DreamHost además lo mataban), si no que cada minuto toma una muestra del número de fisgonas que hay (antes era cada 20 segundos, pero cron no permite más definición). Ahora hay 2 resoluciones para las imágenes que se generen desde hoy: 640×480 y la anterior de 2048×1024. El código fuente además, en vez de estar desperdigado en tres ficheros, lo he reunido en uno sólo, que para las pocas líneas de códgio que son, no merece ese jaleo de tres ficheros.

Hosting en DreamHost, y 2 hacks a meneame.net (y una pequeñita a WordPress)

He contratado hosting en DreamHost.com, llevaba unas semanas con varias ideas en la cabeza a implementar en la web, y requerían un hosting algo más allá que el servidor de mi casa. De lo que estuve mirando sólo voy a comentar dos empresas, ambas estadounidenses. El resto, bien hosting europeo o español, era bastante más caro para la reducida cantidad (y calidad) de servicios que dan. Ofrecen menos ancho de banda, menos espacio en disco, menos software (php, python, RoR, perl, los one-click installs…), pocos ofrecen acceso por SSH y el precio es el mismo o incluso superior.

Las dos empresas que acapararon mi atención fueron DreamHost y BlueHost. BlueHost ofrece un hosting un poco más limitado: el número de dominios albergados, los subdominios, el espacio en disco, el número de cuentas de correo, el ancho de banda, y por 1 ó 2 dólares de diferencia… andaban por ahí, por ahí. Las dos razones por las que me decanté por DreamHost fueron por que para obtener acceso SSH a BlueHost hay que enviar una copia del pasaporte (o del carné de la seguridad social estadounidense o el permiso de tráfico, que viene a ser lo más parecido que tienen allí a un DNI), y además en b.log (ahora he encontrado un descuento mejor en Fotomurcia) encontré una promoción por la que al registrarme en DreamHost me regalaban el registro de un dominio, además de que la factura bajaba 60 USD (la mitad, por un año).

Así que al final aquí estoy, en DreamHost, y lo que he visto de momento me parece bien. Tarda un poco en instalar los buzones de correo, no es instantáneo, se toma 10 minutos o así para hacer ese tipo de operaciones y el eco del SSH tarda en llegar, pero las pocas horas que llevo con él, estoy contento.

Nota: Yo también puedo suministrar un código para la promoción, por si algun@ queréis hosting. Los que colaboramos con la promoción lo que ganamos es descuentos según los clientes que les incorporemos (y el descuento que hagamos y el plan que tengamos contratado). Si queréis hacer uso de mi código podéis o bien seguir este enlace, o bien usar el código LFBV al daros de alta.

He estado enredando un poquito con meneame.net, he instalado uno, y bueno, he visto que tiene algunos fallos, así que he metido las napias en el código fuente. Y aunque he hecho un par de hacks en el código de momento pongo sólo uno, que es el que he publicado en su wiki y el que le he enviado a Gallir. El que no he publicado lo publicaré, por que ya que lo he hecho, será mejor que lo libere a que lo deje aquí muerto de risa, ¿no? Ese parche no publicado sirve para poder conectarse a la base de datos cuando ésta no está en localhost, realmente es un cambio en 5 líneas de PHP, no más, pero no pierde importancia por ello (gracias a ello pude instalarlo aquí).

El otro parche, el que sí he enviado… bueno, lo que he enviado tiene intención de ser auto-documentado (como Emacs ;)) así que copio y pego:

- – - – - – - – - 8< – - – - – - – - -

Al instalar, cuando no hay categorías en la BDD, ‘_todas’, columna de la derecha, contiene un error en la línea 332 de libs/html1.php: soluciones: a) poner al menos una categoría, b)parchear (diff -u3)

(el parche lo podéis descargar aquí)

con este parche, si no hay categorías aparecerá un mensaje “amigable”, en vez de un error del lenguaje

- – - – - – - – - >8 – - – - – - – - -

Lo óptimo sería montar un repositorio SVN y trabajar allí, junto con su lista de correo para desarrollo, su canal IRC en freenode.net, y demás –el chat de la fisgona es como el radio patio de los adorables vecinos, un poco limitado para hacer estas movidas.

Nota: Hablando de parches, acabo de modificar el tema que uso en Worpress (Orchid, diseñado por Sunaryo Hadi). Al añadir un enlace en wordpress, uno puede elegir si quiere que ese enlace se abra en la misma pestaña o en una nueva. Acostumbro a usar siempre la opción de una nueva, sin embargo en todos los temas de WordPress que he probado la opción seleccionada por defecto es la de usar la misma pestaña, lo cual es un poco incómodo. La modificación se debe hacer en el archivo wp-includes/js/tinymce/themes/advanced/link.htm, así que depende del tema que se use. Habría que modificar cada tema usado. En la línea 69 (al menos en la versión que uso yo) donde pone <option value=”_self”>, debe de poner <option value=”_blank” selected>, si en la opción que hay encima no pone selected (que no debería) entonces en cuanto el navegador renueve su caché tendréis elegida esta opción por defecto al editar o crear un enlace. Si hay dudas -> comentarios

Hackers and Painters: Essays on the Art of Programming

Otro libro de los que pedí hace poco a Amazon.co.uk. Su autor es Paul Graham, desarrollador en su día de Viaweb, una startup que facilitaba la venta online a terceros y que fue adquirida por Yahoo! algunos años después de crearla. Así mismo, también es autor de un serie de ensayos de cierto interés, entre ellos destacaré How to start up a Startup, aunque en su página podéis encontrar unos cuantos, varios de ellos también se encuentran en el libro. El libro en sí es una recopilación de estos ensayos, no con necesaria continuidad entre ellos: se pueden leer por separado, según el interés que susciten.

Aunque habla de por qué los nerds son aptos para meterse en un fregao como es una startup –no siempre–, de cómo se debe montar una, de cómo funcionan, en fin… de startups, también habla a partir del décimo ensayo hasta el decimo cuarto y penúltimo de lenguajes de programación. Particularmente hace una apología de Lisp, cosa que ya sabía tras leer varios comentarios sobre él en la web, y ver que tiene publicado un libro titulado The ANSI Common Lisp Book.

Sólo leer esos cuatro ensayos me han dado suficiente gusanillo para ir eligiendo algún manual para aprender ese lenguaje. Veremos si tras acabar los exámenes de julio dispongo de tiempo para ello.