Acerca de
Php y otras yerbas es un sitio dedicado a documentar las pasiones informáticas de Clbustos, un psicólogo que le gustan mucho los bytes, tales como el desarrollo de software en PHP y Ruby, los goces y dolores de GNU/Linux y la vida en internet.
También tenemos algo de software, el cual pueden encontrar en la sección de proyectos
Siempre se puede donar a su querido desarrollador :)
- Leer más
- 6814 lecturas
Mi primer quine
Siguiendo el desafío de Self-reproducing programs in Ruby, al fin logré crear mi primer quine en Ruby. No es el más breve, pero logré resolver sólo el problema de las comillas....
- $q=34.chr;def e(a);puts sprintf("%s;e("+$q+"%s"+$q+")", a, a.gsub($q, $q+"+$q+"+$q));end;e("$q=34.chr;def e(a); puts sprintf("+$q+"%s;e("+$q+"+$q+"+$q+"%s"+$q+"+$q+"+$q+")"+$q+", a, a.gsub($q,$q+"+$q+"+$q+"+$q+"+$q)); end")
Nota: Por si no saben, un quine es un programa que al ejecutarse genera una salida idéntica a su código fuente. El nombre es un homenaje a Willard Van Orman Quine, filósofo estadounidense estudioso del lenguaje, que acuño la siguiente paradoja:
"Da como resultado un enunciado falso si es precedido por su cita"
Da como resultado un enunciado falso si es precedido por su cita.
- Añadir nuevo comentario
- 228 lecturas
fastftp: Ftp para cómodos 0.2.1
Size: 2.89 KB
md5_file hash: 796485fb6c151699f63ab558e6110e7a
First released: Lun, 10/05/2010 - 17:36
Last updated: Lun, 10/05/2010 - 17:37
Update release:
Works on Ruby 1.9.1. SVN support not yet available
- Añadir nuevo comentario
- 301 lecturas
Lo último, último de Ruby (1.9.2dev trunk 26994)
Trasteando con la última, última versión de Ruby que está en el SVN, se vienen sorpresas:
- En el $LOAD_PATH o $: se eliminará "." por los problemas. Eso hará que varias utilidades, entre ellas hoe, deje de funcionar
- Rubygems ingresa al núcleo, lo que implica que se cargarán automáticamente los "lib" y "bin" de todas las últimas versiones de las gemas
- En modo "-w", ruby advierte sobre los require circulares
- Se elimina del código fuente la macro STR2CSTR, lo que rompe la extensión gsl
Se viene trabajo para la versión 1.9.2, eh?
- blog de clbustos
- Añadir nuevo comentario
- 443 lecturas
Registro multiple en Php + Postgres
Muy buenos días, desarrollando un proyecto que tengo, especificamente el registro de notas por parte de un docente a traves de una pagina web. Basicamente un docente o profesor a traves de una pagina web ve el listado de sus estudiantes, cada estudiantes al lado derecho le aparece un campo de texto para introducir la respectiva nota, como hago para que cuando se le oprima el boton guardar, capture todos estos y guarde la nota al respectivo estudiante. Muchas gracias
- blog de hernan.giovanni
- Añadir nuevo comentario
- 814 lecturas
El ataque de los clones: Arrays multidimensionales en ruby
Trabajando en mi querido proyecto statsample, en la clase Polychoric me tocó inicializar una matriz de m*n elementos, con todos los valores a 0. Mi primera redacción fue
- nr=3 # numero de filas
- nc=3 # numero de columnas
- matriz=Array.new(nr,Array.new(nc,0)) # => [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
Como era de esperar. Al inicializar el valor de 0,0 pasa algo bastante "interesante"
- matriz[0][0]=2 # => 2
- matriz # => [[2, 0, 0], [2, 0, 0], [2, 0, 0]]
¿¡WTF!? Sencillo, mis amigos. El array en todas las filas es el mismo objeto
- Añadir nuevo comentario
- Leer más
- 767 lecturas
Gemcutter pasa a ser el servidor oficial para las gemas en Ruby
Una de las cosas interesantes de Ruby es su sistema de empaquetamiento de bibliotecas, llamadas gems (gemas), disponibles de forma centralizada en Rubyforge. La idea es hacer para el lenguaje lo que para una distribución de Linux hace su sistema de manejo de paquetes, como los .deb de debian o el emerge de Gentoo.
Si bien existen experiencias similares en otros lenguajes, lo típico es que sólo una de las dimensiones adquiera preponderancia. Por ejemplo, en el caso de Perl, CPAN es el repositorio por defecto, pero no existe un sistema de empaquetado común; para Java, tenemos el sistema de Jar, pero no un repositorio central. Lo más cercano en funcionamiento (en mi experiencia) es el RCRAN de R.
- Añadir nuevo comentario
- Leer más
- 967 lecturas
Mi primera donación (snif)
He trabajado en web desde el año 1998, mantengo este sitio desde el 2003 y más o menos desde el 2004 mantengo varios proyectos de código abierto y, milagro de milagros, hoy 1 de Octubre de 2009 recibí mi primera donación, de USD$25, gracias a mi pequeña biblioteca rtaglib.
Me dan ganas de llorar :)
- blog de clbustos
- 1 comentario
- 940 lecturas
Instalando la HP Laserjet P1005 en Ubuntu 8.10
Parece que uno de mis karmas es instalar impresoras en Linux.
En la tarde compré una HP Laserjet P1005 para imprimir mi tesis. Al conectarla a mi Dell con Ubuntu 8.10 me recibió con un hermoso mensaje de "Configurada para imprimir", pero no funcionó nada al tratar de imprimir.
Lo primero que me funcionó fue instalar hplip-gui y correr
sudo hp-setup
Instaló el driver hpijs correcto para la impresora y comenzó, al fin, a imprimir. El problema fue que la impresora se volvió errática. Me di cuenta que, por ejemplo, con Evince y Okular la impresora se bloqueaba, cosa que no pasaba al imprimir con xpdf.
- blog de clbustos
- 1 comentario
- Leer más
- 1904 lecturas
El paquete estadístico para las masas, en Ruby: Statsample
Después de meses de trabajo, al fin me animé y subí mi paquete estadístico Statsample a Rubyforge. Gracias a él pude acelerar varios procesos de análisis de mi tesis, en particular el llamado Análisis de dominancia.
Todavía no tengo nada parecido a una interfaz gráfica, pero para aquellos que están acostumbrados a los macros de SPSS, SAS o cosas por el estilo, puede ser una interesante alternativa. R siempre será EL paquete estadístico para el software libre, pero creo que deja demasiado a la vista para el usuario común. Para que se hagan una idea, así pueden hacer un análisis de regresión múltiple.
- Añadir nuevo comentario
- Leer más
- 1208 lecturas

Comentarios recientes
hace 6 horas 31 mins
hace 19 horas 36 mins
hace 1 semana 2 días
hace 1 semana 2 días
hace 1 semana 2 días
hace 3 semanas 2 horas
hace 3 semanas 6 días
hace 4 semanas 4 días
hace 5 semanas 4 horas
hace 5 semanas 1 día