¡Feliz 2015!

2015postal

Se fue el año del caballo y llega el año de la oveja  (o del borrego, como me gusta decirle, jeje). Normalmente oveja se escribe 羊, pero cuando se hace referencia al año del calendario chino se usa el kanji 未. Ambos se leen (en este caso) “Hitsuji”.

Este año tiene un significado interesante para mí, ya que en abril se cumplirán 12 años desde que dejé mi tierra para venir al país del sol naciente, y el calendario chino consiste en 12 animales. Esto quiere decir que ya he cumplido un ciclo en este país. Pero aunque en mi caso es algo simbólico, en la vida de una persona significa un ciclo menos para darle la vuelta al calendario, es decir: el calendario chino (干支, “eto” en japonés) se compone de 5 ciclos de 12 animales, de ahí que cuando alguien cumple 60 años en Japón es un suceso importante, y de ahí surge el término 「還暦」 (kanreki) que literalmente quiere decir “vuelta al calendario”, “volver al calendario”. Ciertamente me faltarían 48 años para que esto fuera más “relevante”, pero al menos con mi edad actual me faltan nada más 2 ciclos para darle la vuelta completa al calendario.

En fin… Este año verán cambios en el blog; algunos ya están planeados y nada más es cuestión de que me ponga a ejecutarlos, mientras que otros están en calidad de ideas por el momento. He estado definiendo los límites de los 2 hilos de historias sobre Japón que prometí al final de los años maravillosos, y aunque no quiero revelar nada todavía (que por cierto a algunos de los lectores que me han escrito por correo ya les he dicho de qué se tratará el asunto), sí les puedo decir que no serán tan largos como los años maravillosos ni tampoco me tomará una eternidad terminar esas series.

Seguiré también con el lado técnico del blog, especialmente con temas de procesamiento de lenguaje natural que he tenido muy abandonado en estos años. ¿Programación funcional? Sip. Concluiré la serie de escritos introductorios al tema.

Intentaré también escribir un poco más seguido sobre animación y cómics japoneses.

Por lo demás, y en lo que a mi persona se refiere, seguirán viendo cómo cambio e intento adaptarme a las situaciones que se me presentan.  Ya tengo bien definido mi propósito de año nuevo, pero si les digo, seguro estoy que no lo cumpliré, así que mejor le echaré ganas para poder contarles la historia por ahí a mediados de años.

Espero poder contar con su presencia también a lo largo de este año que comienza. Sus comentarios, regaños y palabras de aliento siempre son bien recibidos.

Y para terminar con estilo japonés, y como dice la imagen de arriba:

今年も宜しくお願い致します!

El 2014 en un kanji

Se termina otro año más, y siendo fiel a la tradición en este blog, hay que resumir en un kanji lo que este periodo de tiempo significó para mí.

Para ser sincero, este año estuvo tuvo muchos eventos para olvidar, algunos de los cuales no he tocado todavía aquí, y si hago cuentas seguro que las cosas negativas salen ganando. Sin embargo, hubo una serie de eventos que hicieron que esa mayoría negativa saliera perdiendo y me hicieron recuperar la fe en muchos aspectos, incluyéndome a mí mismo.  Por tanto, los sucesos de este año los represento con el siguiente kanji:

2014Kanji

Tiene varios significados, pero los más importantes son “raro” (en el sentido de algo que no sucede con mucha frecuencia) y “desear” o “esperanza”.

Si a finales de agosto me hubieran preguntado sobre mi kanji del 2014, les habría respondido algo como 「落」(caer), 「絶」 (terminar algo a la mitad, dejar de hacer algo) o similares, pero los últimos 4 meses del año le dieron la voltereta al marcador.

Ya casi pido mi tarjeta VIP en el hospital de la región, pues este año fui más veces de la cuenta, aunque debo reconocer que algunas de ellas fueron por revisiones preventivas. Pero aun así, ya sueño ese hospital.

¿El trabajo? Hmm… es un tema que quiero discutir mucho más a fondo en otro escrito. Por lo pronto mencionaré que está estable, pero no siento que se vaya a mantener así por mucho.

Como sea, el año terminó muy bien; de hecho, mucho mejor de lo que podría haberme imaginado, y por eso hay que llegar con mucha energía al 2015.

Por cierto, el kanji de este año en Japón fue 「」 , que significa “impuesto”. A NADIE le sorprendió, puesto que aunque hubo muchas noticias que causaron revuelo en este país, lo que le afectó a todo el país fue el aumento al impuesto de consumo (lo que sería el IVA en México) de 5 a 8% en abril. No fue, ni está siendo, nada divertido, pero al menos el plan de subirlo a 10% a partir de abril del próximo año ya se pospuso… Al menos es algo.

2015 será, y sin temor a equivocarme, un año que cambiará mi vida por completo y definirá el futuro inmediato (al menos de aquí a unos 2-5 años). Y claro que aquí seguiré escribiendo mil y una cosas, esperando que a alguien le sirvan, ya sea como información o simplemente como entretenimiento al ver cómo alguien como yo se trata de abrir paso en la vida.

Quiero agradecerles a todos ustedes, los lectores, nuevos o ya veteranos, todas sus atenciones en este año que termina. Hubo comentarios de todo, incluyendo trolls; tuve la oportunidad de conocer a varios de ustedes, quienes se tomaron un tiempo durante su viaje por Japón para dedicarlo a una buena plática con su servidor; y en fin, un montón de anécdotas que han sido contadas en su momento en este espacio.

¡Nos vemos el año que entra!

Servicio de arreglo de tumbas

Hace tiempo escribí sobre las Benriya, y explicaba que prácticamente se les puede pedir cualquier cosa que no sea un delito o que tenga tintes sexuales, y también mencioné algunos ejemplos. Bueno, éste es un servicio similar, nada más que dedicado a una tarea muy específica.

tumbadairi

¿Algún familiar o ser querido ya se te adelantó en el camino? ¿Lo extrañas mucho? ¿Quisieras ir a visitar su tumba pero te encuentras tan, pero tan ocupado, que nada más nunca encuentras tiempo para eso? ¡Ya no tienes por qué preocuparte más! Con este servicio, la tumba en cuestión estará perfectamente arreglada y le darás la atención que requiere sin necesidad de estar ahí.

Según el anuncio, el servicio incluye lo siguiente:

  • Lavado con agua.
  • Cortar el césped y recoger la basura que haya alrededor.
  • Ofrenda floral.
  • Incienso.

Y como todo trabajo es profesional, te mandan fotografía de cómo quedó todo una vez que esté terminado. El costo es, como pueden ver, de 16,200 yenes (impuesto incluido), pero también ofrecen descuento si los contratas por año. ¡Y los presupuestos son gratis!

Entiendo perfectamente que el mundo de los vivos siempre está acelerado, y que muchas veces las obligaciones nos “comen” el poco tiempo libre que tenemos, lo que hace que tengamos que cancelar o posponer planes, sobre todo en una sociedad como la japonesa. No obstante, y desde mi muy particular (y 100% rebatible) punto de vista, este tipo de detalles son (o deberían ser) muy personales, y deben (deberían) ser ejecutados por personas cercanas al fallecido. Independientemente de si creen o no en el más allá, en la vida después de la vida, etc., etc., a mí me gusta pensar que la persona que se fue de este mundo estaría mucho más contenta si alguien conocido fuera e hiciera por lo menos una de las tareas que este anuncio ofrece.

Quizá haya lectores que prefieran esta clase de servicios para tener una tumba siempre (o de vez en cuando) limpia y presentable, lo cual es perfectamente válido y respetable, pero yo no concuerdo con ese punto de vista.

Diferencia de culturas. Tengo casi 12 años por acá y Japón no termina de sorprenderme.

Ibus y Ubuntu 14.04

Desde que hice el upgrade a Ubuntu 14.04 siempre tuve problemas al intentar escribir en japonés. Al entrar al sistema podía cambiar normalment el método de escritura en terminales (uso urxvt), gedit, aplicaciones que usan Java (como IntelliJ cuando programo en Scala) o similares, pero no funcionaba en Chrome.

Uso ibus con mozc, por lo que el problema desaparece al ejecutar

$ ibus-daemon -r &

pero aunque esto me permite escribir en japonés en Chrome, por alguna razón me impedía hacerlo en las aplicaciones en las que normalmente podía.

No le di mucha atención a esto hasta ayer, que necesité estar escribiendo japonés en la terminal ya que necesitaba analizar lo que Mecab me regresaba, y eso de estar copiando y pegando japonés de un lado a otro me quitaba tiempo. Si abría gnome-terminal podía escribir sin problemas en japonés, pero no soy fan de esa terminal porque la considero muy “pesada”.

Me puse a buscar razones, y lo que pude encontrar es que ibus tenía problemas con Chrome… pero al parecer ya han sido resueltos. ¿Entonces? A seguir buscando. En eso, en un foro de ArchLinux me encontré con que alguien tenía un problema similar, y ésa era la razón de lo que me sucedía. Normalmente tengo estos valores en estas variables de ambiente:

GTK_IM_MODULE=ibus
QT4_IM_MODULE=ibus
QT_IM_MODULE=ibus
XMODIFIERS=@im=ibus

La información decía que había que reiniciar ibus-daemon con la opción –xim, algo que yo no hacía. Pero, al momento de que ibus es ejecutado automáticamente al entrar al sistema originalmente corre con esa opción. Entonces, mi configuración debería estar mal. Dicho y hecho, cambié algunos valores y todo fue felicidad de nuevo:

GTK_IM_MODULE=xim
QT_IM_MODULE=xim
QT4_IM_MODULE=xim

Debo mencionar que la configuración que originalmente tenía me había servido desde Ubuntu 10.04 y nunca había tenido necesidad de cambiarla, y desde ese entonces ya usaba XMonad como manejador de ventanas. Algo debió haber cambiado en la transición a 14.04 (tenía 12.04 antes de ésa), pero al menos ya puedo escribir en japonés normalmente en todas las aplicaciones (que uso).

Nombres

Nombres. Todos tenemos al menos uno, y seguramente conocemos a alguien que tiene 3 o más (mi hermana mayor, por ejemplo).

Hay nombres bonitos, con porte, o que simplemente se oyen bien, pero también hay nombres que nos dejan sin palabras por lo raros o poco convencionales. Solamente hay que ver la lista que el estado de Sonora publicó con objeto de prohibir su registro. Algunos nombres, como el del día del santo en cuestión, todavía tienen, creo yo, fundamento; sin embargo, cuando ves nombres como el tradicional “Masiosare”, “Anivdelarev”, “Harry Potter”, “Terminator”, o peor aún “Circuncisión” (todavía no puedo creer que alguien quiera ponerle así a un niño). Y obviamente, México no es el único lugar en donde los nombres poco convencionales existen.

Japón tiene pocas restricciones en cuanto a nombres se refiere. Esto se debe a que casi cualquier combinación de kanji con casi cualquier lectura puede convertirse en un nombre. Esto da pie a que así como vemos algunos “comunes” como “Hanako”, “Hitomi” o “Sakura” (en todas las combinaciones de kanji posibles), también nos encontremos con nombres que nos hacen expresar literalmente “WTF!?”.

Algunos podrán pensar que es difícil identificar un nombre raro en japonés porque no conoce los kanji o su lectura, o incluso los posibles significados de palabras homófonas. Sin embargo, algunos de los que listo a continuación seguramente serán fáciles de reconocer. Estos nombres en japonés se conocen como “Kira Kira name” (キラキラネーム), que significa literalmente “nombres que brillan”.

Estos son algunos de los nombres que en los últimos años se han vuelto “famosos” en el país del sol naciente:

Continue reading “Nombres”

¿Alérgico?

 

pocari

Esto es Pocari Sweat. No, no es el sudor de nadie. Es una bebida deportiva famosa en Japón.
kayu

Esto es “kayu” (粥). Es nada más el clásico arroz japonés, pero después de prepararlo se pone a hervir en agua, moviéndolo ligeramente de cuando en cuando. Es típico agregarle verduras o algún tipo de “topping”, como “umeboshi“.

¿Por qué una bebida y una comida típica adornan el principio de este escrito? Porque hace un mes fue lo único que pude comer por casi una semana. Explico:

Continue reading “¿Alérgico?”

¿Sabías que…? – Parte 22

Aunque tengo ya un buen rato por este lado del charco, hasta hace relativamente poco me hicieron notar lo que aquí presento.

¿Sabías que las puertas de los baños públicos en Japón llegan hasta el piso (o muy cerca de él) y no hay apertura a los lados de cada uno?

japbaniospublicos3

Sí. Parece mentira que algo tan obvio haya pasado desapercibido, pero así es. Quizá porque nunca me preocupó, o a lo mejor porque lo tomé como algo natural, pero una vez analizando con calma y recordando los baños públicos de México y de Estados Unidos, sí es notoria la diferencia.

En la imagen de arriba se pueden observar un par de baños públicos en Japón, uno de estilo occidental y el otro del estilo retador oriental. Menciono lo de “retador” porque, mientras no te acostumbres, es todo un reto satisfacer la necesidad fisiológica en uno de esos.

japbaniospublicos2

Otro ejemplo de baños públicos en Japón. Cierto es que hay lugares donde los baños están sucios (algo que puede parecer normal, al menos en México), pero en lo que llevo por acá puedo decir que no he encontrado más de 3 en ese estado, y eso que he visitado una cantidad considerable de lugares. Pero independientemente de lo sucios o limpios que puedan estar, el hecho de las puertas y la privacidad que proveen es innegable.

baniospublicos1

Estos son los baños que se pueden encontrar en México y Estados Unidos. Justo al pensar en escribir al respecto recordé la última vez que entré a un baño en un centro comercial en Guadalajara y sí, estaba la tradicional apertura en la parte de abajo, tanto en la puerta como a los lados.

baniospublicos2

Quiero creer que esta apertura existe como medida de seguridad, algo así como facilidad para comprobar si algo fuera de lo común está pasando dentro.

japbaniospublicos1

Platicando con algunos japoneses al respecto, algunos comentan, especialmente mujeres, que la primera vez que les tocó un baño con las puertas “cortas” se sintieron muy incómodos ya que en Japón se siente mucha más privacidad.

También creo que las puertas de los baños en Japón responden a  los baños estilo oriental, ya que estos están en el piso, y con una puerta corta realmente no tendría sentido tener puerta, ya que no cubriría nada.

 

Kyoukai no Rinne (境界のRinne)- Anime en 2015

kyoukainorinne

(Imagen original en http://natalie.mu/media/comic/1411/1117/extra/news_xlarge_anime-rinne-visual.jpg)

Se acaba de anunciar que la obra más reciente de Rumiko Takahashi tendrá versión animada en la primavera de 2015, y será transmitida en el canal E-Tele (NHK)

Se tienen programados 25 capítulos, por lo que no se puede esperar una adaptación 100% fiel, ya que la obra comenzó en 2009 y aún sigue siendo publicada en el semanario Sunday.

Seguramente los fans de Rumiko Takahashi (me incluyo) estarán contentos con la noticia, pero como suele ser el caso, les recomiendo mejor el manga. Ya vimos lo que pasó con Inu Yasha, y si vemos un poco más atrás, con Ranma. 25 capítulos serán interesantes, pero no creo que le hagan justicia a la historia.

Composición de funciones en Scala

La idea principal en programación funcional es llevar a cabo el proceso mediante la aplicación de funciones sin guardar estado (sin modificar los valores originalmente proveídos). Por ello, y al igual que en álgebra, es posible crear una función compuesta, que no es nada más que la aplicación sucesiva de dos funciones. Obviamente, hay que tener cuidado en que el valor de retorno de la primera función sea del tipo del argumento que la segunda función espera.

Wikipedia muestra una imagen que ilustra claramente el concepto de composición de funciones.

Compfun

La composición de funciones se define con el signo ・, que indica que la primera función se aplica al resultado de aplicar la segunda función al parámetro recibido. Usando el ejemplo de la imagen y definiendo h = g ・f, tenemos que h(a) = @, puesto que h se define aplicando g(f(a)).

El mismo concepto se aplica en programación funcional. Supongamos que tenemos las siguientes funciones:

 def toInt(s: String) = s.toInt
 def addOne(i: Int) = i + 1
 def by4(i: Int) = i * 4

Scala tiene 2 operadores para componer funciones: compose y andThen. La diferencia es que mientras f compose g es f(g(x)), f andThen g es g(f(x)). Por tanto, si queremos definir una función que primero convierta la cadena recibida en entero y después le sume uno a ese entero, podemos hacerlo de dos formas:

  /*
    With compose:
    composed1 = addOne(toInt(x))
   */
  val composed1 = addOne _ compose toInt

  /*
    With andThen
    composed2 = addOne(toInt(x))
   */
  val composed2 = toInt _ andThen addOne

Es entonces fácil ver que estas 2 funciones compuestas (composed3 y composed4) no son lo mismo:

val composed3 = addOne _ compose by4
val composed4 = addOne _ andThen by4

Aplicando las funciones compuestas definidas:

val strFunctions = List(composed1, composed2)
val intFunctions = List(composed3, composed4)

strFunctions foreach (f => println(f("3")))
intFunctions foreach (f => println(f(4)))

Y los resultados son:

4
4
17
20

El concepto de composición de funciones es realmente muy simple, y facilita mucho la creación de nuevas funciones basadas en algunas que ya tengamos definidas.

Como nota adicional, en Haskell es mucho más fácil crear una función compuesta, ya que solo es necesario usar “.”:

import Control.Monad

main = do
 f ← liftM(composed1) $ getLine
 print f
 where composed1 = addOne . toInt
 
addOne ∷ Int → Int
addOne = (+1)

toInt ∷ String → Int
toInt x = read x ∷ Int

El “.” en Haskell funciona como el compose en Scala; además, hay diferentes formas de hacer un programa como el de arriba, pero en este caso escogí usar liftM.

Cabe mencionar que en Scala también es posible componer 2 funciones monádicas en una usando algo llamado composición Kleisli, pero hay que usar Scalaz para tener acceso a ella. Y no es necesario entender teoría de categorías para usarlas; simplemente hay que cuidar los parámetros y los tipos de datos que regresan las funciones.  Esto es tema de otro post, pero lo pongo aquí por si alguien se interesa pueda ir investigando por su cuenta.