Category Archives: Español

Búsquedas booleanas con PHP y MySQL

Hace unos dias necesitaba unas funciones para poder implementar un búscador que aceptase terminos booleanos, es decir, que se pudiesen buscar cosas como: “linux AND gimp”, “gaim OR gaim-vv”, “linux + torvalds”….

En primer lugar descubrí que a partir de MySQL 4 se podian hacer consulta sobre campos FULLTEXT en lo que se denomina “IN BOOLEAN MODE”. Con esto podiamos buscar “linux +torvalds” y la propia MySQL se encarga de interpretar los operadores booleanos. Esto es fantástico pq te hace todo el trabajo sucio automáticamente, pero el inconveniente es que es necesario la versión 4 y los campos FULLTEXT no estan soportados en tablas INNODB.

Así que seguí buscando y encontre unas fantásticas funciones en esta web, las cuales interpretan los terminos booleanos para contruir una sentencia SQL. El único problema es que utilizaba campos FULLTEXT, así que tuve que adaptar las funciones para que buscase con el LIKE de toda la vida, cuando puera pegare por aqui las modificaciones 🙂

Código VBA para fusionar MS Access con MySQL

El código que viene a continuación puede servir de ejemplo para pasar datos de una base de datos MS Access a una MySQL utilizando el driver ODBC de MySQL. La idea seria crear una tercera BD Access con una tabla linkada a la BD Access original y otra tabla linkada con el servidor MySQL usando ODBC. Esto demuestra que es posible realizar una migración de MS Access a MySQL, la cual podria ir acompañada del fantástico front-end MySQL Control Center.

El código esta escrito en VBA y se debe ejecutar desde MS Access. Hay muchas zonas cortadas ya que son repetitivas, estan señaladas con “[…]”:

Continue reading Código VBA para fusionar MS Access con MySQL

Prejuicios

Acabo de leer un interesante artículo titulado “Los prejuicios: qué son y cómo se forman“. Explica muy bien como se forman los estereotipos sobre colectivos y como adquirimos prejuicios de la forma más estúpida e irracional. Después de leerlo y a pesar de que también señala unas pautas para evitar los prejuicios, me parece algo muy dificil de erradicar ya que parece estar intimamente ligado con la naturaleza del ser humano. Sin embargo si creo que se pueden reducir, evitar llegar a extremos de discriminación o fanatísmo.

De todas formas, estos prejuicios son constantemente utilizados por políticos, religiosos o personas con poder para poder controlar a grupos de personas en su favor. Evidentemente no digo que todos los politicos o religiosos lo hagan, pues esto también seria un prejuicio estúpido, pero si es cierto que en muchas ocasiones esta manipulación tiene lugar.

Quizás incluso dentro de la comunidad del Software Libre se pueden observar estos prejuicios y estereotipos sin llegar a niveles violentos. Si nosotros como linuxeros conocemos a un nuevo informático el cual solo trabaja con MS Windows, inevitablemente lo vamos a prejuzgar antes de realmente conocerlo. Incluso dentro de nuestra propia comunidad si conocemos a un linuxero que utiliza Mandrake, enseguida lo asociaremos a que es un usuario novato e incluso habra gente que lo desprestigiará. Imagino que aquellas personas que trabajan habitualmente con MS Windows y conocen a algún linuxero también deben tener sus prejuicios, calificandolo de friki, hacker o cualquier otra clasificación. Realmente estamos constantemente rodeados de prejuicios que no benefician a nadie excepto quizás a nuestra propia auto-estima, tal y como se explica en el artículo.

Lenguajes C, C++ y Fortran para Mono

Se esta implementando un interesante traductor llamado whirl2il, actualmente esta muy verde pero su objetivo es conseguir un traductor de whirl a IL.

Whirl es el lenguaje intermedio que genera el compilador Open64, por lo visto es un compilador libre (GPL) de SGI que permite compilar C, C++ y Fortran 90/95. IL es el código intermedio de la plataforma .NET de MS o lo que es lo mismo, es el código intermedio de la plataforma libre Mono.

Seria fantastico poder aprovechar todo el código que hay ya escrito en C o C++ e integrarlo en la plataforma Mono 🙂

Fork de GNOME

Ali Akcaagac, ex-miembro de la GNOME Foundation y colaborador durante muchos años ha decidido iniciar un fork de GNOME llamado GoneME. Por lo visto esta en desacuerdo en como esta evolucionando el escritorio y quiere tomar una nueva dirección, cosas que le desagradan:

  • Características que se han implementado solo para parecerse a MacOSX sin buenos argumentos.
  • Spatial Nautilus, la última versión del navegador de disco nautilus tiene unas características no muy cómodas como que por cada directorio que abres aparece una nueva ventana.
  • GConf, herramienta utilizada para guardar la configuración de las aplicaciones de gnome. Es muy similar al registro de MS Windows, pero en este caso se utiliza XML. Dificulta la edición de la configuración a mano.
  • Ausencia de panel de control

Estoy de acuerdo en muchos de los puntos de los que se queja. El fork pretende ser progresivo, inicialmente solo se iran haciendo parches que se podran aplicar a la versión de CVS de GNOME y con el tiempo, si la comunidad crece lo suficiente y se tiene suficientes modificaciones hechas, se hara el fork definitivo. Me gustaria que la idea siguiese adelante para que nos pusieramos las pilas en el ámbito del escritorio por fin, actualmente de los escritorios existente con el que más cómodo me siento es GNOME pero se que le faltan muchas cosas y espero que se consigan con el tiempo 🙂

Color transparente con Gimp

Hoy he descubierto como poder usar el color transparente con Gimp 2.0.

Si abrimos por ejemplo un archivo jpg que contenga una manzana rodeada de un fondo blanco (por decir un color), quizas queramos cambiar ese fondo blanco por el color transparente de forma que cuando pongamos nuestra imagen en una web se vea el color de fondo de la web. Para hacer esto hay que ir al dialogo de las capas (boton derecho sobre la imagen -> dialogos -> capas). En principio solo existirá una capa, damos con el botón derecho sobre esta y seleccionamos “Añadir canal alfa”, a continuación podemos seleccionar la herramienta goma de borrar y arrastrar el raton por cualquier zona de la imagen, se mostrarán unos cuadrados que corresponden al color transparente.

A la hora de guardar el archivo siempre hay que tener presente que hay que seleccionar un formato que permita tener transparencias como PNG o GIFs, los JPEG por ejemplo no lo permiten. Lo mejor es guardar siempre el archivo original en el formato Gimp XCF, ya que este conservará todo… transparencias, capas, etc…

También me he dado cuenta que puedo crear brochas más grandes en el diálogo de brochas, cosa que va fantástico cuando tratas imagenes de alta resolución 🙂

Autopackage, futuro sistema de instalación

AutoPackage es un sistema de instalación de aplicaciones para GNU/Linux, pretende ser compatible con cualquier distribución y tener resolución de dependencias. El objetivo que persiguen es muy complejo debido a las variadas diferencias que existen entre distribuciones, si consiguen hacerlo realidad puede ser un gran paso para GNU/Linux ya que falicitaria la instalación de programas para los usuarios noveles.

Actualmente existen sistemas de instalación muy sencillos como el apt-get de Debian o emerge de Gentoo, pero estos dependen de las propias distribuciones y solo sirven para estas, es decir, estamos atados a la política de versiones de cada distribución y si somos desarrolladores no podemos hacer facilmente un “ejecutable” que se pueda instalar en cualquier distribución. Personalmente no tengo ninguna necesidad utilizando Gentoo, las versiones de los programas són muy actuales y es sencillo realizar instalaciones/desinstalaciones, pero si pienso en conjunto en todas las diferentes distribuciones me encantaria que este proyecto llegase a buen puerto 🙂

PhoneGaim

La empresa lindows ha realizado modificaciones al cliente de mensajería instantanea Gaim para añadir la posibilidad de realizar llamadas por Internet, entre diferentes Gaims a coste 0 o desde un Gaim a un telefono real. El proyecto se llama PhoneGaim, me he bajado el código fuente pero no he conseguido compilarlo con éxito… aunque acabo de encontrar un post en el foro de gentoo que indican como hacerlo.

Parece prometedora la idea, aunque no se que ocurrira con proyectos como Gaim VV que consiste en un fork amigable del Gaim para añadir videoconferencia (voz y video) al Gaim. Incluso no se como afectará al propio proyecto Gaim la aparición de PhoneGaim. Un futuro misterioso.

Mldonkey y cliente gráfico Sancho

Acabo de descubrir el mejor front-end para acceder a mldonkey. Ya he hablado de mldonkey por aqui anteriormente, pero para refrescar la memoria dire que es un programa P2P (Peer 2 peer) que permite compartir archivos a la vez que bajar lo que lo demas comparten, se puede encontrar muy material ilegal (peliculas, musica…) pero también hay disponible muchas otras cosas legales como documentación, CDs de Linux, etc…

Concretamente mldonkey tiene las siguientes caracteristicas:
Continue reading Mldonkey y cliente gráfico Sancho