Google vs Yahoo! : Spam

Search — EwS @ 11:26 am

Resulta que Google me ha bloqueado de sus indices! Note una subida de numero de visitas gracias a salir en meneame (y no en la pagina principal) y error500, no tenia ni idea de que hubiera tanta gente accediendo a esas paginas. Examinando los logs, cosa que deberia hacer mas a menudo, veo que la cantidad de visitas desde Google es minima y es superada por mucho por Yahoo! (orgullo paterno) y Technorati (WTF!) , mirando un poquito mas de cerca, veo que google me ha bloqueado la pagina, muy probablemente considerandome como spammer, o debido a una muy mala indexacion, ya que no salgo en ninguna busqueda relacionada (ejemplo). Para la misma busqueda en Yahoo aparezco en la primera posicion y mi alma mater (por decirlo asi) indexa todo mi blog, hasta la ultimisima pagina, cosa que Google no se molesta en hacer. Voy a intentar explicar porque es esto.
(disclaimer que no me la quiero ver con abogados animales de los de aqui, lo que pongo abajo son tecnicas generales y publicadas y nada tiene que ver con tecnologias propietarias ni con lo que haga yahoo, no os hagais ilusiones, lo aviso) :
Los ultimos meses que pase como Ingeniero de busquedas en Yahoo! (que glamouroso suena ahora!) los dedique a pelar el indice de spam. No puedo contar nada de tecnologias que se usen, pero si ay un par de tecnicas generales y simples basadas simplemente en una “economia de escala” y en la cantidad de datos que un motor de busquedas normalito tiene indexado, a ver: analisis de contenido y anomalias en la estructura de enlaces. La primera tecnica es sencillita, si la proporcion de determinadas palabras en una pagina es muy superior a una media establecida por una muestra de paginas limpias, la pagina estudiada es muy probablemente spam. Ejemplo, pillo paginas limpias que no son spammers, como elpais.es, elmundo.es o barrapunto.com por poner un ejemplo (se deberian tomar cantidades por miles para tener una muestra significativa) y se analiza la frecuencia un conjunto de palabras “sospechosas” (sexo, tetas, nombres de famosas…), Digamos la frecuencia de la palabra “sexo” es 1/100. Analizando con esos datos el resto de conjunto de paginas que hay en el mundo (para el idioma seleccionado), una pagina que contenga la palabra sexo con una frecuencia de 30/100 (exagerando) y nombres de famosa en igual proporcion, es una clara candiadata a ser spammer. Con estos datos de frecuencia se obtiene una puntuacion (diciendo lo spammer que es una pagina concreta), que es un numero fraccionario entre 0 y 255 y para cada valor de la escala se analiza la cantidad de spammers que eliminamos mediante dos valores: precision y recall (como se traduce esto), que son las dos medidas basicas usadas en IR (la ciencia de los motores de busqueda, por decirlo asi). El recall indica las paginas que pillamos como spammers y la precision el numero de aciertos que tenemos. Teniendo todos los datos para esas dos variables para todos los datos de la escala vemos que son inversamente proporcionales (a mas precission, el numero de paginas identificadas baja) y con esos datos establecemos que queremos hacer: tener mas precission (cuando pillamos una pagina, acertamos de pleno) o mas recall (quitamos mas paginas pero nos equivocamos mas). Este ratio generalmente se establece con grupos de control o haciendo pequegnas versiones beta para un numero limitado de usuarios, que generalmente no saben que estan siendo analizados y cuantificar luego sus acciones.

La segunda gran tecnica usada (y que es mucho mas moderna) es una especie de “pagerank inverso” consistente en analizar la estructura de links saliente de paginas claramente identificadas como spammers y eliminarlas del indice (spammers enlazan a spammers generalmente), esta es quiza la tecnica menos democratica, porque un falso enlace te dejaria fuera del indice sin que puedas hacer nada por ello. Generalmente se emplea una mezcla de las dos tecnicas (analisis de contenido y estructura de enlaces) para espeficicar el nivel de “spameo” de un sitio y a partir de ahi se calcula la precision y el recall deseado para maximizar el gusto del usuario (o del conejillo de indias, que no siempre es lo mismo!)
Dicho esto, y viendo que Google me ha pillado como Spammer, creo que el gigante de las busquedas tiene un grave problema de precision y que esta maximizando (quiza artificialmente) el recall para decir que tienen un indice libre de spammers a consta de tener muchos “positivos falsos” como mi pagina. Hay muchos valores adicionales que usabamos en Yahoo! para cuantificar lo spammer que era un documento determinado, pero mirandolos todos y cada uno de ellos (con los limites que tengo ahora que no estoy en Yahoo!) veo que no doy positivo en ninguno.

Conclusion: lo que siempre deciamos de cachondeo en Yahoo!: Google no es solo MUY salvaje con el spam, sino que es poco preciso, un maton de clase que pega al que se le ponga delante “por si acaso”.

Mas sobre precision y recall (con graficos monos de sus relaciones) (more…)

Mac OS X : Ni chicha ni limona


Aqui esta el cacharrillo que me he agenciao en el curro, como dice Jorge: llore…. o ganas me entraron, voy a hacer una descripcion de como es el cacharrillo y el sistema operativo que trae.

El hardware es inmenso. El bicho trae dos gigas de ram, dos nucleos intel un disco duro de 100gigas (lo maximo que se destila para portatiles), una pantalla XXL, un mando para iniciar el frontrow (una especie de mythtv o freevo descafeinado) y una camara integrada en la pantalla. Tiene detalles alucinantes, ademas de no traer puerto serie, paralelo (por fin !) tiene cositas como que el cable de la alimentacion es una plaquita magnetica que se “pega” al ordenador y lo recarga solo. Ademas de eso, el bicho, siendo mas grande, es mucho mas ligero que mis portatiles pc’s (y que el ibook g4 de mi novia) y el nivel del ruido, contando el disco duro, no suena nada, nada nada nada (lo pongo al lado del servidor que no tiene ventilador y los dos suenan lo mismo).

Eso es el hardware, es un bicharraco bien hecho como no he visto en mi vida y la verdad es que merece cada uno de los 2000 y pico petrodolares que sale por aqui. Cosa aparte es el hardware. Tenia mucha mucha curiosidad de ponerle las manos encima a ese hibrido de bsd y pijerio que es el macosx, aun teniendo el de Justina en casa a todas horas, no es lo mismo. Lo primero que uno ve de macosx es que se integra genial con el hardware en el que corre, es como si el sistema operativo no funcionara. Como el sistema operativo de un video o de un ipod (que lo tiene y ademas se le puede quitar y poner linux , a to esto): esta no notas que existe, es parte del hardware. Abres el ordenador y el sistema esta ahi, lo cierras y solito se pone a hibernar aparcando el disco duro activandose en menos de un segundo al ser abierto de nuevo. El teclado se ilumina cuando debe, la pantalla cambia de brillo ligerisimanente, la bateria dura y dura y todo es fluido, rapido. El interface es “pa tontos” , instalar un programa en maxosx es abrir el fichero comprimido (que se monta como una unidad) y arrastrar un icono a la barra o al directorio de programas. Desinstalarlo es arrastrar el mismo icono, donde este, y mandarlo a la papelera. Y para colmo y regocijo de Neal Stephenson (quien haya leido “al principio fue la linea de comandos entendera de lo que hablo) tenemos una consola de unix para cuando necesitamos “escapar de matrix” hacer algo rapido como ver cuando espacio hay en el disco duro o enviar algo por scp. Tiene unos efectos graficos para hacerse caquita, como por ejemplo al instalar un widget la pantalla se vuelve agua con ondas generadas desde la nueva ventana (es pa verlo).
Pese a todo, Mac OSX no me convence. Nada nada nada nada. Es un sistema muy estable pero es demasiado metaforico. La metafora de la instalacion (arrastrar a la barra), la del borrado, la de la conexion, la de la configuracion…. se me antoja que todo son capas y capas de abstraccion ocultando que es lo que de verdad pasa y si, esa es la idea que ha tenido Steven Jobs desde que creo que el Apple Lisa, pero a mi se me resulta como manejar un video. Tienes la consola, pero no una X que integre con todo (xterm -display=:1 comor?) y se han saltado a la torera una arquitectura (la de unix) que lleva varias decadas gestandose. No se que pasa dento, cuando conecto el itunes resulta que los demas itunes de mi red pueden ver lo que tengo de musica (es decir, que “grita” lo que pirateo).Me parece un windows, mejor, vale, como sera el windows del agno 2080 si es que llega, pro un windows al final y al cabo. Como decia otro blogger por ahi: “al poco tiempo me di cuenta de lo que me pasa es que odio el software propietario”.

Afortnadamente siendo una maquina intel le entra Linux (Debian, Ubuntu, lo que quieras), Xgl y Beryl supera y mucho mucho al interface grafico de Mac OS X (tambien es para verlo) y todo parece mucho mas fluido y claro. Por lo que mi eleccion de hardware y software esta clara.
Una cosa que me ha llamado la atencion es el protocolo que usa Mac para compartir informacion, usando DNS por multicast. El protocolo es Bonjour (llamado Rendezvouz hace poco) y simplemente es un sistema por el que programas mac anuncias a otros de su Lan (intranet para los amigos) lo que hacen o pueden hacer. Asi, si entro en una red con varios macs y abro el itunes, los demas itunes de mi red veran mis ficheros compartidos automaticamente, sin configuracion. Igual para las impresoras, al llegar a una red nueva, el ordenador ya sabra que impresoras hay y tendra todo configurado. Lo curioso es que dada la densidad de Macs que hay en San Francisco (mi novia, en una de las suyas, me propuso que hicieramos un muestreo y averiguaramos el market share que tienen aqui), encuentras macs en todas partes y no es raro llegar a un cafe “de los de laptops” y ver que la mitad de ordenadores conectados son mac, con lo que puedes abrir el itunes y escuchar lo que tienen compartido o abrir un soft de char por bonjour (el iChat) y hablar con gente que tienes al lado, sin saber muy bien quienes pueden ser. En mi casa, por ejemplo, me he dado cuenta que todos los dias entra alguien en mi red, que por supuesto dejo abierta, con dhcp y todas las facilidades para que entren, y escucha las canciones que comparto en mi servidor, dejandome compartida su coleccion desde su itunes (que por cierto no es mala, tiene bastante musica electronica). Es una buena forma de compartir informacion con un vecino desconocido.

Si alguien quiere compartir como lo hacen los macs desde linux, le recomiendo que instale avahi que es un demonio bonjour para linux. Desde la misma pagina hay muchisimas aplicaciones open source para compartir informacion anonimamente, desde musica (tengo el mt-daapd que viene con ubuntu) hasta notas, edicion colaborativa, juegos o chat.

72 horas en craigslist

craigslist — EwS @ 1:11 am

El titulo del post anterior (24 horas bla bla bla) se referia al documental sobre Craigslist y no sobre el hecho de que llevara ya 24 horas ahi metido ni nada de nada, pero ya contando con que la mayoria os habeis confundido, sigo con el rollo y actualizo el contador.

Llevo ya seis dias y la sensacion que tengo es de no estar en ninguna empresa, sino la de ir a “la casa de uno” por las magnanas a hackear e irme por las tardes.

Mi mesa consta de un pequegno escritorio practicamente en la entrada de la casa victoriana, a esperar que me decida a elegir alguno entre la marea de catalogos que me dieron el primer dia. Desde la ventana que tengo al lado se ve la novena avenida y gente y tranvias pasando sin parar. Craigslist tiene una especie de acuerdo con un par de cooperativas hippies que hay en la calle, que nos suministran cafe, pasteles o pizza siempre que lo queremos, con lo que suelo salir bastante a charlar con los hippies y tomarme un cafe con ellos. El desayuno y la comida son gratis, y para almorzar se decide en una especie de asamblea improvisada en el servidor de IRC interno. El dia que entre me pusieron ordenador, mesa improvisada y me regalaron un ordenador “que andaba por ahi tirado”: un macbook pro salido la semana anterior con dos gigas de ram y sin nadie que le hubiera puesto un dedo encima.
Por aqui siempre dicen que las compagnias del Silicon Valley estan siempre muy influenciadas por su fundador, del que hereda su “espiritu” o vision (el ejemplo mas claro es el ruso de Google, del que todos los ingenieros son una copia). La semana pasada el fundador de Craigslist dijo en un foro de emprendedores en Amsterdam que las grandes del sector podian imprimirse el dinero que tenian y meterselo por donde quisieran porque no queria “ser rico y vivir con guardaespaldas” Asi se explica el ambiente del curro, la pinta de mis compagneros ( la podeis ver aqui ) o el tipo de vision de empresa, mas enfocada a hacer una herramienta que funcione a hacerse rico o atraer inversores, del que la empresa carece.
La empresa trabaja exclusivamente con software libre, todo todo todo lo que se utiliza de puertas para adentro tiene licencia gpl o bsd (de ahi que tuvieran tanta dificultad con los word con macros que me enviaban los abodagos para mi visado). El trabajo, pese a que estamos todos dentro de la misma casa (somos 26 empleados ahora), se realiza en un servidor de IRC interno y en un canal determinado cuya nombre podria traducirse como “vomitos”, el ritmo del canal es de cachondeo y pachanguero y sirve para enviarse links con videos, para anunciar desastres en el cluster o comentarios de mails enviados por los usuarios. El sistema de telefonia es asterisk y todo el mundo tiene un telefono sip fisico.El ritmo de trabajo es relajado, no tengo horas de entrada y tampoco ningun project manager que no ha visto una linea de codigo en su vida que me toque las bolas con plazos y requerimientos imaginativos sacado de dios sabe que powerpoint con tal de justificar su puesto. Generalmente el ritmo es “Examina el codigo. Pilla algo que nos falte. Arreglalo”. El unico meeting que hemos tenido duro 9 minutos.

Pese a eso, la cantidad de curro que vislmbro en el horizonte es horrible, titanica. Mi tarea es replicar el servicio que tienen a nivel internacional, haciendo todo lo que haga falta para que el producto salga, desde traducciones, organizacion de las categorias que han de mostrarse (hay paises donde por ejemplo la homosexualidad o la pornografia es ilegal, o donde no se pueden mostrar por ley ofertas de trabajo gubernamentales) o nuevas posibles categorias a nivel internacional (una categoria para estudiantes Erasmus en los sitios europeos por ejemplo). Tambien tengo que tener en cuenta sitios donde operan mas de una lengua (Catalunya, Euskadi) y montar sistemas que permitan a los usuarios usar una, las dos o ambas con el ingles, desde sistemas de reconocimiento de idiomas (algo que ya hice en yahoo) hasta toda la infraestructura y los interfaces para manejar eso. Tendre que tener en cuenta leyes contra la discriminacion linguistica (en California si pones un anuncio en espagnol para trabajo o casa, se te obliga a presentar una version inglesa), o simplemente casos en los que unos usuarios se mostraran comodos usando un idioma en el interface y otro al escribir o contestar posts.
Eso es solo un poco de lo que me tocara picando codigo, otra cosa es la infraestructura del servicio. Clusters en varias partes del mundo segun accesos, centros de atencion al cliente en varios idiomas, analisis de la competencia, reaccion de los usuarios en los diferentes paises, comunicados de prensa, posibilidad de abrir oficinas fuera de San Francisco, etc….
Todo eso me lo meti bien en la cabeza y los meses que estuve aqui encerrado en casa (que lejos quedan ahora) me los pase haciendo planes para expandir CL a nivel internacional, coleccionando detalles, poniendo ideas, o haciendo modelos. Con todo eso el segundo dia de curro casi me da un vuelco al ver que mis planes simplemente no encajaban con el codigo que tenia delante, un codigo desordenado, con lineas repetidas por todas partes y (sin dar detalles porque no puedo) , sin ninguna coherencia interna, la documentacion se resume a los comentarios dentro del codigo y generalmente son paridas sin mucho sentido. Con todo eso, parece que la tarea que tengo delante es simplificar todo el codigo y hacerlo un poco a la imagen idilica que tenia en la cabeza de lo que seria un servicio de estas caracteristicas, al menos llevarlo al punto que me sea comodo currar ahi.
Me veo que me estoy liando, tengo aun cosas concretas que contar y estoy un poco matao, asi que intentare ir poniendo posts mas cortos, mas frecuentes y mas concretos.

« Previous Page
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.