Archivo de October, 2007

Ser, Estar, y … Haber

Lo he escrito originalmente en mi blog sobre Gramática Alemana en verdad es válido también para el inglés.

Tenemos asumido que en otros idiomas no existe diferencia entre ser y estar, pero estaba pensando el otro día cómo suele traducirse haber y me dí cuenta que en muchas ocasiones son estos tres verbos uno mismo en inglés.

Cuesta encontrar un ejemplo, porque en muchas ocasiones existe una traducción alternativa que evita discretamente esta curiosidad, como es el caso para preguntar si hay más cerveza en la nevera.

Do you have more beer in the fridge?
¿Tienes más cerveza en la nevera?

Pero podemos esforzarnos por provocar la necesidad de utilizar el verbo haber en nuestra traducción mental y entenderemos que hay, no entenderemos que está (aunque lógicamente lo está), la cerveza en la nevera.

There is more beer in the fridge.
Hay más cerveza en la nevera.

October 28th, 2007 by albinworld

Meme: Por qué escribo un blog

  • Porque en la vida real me comunico bastante. En el bus, en la piscina, enseguida hablo con cualquiera, le cuento el lado superficial de mi vida o hablamos del tiempo como suele decirse.
  • Porque a veces necesito contar las cosas, aunque no me escuche/conteste nadie, simplemente desahogarme, quién sabe quién acabará leyéndolo.
  • Porque algunas dudas nunca llegan a un foro, sino que encuentro su respuesta, y un blog es un sitio perfectamente válido dónde exponerlas, por si le sirven a otra persona.
  • Por motivos caducados, como las categorías para las que nunca tuve tiempo y a penas tienen entradas asignadas.
  • Porque había que tenerlo…

En general no parece haber un objetivo concreto, pero se pueden hacer estas afirmaciones anteriores.

Una buena pregunta también sería ¿Porqué escribo un meme? :o) Porque Juanjo me ha pasado el testigo … y ahora ¿He de pasar el testigo a alguien? Se va a notar que no tengo muchos amigos, bien pues a mi compañero Peter Parker y a mi hermano.

October 25th, 2007 by albinworld

Blog de Gramática Alemana

Le he cogido gusto a personalizar el Wordpress (aunque no se note en este blog) y la otra tarde en un ratico preparé un Blog dónde iré hablando sobre los “retos” que me encuentre durante este curso de alemán.

Me servirá para apoyar el proyecto principal, tanto a nivel de indexación, como de contenidos.

October 22nd, 2007 by albinworld

El Quick Time Player y sus efectos paranormales.

En general, es un player que siempre ha tenido comportamientos realmente curiosos. Por ejemplo, si tienes un navegador con un object reproduciendo un VR y solapas esa ventana con cualquier otra, al pasar el puntero sobre la zona donde está el QTPlayer escondido, el puntero cambia somo si realmente pudieras interactuar con él. También he tenido problemas de poderlo reproducir únicamente en el monitor principal (cuando habían dos monitores con dos gráficas, no desde que una gráfica puede tener dos monitores).

Pero el colmo ha sido que, si trato de usar el más que recomendable script de Granny Smith para activar objetos ActiveX, a veces pinta y a veces no pinta la barra inferior con los botones …
Realmente está siendo una odisea conseguir que aparezca el player activado, estoy por preguntar a Microsoft cuanto valen esos royalties y se los pago yo … ¿Qué les faltará dinero en la empresa?

October 11th, 2007 by albinworld

Personalizando el WordPress

Tal cual lo descomprimí, lo configuré, y lo he utilizado durante … una jartá de tiempo.

No serían más de las 15.00 horas cuando me ha trincado mi hermano, que ha contratado el hosting gratuito que comenté hace unos días, porque tenía el capricho de crear una web de chistes estilo “se abre el telón”, y me ha tenido ahí hasta las 21.30 horas que son, modificando el theme. Bueno, para no mentir, me ha dejado tomarme un sabroso helado de chocolate y nata a eso de las 19.15 horas, con derecho a pegar una meadita después -no mientras-. Nos quedan algunos flecos, y queremos poner algún plugin más a funcionar, pero … aún así me ha parecido un logro. No teníamos ni diseño, y los primeros bocetos, más que dar ganas de llorar, daban ganas de vomitar.

Total … que a veces, lo que no harías para tí, lo acabas haciendo para otros, pero ahora que lo tengo controladillo, no descarto personalizar un poco el aspecto de este blog.

Es más facil de lo que me pensaba. Tampoco es que pensara en realidad, simplemente temía instintivamente tener que comprender y modificar consistentemente las capas y estilos creados por otros, a saber qué retorcidas mentes han creado tan compleja estructura.

Los estilos originales, los he borrado directamente, y después, según veía las capas que aparecían, iba creando los estilos necesarios. He puesto capas de mi cosecha. He decidido no reutilizar algunos “id” que se reutilizaban. He capado el plugin de los votos para que no tirase su propio css y centrar así todos los estilos en mi hoja … en fin, que me he involucrado bastante a toquetear. Lo siguiente, quién sabe, … hacer mi propio plugin que haga alguna cosa trivial …

October 9th, 2007 by albinworld

MySQL - Exportando procedimientos almacenados al servidor de hospedaje (II)

Ya comenté hace tiempo cómo exportar un stored procedure al servidor dónde tienes contratado el hosting, requisitos: acceso directo al servidor MySQL. Pero qué pasa si has seguido mi consejo sobre Hosting Profesional Gratuito -o si de cualquier otro modo- has acabado en 1and1 -u otro Hosting Provider- dónde no se puede hacer semejante cosa …

Aunque “DELIMITER” es una palabra reservada a partir de MySQL 5.0, si utilizas PhpMyAdmin y tratas de ejecutar en la pestaña de “SQL”

DELIMITER $$
DROP FUNCTION IF EXISTS `newsletters`.`f_inGroup` $$
CREATE FUNCTION `f_inGroup`(nUser int, nGroup int) RETURNS tinyint(4) BEGIN
DECLARE yon TINYINT;
SELECT count(*) INTO @yon FROM t_usersgroups WHERE idUser=nUser AND idGroup=nGroup;
RETURN @yon;
END $$
DELIMITER ;

Te dirá que tienes un error de sintaxis en “DELIMITER”

Así que me he tenido que construir (no prometí que fuera muy usable) un pequeño fichero php:

$sql  = "";
$sql .= "DROP FUNCTION IF EXISTS f_inGroup";
mysql_query($sql, $dbLink) or die("Error :: ".mysql_error($dbLink)." :: ".$sql);
$sql  = "CREATE FUNCTION f_inGroup (nUser int, nGroup int) RETURNS tinyint(4) BEGIN n";
$sql .= "DECLARE yon TINYINT; n";
$sql .= "SELECT count(*) INTO @yon FROM t_usersgroups WHERE idUser=nUser AND idGroup=nGroup; n";
$sql .= "RETURN @yon; n";
$sql .= "END n";
mysql_query($sql, $dbLink) or die($sql);

¿Porqué funciona mejor esta solución? o simplemente ¿Porqué funciona? o ¿Qué te hizo pensar que funcionaría? (en este caso, gracias por no considerarme un desesperado que prueba cualquier cosa).

La necesidad de usar DELIMITER surge de separar lo que son consultas puntuales, de conjuntos de consultas. En verdad, la declaración de un Stored Procedure o una Function o un Trigger podría detectarse al encontrar un END que cierre el BEGIN con el cual empezó todo, pero como es costumbre en MySQL que exista un caracter que indique al parser “hasta aquí” pues se encontraron con este problemita, y se debió proveer una manera de establecer un segundo caracter (o conjunto de carácteres) que dijeran “punto final”.

Bueno, una vez entendido esto, esperas pacientemente a que una vocecita interna te diga “cuando haces un mysql_query no necesitas poner el punto y coma final, porque se entiende que cada ejecución de esa función es un comando por si mismo” entonces se enciende la luz de idea, ese momento mágico en que el sislogismo se completa sin ser conscientes del razonamiento intermedio, bien por el subconsciente, e imaginas cómo todo ha subido un nivel en una jerarquía imaginaria, y te dices “si no necesito un punto y coma para separar los comandos, ya no necesito un DELIMITER que indique el final del comando, y puedo usar el punto-y-coma tan tranquilamente para separar las instrucciones internas del Stored Procedure, Function, o Trigger. Pruebas, y cuela.

Y mientras escribes en tu blog, porqué el día parece más soleado, te das cuenta que seguramente hubiera pasado lo mismo de haber puesto el contenido de $sql en la pestaña de SQL del PhpMyAdmin … porque seguramente lo que hará es recuperar el contenido del TextArea y lanzarlo con un mysql_query … pero esa experimentación la haré otro día, para que no se pierda la curiosidad.

October 9th, 2007 by albinworld

Hosting Profesional Gratuito

Pues me he enterado que 1and1 quiere comenzar a ofrecer Hosting en España y quiere hacese con un capazo de clientes que pongan a buena prueba sus sistemas, así que está regalando dos años de hosting con registro de dominio incluido.

Hasta ahí la noticia. Ahora …

He convencido a unos cuantos buitres que tenía a base de Add-On Domains para que se registren y de momento me ha ido bien. Pero el link de login en la home lleva roto unos días.

Tiene panel de control propio (nada de Plesk ni CPanel) pero es completo y poderoso.

Tienen phpMyAdmin. Pero el servidor de bbdd no se deja acceder desde fuera, así que nada de MySqlQueryBrowser de casa al server, ni consola tampoco.

La base de datos no es localhost, sino que te dan un server (ej. db123.1and1.es) al cual debes conectarte, esto es meramente una curiosidad, el nombre de usuario, de base de datos, no son de tu elección, sino que te los asignan (ej. db223344 y dbo223344 respectivamente).

Los subdominios no necesariamente deben corresponder con una carpeta en el raiz, pueden ser subcarpetas de subcarpetas.

El precio de los dominios es realmente bajo.

A parte … si alguien controla un poco de Alemán, que eche un vistazo a 1and1.de y vea el precio que dan para VPS … flipante! aunque me pasó hace tiempo con una empresa alemana de este tipo que solo quería clientes alemanes, con lo cual, mi gozo se quedó en un pozo (frase que sin duda alguna debió poner de moda algún granjero zoofilo cuando se le cayó la gallina al pozo).

October 3rd, 2007 by albinworld

Etam - Newsletter - Ofertas

Bien por Etam, por ser una empresa que aprovecha internet para llegar a sus clientes, no solo mostrando parte de su catálogo, sino interactuando con ellos.

Me suscribí a su newsletter y casi todos los meses me llega alguna invitación a participar en un jueguecito donde me preguntan mi opinión, y participo en un sorteo.

La gran pregunta, es … con el dinero que les debe de costar el flash y el envío del newsletter (profesionalmente no lo valoro en menos de 6.000 euros) porqué el premio es tan … irrisorio (180 euros en el último caso).

October 1st, 2007 by albinworld

Hackeo WiFi

Listado de passwords por defecto de muchos muchos muchos pero que muchos routers.

Ya se sabe, el técnico de instalación de Ono te hace el agujero en la pared, te pasa el cable, te desempaqueta el router, lo activa, y se marcha … y ahí te quedas con tu red Wi-Fi sin encriptar y con los datos de acceso por defecto.

October 1st, 2007 by albinworld