16 agosto, 2004

Spray nasal - Fuerza 3!

Sufro sequedad nasal. A veces se me inflaman levemente las vías respiratorias y la respiración no es todo lo suave que debería. El médico me recetó un spray nasal «rhinomer fuerte» de fuerza 3, para que me lavara interamente las fosas nasales. La composición del spray es agua de mar esterilizada.

El bote, de plástico endeble, no muestra signos de presión interna e incluso se puede apretar y doblar. El bote tiene un pequeño agujero en la parte inferior. Sin embargo, al presionar la boquilla sale un chorro bastante potente, que puede alcanzar perfectamente los ¡5 metros! pero ¿cómo es posible?

La explicación de este ingenioso dosificador a continuación.

Haciendo pruebas sobre el alcance del spray lo gasté completamente. La buena noticia es que ya tenía una excusa para abrirlo. Lo que encontré fue el bote vacío y en el centro una goma cilíndrica de color negro, que inicialmente supuse que protegía el dosificador. Aún seguía sin entender nada, así que rajé la goma y me encontré una bolsa con líquido dentro de la goma y entonces lo entedí todo.

El agua sale por presión. El tubo de goma envuelve la bolsa de agua y la aprieta hacia dentro, provocando que salga a una altísima presión por la boquilla.


_//
_____| |_____
/ / \ \
/ _ / \ _ \
| | | | | |
| | | bolsa | | |
| | | de | | |
| |g| agua | | |
| |o| | | |
| |m| | | |
| |a|________| | |
| |____________| |
| |
| aire |
|___ ______________|

Ingenioso, ¿no?

06 agosto, 2004

Microsoft: "No hay nada que haga Google que nosotros no podamos hacer" XD

Leo en distintos medios unas supuestas declaraciones de Bill Gates que me han hecho bastante gracia. Se atreven a afirmar que no hay nada que Google pueda hacer que ellos no puedan. Bueno, por la boca muere el pez, y es que microsoft no está en posición de competir con Google en muchos aspectos.

  • El problema de las licencias del software. Está claro que para montar un buscador potente hoy en día es necesario montar un sistema de computación distribuida. Hacen falta miles de ordenadores más o menos potentes trabajando en paralelo, dividiendo el trabajo, atendiendo las peticiones de búsqueda. Cada ordenador necesita un software de aplicación y un sistema operativo ¿pero cual?.
    • Microsoft puede usar *BSD como usaba (¿o sigue usando?) en Hotmail, pero en ese caso nunca se quitará la espina de que su sistema operativo no sirve para entornos de alto rendimiento ¡ay, ay!.
    • Pueden implantar un sistema basado en Windows 2003 Server (¿acaso existe 2003 Home?), incluso hacerlo en .NET, incluso puede que funcione y que sea estable. Pero si este improbable caso se produjera no beneficiaría en gran cosa a la imagen del producto Windows, ¿por qué?. Pensemos en las licencias. Se rumorea que Google posee entre 10.000 y 100.000 PCs, trabajando en paralelo. Si la licencia de Windows costase 100$ por unidad (cosa que es falsa) tendrían que invertir más 1.000.000$ en licencias de software, probablemente más que en hardware, para los equipos. Pero claro, MSN no necesita pagar licencias de Microsoft, con lo que el mensaje que transmiten sería «Mirad lo que se puede hacer con nuestra plataforma si nos pagáis una millonada que sólo merece la pena si sale gratis», mientras Google hace lo mismo por mucho menos dinero (aunque Microsof insista en que el Coste Total de Propiedad es mayor en linux). Claro, existen licencias colectivas, pero la broma sigue saliendo bastante cara. De todas formas el mensaje seguiría siendo: «Tiren sus viejos Pentium-4 y compren un equipo con 4GB de RAM para instalar el nuevo LongHorn, que va muy rápido y la interfaz gráfica sólo consume 256MB»
  • Google ofrece 1GB de correo, y seguramente no fue el primero, pero al menos siempre ha sido así. MSN, en cambio se hizo popular absorbiendo Hotmail y Messenger, e instalandolos por defecto en Windows XP (dando bastante por culo con el iconito del hombre verde, por cierto). ¿Y qué nos ofrecía Hotmail hasta ayer? ¿2MB de correo? ¡No! Eso sólo para los usuarios avanzados, los que conseguimos encontrar el enlace en letra size="-10" que permite registrar la cuenta gratuita en Hotmail en lugar de la de pago, que ofrecía ¡la descomunal cifra de 10 MB de capacidad! (guiño, guiño, patada, patada)... algunos incluso han conseguido hacerse una cuenta passport para messenger a partir de una cuenta de correo propia. En fin, no deja de resultar hipócrita por parte de MSN anunciar a bombo y platillo que nos van a dar 100MB por barba cuando ayer sólo daban por culo con mensajes como: «Tienes ocupado el 1% de tu cuenta de 2MB, necesitas urgentemente ampliar a 10MB» (estamos de acuerdo en que 2MB es una miseria, pero también está claro que no necesito más de momento).
  • Como decían en un foro: «Si MSN piensa imitar a Google, ¿significa que va a dar el código fuente de Hotmail?». Nada más lejos de la realidad, pero recordemos que el PageRank está patentado y el código fuente de Google tampoco es libre que yo sepa, y realmente no sabemos si Google juega limpio en sus búsquedas (aunque siempre ha sido bastante decente en lo que ha hecho). Las licencias de privacidad de Google dan miedo (aunque no estoy en contra de que un bot lea mis correos si luego no divulga mis datos), pero fue Microsoft quien inventó los CLUF Orwellianos. En este punto hay que decir que veo a ambas empresas bastante empatadas.
  • En fin, desgraciadamente, la mano que mece la cuna (nuestros hijos jugando a la X-Box desde los 3 años, y cuando son mayores aprenden la informática con Windows, aprenden a programar en VB.NET y cuando tienen la edad de ser programadores y hackers ¿qué van a hacer? Instalar CornuLongum 2021...) es la mano que domina el mundo. Así es y siempre será: «Microsoft: Hasta dónde queremos que llegues hoy?».
    Y de aquí a 3 años habremos olvidado aquel buscador que usaba Linux, sí ese ... ¿cómo se llamaba? aquel que si buscabas la palabra «FireFox» te devolvía resultados útiles en lugar de lo que devuelve MSN Search.... ¡Ah, Firefox! La marca de extintores, ¿no? ;)



Monitor auto-rompible

En mi lucha contra el mundo parece que el mundo me está ganando terreno. Mi nuevo monitor, del que hablé en el artículo anterior, tiene un fallo bastante tonto: si le bajo el brillo la pantalla se apaga (de golpe) y no se vuelve a encender (se enciende y se apaga inmediatamente hasta que lo reconfigures a ciegas).

El conocido supermercado donde lo compré se llama lidl, y si alguien ha comprado uno igual le agradecería que me lo comentase, sobre todo que me diga si tiene el mismo fallo. Incluyo instrucciones de como arreglarlo...

Viendo si el tft tenía el mismo fallo de brillo que mi antiguo tft bajé el brillo al mínimo. Pero al llegar al 5% la pantalla se quedó negra. No fue algo gradual, en el 6% la pantalla esta perfectamente clara y en una sola pulsación del botón se quedó tal cual estuviera apagado. Al apagar y encender la imagen se puede ver durante apenas medio segundo la imagen para luego apagarse otra vez.

Tras el susto y pruebas, cambiar alimentación, PC, etc, intenté entrar «a ciegas» en el menú y funcióno. Los pasos para subir el brillo son los siguientes:

  1. El monitor debe estar apagado inicialmente.
  2. Encendemos y esperamos 3 segundos.
  3. Pulsamos MENU
  4. Puslamos SELECT
  5. Pulsamos el boton de subir ^ varias veces (unas 10 para estar seguros).
  6. Apagamos.
  7. Volvemos a encender y todo debe ir bien ya.
Suerte.

01 agosto, 2004

JFK y La Oreja de Van Gogh

No se trata de la enésima teoría conspiratoria de la muerte del expresidente sino de una canción. Un tema bakala llamado Ekatomb realizado por un tal Xabier San Martin hace algunos añitos (antes del '97).

En ella aparece la voz de Kennedy en uno de sus discursos más famosos sobre la exploración espacial diciendo una frase mítica: «Now it's time to take longer strides» (Ahora es el momento de dar pasos más grandes) refiriéndose a la mision lunar.

La historia se remonta a eso del año '96, yo tenía un i286 y una sound blaster 8bits conectada (mediante un conector artesanal hecho con madera y grapas) a los altavoces de un equipo Grundig con más años que yo. Necesitaba probar el invento y puse la canción .MOD más cañera de mis favoritas: Ekatomb. Este tema venía en uno de los cdrom de la revista PCMANIA junto con otros cientos, pero fue rápidamente seleccionado como uno que merecía la pena tener el disco duro (de 20MB por aquellos tiempos).

Años más tarde conocí la Oreja de Van Gogh, y el teclista del grupo, Xabier San Martín, que además es fanático de los ordenadores. Yo sabía que aquel nombre me sonaba de haberlo visto antes y luego me acordé de Ekatomb. Aún no estoy seguro de si son la misma persona.

Hace unos meses, viendo un documental sobre la carrera espacial en TVE, pude oir el famoso discurso de John F. Kennedy del 25 de mayo de 1961. Nuevamente sufrí un dejà-vu (otro fallo en Matrix ;), aquella frase que nunca habia llegado a entender había cobrado sentido de repente. Tras buscar mucho en google conseguí encontrar el discurso completo, incluso el audio original. En este discurso habla de la Guerra Fría, del desarme y en el último punto habla del espacio. Este punto está cargado de emoción, esperanza y piques con los rusos por el Sputnik en 1957, y ayudó al despegue de la carrera espacial desde el punto de vista político. Kennedy pide al congreso más de 100 millones de dólares para investigar la propulsión de cohetes nucleares y crear una red de satélites de comunicaciones y meteorológicos.

«Now it is time to take longer strides-time for a great new American enterprise-time for this nation to take a clearly leading role in space achievement, which in many ways may hold the key to our future on earth.»

30 julio, 2004

Publicidad psicológica

Hay muchas técnicas para hacer publicidad en televisión. A veces crean ambientes especiales, o llaman la atención de manera tosca o hacen juegos de palabras difíciles de digerir. Muchos anuncios resultan bastante cargantes y consiguen que a uno le entren ganas de pegarle una leche al locutor.

He visto recientemente dos anuncios muy simples. El primero, de una conocida petrolera, decia constantemente «si, no, si, no». En el otro salía Fernando Alonso diciendo «los que saben, los que no saben, los que...».

Analicemos estos anuncios en profundidad...

  1. La «Compañía Española de Petroleros Sociedad Anonima» muestra en su anuncio imágenes de coches más limpios («sí») y sucios («no»), motos nuevas («sí») y viejas («no»), etc, queriendo decir que lo nuevo y limpio es conveniente. ¡Pues no solo eso! No es casualidad que en todas las imágenes en las que aparecen objetos de color rojo dice «sí» y en las que dice «no» no predomina ningún color. Ni por supuesto es casualidad que esta petrolera es la única cuya identidad comercial se basa en el color rojo, ni que en la última imagen muestre una estación de servicio de este color y diga el último «cepsa, sí».
    A toda persona que no le guste que le laven el cerebro (al menos de una manera tan descarada) le debe de producir auténticos salpullidos mentales.
  2. El otro anuncio, algo más gracioso, lo narra Fernando Alonso y sigue la misma línea: «Hay quien corre conmigo y quien corre contra mi, los que saben y los que no saben, ...». Se juega con la imagen del conductor contra una serie de pardillos que aparecen en la parte derecha de la pantalla. Al final, como no, aparece la compañía de telefonía que anuncia y la frase «los que saben...» dejando abierto el final, pero está claro que los que no saben deben de ser la competencia.

En fin, como salía en aquel capítulo de los Simpsons un tipo le dice a Homer: «¿Sabe ese anuncio en el que dos voces gritan repetidamente la marca que se anuncia? Lo inventé yo». A lo que Homer le responde con un puñetazo, y el le contesta que está acostumbrado. ¡Ah! si yo pillara al que hizo los anuncios...

27 junio, 2004

Un mini-portal cautivo wifi

Estaba pensando en poner un AP en mi casa con mi tarjeta Prism2+Antena omni, y si seria facil hacer un pequeño portal cautivo (por no usar NoCat). Las herramientas serian un proxy dns, un servidor dhcp, apache e iptables.

Mi idea es dar acceso a Internet limitado, (solo se podría navegar en internet por Almeria-wireless.org), ademas de redirigir las demas web hacia esta.

Tengo el driver hostap configurado para que la tarjeta actue en modo Master con ssid "latinnodo.almeria-wireless.org" (el maximo son 32 caracteres).

Buscando en apt encontre dnsMasq, que es un proxy dns y servidor dhcp que me viene perfecto. Basta activar el servidor dhcp y en mi caso decirle que no use el /etc/hosts.

dhcp-range=192.168.0.50,192.168.0.150,12h

Para hacer el portal cautivo necesitamos iptables con filter, snat y dnat.

En primer lugar filtramos:


    # Permitir dhcp
    $IPT -A INPUT -i wlan0 -p udp --source-port 68 --destination-port 67 -d 255.255.255.255 -j ACCEPT

    # LOG & DROP
    # no permitir ip fuera de rango
    $IPT -A INPUT -i wlan0 -s ! 192.168.0.0/24 -j LOG
    $IPT -A INPUT -i wlan0 -s ! 192.168.0.0/24 -j DROP
    # no jugar con el servidor
    $IPT -A INPUT -i wlan0 -s 192.168.0.1 -j LOG
    $IPT -A INPUT -i wlan0 -s 192.168.0.1 -j DROP

    # Ahora hacemos (S)Nat, pero solo hacia la ip de almeria-wireless.
    $IPT -t nat -A POSTROUTING -s 192.168.0.0/24 -p tcp --destination-port 80 -d 150.214.157.71 -j MASQUERADE

    # Para capturar otras web hacemos DNAT
    $IPT -t nat -A PREROUTING -i wlan0 -p tcp --destination-port 80 -d ! 150.214.157.71 -j DNAT --to-destination 192.168.0.1:81

En la ultima regla no puedo redirigir el trafico directamente al servidor de almeria-wireless porque no tomaria el vhost adecuado de apache. Para ello arranco un apache ligado a 192.168.0.1 y puerto 81 sin vhosts, y como indice pongo:

    <html><head>
    <meta http-equiv="Refresh" content="1, http://www.almeria-wireless.org" />
    </head><body>

    <a href="http://www.almeria-wireless.org">http://www.almeria-wireless.org</a>
    </body></html>

De esta manera es el propio navegador el que se redirige a la web permitida de almeria-wireless.

24 junio, 2004

Las 10 grandes preguntas

Leo en el país un artículo de ciencia de esa que se escapa de nuestras manos, de la que le gusta a Eduard Punset, sobre los límites del conocimiento humano en la comprensión del mundo que nos rodea.

Con el título de «las 10 grandes preguntas», hace preguntas muy profundas del tipo:
- ¿Por qué hay algo en lugar de haber nada?
- ¿De dónde venimos?
- ¿Se podrá leer la mente?
- ¿Llegarán a ser conscientes los ordenadores?
- ¿Estamos en manos de la evolución?
- ¿Seremos inmortales?
- ¿Llegaremos a entenderlo todo?

No recuerdo haber leido antes una disertación sobre este tema: ¿Por qué hay algo en lugar de haber nada? ¿Qué había antes del universo y qué hay fuera de él?
La pregunta «produce vértigo», dice el artículo. Aunque no hay respuesta ni es fácil imaginar que más allá del universo no había tiempo ni espacio, lo cuál produce más vértigo.

¿De dónde venimos? En 1980 Francis Crick formuló la hipótesis de que la vida en la tierra fue traída por una civilización extraterrestre (¿o quizás provino de un meteorito?), a lo que la comunidad científica responde: «Eso no resuelve el problema, sólo se lo lleva a otro planeta», una respuesta muy sensata.
Y yo añado: ¿Adónde vamos?. Por extrapolación de los monos, tendremos menos pelo, seremos más altos, ojos más grandes, barbillas más pronunciadas, seremos más pálidos, más pacíficos... oye... ¿de qué me suena a mí eso? ¿No es la descripción de los extraterrestres? ¿Y no está claro que en el futuro viajaremos en pequeñas pero potentes naves interestelares? ¡Como los extraterrestres! Pero... si eso es en el futuro ... ¿por qué vemos extraterrestes hoy? Bueno, podemos citar «Stargate», «El poder de un dios» o «Esfera», obras en las que los humanos por distintas razones (mundos paralelos o viajes en el tiempo) vuelven al pasado con opción de cambiar las cosas. Oye, si a los egipcios les hicieron las pirámides, ya podían ayudar con las obras de la ciudad, digo yo... ;)

¿Llegarán a ser conscientes los ordenadores? Aquí comenta que la consciencia debe residir en el 1% de nuestro cerebro. Aún así me pregunto qué es la consciencia y si se puede demostrar su existencia desde fuera de cada uno. Sin duda habrá máquinas que hablen y actúen como seres humanos, pero ¿serán conscientes? ¿tendrán alma? Obviamente serán conscientes de sí mismas, o eso se podrá deducir tras una conversación con ellas, pero sabiendo como estamos hechos nosotros y como serán esas máquinas ¿hasta qué punto estarán «vivas»?

¿Estamos en manos de la evolución? Aquí tengo que declarar mi 1% de escepticismo hacia la teoría de la evolución (gracias a unos testigos de Jeovah), cosa que ningún científico conocido suele declarar en público. Dado que parece claro que la ciencia nunca logrará demostrar la existencia o inexistencia de Dios no tiene sentido profundizar más en el tema.
¿O está la evolución en nuestras manos? Esta pregunta que plantea no deja de ser inquietante, ya que aprovecha para hablar de la mejora genética de la especie, comenzando por eliminar enfermedades críticas, enfermedades menores, alergias, mejora de la capacidad física e intelectual... es algo que muchos de nosotros no veremos, como nuestros tatarabuelos no conocen la Era Digital.
También inquietante (¿hablo como Martin Landau?) es la foto que sale, con animo de inquietar o no, un primate evolucionando en humano, que es acompañado por un robot pequeño, y finalmente sólo se ve un robot sin hombre (¿la rebelión de las máquinas?)...

¿Seremos inmortales? ¡Cachis!, esto es otra cosa que no veremos. Está claro que la inmortalidad física debe ir acompañada de buena salud mental y neuronal, de lo contrario moriríamos o seríamos «vegetales». ¿Cómo reforzar nuestro cerebro contra el paso del tiempo? Quizás abandonando nuestra estructura biológica y migrando nuestra mente a equipos artificiales, pero, ¿seguiríamos conservando nuestra alma? ¿El alma está ligada al cuerpo físico? Por tanto: ¿Qué sucede con la teletransportación?

¿Llegaremos a entenderlo todo? Según el teorema de Incompletitud de Gödel no podemos usar una máquina para resolver determinados problemas. Ahora bien, si suponemos que el universo es finito (partículas atómicas y energía cuantizada) el número de problemas es finito, aunque también los recursos de que disponemos para resolverlos (esto sirve para demostrar que determinados problemas son imposibles de resolver por fuerza bruta en un tiempo razonable, ya que haría falta más unidades de computación que átomos hay en el Universo). Que estemos tan limitados no me preocupa, pues el Universo es suficientemente grande y entrópico para mi mente como para no aburrirme.

La última pregunta, como deducción de la anterior es: Si llegamos a saberlo todo ¿Nos suicidaremos como especie?. No creo, si nos aburrimos inventaremos Matrix, o volveremos a la Edad Media y empezaremos de nuevo, aunque nunca se sabe lo estúpidos que puedan ser nuestros descendientes...

21 mayo, 2004

Spectrum 48k ayer y hoy

Mi primer microordenador personal fue un Sinclair ZX Spectrum 48k. Con él aprendí a programar, toscamente, en Basic. También me inicié en el mundo de los videojuegos, ahhh que tiempos aquellos... Y qué manuales, para una Rom de unas pocas kas tenías un manual de 200 páginas, donde aprendías a programar. Hoy en día, sistemas operativos de Gigas traen un folletín que no sirve para nada.

Por decir algunos juegos: Spy Hunter, Saboteur, Robin Hood, Bruce Lee, Jack the Nipper II, Dustin, West Bank, y una lista interminable...

Tuve mi spectrum desde los ¿8 años? hasta que se rompió (sacar el interfaz kempston en caliente no es bueno) y ... no recuerdo lo que pasó exactamente con él, se perdió (como dijo Clark Kent: con todos mis superpoderes y no he podido salvarlo). Hace tiempo conseguí rescatar algunas cintas antiguas y pasar algunos programillas al Pc por el puerto paralelo.

Por aquel entonces yo no sabía lo que era «ensamblador» y ya me hubiera gustado que alguien me lo explicase, pero hoy el spectrum sigue vivo, no solo en mi corazón sino en Internet. Vease http://www.microhobby.org, donde un grupo de voluntarios han escaneado las revistas y las han colgado online. Además tienen nuevos inventos (cargar los juegos desde Cd-Audio al doble de velocidad). Allí he podido leer un curso de programación (hay dos: Basic y Código Máquina). Es bastante rudo, no usan compiladores ni ensamblador, se programa directamente en octetos en base 10, para mas inri. El programa más sencillo es un «LD BC,#6A7F ; RET» tal que así:

 DATA 1,127,106,201

De tanta nostalgia se me ha ocurrido que tengo que adaptar un teclado de Pc para que parezca un spectrum. Con todos los comandos pintados en colores y el fondo negro... ohh... y no tener que memorizarlo para programar.

I miss you. 48k Forever!

Correción gamma

Tras varios meses con mi flamante monitor TFT hp pavilion f1523 sufriendo un problema de color he conseguido solucionarlo. El monitor parece ser que está optimizado para ordenadores hp (eso dicen las instrucciones) de manera que en mi Pc se ve mas blanco que un fantasma, en fin por 300ý qué se puede esperar.

Intenté ajustar el control de brillo y contraste del monitor pero no sirvió de nada. El problema es que hay una saturación de señal a la entrada del monitor, y eso sólo se puede solucionar ajustando los niveles de salida de la tarjeta gráfica.

Bueno, en windows el driver de la Ati Rage128 (o compatible) permite ajuste de brillo y corrección gamma-2D (ajuste del punto central de la curva en X e Y). Esto es suficiente para dejarlo más o menos fino.
En Linux, con XFree 4.3, no tenía más opción que ajustar la corrección gamma-1D a un valor menor que 1, lo cual da resultados bastante oscuros y no resuelve completamente el problema.

En mi empeño por dejar las X al menos tan bien como en windows busqué en google y envié un mensaje a la lista de correo (sin éxito), pero no ha sido hasta hoy que he encontrado en google el programita xbrightness-gui.

Resulta que desde la versión 4.1 de X, aquellos drivers que lo implementan permiten ajustar con gran libertad la curva de color, permitiendo auténticas virguerías (y barbaridades si se configura mal) mediante la función XF86VidModeSetGammaRamp(). Este sencillo programa permite definir prácticamente cualquier curva para los tres canales de color, como la herramienta curvas del gimp, permitiendo ajustar los valores extremos (más oscuro y más claro) de manera arbitraria.

Intentando calibrar la curva para evitar saturaciones y saltos bruscos diseñé un gradiente monocromo, y usé la imagen de prueba de tkgamma. Tras las pruebas quedé desconcertado. La corrección de gamma necesaria para que un monitor tenga un comportamiento lineal, que sería lo lógico esperar (muchos pixeles blancos=255 y negros=0 a lo lejos deben verse como gris=127), es de 2.0 a 3.0. Hay que decir que KDE o cualquier aplicación con gamma 2.0 se ve horrible. Por alguna razón todas las tarjetas en todos los sistemas operativos con todos los monitores tienen un valor por defecto de 1.0 cuando deberían ser en torno a 2.0, quizas sólo sea un problema de compatibilidad hacia atrás, quien sabe.

  • Una foto de mi Pc, monitor incluido

  • PD: Cuando lo tenía todo listo se me quemó la placa y he vuelto al P-II 400Mhz leeento...

    08 mayo, 2004

    KVIrc 3.0.0

    Está a punto de salir la versión estable de KVIrc 3. KVIrc es un maravilloso cliente de irc multiplataforma hecho en Qt. Algunas de sus caracteristicas son:

    • Potente lenguaje de scripting integrado con capacidad de programar objetos.
    • Interfaz MDI, con posibilidad de separar los mensajes del canal de texto de los eventos, resaltar los nicks, usar imagenes con cada nick (avatares), y un montón de cosas más.

    Además dispone de un módulo para ejecutar órdenes externas llamado exec, hecho por un tal SuD.

    Lee el artículo completo y verás (con capturas) por qué me parece el cliente de chat más profesional, o visita http://www.kvirc.net

    Esta es la captura (un poco retocada para que quepan todas las cosas a la vez):

    Características:

    • Imágenes personalizadas (avatares)
    • Barra horizontal de separación de los mensajes del canal (texto) de los eventos (join,part,etc)
    • Indicadores de actividad (junto a cada nick) y en los hints por cada nick y canal
    • Multiservidor
    • Codigo de color personalizable en la barra de ventanas.
    • Coloreado inteligente de nicks
    • Entrada de texto con editor multilínea
    • Cambiar la codificación, criptografía, de cada ventana al vuelo.

    Grafos de conocimiento

    Representar el conocimiento de manera formal es uno de los desafíos de la inteligencia artificial que lleva mucho tiempo sin terminar de resolverse.

    Uno desearía poder expresar cualquier idea de manera que pudiera ser procesada por una máquina (o por un humano) de manera sencilla y sin ambigüedades, y a lo largo del tiempo se han desarrollado sistemas de representación del conocimiento. Sin embargo, esto no es una tarea fácil. Piensa por ejemplo en las secciones de mi weblog. Hay una serie de categorías cerradas (matemáticas, computación, tecnología, etc) para las noticias. Cada vez que pienso en una idea para una noticia tengo que asignarle una sola categoría (o crear la categoría si no existía a priori) pero toda noticia pertenece a varias categorías simultáneamente porque hablo de distintos temas y quiero expresar distintas cosas, así que necesitaría un sistema más potente.

    El modelo entidad-relación (cada cosa es una entidad con una serie de atributos, y cada cosa se relaciona con otra mediante una relación) se usa en bases de datos porque permite manejar el conocimiento con un álgebra muy estudiada y que se puede implementar en un computador.

    El modelo orientado a objetos es similar al anterior, y aparecen los términos: clase, objeto, herencia.

    Hay una infinidad de métodos y teorías para representar y procesar el conocimiento, pero hasta donde yo sé (que no es mucho) ninguna permite representar todo el conocimiento que un humano pueda tener.

    Con todo esto llego a un par de conclusiones: el conocimiento es puñetero y sirve para hacer tesis doctorales. Hagámonos una idea de cómo funciona el único sistema que funciona actualmente sobre conocimiento puñetero: el cerebro humano. No sabemos cómo funciona, pero sabemos que se basa en un modelo de redes neuronales. Las estructuras neuronales tienden a ser aleatorias y caóticas, y son sobre todo un sistema de caja negra (desconocemos la estructura interna pero sabemos que funciona). Si no podemos estudiarlo por dentro de poco nos sirve para desarrollar un sistema formal. Así que es mejor partir desde 0.

    Ahora intentaré crear un sistema de clasificiación de noticias para un weblog. El objetivo de este sistema es, por ejemplo, separar la parte personal de la parte técnica del contenido del weblog, distinguiendo las noticias de un tipo y de otro.

    1. Categorías sueltas. Es el modelo actual. Con este modelo se pueden seleccionar noticias eligiendo un conjunto de categorías.
    2. Árboles. Extiende el concepto de categoría, haciendo categorías de categorías, a varios niveles. Permite tener una supercategoría que englobe a todas las categorías técnicas, por ejemplo.
    3. Grafos. Volviendo al título del artículo, sostengo que el conocimiento se estructura de manera tan o más compleja que un grafo. El grafo es más potente y complejo que un árbol ya que permite ciclos. Los modelos ER y de objetos permiten modelar sistemas con ciclos y por tanto son grafos.
      Un sistema de weblog con categorías basadas en grafos relacionar categorías entre sí (facilitando la búsqueda de temas relacionados), y relacionar un artículo con varias categorías a la vez (incluso asignando distintos grados de relación a cada categoría), y veríamos que cada artículo tiene varios iconos de tema de distinto tamaño en función de la relación que tenga con el tema.
      En cualquier caso un modelo basado en grafos puede ser suficientemente potente para resolver el problema de las categorías, pero para llevarlo a cabo nos encontramos los siguientes problemas
      • Requiere un esfuerzo de diseño considerable. Hay que decidir que modelo implementar, y establecer con acierto las relaciones entre los elementos.
      • Puede requerir de un sistema experto para realizar la clasificación y las búsquedas, cosa que facilitaría el diseño, si bien estos sistemas suelen estar en el límite del tipo caja negra.
      • Surgen problemas con los multigrafos. Hay que establecer las diferentes relaciones que se pueden dar entre dos nodos. Por ejemplo, el nodo «yo» puede estar relacionado con el nodo «universidad» porque estudie allí, porque trabaje allí o porque sucediera algo estando yo allí. El sistema no deben devolver resultados de búsqueda relativos con estudios si están bucando temas laborales.

    Experimento 1. Pensando en estos temas re-diseñé mi página web hace un tiempo. Enseguida me dí cuenta de que casa subpágina (que había hecho en distintas épocas y por distintas razones) podía pertenecer a una o más categorías.
    Tenía una serie de objetivos en mente:

    • Clasficiación completa. Todas las subpáginas deben pertenecer a alguna categoría
    • Navegación directa. El usuario no entrará en una sección buscando algo que en realidad está en otra sección, evitar esos «callejones sin salida» muy frecuentes en muchas páginas.

    Determinando que modelo usar en mi página.
    Tras seguir un razonamiento similar al del artículo, llegué a la conclusión de que lo óptimo sería establecer grafos que representarían las secciones y las páginas y las relaciones (enlaces) entre ellas:

    1. Categorías. Me dí cuenta de que la categorías eran aproximadamente: personal, linux, programación y humor. El problema es que algunos conceptos pertenecen a linux y programación, otros a personal y humor, etc.
    2. Árboles. En este caso no me solucionan ninguno de mis problemas.
    3. Grafos. Necesitaba realizar un diseño complejo basado en grafos para después representarlo de manera limitada (2 dimensiones) en pantalla.
      Primero tomé las categorías e hice un grafo con las relaciones entre ellas. Me pareció correcto, pero me dí cuenta de que no servía de mucho, ya que no incluía la relación entre artículos que pertenecen a varias categorías y que complican bastante el grafo.
      Después intenté ampliar el grafo añadiendo unos artículos directamente en las categorías (artículos puros), y otros artículos como relación entre varias categorías (artículos multicategoría). Tras esto tenía ya un grafo de mi web válido.

    Representando un grafo en html
    Tenía un grafo de unos 15 nodos (entre categorías y artículos), cada uno con entre 1 y 4 relaciones (relaciones entre categorías y artículos multicategoría). Mi intención era simplificarlo lo más posible perdiendo la mínima información, facilitando así su interpretación visual. Podía valerme de 2 dimensiones, y opcionalmente 3 (proyectando un grafo 3D en un plano y facilitando la navegación con el manejo interactivo usando un applet java). El problema de esta «vacilada» es que requieren más esfuerzo para captar la estructura tridimensional, y no se puede usar la memoria visual 2D para navegar (ya que el aspecto de la proyección es variable), obligando al usuario a usar la visión espacial contínuamente (y a instalar el plugin de java ;). Para hacerlo en 2D era una tarea difícil ya que aquello no era un grafo plano y siempre había algún nodo descolocado. Tras varias simplificaciones opté, muy a mi pesar, por usar una sola dimensión. Así que de todo lo propuesto el resultado es bastante más simple: una lista ordenada de categorías, con varios artículos en cada una.
    Eso sí, me hice la promesa de interenlazar aquellos artículos que, aun siendo de diferentes categorías, estaban relacionados, de manera que se podría navegar con cierta libertad sin necesidad de ir hacia atrás.
    Otra idea que apliqué es que cuando yo diera enlaces directos a mi web, crear un index.html que mantenga el frame de navegación de la izquierda y muestre en la derecha la página en cuestión.
    El resultado: http://www.latinsud.com

    Experimento 2
    Un día pensé en una especie de Wiki, pero como no tenía ganas de montar uno en php lo hice estático (se editan las plantillas, se procesan con un script y si se edita hay que volver a procesarlo). La ventaja del Wiki es que genera los enlaces entre artículos de manera automática, permitiendo una navegación directa (sin necesidad de echar marcha atrás) cuando hay suficientes enlaces.
    Quería plasmar en ese wiki un montón de conceptos de todo tipo de manera ordenada y de manera que cualquiera pudiera navegar intuitivamente desde un concepto hasta otro relacionado. Nada más lejos de la realidad, el resultado es un ente caótico donde uno no sabe qué páginas encontrará al pinchar dos veces en un enlace, y donde (por falta de enlaces) es difícil encontrar lo que se busca.
    El resultado: http://unia.ual.es/socios/sud/index2.html

    Conclusiones finales

    • Estamos en una época en la que queremos que las máquinas piensen por nosotros. El esfuerzo que debe realizar la máquina (y su diseñador) es infinitamente superior a la cantidad de trabajo que alivia a cada usuario. Esta tarea de investigación es, sin embargo, necesaria para el desarrollo de la sociedad de la información.
    • La complejidad del conocimiento crece de manera exponencial a medida que vamos incorporándolo a nuestro saber. Por esto necesitamos aislar un conocimiento de otro y trabajar con cada uno de manera separada y eficiente. Podemos ayudarnos de las máquinas para procesar este conocimiento por nosotros.

    ADMTek 8211 en Linux

    Hace un tiempo compré una tarjeta CardBus SMC 2365w con el chip ADMTek 8211.

    La tarjeta es barata pero es una patata, poca sensibilidad de recepcion, sin conexión de antena, mal soporte en Linux.

    No obstante con paciencia y cabezonería se consiguen las cosas. Al tiempo de tenerla me empeñé en usar la tarjeta para escanear redes, e hice un parche para el driver (semi-opensource), ahora mismo hay gente desarrollando un driver GPL.

    De igual manera pude ver que la tarjeta lleva un conector oculto, que no es un uFL a pesar de lo que todo el mundo dice sino un MS-156, el mismo que otras tantas tarjetas.

    En fin, poco a poco la tarjetita se va convirtiendo en la herramienta perfecta del hacker wirelero, y le voy comiendo terreno a la Airport del iBook de cierto individuo ;).

    Un weblog

    He decidido montarme un weblog. Quizás porque estaba aburrido, aunque tendria cosas más urgentes que hacer. Quizás porque tenga muchas cosas que contar, aunque soy bastante callado. O quizás como sitio de denuncia pública. Bueno espero que haya de todo.