2008-07-30

Situación actual de los traductores automáticos

Desde hace casi 9 años tengo en mente un proyecto, "El traductor universal". Que como ya he mencionado alguna vez traducirá de cualquier idioma a cualquier otro, mediante el método de aprender de las traducciones del usuario y repetirlas como haría yo mismo.

Hoy leyendo How Hard Could It Be?: Good System, Bad System de Joel Spolsky he decidido tomar el pulso a los traductores online.

El texto original seleccionado para la prueba lo he tomado de dicho artículo:
This premature order taking did not appear to improve the store's productivity. The cashiers still had to take the same number of orders, wait for the customers to fiddle with their purses for the correct change, and so forth.
Y las traducciónes son las siguientes:

Google
Este fin prematuro tomando no parece mejorar la productividad de la tienda. Los cajeros todavía tenía que tener el mismo número de órdenes, esperar los clientes para violín con sus monederos para el correcto cambio, y así sucesivamente.
Yahoo
El este tomar prematuro de la orden no aparecía mejorar el store' productividad de s. Los cajeros todavía tuvieron que tomar el mismo número de órdenes, espera para los clientes al violín con sus monederos para el cambio correcto, y así sucesivamente.
imTranslator
Este toma de orden prematura no pareció mejorar la productividad de la tienda. Los cajeros todavía tuvieron que tomar el mismo número de órdenes, esperar a los clientes a tocar el violín con sus monederos para el cambio correcto, etcétera.
elmundo.es
Esta toma de orden(pedido) prematura no apareció mejorar la productividad de la tienda. Los cajeros todavía tuvieron que tomar el mismo número de órdenes, esperar los clientes para tocar el violín con sus monederos para el cambio correcto, etcétera, etcétera.
La mía
Este pedido anticipado no parecía mejorar la productividad de la tienda. Las cajeras aún tenían que tomar el mismo número de pedidos, esperar que los clientes jugueteen con sus monederos a por el cambio exacto, y así sucesivamente.
La verdad es que hasta a mí me ha costado traducirlo, pero no cabe duda de que la mía podría pasar por escrita directamente en español (aunque no por mí) y el resto cantan a la legua que son traducciones automáticas.

En fin aun estoy a tiempo de hacer el traductor.

2008-07-27

Google Code Jam 08 (II)

Cómo ya comenté aquí he participado en Google Code Jam 08 y pasé la ronda clasificatoria.

La siguiente ronda "Online Round 1" se compone de 3 subrondas (A, B y C) de la que te asignan 2 (B y C) para poder participar. En la Round 1B (quedé el 1436) y en la Round 1C intenté una aproximación diferente ir a por el que más puntua, sin llegar a nada.

En resumen adolezco siempre del mismo problema, implemento una solución "intratable" del problema y estoy oxidado (o incluso anquilosado) en la resolución de problemas algorítmicos.

Solución, aprender a analizar la complejidad de los algoritmos (ya he empezado) y practicar con los problemas de este año.

En fin hasta el Google Code Jam 09.

2008-07-26

Jonathan Coulton - Code Monkey Unplugged

Desde que apareció la serie "The I.T. Crowd" puse la música de la intro como tono de llamada de mi movil, pero lo cambié porque en la oficina ya no distinguía el sonido de mi movil de entre los demas. Así que actualmente tengo "Code Monkey" y éste es un vídeo de la versión unplugged.

2008-07-25

https en Gmail

Desde hoy, ya podemos usar https con Gmail, no sólo para la identificación, sino también de forma permanente. Existen dos opciones:

  • Añadir la "s" al http de la url en cualquier momento de la sesión.

  • Cambiar las opciones de la cuenta (al menos en la versión en inglés)


La noticia la publica la gente de gmail en su blog gmailblog

Advierten que el rendimiento de la conexión será menor, pero la seguridad bien vale un segundo más de espera.

2008-07-24

Video Editing Magic with ffmpeg

I've just found this video at Linux Journal



It's a good point to start with ffmpeg

2008-07-22

Lego Starwars

Mi sobrino Isaac de 7 años es un gran fan de "Lego StarWars", tanto del videojuego como de los muñecos reales. Y tal como le prometí, y él he me ha reclamado, le he comprado un "lego starwar con el Darth Vader" por sacar buenas notas. En realidad dado que en España sólo he podido encontrar un "Crucero Imperial" que trajese a Darth Vader negocié con él traer algo más pequeño desde el extranjero, ya que la abuela (mi madre) no quiere más chismes. En fin todo ha quedado en Darth Vader (con capa y espada roja) y Luke Skywalker (con mano negra y espada verde), lo cual limitó bastante la busqueda en ebay. Por fin ha llegado desde Canadá y este es el resultado.



Ha salido caro dada la poca mercancía, pero ha merecido la pena ya que Isaac está muy contento. A mi me ha tocado jugar con Luke, porque él siempre se pide a Darth Vader, y es que me parece que ha sido absorbido por el reverso tenebroso, le gusta Windows XP, aunque creo que es sólo por llevarme la contraria, porque siempre quiere jugar en los juegos de mi GNU/Linux :-)









2008-07-21

Ejemplo de coordinación

Esto es un ejemplo de coordinación y lo demás son tonterias.

2008-07-19

Google Code Jam 08 (I)

Esta semana he participado en la ronda de clasificación del Google Code Jam 08, y he quedado el 3830 con 50 puntos, así que paso a la siguiente ronda.

puesto 3830

En el primer problema "A. Saving the Universe" me confié e hice un programa de búsqueda en profundidad de todas las posibilidades, pero a pesar de ser correcto (y repetidas optimizaciones) no cumplía con el tiempo máximo de 4 minutos, yo diría procesaba en horas o días lo que se esperaba fuese casi instantáneo, así que tuve que inventarme otro algoritmo más "humano" para calcularlo ya sí en menos de un segundo.

El Segundo problema ya con la lección aprendida fue totalmente "humano" (hice a mano el ejemplo) y luego implementé esos pasos.

El tercero lo entiendo pero no fui capaz de implementarlo correctamente en 39 minutos que quedaban para el final, de todas formas creo que sigo sin ser capaz ¿Tú sí? :-)

Ahora a entrenarme para la primera ronda (Online Round 1).

2008-07-09

KILLER TUX

Lo mejor de este video está justo al final.

2008-07-06

¿Por qué es divertido programar?

Navegando por la red encontré aquí el siguiente fragmento traducido del famoso libro "The Mythical Man-Month" (por cierto, aún no he tenido tiempo de leerlo) y resume en esencia porqué me resulta divertido programar. Sí, programar puede ser divertido, puede lograrse un estado de euforia, que incluso crea adicción. Cuantas veces habré hecho la siguiente broma:

Pregunta: ¿Que has hecho este fin de semana?
Respuesta: Meterme C++ en vena (mientras golpeo las venas del brazo con los dedos índice y corazón).

Casi nadie suele entender la broma y los más dicen que tengo que descansar. Pero es que programar en el trabajo no suele ser tan divertido, yo diría que a veces es aburrido y tedioso.

Otras veces me preguntan ¿Como puede gustarte programar? Y nunca he sabido explicarlo. Ahora ya tengo algo que responder (si logro memorizarlo), creo que me quedare con la idea de "niños jugando con barro" y "construir castillos en el aire, con la imaginación".

¿Por qué es divertido programar?. ¿Qué beneficios esperan obtener los programadores?

Primero, por el placer de construir cosas. Al construir cosas, los adultos experimentan el mismo placer que los niños al jugar con el barro, especialmente si construyen cosas que ellos mismos han diseñado.

Segundo, por el placer de hacer cosas que puedan resultar útiles a otras personas. En realidad lo que persiguen es que otros usen su trabajo y lo encuentren útil.

Tercero, por la fascinación de ver trabajar sistemas complejos, que asemejan rompecabezas en los que se integran diferentes piezas y partes móviles, que interactúan entre sí para llevar a cabo las funciones que inicialmente se han previsto.

Cuarto, por el placer de estar siempre aprendiendo al trabajar cada vez en proyectos de características diferentes.

Y por último, por el placer de construir con un material tan maleable y tan etéreo. El trabajo del programador, como el del poeta, se construye de forma sutil desde la materia pura de su pensamiento. Puede construir castillos en el aire, sólo con el esfuerzo de su imaginación. Pocos medios de creación son tan flexibles, tan limpios y fáciles de remodelar, para desarrollar complejas estructuras conceptuales.

Frederick P. Brooks. The Mythical Man-Month