Archive for the ‘Informática’ Category

Clases de ligue para frikis

Thursday, January 15th, 2009

Según esta noticia la universidad de Potsdam (al sur de Berlin) ofrece un curso para aprender a ligar a sus estudiantes de máster de Ingeniería de Tecnologías de la Información. Con esto pretenden evitar el tópico de que los frikis tienen pocas habilidades para las relaciones sociales.

Yo creo que todo eso son tonterías, lo mejor para ligar es comprar un elixir que te suba el skill de carisma +2 y sustituir gafas vision +4 por lentillas vision +1. Cambiarse de lado la raya del pelo también puede ayudar con un 0.05% de probabilidad. Si todo esto no funciona siempre se puede sobrellevar el rechazo matando dragones… ;)

Si los lenguajes de programación fueran religiones…

Wednesday, December 17th, 2008

Acabo de leer un post escrito hace dos días (gracias David), comparando los lenguajes de programación con las religiones existentes.

La verdad es que lo he encontrado bastante ingenioso y he querido realizar mi contribución a la lista comparando Brainf*ck con la religion del Monstruo del Spaghetti Volador (FSM)

“Entonces brainf*ck sería como la religión del Monstruo del Spaguetti Volador: Brainf*ck es una parodia de lenguaje en forma de una protesta satírica a la complejidad del lenguaje en pro de la simplicidad del compilador.”

BAD POOL CALLER: Pantalla azul de la muerte

Friday, November 28th, 2008

Hace tiempo que llevo sufriendo un pantallazo azul de la muerte. Me encantaría saber si es algo común o que sólo me pasa a mí.

la vida de un informatico en 7 minutos

Thursday, November 27th, 2008


como pasar una tarde tonta

Monday, October 27th, 2008

Por exigencias del guión, me he visto obligado a instalar LAMP (Linux Apache Mysql y Php) bajo Windows (es decir: escenas de cama no muy agradables).

La cuestión es que voy descargando, instalando y configurando rutinariamente la última versión disponible de cada cosa sin mayor complicación (ni punto de comparación son el maravilloso sudo apt-get install mysql-server php5-mysql ) hasta que termino.

Muy bien, todo listo y arrancado sin problemas, así que voy a probar el servidor, con lo que escribo un fichero “phpinfo.php” (típico) que contiene:

< ? phpinfo() ? >

Abro la página http://localhost/phpinfo.php y me encuentro con que está completamente en blanco.

Extrañado me pongo a buscar entre los logs, a apagar y a encender el ordenador, a desenchufar y enchufar el router, a llamar al servicio técnico… (bueno, eso es de otra película) hasta que se me ocurre la idea feliz de cambiar el fichero por:

< ? php phpinfo() ? >

El problema estaba en que una de las opciones de configuración del php.ini, short_open_tag (que indica si se permite o no el uso de “< ?” en lugar de la forma completa “< ?php”),y , que hasta ahora había tenido como valor por defecto verdadero (1) , ha pasado a ser por defecto falso (0), con lo que la etiqueta “< ?” ya no es reconocida por el módulo de php.

Esto es para evitar que no se puedan utilizar otras etiquetas que comiencen por ‘< ?’ como por ejemplo ‘< ?xml’ (aunque realmente si se podrían utilizar mediante < ? echo '< ?xml'; ? >).

La recomendación es la de utilizar siempre la forma completa (< ?php) en el código si se quiere que éste sea portable, ya que cabe la posibilidad de que, en el futuro, el servidor tenga desactivada por defecto la opción short_open_tag.

Problemas con el servidor otra vez

Monday, October 27th, 2008

Ya estoy volviendo a tener problemas con Dreamhost, esta vez para publicar post, me da un error 503 del servidor.

grep -r fuck linux-source-2.6.24 : /* Am I fucking pedantic or what? */

Sunday, October 19th, 2008

Hace unos meses escribí un post que resultó ser bastante concurrido acerca de como compilar el kernel en Ubuntu. Se me olvidó entonces añadir un paso que, aunque no es obligatorio, es bastante recomendable antes de proceder a la compilación (por motivos religiosos y tal): Justo despues de:

sudo apt-get install linux-source
cd /usr/src
tar xjf linux-source-2.6.xx.tar.bz2
#sustituir xx por la version de tu kernel (que hay que decirlo todo (dios mio))

Hay que escribir:

grep -r fuck linux-source-2.6.xx

Y deleitarse un rato con la lectura. Se recomienda al lector probar también con otras palabras malsonantes. Aquí tenéis un ejemplo del resultado:

linux-source-2.6.24/net/ipv4/netfilter/nf_nat_snmp_basic.c: * (And this is the fucking ‘basic’ method).
linux-source-2.6.24/net/netfilter/nf_queue.c:        /* James M doesn’t say fuck enough. */
linux-source-2.6.24/Documentation/DocBook/kernel-locking.tmpl:       If you don’t see why, please stay the fuck away from my code.
linux-source-2.6.24/arch/mips/sgi-ip22/ip22-setup.c:     * fucking with the memory controller because it needs to know the
linux-source-2.6.24/arch/mips/pci/ops-bridge.c:     * IOC3 is fucked fucked beyond believe …  Don’t even give the
linux-source-2.6.24/arch/mips/pci/ops-bridge.c:     * IOC3 is fucked fucked beyond believe …  Don’t even give the
linux-source-2.6.24/arch/mips/pci/ops-bridge.c:     * IOC3 is fucked fucked beyond believe …  Don’t try to access
linux-source-2.6.24/arch/mips/pci/ops-bridge.c:     * IOC3 is fucked fucked beyond believe …  Don’t even give the
linux-source-2.6.24/arch/mips/pci/ops-bridge.c:     * IOC3 is fucked fucked beyond believe …  Don’t even give the
linux-source-2.6.24/arch/mips/pci/ops-bridge.c:     * IOC3 is fucked fucked beyond believe …  Don’t try to access
linux-source-2.6.24/arch/mips/pci/ops-bridge.c:     * IOC3 is fucked fucked beyond believe …  Don’t even give the
linux-source-2.6.24/arch/mips/pci/ops-bridge.c:     * IOC3 is fucked fucked beyond believe …  Don’t even give the
linux-source-2.6.24/arch/mips/pci/ops-bridge.c:     * IOC3 is fucked fucked beyond believe …  Don’t try to access
linux-source-2.6.24/arch/mips/pci/ops-bridge.c:     * IOC3 is fucked fucked beyond believe …  Don’t even give the
linux-source-2.6.24/arch/mips/pci/ops-bridge.c:     * IOC3 is fucked fucked beyond believe …  Don’t even give the
linux-source-2.6.24/arch/mips/pci/ops-bridge.c:     * IOC3 is fucked fucked beyond believe …  Don’t try to access
linux-source-2.6.24/arch/mips/kernel/irixioctl.c: * irixioctl.c: A fucking mess…
linux-source-2.6.24/arch/mips/kernel/irixelf.c:#if 0 /* XXX No fucking way dude… */
linux-source-2.6.24/arch/x86/kernel/cpu/cpufreq/powernow-k7.c: * Some Athlon laptops have really fucked PST tables.
linux-source-2.6.24/arch/x86/kernel/cpu/mtrr/generic.c:/*  Some BIOS’s are fucked and don’t set all MTRRs the same!  */
linux-source-2.6.24/arch/sparc/kernel/process.c:    /* fuck me plenty */
linux-source-2.6.24/arch/sparc/kernel/sunos_ioctl.c:    /* Binary compatibility is good American knowhow fuckin’ up. */
linux-source-2.6.24/arch/ppc/syslib/ppc405_pci.c:     * the kernel try to remap our BAR #1 and fuck up bus
linux-source-2.6.24/lib/vsprintf.c: * Wirzenius wrote this portably, Torvalds fucked it up :-)
linux-source-2.6.24/sound/oss/opl3.c:     * What the fuck is going on here?  We leave junk in the beginning
linux-source-2.6.24/include/asm-m68k/sun3ints.h:/* master list of VME vectors — don’t fuck with this */
linux-source-2.6.24/include/linux/netfilter/xt_limit.h:    /* Ugly, ugly fucker. */
linux-source-2.6.24/include/asm-cris/arch-v32/spinlock.h: * writers) in interrupt handlers someone fucked up and we’d dead-lock
linux-source-2.6.24/include/asm-sparc64/system.h:    /* If you fuck with this, update ret_from_syscall code too. */    \
linux-source-2.6.24/drivers/ide/pci/cmd640.c: *  These chips are basically fucked by design, and getting this driver
linux-source-2.6.24/drivers/net/sunhme.c:/* Only Sun can take such nice parts and fuck up the programming interface
linux-source-2.6.24/drivers/net/sunhme.c:        /* This card is _fucking_ hot… */
linux-source-2.6.24/drivers/media/video/bt819.c:                       BUG? Why does turning the chroma comb on fuck up color?
linux-source-2.6.24/drivers/mtd/mtd_blkdevs.c:       registered, to prevent the link/init ordering from fucking
linux-source-2.6.24/drivers/scsi/NCR53C9x.c: * how bad the target and/or ESP fucks things up.
linux-source-2.6.24/drivers/scsi/NCR53C9x.c:        /* Be careful, we could really get fucked during synchronous
linux-source-2.6.24/drivers/scsi/qlogicpti.h:/* Am I fucking pedantic or what? */
linux-source-2.6.24/drivers/watchdog/shwdt.c:     * brain-damage, it’s managed to fuck things up one step further..

Chrome supera a Opera

Tuesday, September 23rd, 2008

Desde que salió Chrome hasta ahora ha pasado menos de un mes y ya ha superado en numero de accesos a este blog a Opera.

Interprete de Brainf*ck

Wednesday, June 18th, 2008

¿Qué es Brainfuck?

Es un lenguaje de programación extremadamente “simple”.

Su gramática sería algo como:

S:=[ + | - | > | < | [ | ] | . | , ]*

es decir, una cadena de caracteres compuesta por los símbolos

+

-

<

>

[

]

Supuestamente cualquier otro carácter en el código se debe ignorar, lo cual quiere decir que todo lo demás son comentarios.

El objetivo fundamental de este lenguaje no fue otro que el de permitir crear el compilador mas pequeño del mundo (originariamente 240 bytes).

BF está basado en la máquina de Turing mejorada (en realidad la máquina de Turing original solo podía escribir 0 ó 1 en la cinta) sin embargo BF tiene una limitación importantísima con respecto a las máquinas de Turing: tiene un tamaño de cinta finito (el límite, aunque no es un estandar, suele estar fijado en 30000 bytes). Dicha máquina de Turing sirve sobre todo para estudiar conceptos matemáticos relacionados con la teoría de la Computabilidad y la teoría de la Complejidad.

Según la tesis de Church-Turing no existe ninguna máquina conceptual capaz de resolver un algoritmo que no resuelva una máquina de Turing.

Normalmente los defensores de la IA fuerte mantienen que el cerebro humano (y según parece ser, el Universo) es reducible a una máquina de Turing.

¿Para que sirve BF?

Programar en este lenguaje en lugar de utilizar uno de más alto nivel (como puede ser por ejemplo el lenguaje ensamblador) sólo puede tener un motivo: llevar al extremo la práctica del onanismo mental y probar el nivel de frikismo.

A continuación: un interprete de Brainfuck que yo programé hace tiempo en forma de applet de java (me apetece un café)

El logotipo de Google (favicon) cambiado por una g minúscula

Sunday, June 1st, 2008

Parece ser que, desde hace un par de días, Google ha cambiado el icono que aparece en la barra de direccion de la página principal (favicon)

Google's favicon

Las conjeturas no se han hecho esperar y ya he oido de todo, desde que se trata de un error, un ataque, una nueva estrategia de Marketing, e incluso que lo han hecho en pro de satisfacer el 5 mandamiento de Google:

5) Don’t take success for granted

  • Think and act like an underdog
  • Be humble with success; don’t be arrogant
  • Be scrappy and resourceful