Por fin

04 November 2009 Categories: blog, cosas de Asia

fin_verano.jpg

Por fin parece que el verano de 7 meses está terminando. Algunos festejamos el que, por fin, la humedad está por debajo del 60% y que ya no hace falta encender el aire acondicionado, otras (las pintorescas locales) festejan que por fin pueden empezar a ponerse bufandas y gorros de lana, aunque la temperatura sea de 20 grados.

El “romantic winter” ha llegado. Aunque, en Vallecas, a esto lo llamábamos primavera…

Read the full article 0 Comments

Yo no sé, pero…

29 October 2009 Categories: blog, cosas de Asia

Que nadie pregunte cómo ni porqué, pero el caso es que me voy a permitir extraer una cita del episodio de ayer de America’s Next Top Model.

Dice una señorita rubia…

“Yo no sé nada de Tibet, pero sé que necesita ser libre”

No sé qué es más perturbador. Si la procedencia de la cita, el hecho de que, aún conociendo la procedencia de la cita, ésta se repita en éste, el blog sin punchy tagline, o el enésimo ejemplo de cómo se puede llegar a cualquier parte con la punta de la espada, o de la sexta flota en su defecto, sin tener ni idea de lo que se está hablando.

Luego, los occidentales nos sorprendemos, y a veces nos ofendemos, de la alta opinión de nosotros que se tiene en todo el mundo que no es parte de nuestro propio ombligo.

Read the full article 0 Comments

Control de multitudes

28 October 2009 Categories: blog, cosas de Asia, fotoblog

Cuentan los viejos del lugar que hace unos años, en una nochevieja, se desató una avalancha en la zona de bares preferida por los expats que causó múltiples muertos, lo que provocó a su vez que, desde ese momento, todo evento público en el que se esperan más de cinco personas tenga que ser notificado a las autoridades para que éstas puedan implementar uno de sus despliegues preferidos: el control de multitudes.

La cosa es muy sencilla de explicar.

La Policía divide el área a la que se espera que acuda la multitud en zonas, usando vallas, de forma que deja además un pasillo despejado para sus propios movimientos y para las asistencias médicas. A partir de ahí, según va llegando gente, y según la Policía va decidiendo que es mejor no meter a nadie más en cada una de las zonas valladas, las va cerrando.

Eso tiene varias ventajas y varios inconvenientes. El mayor inconveniente es que si quieres ver algo en las primeras filas, tienes que plantarte en el lugar de autos con antelación. La antelación puede variar entre las dos horas (estándar) a las 14 en los fuegos de año nuevo.

Otro inconveniente es que, si te despistas y llegas tarde, no ves ni torta, porque te toca quedarte plantado donde Lao Tse perdió el mechero.

Las ventajas, sin embargo, sobrepasan los inconvenientes. Aquí pueden ver, por ejemplo, cómo estaba el entorno en los pasados fuegos del 1 de octubre.

pekin-Scan-091022-0015.jpg

pekin-Scan-091022-0016.jpg

pekin-Scan-091022-0011.jpg

pekin-Scan-091022-0013.jpg

Como puede verse, no parece que haya mucha gente, ¿verdad? Mentira, éramos 400.000. Sólo que, bien compartimentados y bien colocaditos, no se estaba tan apretados.

pekin-Scan-091022-0017.jpg

Read the full article 0 Comments

No name bar, Beijing

22 October 2009 Categories: blog, cosas de Asia, fotoblog

Lo de dejarte olvidados carretes sin revelar por todas partes, como uno tiene por costumbre, a veces tiene sus ventajas.

En la sesión de química recreativa de ayer salieron unas cuantas fotos de la última pasada por Pekín, este verano. Entre ellas, varias del No Name Bar, el que sin duda es mi bar favorito de Pekín.

La zona alrededor de los lagos Houhai y Qianhai está repleta de chiringuitos que en muchos casos recuerdan por su estruendo y clientela a lo mejor de Tenerife Sur. Pero también hay unos cuantos locales bastante coquetos, entre ellos el de autos, un sitio perfecto para tomarse una cervecita tranquilamente (Tsing Tao, por supuesto) viendo la vida pasar por la ventana.

Ideal después de un día de duro turismo por los hutones de Dongcheng y Xicheng.

pekin-Scan-091022-0001.jpg

pekin-Scan-091022-0004.jpg

pekin-Scan-091022-0006.jpg


Ver mapa más grande

Read the full article 1 Comment

Happy bruja

22 October 2009 Categories: blog, fotoblog

Que viene Halloween. Fíjense en lo contentos que están la bruja y su gato.

hallo.jpg

Read the full article 0 Comments

Demografía de los usuarios no oficiales de Keep Your Word

21 October 2009 Categories: bambooapps, blog, software

Hace un tiempo repasaba la distribución por países de los usuarios registrados de Keep Your Word.

Hoy vamos a fijarnos en otro tipo de usuarios, los que no han licenciado la aplicación. Pero, primero, vamos con una explicación de cómo se han realizado las estimaciones que han llevado a los resultados finales.

Keep Your Word puede sincronizar datos con un cliente para iPhone e iPod Touch, que se distribuye de forma gratuita, y que no sirve para nada sin la aplicación de escritorio. Dicho de otra forma, no tiene mucho sentido descargarse el cliente iPhone si no se tiene la aplicación de escritorio, por un lado, y por otro, si se consigue la aplicación para Mac por canales de distribución alternativos, cualquiera puede hacerse con la parte para iPhone desde la AppStore sin problemas.

En la descripción de la aplicación en la AppStore se deja claro que no sirve de nada sin su acompañamiento de escritorio. No obstante, como todos sabemos perfectamente, en internet no se lee nada. Sé, por tanto, que habrá quien se la instale simplemente porque es gratis, sin mirar si le puede servir para algo o no.

También hay que tener en cuenta que, al tener la aplicación para Mac un período de prueba de 30 días, habrá quien se instale el cliente iPhone aunque posteriormente no compre la licencia.

No obstante, eso no es un problema para realizar unas cuantas estimaciones de la forma siguiente:

  1. Calculamos el total de descargas, por países, del cliente iPhone.
  2. Multiplicamos por 10 el total de licencias por países de la aplicación para Mac (para tener más cifras significativas).
  3. Dividimos el número de descargas del cliente iPhone por el número de licencias vendidas para cada país.
  4. Normalizamos los resultados, haciendo que el valor obtenido para Alemania (donde el resultado es menor), equivalga a un valor de 10 en la Escala de Piratines (que va de 1 a 100).

El resultado final es el siguiente:

Captura de pantalla 2009-10-21 a las 10.59.51.png

He eliminado del gráfico todos los valores intermedios, por aquello de hacer sangre y fijarnos sólo en los países com mayor Piratina.

Un breve análisis de los resultados nos arroja las siguientes conclusiones:

  • La mayoría de los países están o en el rango del 80-100, o en el de 10-50, con muy pocos en el 50-80. Podría concluirse que hay sitios en los que la Piratina es alta, otros en los que la Piratina es muy baja, y muy pocos en los que no la Piratina ni es ni alta ni baja.
  • Nótese la posición de España. Sin más comentarios.
  • El valor real de la Piratina para China debería ser de infinito, no 100 (los que sepan lo que pasa cuando de divide un número por cero, y que hayan seguido la explicación lo entenderán). Pero como había que meterla en el gráfico…

Por favor, que nadie se tome esto más en serio de lo que es: un mero ejercicio numérico. Creo firmemente que la posible categorización de los usuarios de aparatos de computación en relación con la Piratina no es vertical (por países) sino trasversal, en dos grupos: los que compran software, y los que no lo compran. El que compra software revisa sus opciones, considera alternativas open source, sopesa precios y funcionalidades, o simplemente compra lo que le parece cool, y el que no compra, se niega a comprar, en ocasiones justificando su negativa en argumentos épicos, y acude siempre a las mismas fuentes cuando una aplicación llama su atención.

Eso es un hecho inevitable, que hay que tomarse como la muerte, los impuestos o Gran Hermano: como algo que sabemos que está ahí, que antes o después va a llegar, pero contra lo que no merece la pena hacer nada, porque no hay nada que se pueda hacer.

Mi opinión respecto a este tema no ha cambiado. Prefiero dedicar mi tiempo (o dicho de otra forma, invertir mi dinero) en amasar la aplicación que en intentar que nadie se la lleve del horno.

Pero eso no quita para que, de vez en cuando, también sea divertido jugar con los números.

Read the full article 0 Comments

Snoblind

20 October 2009 Categories: blog, cosas de Asia, música

Por alguna razón desconocida, aunque muy celebrada, no toda la música local es canto-pop.

Por favor, abran las orejas, los ojos, y todo lo que quieran abrir, y denle un repaso a Snoblind (aquí el canal en YouTube), los héroes de la electrónica local.

Porque no toda la música asiática es así.

Read the full article 0 Comments

Los placeres de ser programador

17 October 2009 Categories: bambooapps, blog, software

Ser programador es una inagotable fuente de alegrías, más cuando eres una orquesta de un único hombre. Cuando no falla tu código, falla el servidor, cuando no es la pasarela de pago, si no es que se te ha caído el servidor de correo y no se envían los números de serie.

Eso sin olvidar que a veces las actualizaciones del sistema cambian el comportamiento de algunas APIs, obviamente sin documentarlo, que a veces, sin saber por qué, lo que acabas de compilar sin errores hace dos minutos decide no compilar hasta dentro de un par de horas, también si saber por qué… en fin, que el asunto es una fuente inagotable de alegrías.

Un ejemplo de estas tonterías que pasan a veces, es el siguiente que paso a narrar.

Ayer publiqué Quiet Read, una aplicación de esas a las que casi puedes mandar a la compra de lo bien hechas que están. Pero a lo que iba: se supone que se deben arrastrar links desde el navegador al icono de la aplicación en la menu bar. En ese momento, la aplicación intenta adivinar si lo que se está arrastrando sobre ella es un link o no, para aceptar o rechazar el drop.

El asunto no tiene mucha complicación: en el momento en el que se recibe la referencia a un pasteboard se extrae el primero de sus contenidos:

NSPasteboardItem *item = [ [ pb pasteboardItems ] objectAtIndex: 0 ];

Cuando el link viene de Safari, que es mi navegador por defecto, y por tanto, el único en el que probé la aplicación (mea culpa, lo sé, hay que probar en todas las configuraciones posibles), si se inspecciona el contenido de ese item:

NSLog( @"types %@", [ item types ] );

Se obtiene lo siguiente:

types (
    "dyn.ah62d4rv4gu8yc6durvwwa3xmrvw1gkdusm1044pxqyuha2pxsvw0e55bsmwca7d3sbwu",
    "dyn.ah62d4rv4gu8ye55trr00c6xpkvy0g7dmr71gc6x3mvy1g7cuqm10c6xenv61a3k",
    "dyn.ah62d4rv4gu8ye55trr00c6xpnr4gc7dmsr4gw25xnbbg82pwqvnhw6df",
    "dyn.ah62d4rv4gu8zs3pcnzme2641rf4guzdmsv0gn64uqm10c6xenv61a3k",
    "public.url",
    "dyn.ah62d4rv4gu8yc6durvwwaznwmuuha2pxsvw0e55bsmwca7d3sbwu",
    "public.utf8-plain-text",
    "public.url-name",
    "com.apple.pasteboard.promised-file-content-type",
    "com.apple.pasteboard.promised-file-url",
    "dyn.ah62d4rv4gu8y6y4usm1044pxqzb085xyqz1hk64uqm10c6xenv61a3k"
)

Premio para los ingenieros de Apple. Lo que se arrastra desde Safari empaqueta un par de propiedades bastante interesantes: la url y el título de la página.

De ahí, es fácil extraer esos valores:

title = [[NSString alloc] initWithData: [ item dataForType: @"public.url-name" ] encoding:NSUTF8StringEncoding];
url = [[NSString alloc] initWithData: [ item dataForType: @"public.url" ] encoding:NSUTF8StringEncoding];

Dicho de otra forma: lo que se pasa desde Safari está bien empaquetado, de forma lógica, autodescriptiva, ordenada. Lo que nos gusta a los aprietateclas.

Pero, una vez lanzada la aplicación llega el primer email diciendo “oye, ¿esto funciona en Firefox?” Y claro, aquí viene lo bueno.

Porque ¿qué es lo que expone Firefox al arrastrar un link? Pues nada de nada:

types (
    "public.utf8-plain-text",
    "dyn.ah62d4rv4gu8y4554rf0g22n1rf0gk25bsmwa"
)

Simplemente, lo mismo que si se estuviera arrastrando un texto normal y corriente. Estupendo, el código que comprobaba que lo que se estuviera arrastrando fuera una url estaba basado en la existencia de las propiedades public.url y public.url-name, y rechazaba lo que sólo fuera public.utf8-plain-text. O, dicho de otra forma, bofetón en el lado que más duele.

¿La moraleja? La que ya deberíamos sabernos todos de siempre: que hay que probar en todas las configuraciones, y que cosas como los test units tienen una validez limitada, porque siempre hay que tener en cuenta que trabajamos sobre APIs desarrolladas por otros que pueden ser tan paquetes como nosotros.

Read the full article 0 Comments

Una de inflacciones y frescuras

16 October 2009 Categories: blog, cosas de Asia, fotoblog

inflaccion.jpg

Me perdonen la (falta de) calidad en la foto, pero es que esto había que documentarlo.

Vale que la cambio en euros, la diferencia de precio sea de unos 30 céntimos, pero en porcentaje, la subida de ayer (8,50 HKD) a hoy (12,90) es importante.

¿El motivo? Las peras (que eso es lo que son) de ayer eran del día anterior. Las de hoy son del día. Y aquí, la frescura, se paga. Aunque ea un día de diferencia.

Read the full article 0 Comments

Las cosas de palacio, desde luego, van despacio

16 October 2009 Categories: bambooapps, blog, software

Por fin, Apple permite que las aplicaciones para iPhone gratuitas implementen la api “In App Purchase”.

Para los que no sepan si lo anterior es motivo de júbilo, o una razón para correr a buscar refugio, vamos a explicar qué significa.

El método de distribución habitual para el software de escritorio en Mac es el de “trialware”. Tú te bajas una aplicación, normalmente sin limitación en las funcionalidades, pero que sólo puedes utilizar sin pagar la licencia durante un tiempo limitado. Es decir, la pruebas, si te gusta, te conviene, te resuelve un problema, o te sobra el dinero, la compras, y si ninguna de las premisas anteriores es cierta, la tiras a la papelera y punto.

Bueno, pues eso no se puede hacer en el iPhone. Las compras son a ciegas, sin poder probar las aplicaciones antes, y se deben hacer guiándose solamente de un par de capturas de pantalla y de lo que el desarrollador diga que la aplicación hace.

Los aprietateclas hemos ido soslayando ese problema de dos formas distintas: una, bajando precios, para hacer menos dolorosa la decisión de compra (no es lo mismo equivocarse al gastar 10 euros que al gastar uno) y dos, lanzando versiones “lite”, muy limitadas en funcionalidad y gratuitas, que se supone que podrían arrastrar hacia ventas de la versión completa.

En ambos casos, soluciones que no son tales.

Obviamente, tal y como están las cosas en la App Store a día de ayer, es prácticamente imposible mantener un “negocio” mínimamente rentable desarrollando para iPhone. Y eso, siendo un ejército de una persona, si se quiere montar una factoría de desarrollo como dios manda, la cosa pasa ya a la categoría de milagro. Como ejemplo, el dueño de una empresa de desarrollo de microjuegos de Hong Kong me decía un día que necesitan un juego en el top-ten cada tres meses para conseguir mantenerse a flote.

Es evidente que, a un dólar por copia, no se puede llegar a ninguna parte. Es evidente también que la única forma de poder dedicar tiempo y esfuerzo al desarrollo para iPhone es hacer que los precios suban, y bastante. Para lo cual, es evidente también que hay que desarrollar aplicaciones “con chicha”, que vayan más allá de dos listados de datos, y que sean de una complejidad equivalente a las de escritorio.

Y la verdad, el poder ofrecerlas como “trialware” debería ayudar. Aún no veo muy claro si merece la pena meterse en un desarrollo de dos meses para iPhone, pero empiezo a pensar que tal vez sea el momento de desempolvar un par de ideas que estaban guardadas en un cajón a la espera de tiempos mejores.

Read the full article 0 Comments