Cadena de acontecimientos

27 January 2010 Categories: blog, software

Vamos a hacer una porra sobre cómo van a transcurrir los días de hoy y mañana, claro está, en relación con el tablet.

Para los que hayan estado debajo de una piedra en los últimos años, el tablet es una cosa de lo que todo el mundo, menos Apple, lleva hablando meses, y que todo el mundo, menos Apple, ha dicho que se va a anunciar mañana.

Bien, pues vamos con la secuencia de acontecimientos. Como es una secuencia, el lector puede suponer que se va a producir, secuencialmente, en el orden descrito.

  1. Todos los makeros andamos hoy como pollos sin cabeza. Sin comer en todo el día, tomando café por litros, sin llegarnos la camisa al cuerpo.
  2. Cadena de leaks (todos de mentira), con supuestas fotos/vídeos robados del aparatín en la factoría de Cantón.
  3. Algún que otro leak con visos de realidad.
  4. Excitación máxima minutos antes del comienzo de la Stevenote.
  5. Decepción máxima para unos, minutos después del final de la Stevenote, histeria incontrolable en otros.
  6. El más decepcionado es ése que en su vida ha tocado un Mac, pero que lleva camisetas de Panic, que se siente estafado porque el cacharrín no le va a bajar a hacer la compra, o porque sólo sale en USA, o porque no lo van a sacar a la venta hasta dentro de tres meses*.
  7. Analistas que no saben ni cambiar una bombilla, se lian la manta a la cabeza y lanzan previsiones sobre las astronómicas cifras de ventas.
  8. Los que siempre protestan, protestan porque la batería del cacharro no es reemplazable. O porque no corre Firefox. O por las dos cosas. O por que no se puede usar un stylus. O porque se va a rallar la pantalla. O porque se les ha colado una señora en la cola del súper.
  9. Algún analista, por aquello de marcar diferencias, se lanza a la piscina y predice el fracaso del aparatín. ¿No veis que no tiene batería reemplazable?
  10. Se cae twitter.
  11. Al mismo tiempo, los makeros nos hemos quedado sin adjetivos épicos, y empezamos a sentir el golpe del bajón de adrenalina.

He dicho.

*Nota: Reality bite.

Read the full article 2 Comments

La foto del día

25 January 2010 Categories: blog, cosas de Asia

secure_laptop.jpg

En un pueblo en el que la gente coge sitio en el bar (en realidad en el estarbas, que aquí lo de los bares no se estila) dejando la cartera y/o el móvil y/o el ordenador encima de la silla, antes de marcharse al servicio o a la barra a pedir, no extraña que sea necesario advertir ciertas cosas.

En la foto se puede ver los carteles que saludan a los estudiantes que entran en la biblioteca central de la Chinese University. Por si no es suficiente con el aviso (cartel de la izquierda, que recomienda proteger el ordenador de los manguis), en el cartel de la derecha se expone el artefacto que puede utilizarse a tal efecto.

Cualquier día, en la puerta del servicio de caballeros van a poner un cartel con un aparatín del pis metido en una hornacina, para que cada cual sepa qué es lo que tiene que agarrarse.

Read the full article 0 Comments

Dos punto cero. De Kagi a Fastspring.

23 January 2010 Categories: bambooapps, blog, software

Hace ya casi una semana que di a luz al niño.

El proceso de actualización en sí está siendo bastante tranquilo, al menos bastante más tranquilo de lo que me temía. Y es que, como todo programador / técnico de sistemas / persona de bien, creo firmemente que si algo no está roto, no hay necesidad de arreglarlo. O mejor aún, si algo funciona, lo mejor es ni acercarse a ello, no se vaya a enfadar.

Todo esto viene a que Keep Your Word 2 (fabuloso organizador de vocabulario y flashcards para Mac e iPhone, hagamos un poco de SEO), es una actualización de pago. Lo que tiene su importancia si tenemos en consideración los

Antecedentes

Hace ya año y medio, cuando lancé la primera versión pública de la aplicación, lo hice apoyándome en Kagi para procesar las ventas. La razón principal de usar Kagi, y no otros procesadores de cobros, fue que era lo más fácil de montar. Preparar una tienda con un producto es bastante rápido, y ellos mismos proporcionan la generación del número de serie, y el código necesario para comprobar los números de serie en la propia aplicación.

Para un primerizo en estas lides del shareware, era la solución más sencilla, que menos tiempo me quitaba de aquello en lo que realmente necesitaba invertir más tiempo: la aplicación en sí. Resumiendo, con Kagi podía tener cupones de descuento, generación de número de serie y comprobación en cliente en unas tres horas.

Sin embargo, desde el primer momento me quedó claro que el sistema tenía varios puntos débiles, el principal de todos ellos, la integración con el resto de mi web. La tienda podía llegar a integrarse visualmente con el resto de mi web, pero no sin dedicarle mucho tiempo y esfuerzo.

Al irse acercando el momento de empezar a pensar en lanzar el upgrade a la versión 2.0, se hizo evidente otro problema con Kagi: ¿cómo gestionar las actualizaciones? Lo normal es ofrecer la actualización a los que compraron una licencia para la versión 1.x a un precio reducido (en mi caso, con un 40% de descuento).

Hay que tener en cuenta que la tienda que ofrece Kagi no permite añadir ninguna lógica personalizada. El flujo está prefijado, y no es configurable: primero página de productos, después entrada de datos del comprador, terminando con página con confirmación del pedido y entrega del número de serie. No hay forma de hacer algo como esto, hacer al usuario introducir su número de serie actual (de la 1.x), comprobar su validez, y abrir una venta al precio con descuento. Tampoco era posible ofrecer la actualización gratis a los que hubieran comprado la 1.x en los últimos 90 días.

El soporte de Kagi me ofreció una solución un poco pintoresca: crear un descuento del 40%, y asignarle tantos cupones de descuento como usuarios hubiera de la 1.x, haciendo que cada uno de esos cupones fuera uno de los números de serie válidos. Así, al ofrecer el update, comunicar a los usuarios que tenían que introducir su número de serie actual como cupón de descuento para comprar el nuevo serial.

Obviamente, la solución, aunque técnicamente posible, rechina malamente: y es que nadie lee lo que sale en pantalla, y punto pelota. Así que me temía a) tener que explicar 300 veces que para comprar el serial nuevo hay que meter el viejo como cupón de descuento y b) tener que devolver el dinero a muchos que iban a hacer la compra del serial nuevo sin meter el viejo, y por tanto sin descuento.

Total, que se mire como se mire, la solución era más bien mala.

Si a eso le añadimos que Kagi no proporciona una forma de recuperar el número de serie a los usuarios que lo hayan olvidado/perdido, cada vez se iba haciendo más claro que la solución a todos los problemas tenía que pasar por…

Tienda a medida

Si necesito poder comprobar que un número de serie es válido y existe en mi base de datos antes de proceder a la venta, si quiero hacer cosas como promociones puntuales cuando saque el siguiente producto de pago, si quiero dar un formulario donde la gente se pueda recuperar el número de serie por sí misma, si quiero control total sobre lo que sale y cómo sale en mi tienda, tengo que hacerme yo la tienda. Punto.

Obviamente, la primera opción que consideré fue instalar Potion Store, pero ni tengo cuenta Website Payments Pro, ni es que sea muy leído y escribido en Rails, ni puede decirse que me guste lidiar con Paypal.

Como en el momento en el que estaba buscando la solución para la tienda me acababa de quedar colgado con un proyecto terminado pero no entregado que había desarrollado en CakePHP, y la verdad es que el framework me había hecho bastante gracia, aproveché la inercia, y me decidí a hacer una gestor muy sencillo para la nueva tienda de bambooapps.

El problema, no obstante, era el procesador de pagos. Podía hacer que fuera Paypal, pero al no poder tener cuenta Payments Pro, la única opción es lanzar al comprador fuera de mi web, hacia Paypal, y esperar que la compra se cierre correctamente, para que al volver a mi servidor, pueda generar el número de serie. Además, Paypal oscurece cada vez más la posibilidad de pagar sin tener cuenta de usuario en su servicio, lo que me hacía temer que podía perder alguna que otra venta. Y no estamos para regalar el dinero.

Y aquí es cuando llegamos a…

FastSpring

FastSpring tiene buenas reviews, y fama de ofrecer un servicio al usuario de primera. Y sobre todo, el haber visto tiendas de otros desarrolladores perfectamente integradas con el resto de sus sitios web.

La primera impresión al abrir una cuenta fue muy buena. Nada más pedir el alta, recibí un email pidiéndome unos cuantos datos básicos sobre mi producto (nombre, precio, icono…) y en unas dos horas ya tenía una tienda funcional, con la que ya podría haber empezado a vender KYWs como rosquillas.

La personalización de sus páginas es muy sencilla (básicamente una plantilla que envuelve a la de ellos), y aunque el proceso de venta en sí también es bastante rígido (presentación de producto-> confirmación de pedido -> entrega serial), el sistema permite varios grados de flexibilidad más que Kagi. Para empezar, pueden embeberse cupones de descuento y otra información en la url, lo que me permite lanzar desde mi tienda en CakePHP todo tipo de ofertas, cross-selling, upselling, etc.

Otra cosa que me ha gustado de FastSpring, y de la que no me di cuenta hasta no empezar a trastear con su sistema, es lo fácil que es integrar la tienda con un generador de números de serie en mi servidor. Al contrario que Kagi, que aunque también permite generar el serial en tu servidor, requiere de un proceso administrativo de casi una semana para dar de alta la opción, basta con introducir la url de tu generador en la administración de FastSpring, asignar user y password para securizar la comunicación, y decidir qué quieres enviar a tu servidor, y qué quieres que éste conteste al suyo.

De esa forma, yo controlo qué quiero cobrar y cómo, paso el control a FastSpring, que en un interfaz completamente integrado con el mío, gestiona el cargo a la tarjeta, pide a mi servidor el serial, y se lo entrega al usuario. Obviamente, yo también aprovecho ese momento para automatizar una serie de cosas en mi lado, como el registro del nombre, email y serial del usuario en mi base de datos, alta en mi lista de correo, o la emisión de un email con la licencia.

El sistema sigue sin ser perfecto, sigue habiendo un punto del proceso donde pierdo el control del mismo, y hay un punto en el que todo depende de que dos servidores se entiendan sin problemas, así que sigue habiendo fricciones. No obstante, los riesgos son mucho menores que las ganancias con el nuevo sistema.

Y alguno se preguntará… ¿por qué cuentas todo esto? La verdad es que no lo sé. Imagino que por enfatizar un aspecto del desarrollo de software que siempre me ha parecido el más importante: el refinamiento sucesivo, el intentar montar algo que funcione adecuadamente con el mínimo de recursos aceptables, hacerlo público, sacarlo por la puerta, y a partir de ese momento, ir mejorándolo, ir engordándolo, de forma constante, añadiendo mejoras cuando sea necesario añadirlas, y refactorizando procesos cuando sea necesario hacerlo.

O dicho de otra forma, es muy probable que si hubiera tenido que montar mi propia tienda, con mi propio generador de números de serie, integrado con una tercera parte para procesar los pagos, no hubiera sacado la 1.0 nunca.

Read the full article 2 Comments

Professional legitimate mercy killing services

21 January 2010 Categories: blog, cosas de Asia

Imagino que esto será una coña, pero lo cierto es que, conociendo la forma de ser local (lo poco que eso es posible), suena plausible.

Professional legitimate mercy killing services (enlace a un anuncio en craiglist Hong Kong)

Por si la cosa es real, y por si la Hong Kong Police no está muy ocupada bajando gatitos de árboles (perdón, luchando a brazo partido contra las tríadas) y les da por meterle mano al asunto, aquí dejo una captura de pantalla.

quetelomato.png

Visto originalmente en The Dark Side.

Read the full article 0 Comments

Los tiempos adelantan…

18 January 2010 Categories: blog, cosas de Asia, fotoblog

En el parque, mirando al mar (soñé), leyendo en el Kindle y chupeteando el wifi gratis del Gobierno.

No hace tanto, esto era una de esas cosas que se iban a poder hacer

parque.jpg
Read the full article 3 Comments

Hito histórico

18 January 2010 Categories: blog, cosas de Asia

Declaro solemnemente que acabo de apartarme para que un chino no se choque conmigo (frontalmente, recta larga, visibilidad perfecta) por última vez.

Mala cagalera me entre si no lo cumplo.

Read the full article 3 Comments

Pandereta y faralaes

14 January 2010 Categories: blog, cosas de Asia

No es la primera vez, y me temo que no será la última, que me quejo amargamente del gusto de la colonia española local por perdurar los tópicos patrios más casposos.

Pero lo de hoy bate todos los records del mundo. Vean el contenido del último email masivo de la lista de distribución del Consulado General de España en este pueblo:

flamenco.jpg

Exacto: clases de flamenco. Que digo yo, que ya puestos, ¿qué tal si el mes que viene promovemos un poco la siesta? ¿Y qué tal una feria sobre la tortilla de patata para marzo?

Luego, claro, nos quejaremos cuando la gente nos diga “From Spain? That’s nice, you spend all day long drinking beer and dancing flamenco, right?”

O no, porque a la vista está que los únicos que se quejarán serán su seguro servidor y EE.

Read the full article 0 Comments

Las fotos del 2009

02 January 2010 Categories: blog, cosas de Asia, fotoblog

El 2009 de su seguro servidor no ha sido, desde un punto de vista fotográfico, un año muy activo. No obstante, sí que hay unas cuantas fotos que me gustaría, la mayoría de ellas por motivos más sentimentales que de estricta calidad, reunir en un “mis preferidas del 2009″.

Empezamos en Hong Kong:

20090601041442_panf-scan-090524-0008

Nos vamos a Taipei:

20090416232432_aristascan-090414-0011

Pasando, claro, por el aeropuerto:

20090414232254_aristascan-090414-0004

Volvemos a Hong Kong.

20090324002820_neopan100scan-090323-0003

Ahora, un poco de Camboya:

20091213234213_cambodia-arista-1-scan-090824-0005
20090816222705_cambodia-panf-1-scan-090804-0038
20090810004023_cambodia-arista-1-scan-090808-0014
20090804055957_cambodia-panf-1-scan-090804-0034

Pekín:

20091201093150_hiking-scan-091201-0011
20090830010111_cambodia-arista-1-scan-090824-0009

Más Hong Kong:

20091108073508_foto 2

Y terminamos en Tokyo:

20091230021243_dsc_6644

Veremos qué da de sí el 2010…

Read the full article 3 Comments

La foto del día

29 December 2009 Categories: blog, cosas de Asia, fotoblog

tokio_IMG_4757

Sin más comentarios. Bueno, uno sí. Foto hecha en Akihabara.

Read the full article 0 Comments

Hazlo, pero hazlo bien

23 December 2009 Categories: blog, cosas de Asia, fotoblog

Cartel de la campaña, que de vez en cuando se relanza, para promover el uso responsable de internet.

foto

La cosa no va de descargas, sino más bien de educar a los púberes, haciéndoles ver la necesidad de a) contrastar la información que obtienen de internet, b) llevar un “estilo de vida sano” aunque sea en el mundo virtual, c) enseñar a los mismos púberes a desconfiar de lo que parezca demasiado barato.

Del punto a) pasamos. Al b) conviene hacer una referencia especial. Como estamos a finales de semestre, la tasa de suicidios se dispara, por lo que la campaña “no te suicides, la vida no es tan chunga” abarca casi todos los frentes. En el caso digital, se trata de intentar que los tiernos vastaguitos/as no se pasen el día en foros en los que se promueve el suicido.

El c) también tiene su miga. Y es que aparentemente, hay que explicarle a la gente que un bolso de Gucci a una décima parte del precio de un bolso de Gucci, no es un bolso de Gucci. ¿Obvio? Aparentemente no tanto…

Del cartel en sí, nótese el uso de un MacBook, que para eso somos muy nuestros, así como el efecto dramático de esa antigüalla llamada “cable de red”. Ya puestos, nótese también, cómo pese a ser una campaña institucional, se les ha olvidado la versión en inglés de la web, cosa por una parte de lo más comprensible, y por otra, de lo más normal últimamente. Risa de bilingüismo…

Read the full article 0 Comments