De “hackeos” y otras cosas

Muchos de ustedes se dieron cuenta que a principios de esta semana el blog fue bloqueado por Google debido a que se detectó malware en él. Aunque no fue la primera vez que me ponen anuncios o redirecciones a sitios que venden viagra o pornografía, sí fue la primera vez que sufrí el bloqueo de la gran G.

La situación parece haber vuelto a la normalidad, pero me lo tomo con pincitas, porque ya antes habíamos (incluyo al panda, quien me ha hecho grandes favores en este blog y hosting en general) hecho limpieza y en teoría todo estaba bien, y zas… nos cayó por donde menos esperábamos.

Razones puede haber muchas, pero las principales parece que ya han sido solucionadas: borrar los lugares que no uso o no actualizo tan seguido, así como sus bases de datos. En concreto:

  • Desaparece el blog de tecnología. No porque quiera, sino porque no tengo tiempo de estarle dando mantenimiento. Todos los posts de allá ya habían sido migrados aquí desde hace varios meses.
  • Desaparece el sitio de las fotos. Quizá muchos no lo conocieron porque nunca hubo una liga directa en el blog. Era Gallery 3, pero la última vez que le di mantenimiento fue en la versión 3.02 RC. También se va por falta de tiempo.
  • Borré varios sitios y bases de datos que alguna vez ofrecí a gente o instituciones que lo necesitaban pero que a fin de cuentas nunca usaron. Ni modo, uno les da la oportunidad, pero a final de cuentas depende de ellos .

Sinceramente, para mí no hay nada mejor que tener el control total de lo que uno usa. Por eso la instalación de WordPress de este blog se hizo desde ceros y la mantengo a mano en vez de usar la versión que se ofrece en el hosting. Sin embargo, la falta de tiempo es una situación que me afecta mucho en estos momentos, por lo que, para mi desgracia, no puedo mantener tantos sitios al mismo tiempo. Las fotos es lo que quizá más me duele, pero no hay de otra por el momento. Las subiré ya sea a Picassa o a Flickr (aunque me inclino más por el primero) en una oportunidad que tenga.

Por lo demás, parece que todo está en orden. Quisiera darle una manota de gato al blog (me prometieron un skin personalizado para el blog hace como 2 años), pero sinceramente con todo lo que traigo entre manos (una gran parte es el esclavajo) todo tendrá que esperar.

Ahí les encargo si ven algo raro en el blog, o si les vuelven a salir mensajes o anuncios de productos milagrosos o redirecciones a sitios extraños.

Errores

Como ya se habrán dado cuenta, he andado muy desconectado del blog, y para el caso también de internet. Han sido semanas pesadas en el trabajo, pero la anterior se caracterizó por una carga de trabajo moderada con una de presión bastante más grande.

Para no hacer el cuento largo, me pidieron hacer una prueba de estrés en un servidor. Pensé que la prueba en sí sería fácil (con algo como ab), pero leyendo y siguiendo el consejo del buen panda, opté por usar siege, herramienta que también es mencionada en el libro de Tomcat de O’Reilly. Leí, según yo me preparé bien, revisé varias veces las condiciones de la prueba, y en el día y la hora indicada la realicé (en realidad fueron varias).

Pensé que todo había salido bien, así que procedí a hacer el respectivo reporte… y fue donde realmente comenzó todo. Dejemos al lado que el formato del reporte no fue el que esperaban: los resultados no cuadraban. Y entre que yo soy un noob para esto de las pruebas y entre que no confiaban en que hubiera realizado la prueba correctamente, fueron 3 días para olvidar, pues terminé saliendo en promedio después de las 12 de la noche.

Entrando en detalles más técnicos, siege pide un archivo con una lista de URL a probar. El problema, y mi error, fue haber puesto URL de más, por haber entendido que se probarían N tipos de páginas y no N páginas exactamente. Pero por lo demás, las características de la prueba no estaban mal, y la forma de ejecutar la prueba tampoco. ¿Entonces?

Lo que me alegaban era que en la prueba se emulaban N número de usuarios que accederían al servidor al mismo tiempo, pero los resultados reportaban que no era así, y el número de veces que se visitaban los URL era realmente muy poco para el tiempo que duró la prueba. El panda me auxilió muchísimo con la interpretación de los resultados, y efectivamente, salió a relucir que una de las razones era por haber puesto URL de más. Error 100% mío, y en una situación laboral como la que estoy viviendo ahora, era de esperarse que me fueran a reclamar, con justa razón. Sin embargo, aun con reconocer mi error, los resultados marcaban claramente que el servidor no aguantaba mucho, pero me seguían insistiendo que la forma de hacer la prueba había estado mal, independientemente del número de páginas que había seleccionado para probar.

Después de la tormenta, se corrió una prueba emergente para comprobar que realmente había hecho la prueba original correctamente. Los resultados no mentían: se probaron menos páginas (un número cercano a las que originalmente se tenía planeado), pero se mostraba también la tendencia del servidor a no aguantar al número de usuarios indicados al mismo tiempo.

¿Qué aprendí de todo esto?

  1. Que el mundo del benchmark es mucho, pero mucho más complicado de lo que yo creía.
  2. Que aunque sé que soy humano y que obviamente me puedo equivocar, un error bajo esta situación puede costarme muy caro.
  3. Que estoy bajo mucha más presión que la que originalmente  pensaba.
  4. Que no quiero estar por siempre en una situación laboral como la actual.

Ahondando un poco en el punto 4, no tiene mucho que ver lo pesado del trabajo, o ni siquiera que no paguen las horas extra; tiene mucho más peso para mí el tiempo que le puedo dedicar a los demás, y por supuesto, a mí mismo.

Añoraba el fin de semana. Lástima que ya terminó. Tengo en puerta decisiones muy grandes, y relativamente poco tiempo para hacerlas. Como hace algunos años, necesito que los días tengan al menos 48 horas para poder hacer todo lo que debo. Mientras tanto, aquí andamos, tratando de no sucumbir ante la situación.

Agradezco muchísimo al panda por su invaluable ayuda y su tiempo en estos días, así como las palabras de aliento de varios de los mexicanos en Japón (ellos saben quienes son).

Transición a Android

Después de haber usado teléfonos celulares dirigidos al mercado japonés, hace un par de semanas me decidí a comprar un smartphone de “la nueva generación”. Y como ustedes, quienes me hacen el favor de leerme, seguramente están imaginando, mi opción fue un teléfono con Android.

Antes que nada, he de hacer mención que no es mi primer smartphone. Hace algunos años usé uno estilo “blackberry”, el cual tenía el infame windows mobile 6, pero lo cambié en la primera oportunidad que tuve debido a que en ese entonces el mercado japonés todavía no estaba preparado para esa clase de teléfonos.

Primero fue muy difícil decidirme por un modelo en particular. Tener Android sólo significa una cosa para mí: rootearlo, es decir, alterarlo para tener acceso como súper usuario, lo que significa tener el control absoluto del teléfono. Si hubiera escogido un iPhone también le habría hecho jailbreak. El caso es que había que escoger un teléfono que se pudiera rootear, pero los de fabricantes japoneses se han destacado por no poder hacerlo. Y por otro lado, con un smartphone perdería todas las funciones que han caracterizado a los teléfonos celulares nipones desde hace muchos años: dinero electrónico, televisión, acceso a la red WAP (que es muy usada en este país). Por fortuna, la nueva generación de smartphones con Android contiene también esas funciones, pero siendo de fabricantes japoneses significa no poder rootearlo. Tenía que decidir entre el root o la conveniencia de las funciones arriba mencionadas.

Durante unos días pensé cuál podría ser mi mejor opción, y me decidí al principio por un Aquos Phone de Softbank, que viene con Gingerbread (Android 2.3) y las funciones de los teléfonos japoneses. Sacrificaría el root por ellas.

El hecho de que este teléfono tome fotos en 3D sinceramente me daba lo mismo.

Estuve indeciso, pero aun así fui a una tienda de Softbank a hacer cambio de teléfono, y me dijeron que era mejor que esperara hasta el 1 de julio, ya que el pago del teléfono anterior terminaba en junio y así no sufriría ningún cargo extra por “deshacerme” del teléfono antes de tiempo (por sus contratos raros que te obligan a usar un equipo por mínimo 2 años). Yo iba medio convencido por el teléfono mostrado arriba, pero tener que esperar varios días me dio tiempo para estudiar otras posibilidades.

Consultando en Twitter, Felipe me recomendó un teléfono: el HTC Desire HD. Erick hizo hincapié en lo que ya venía pensando: ¿sacrificaría el root por funciones japonesas? El punto era que yo sí usaba esas funciones, en especial el dinero electrónico y la red WAP, por lo que sí me dolería dejarlas… pero ustedes saben que puede más el lado geek, y después de ver lo que ofrecía el teléfono recomendado, aunado con que los HTC son los teléfonos que tienen de las mejores redes de desarrolladores (y por ende, altas probabilidades de poder ser rooteados), me convencieron y me di a la tarea de buscarlo. Softbank lo maneja como el modelo 001 HT, y al revisar el sitio web, me enteré de que salió a la venta en Japón en diciembre del año pasado. Siendo un teléfono ya no tan nuevo, creí que sería fácil encontrarlo…

Continue reading “Transición a Android”

Plugin de Veetle 64 bits

Muy de vez en cuando quiero ver un video o transmisión en vivo que necesita el plugin de veetle, pero el download que viene por default en la página de descargas es para arquitecturas de 32 bits. Intenté instalarlo con ndiswrapper, pero aun así no funcionaba.

Buscando en internet, me encontré que veetle también tiene plugin para arquitecturas de 64 bits, pero no está fácil encontrarlo. Por acá la liga:

http://veetle.com/download.php/veetle-0.9.17plus-linux-install.sh

Instálenlo como usuario normal. Lo que hace es copiar los plugins necesarios al directorio ~/.mozilla/plugins

Listo. VeetleTV funcionando en 64 bits. Rara vez lo uso, pero nunca está de más tenerlo.

Cabe mencionar que vlc también puede reproducir y grabar streams de Veetle. Hay muchos tutoriales en internet, por ejemplo:

http://netimports.blogspot.com/2010/10/how-to-record-watch-veetle-broadcasts.html

Queda para el registro 🙂

SVN in-place import

Directamente del FAQ de SVN. Yo me iba siempre por el camino “difícil” (copiar, importar, rm, checkout), pero una búsqueda en Google me llevó a la respuesta:

svn mkdir file:///root/svn-repository/etc \
         -m "Make a directory in the repository to correspond to /etc"
cd /etc
svn checkout file:///root/svn-repository/etc .
svn add apache samba alsa X11
svn commit -m "Initial version of my config files"

Nada del otro mundo, lo sé, pero hace la tarea un poco más fácil.

Lo que me ha mantenido ocupado

En las últimas semanas, he dedicado la mayor parte de mi tiempo libre a un pequeño proyecto que tiene que ver con las preguntas que me hacen en formspring.

Todavía no está al 100% terminado. Me ha tomado tiempo porque comencé a hacerlo desde cero, en un lenguaje en el que no estaba acostumbrado, y formspring no proporciona en ningún formato las preguntas ya respondidas. Aunque he estado comentando en twitter un poco sobre los problemas y avances que he tenido, los detalles vendrán después, ya que estabilice el código aunque sea un poco

La explicación técnica del proyecto estará en el otro blog tan pronto lo suba al servidor.

También tengo pendientes un par de posts aquí, que espero poder escribir en la semana (aunque sea uno). La quinta parte de los años maravillosos está en el tintero, pero le falta todavía para estar terminada. ¿Que si será la última? Ya se enterarán.

Un poco de paciencia es lo que les pido, por favor 🙂

Lo que puedo adelantar al respecto del proyecto (click para ver de tamaño original):

searchengine image 01Search Engine image 02

Modernización telefónica

En julio de 2008 escribí sobre el iPhone en Japón. ¡Vaya que han cambiado las cosas en 2 años!

iphone4-white

El éxito del iPhone en el resto del mundo tardó en surtir efecto en Japón, y aunque ese éxito todavía no es “total”, ahora sí podemos decir que las tendencias han ido cambiando y que ahora el mercado de los smartphone en el imperio del sol naciente ha aumentado considerablemente.

No es un secreto que Japón es un país cerrado en lo que a telefonía se refiere. Los teléfonos que aquí se venden tienen muchas funciones sorprendentes, pero que solamente se pueden usar en Japón. Normalmente esto no importaría, ya que los japoneses no tienen necesidad de salir al extranjero para obtener algo, y las funciones de los teléfonos facilitan en gran medida la vida diaria de los nipones; pero aun con todo eso, el hecho de que solamente se puedan usar en su totalidad dentro de Japón hace que se consideren retrasados en comparación con otros países. A este síndrome le pusieron el nombre de Galápagos, queriendo dar a enteder que, por sí mismos, los teléfonos son extramadamente avanzados, pero al mismo tiempo están totalmente aislados del resto del mundo.

Continue reading “Modernización telefónica”

Problemas recientes en el blog

Hace unas semanas, alguien en el formspring me preguntaba si mi blog ahora vendía Valium. En ese entonces no entendí lo que me quería decir, y revisando el blog no había nada de malo. Pero ayer un amigo me avisó por Twitter que posiblemente el blog había sido hackeado. Ni tardo ni perezoso entré y tampoco vi problema alguno; no obstante, esa misma persona hizo hincapié en que el blog no era el problema, sino los resultados que los motores de búsqueda (como Google) arrojaban al encontrar mi blog. Al hacer una búsqueda de “Un mexicano en Japón” en Google, me encontré con que TODAS las referencias a este sitio tenían encabezados y títulos sobre medicamentos como Cialis, Valium, etc., y por fin entendí lo que en un principio me habían avisado.

Hasta donde puedo recordar, el problema debe haber sido reciente, porque hace poco recuerdo haber buscado el sitio en Google para ver qué resultados mostraba y en ese entonces no encontré ninguna anomalía, pero no sé decir a ciencia cierta desde cuándo está así la situación.

Ya he leído sobre el problema y he aplicado las soluciones ofrecidas, aunque encontrar los archivos modificados ha sido más difícil de lo que pensé. No obstante, creo que también hay que buscar en la base de datos, y en las tablas que mencionan que puede estar el problema no he encontrado nada fuera de lo común, así que creo que repararlo todo me tomará algo de tiempo, y quizá sea necesario hacer limpieza general y reinstalar todo, lo cual no es tan complicado, pero sí toma tiempo.

De momento, una gran disculpa por lo sucedido; estoy trabajando para poder regresar todo a la normalidad, pero no sé cuánto me vaya a tomar. Para quienes siguen el blog desde RSS o llegan directamente a la página, no hay problema, no verán nada extraño, pero si Google marca este sitio como “peligroso” no crean que es porque algo les puede pasar a sus computadoras ni nada parecido, solo que a Google no le gustan los sitios que promueven el spam.

Para quienes estén más interesados en lo del hack, aquí una liga que muestra más información al respecto:

http://techcocktail.com/wordpress-hacked-virus-cloaks-search-engines-2010-04

Sigo revisando.

Popurrí de fotos (sin ninguna relación)

Para no hacerles larga la historia: otra tanda de trabajo pesada… Un malentendido me hizo perder un día completo. En fin.

Realmente hoy salí de la oficina con la idea de escribir una par de entradas que tengo pendientes desde hace rato, pero tuve algunos contratiempos extralaborales, y aunados con el quehacer que tenía pendiente aquí en la casa (limpiar lo básico y lavar trastes), al momento de sentarme en la computadora me dolía la cabeza, así que decidí que escribiría algo en el blog, pero no sería lo que traía en mente.

Desde hace poco más de un año mi teléfono celular es éste:

Aunque no es la quinta maravilla en cuanto a telefonía celular se refiere, sí tiene buenos specs, además de los clásicos servicios que traen, por lo general , todos los teléfonos en Japón: TV, dinero electrónico, internet ilimitado y cámara (fotográfica y de video). Es precisamente esa cámara con la que he tomado muchas fotografías que se han quedado en la MicroSD Card, y que de vez en cuando subo a Twitpic (mi twitter es @medinamanuel). He aquí algunas de ellas, con una pequeña descripción:

Continue reading “Popurrí de fotos (sin ninguna relación)”

El hack de los íconos en las categorías, mejorado

En sí, la base es la ya explicada. La diferencia es que, tratando de escribir correctamente las categorías (poniendo acentos donde hacían falta, como en “Temas tecnicos”), los nombres de las imágenes me darían problemas en el servidor, por lo que tenía que haber algo que me ayudara a relacionar el nombre de una categoría con uno más “facilito”.

Nunca me había fijado en el contenido de la clase category. En el hack original usaba $cat_name, o más correctamente,
$cat->cat_name, pero esto me limitaba en el nombre que podía ponerle a las categorías. category tiene otra propiedad llamada slug, que es justamente lo que buscaba: un nombre computer-friendly. Con ella, puedo ponerle el nombre que quiera (con acentos, en japonés, etc.) a una categoría y referirme a ella con el nombre amigable para las computadoras.

Todo lo que hay que hacer es cambiar $cat_name por $category->slug y, por supuesto, cambiar el nombre de las imágenes a usar por el del slug. Así, por ejemplo, la categoría “Temas tecnicos” se vuelve “Temas técnicos” y su imagen es “temas-tecnicos.jpg”.

Muy simple 😀