Apple como Jalisco: si no gana, arrebata.

Como muchos ya sabrán, uno de los hallazgos después de la presentación de Apple la semana pasada donde se dio a conocer la versión 4 del sistema operativo para iPhone fue un cambio en una de las cláusulas con las que los desarrolladores tienen que estar de acuerdo para que su aplicación sea aceptada en la App Store.

En resumen este cambio le prohibe a los desarrolladores usar un ambiente de desarrollo que no sean aquellos proporcionados por Apple o html, css y javascript.

Muchos en la industria han visto esto como un golpe bajo contra Adobe, que presentó la versión CS5 de su archifamosísima y supervendida suite de aplicaciones de diseño. Uno de sus principales argumentos de venta para esta versión es que el desarrollador Flash puede crear una aplicación nativa de iPhone. Así, los millones de desarrolladores y diseñadores que conocen Flash como la palma de su mano no tienen que preocuparse por aprender Objective-C, sino que pueden usar la herramienta que conocen bien y al final tener una aplicación que pueden vender para iPhone, Android y web.

Pero los cambios a la cláusula 3.3.1 han echado todo esto al suelo. Y no sólo para Adobe, sino también para MonoTouch, Unity y todos los demás frameworks que provéen una capa de programación intermedia y sirven para acelerar el desarrollo de un producto para diversas plataformas.

Pero la verdad es que el objetivo de Apple no es eliminar a Adobe, Adobe simplemente es una víctima del fuego cruzado. Lo que Apple quiere es asegurarse un lugar de privilegio en el mercado móvil.

Cuando el iPhone apareció hace unos cuatro años, gozaban de una ventaja técnica increíble. Nada se les acercaba. Pero ahora Android les está pisando los talones, su crecimiento en participación de mercado es agigantado y pueden alcanzar o sobrepasar a Apple en unos meses si la tendencia continúa.

La gran ventaja de Apple son sus aplicaciones y la App store, pero esta se nulifica si los desarrolladores pueden crear versiones para diferentes plataformas usando frameworks. Prohibir su uso es la manera de Apple de decir “o codificas nada más para mí, ¡o te jodes!” Y por joder significa que los desarrolladores tendrán que hacer las cosas dos veces con el consiguiente gasto en tiempo y dinero.

El argumento de Jobs de que lo hace para asegurar la calidad de las aplicaciones es pura caca de vaca. Muchas de las aplicaciones más vendidas, como Tap Tap Revenge, son programadas con Lua y estarían prohibidas bajo la nueva cláusula. Los juegos de Electronic Arts también están hechos con Lua y también estarían prohibidos. ¿Son productos inferiores? No. ¿Los va a quitar Apple de su tienda? ¡Ja!

Se pueden hacer productos muy malos usando frameworks, pero también sin ellos. No tiene nada que ver.

Apple se está jugando un albur de proporciones increíbles, confiando que los desarrolladores optarán por trabajar sólo para Apple. Pero muchos de ellos pueden preferir un sistema mucho más estable, que no les quitará su trabajo por capricho, en el que pueden experimentar libremente y usar las herramientas, paradigmas y conceptos que mejor se adapten a su solución.

Apple está en todo su derecho, igual que los desarrolladores de programar o no para una plataforma restrictiva, e igual que los consumidores de buscar ciertas aplicaciones o no. Ya veremos por dondo rompe el hilo.