No me trata mal Google
eh! qué sorpresa … no me trata mal Google, y la verdad que le debo agradecer un gran porcentaje de visitas.

eh! qué sorpresa … no me trata mal Google, y la verdad que le debo agradecer un gran porcentaje de visitas.

Curiosa entrada en Microsiervos sobre las posibilidades de que dos personas en un mismo grupo compartan cumpleaños. Personalmente conozco un caso aún más curioso. En la empresa dónde trabajo, trabajan dos personas que nacieron el mismo día, del mismo mes, del mismo año, vivieron en la misma calle, estudiaron en el mismo colegio (lo cual es relativamente lógico), fueron al mismo instituto, y ahora como he dicho trabajan en la misma empresa. Toma esa. A ver cuantas personas hace falta “arrejuntar” para que sea probable que esto suceda.
Algunas personas, por circustancias, nunca hemos prestado a Java toda la atención que merece, aunque ha sido un lenguaje que siempre nos ha caido bien, creo que todas las personas que le dan una oportunidad, perciben de algún modo lo bien hecho que está.
Sin embargo, aunque toda su parafernalia de Look&Feel sea un excelente ejemplo de programación orientada a objetos, creo que nadie me discutirá lo excesivamente básicos que resultaban sus primeros LayoutManager. Luego JGoodies lo mejoró y luego hablé de Matisse que también ayuda a construir un UI decente.
Esta tarde he estado echando un vistazo a XUL y he tenido la sensación de que estaban dando los mismos pasos. Supongo que es lo correcto, parece óptimo para asegurarse que se ve igual entre plataformas, y es útil tener un layout que ponga una cosa junto a otra, pero … era tan igual a Java, y al mismo tiempo tan diferente a XHTML-CSS … qué sensación más curiosa.
Miro estadísticas, veo un batacazo de visitas, y pienso, ya se ha vuelto a desconfigurar… por la razón que sea, el Wordpress olvida que mi theme es “AlbinWorld” y cree que es “Default”, al final me vaciaré la carpeta default y copiaré mi theme allí … a ver si tiene huevos a seguir sacando el diseño que viene de fábrica … hombre, tardé en hacerme el ánimo de cambiarlo, pero eso no le da motivos para negarse a tener un nuevo aspecto.
Lo hice con los dedos cruzados, pensando que quizás lo considerarían oportunista y que me quitarían el enlace. Lo hice a sabiendas que no me daría PageRank porque los enlaces son “nofollow”.
Aunque solo representa un 2.5% de las visitas, me parece que bien mereció la pena, porque son visitas de 20 páginas y más de 10 minutos. Esta claro que una persona que conoce la Wikipedia, y que realmente la utiliza como fuente de información, es una persona con ganas de investigar y aprender sobre ese tema.

Es mucho decir… digamos que puedes usar carácteres no ASCII (midomiño.es) y los DNS los trasnforman en una secuencia ASCII (algo como xn--midomi-123o.com), pero no únicamnte a nivel interno, sino que el usuario aprecia -en condiciones normales- una especie de redirección, a efectos visuales, una transformación entre lo que él ha escrito y lo que queda escrito mientras navega la web.
Útil entonces para simplemente prevenir que una persona busque tu web con ñ (en el caso en que proceda) y evitar que se quede sin encontrarte … pero no muy estético.
Salvo, en Firefox, si haces lo siguiente, claro, que no puedes ir a casa de todo el mundo a decirle que lo haga, y ya sabemos que el usuario lego ni si quiera usa Firefox.
Escribes en la barra de direcciones “about:config” y buscas algo con el término “whitelist”, entonces añades un registro “botón derecho > nuevo > lógico” con los valores “network.IDN.whitelist.es” y el valor “es”.
Los que tienen I.Explorer 7 ni podrán acceder …
Algunos ejemplos simpáticos.
En estos momentos, el 10% de las visitas que llegan al blog de gramática alemana, son visitas que buscan información del proyecto rosen, un website viral de Audi para su nuevo A4, que simplemente reseñé porque durante unos segundos habla un presunto científico en alemán pausado. Lógicamente, el resto del weblog, incluso posiblemente ese post, les resulta indiferente, pero si no prestas buena atención a las estadísticas, pues te puedes llevar una falsa sensación de éxito que no corresponde.
En fin … lo que son las cosas. A partir de mañana hablaré en Alemán de Bridney Spears, y otras Celebrities (léase golfas) y voy a triunfar en visitas … es broma.
Después de estrenar hace un mes el nuevo look para el blog, llegan ahora el resto de las secciones. Y quién sabe cuando tendrán un contenido más serio, o si es serio el contenido que tienen … en fin, poco a poco.
Aunque la persona que ha dicho esta frase es una modista, creo que nos podemos sentir bastante identificados al leerla.
La técnica condiciona la creatividad.
Cuantas veces, el saber cómo hace una cosa, o el trabajo que implica realizarla, se ha optado por otra solución…
¿Qué pensarias, si veis el código de una página que, para listar 10 registros hace 11 consultas a la base de datos? Una para obtener el identificador de los registros a mostrar, y otra para cada identificador/registro.
a. Que el programador es un escéntrico
b. Que el programador no tiene ni puta idea
c. Que el programador es un genio
Os voy a explicar en qué caso la respuesta c es la correcta. Pero primero, dos pregunas más.
¿Qué pensarias, si ves el código de una página que, para listar 10 registros, hace una consulta que devuelve 42.358 registros de casi 8 Kb cada uno (casi 330 Mb)?
a. Que el programador no tiene aprecio alguno por el hardware
b. Que el programador es un descuidado
c. Que la base de datos no ofrece manera de evitarlo
La respuesta correcta es, nuevamente, la c. Porque mientras que MySQL tiene la posibilidad de solicitar el rango de registros que vas a mostrar en un listado paginado (LIMIT), esto no es completamente posible con SQL Server 2000. Pero aún se pone más interesante …
¿Que pensarias, si ves el código de una página que, despues de traerse casi 300 Mb de registros, los mete en un array en memoria?
a. Que el programador esta mosqueadisimo con el departamento de administradores de sistemas
b. Que el programador obtuvo su calificación en una tómbola
c. Que el programador esta utilizando un componente sin saber qué hace ese componente
Pues para no variar, la respuesta correcta es la c.
La explicación.
Un buscador realiza consultas sobre una tabla con más de 100.000 registros, aunque el máximo que puede recuperar (debido a un filtrado mínimo) son algo más de 42.000 registros.
Se componía una consulta tal como “SELECT * FROM v_Whatever WHERE …” que básicamente tenía dos problemas:
1. No eran necesarios todos los campos que devuelve
2. La vista realizaba internamente un “cast” de dos campos tipo “text”, que además no se usaban en el listado.
Luego se utilizaba para recuperar estos registros un componente que permite paginar el listado, y que para su propia comodidad (a la hora de saltar de un registro a otro) utilizaba la función GetRows de ADO que vuelca los registros a un array.
Después de un poco de investigación, y de inspiración divina -lo confieso-, la solución ha sido construir una consulta tal como “SELECT idRegistro FROM v_Whatever WHERE …” y después dentro de la iteración del listado, hacer una consulta tal como “SELECT * FROM v_Whatever WHERE idRegistro=…” que aún prodía mejorarse con un “WHERE idRegistro IN (…, …, …)” pero … bah! atomarporculo, así va bien.
El resultado más apreciable es una página que carga muuucho más rápido.
La moraleja.
Me considero un desarrollador bastante convencido (debe ser la edad) de la reutilización, pero recurrir al copy-paste sin cuestionarselo, y sin curiosidad, es jugársela.
Y eso que tenemos en la pared el siguiente recorte:
“Do you chew gum you find on the street?”
También he de decir, al margen del tema principal, que aunque me gusta la reutilización, también me gusta la evolución, con lo cual cuando utilizo un componente que he desarrollado, no me pregunto solo si cumple mis necesidades, sino también si puede mejorarse para la ocasión, o qué aprendí de la última vez que lo usé, con lo cual, al final, reutilización-reutilización no hago casi nunca :o) jejeje.
He hecho una web para una amiga que tiene una constructura (Procerper). Lo mas rompedor no han sido las animaciónes con jQuery, ni ha sido el gestor de contenidos, sino su ausencia.
Página maquetada en 8 o 10 horas. Cuando quiera un cambio, que me mande un mail. Si edifican una o dos fincas al año, para qué quieren herramienta de actualización. Aunque gaste 30, 45, o 60 minutos en cada cambio ¿Cuantos cambios harán falta para superar lo que hubiera costado hacerle una herramienta, una base de datos, explicarle cómo funciona, estar pendiente de hacer backups puntuales, … ? Que no, mira, que no, que a veces hace falta probar otras soluciones, hacer alguna locura, liberarse de costumbres, cuestionarse el porqué … de momento, a parte de ser todo un “puntazo retro”, está siendo una “liberación”, que quiere mas textos, pues abro el php y meto mas textos, ¿ves? así no echo de menos campos que no consideré poner en la bbdd, que en una quiere una sección más, pues pongo el link y creo el .php con los contenidos y atomarporculo …
He cogido un periodo “normal” (sin estar pagando Adwords, sin que hubieran vacaciones, …) de mitad de Noviembre del proyecto de Gramática Alemana, y con estos datos me hago una interesante pregunta:
En 3 semanas hubieron 1308 visitas, de las cuales 262 fueron reincidentes, y 99 fueron visitas directas, de estas últimas, 34 fueron reincidentes, es decir, el 13% de los reincidentes vienen escribiendo la URL (o bookmark), el 87% restante me vuelven a buscar.
La medida de páginas visitadas por cada reincidentes es de 9 … por lo tanto … ¿Tiene sentido contar cuantas páginas lleva visitadas un usuario, y a partir de 6 páginas, ofrecerle que me meta en su bookmark con un banner-animación estilo Antena 3? (algo que surge a los pocos segundos de la carga de la página y solapa una porción discreta pero resultona del texto).
¿Cuanta gente no supo buscarme de nuevo, o se despistó en otro enlace?
Parece pasado de moda eso de “pulsa aquí para meterme en tus favoritos”, o más propio de sitios con pornografía, pero … en este contexto, yo creo que estaría bien, no?
Es curioso, pero tengo un post en otro blog que:
a) es el único post en el que tratan de poner spam como comentario
b) siempre es el mismo spam
y me pregunto
a) porqué ese post?
b) porqué Askimet no se lo aprende de una vez por todas?