Diego Laballós

Desarrollador de aplicaciones Android

¿Lanzar la aplicación móvil en una o en varias plataformas?

Diseño de aplicaciones móviles

Al querer desarrollar una aplicación móvil, el primer problema que nos vamos a encontrar es la fragmentación de sistemas. En los dispositivos móviles, existen diferentes plataformas o mejor dicho, sistemas operativos. Eso implica que necesitamos desarrollar versiones distintas de nuestra aplicación para cada plataforma que queramos soportar.

En la web no existe este problema. La web no depende del sistema operativo, depende del navegador. Digamos que los propios navegadores (Chrome, Safari, Firefox…) son los que nos harán el trabajo sucio y se encargarán de que nuestra web se pueda ver en cualquier sistema operativo. Desarrollamos una sola web y se verá en cualquier ordenador, tablet, móvil…

Una de las primeras preguntas que se nos presenta a la hora de crear una aplicación móvil es: ¿para cuántos sistemas vamos a sacar la aplicación inicialmente?

Por suerte, el mercado actual de teléfonos móviles está dominado por dos sistemas, Android e iOS. Ambos suman más del 90% de la cuota de mercado. Eso nos lleva a simplificar un poco más la pregunta: ¿sacamos la aplicación para Android e iOS desde un principio o empezamos con una sola plataforma?

Situación actual del mercado móvil

Cuota de mercado de sistemas móviles para el segundo cuatrimestre de 2016
Fuente: Gartner

El siguiente gráfico corresponde a los dispositivos móviles vendidos en el segundo cuatrimestre del año 2016. Como podemos ver, en este aspecto, hay un claro dominante, Android. A continuación, encontramos iOS con más de un 10% y finalmente tenemos otras plataformas que entre todas no llegan a sumar un 1%.

El primer pensamiento que se nos viene a la cabeza es: ¿cómo vamos a sacar la aplicación sólo para ciertas personas? Estaríamos restringiendo el acceso según el móvil que utilicen y perdiendo a mucha gente. Pensamos en que el boca a boca no va a funcionar porque posiblemente, se produzca entre personas con sistemas diferentes. En fin, que si no salimos como mínimo para las dos principales plataformas, podría ser un caos.

Sin embargo, déjame que te cuente un par de puntos que quizás te hagan cambiar de opinión. Al final, lo que puede parecer una ventaja por acceder a más gente, puede venirse en tu contra y ser perjudicial para tu proyecto.

NOTA : A partir de este punto vamos a obviar el resto de plataformas que no sean Android e iOS, ya que tienen cuotas de mercado residuales para tenerlas en cuenta en un primer momento. En un futuro siempre podríamos añadirlas si creemos que es necesario.

De esta manera se nos plantean dos situaciones posibles: lanzar la aplicación en una sola plataforma o en las dos principales. Vamos a ver qué puntos deberemos tener en cuenta para decidir.

1. Coste inicial

El hecho de soportar dos plataformas quiere decir también que existen dos desarrollos. Dos desarrollos que son totalmente diferentes. Aunque parezca que ambos sistemas funcionan igual y tienen características casi idénticas, a la hora de programar es totalmente diferente.

El coste del desarrollo es más o menos similar para cada plataforma. Con lo cual, el cálculo rápido es que te va a costar el doble desarrollar en dos plataformas que en una.

Imagina que tu aplicación tiene un coste de desarrollo de 5.000€ para Android. Si quisieras tener la versión de iOS también para el lanzamiento, te costaría aproximadamente otros 5000€. En resumen, salir en una plataforma tendría un coste inicial de 5.000€, mientras que salir en ambas, tendría un coste de unos 10.000€. Esto supone un problema si tu presupuesto inicial es limitado, y la mayoría de las veces es así.

2. Coste de las primeras actualizaciones

El problema de coste no solo queda ahí. Al inicio, crear una buena aplicación puede llevar tiempo. Reducir al mínimo los posibles errores en todos los dispositivos, averiguar qué funciona mejor, que le gusta al usuario… En definitiva, conseguir una buena experiencia de usuario en base a la analítica y el feedback recibido.

Este punto puede ser uno de los errores iniciales al crear una app. Tenemos que tener en cuenta que las aplicaciones móviles necesitas ser actualizadas frecuentemente.

En un principio, se suele empezar con una versión que poco a poco se va mejorando. Esto se traduce en actualizaciones constantes sobretodo en la primera etapa de la aplicación, que a su vez se traduce en trabajo de desarrollo y al fin y al cabo coste monetario. Así que imagina que tienes dos plataformas en vez de una, tendrás que multiplicar por dos cada coste de actualización.

Primeras actualizaciones constantes en la aplicación de Airbnb para iOS
Fuente: AppAnnie

En este gráfico podemos ver un ejemplo de estas actualizaciones iniciales. Este periodo de actualizaciones, corresponde a la aplicación Airbnb para iOS. El gráfico corresponde con los primeros meses en la Apple Store, concretamente del 10 de Noviembre de 2010 al 10 de Junio de 2012.

Como puedes ver, en los tres primeros meses, se producen cuatro actualizaciones de la aplicación. Tres meses después, se produce otra, y si continuáramos con el gráfico se seguirían produciendo más actualizaciones. El punto importante aquí, es esa concentración de actualizaciones primerizas casi inevitables.

Si te interesa ver más a fondo todas las actualizaciones de esta aplicación puedes verlo aquí.

Volvamos a poner un caso hipotético para verlo más claro. Imagina que cada actualización tiene un coste de 200€ por los cambios y ajustes que se realizan en ella. Vamos a suponer que igual que en el caso anterior, surgen cuatro actualizaciones por distintos motivos en los tres primeros meses de vida. En caso de tener una sola plataforma, tu coste en actualizaciones sería de unos 800€, mientras que si hubieras decidido soportar ambos sistemas, tu coste sería de unos 1600€.

Obviamente, esto es una manera rápida y simple de verlo, ya que el coste de actualizaciones podría ser distinto dependiendo de los cambios. Además, cada versión por plataforma, podría necesitar más o menos actualizaciones que la otra.

3. Tiempo de desarrollo

Si anteriormente comentaba el tema del coste del desarrollo, hay otro que va de la mano, el tiempo.

Como he explicado antes, una plataforma equivale a un desarrollo, dos plataformas equivalen a dos desarrollos. ¿Te imaginas por donde voy, no? Sí, otra vez haciendo el cálculo rápido, soportar dos plataformas va a suponer el doble de tiempo de desarrollo.

Vuelta a un caso imaginario. Pongamos que tu aplicación móvil llevará alrededor de dos meses de trabajo para tenerla lista en Android. Si quisieras tener la versión de iOS lista para el lanzamiento, tendrías que esperar otros dos meses más aproximadamente, para que las dos versiones estuvieran listas.

En el punto del precio, hemos comentado también el tema de las actualizaciones. También tendríamos que incrementar el tiempo que llevaría actualizar ambas versiones. En definitiva, doble trabajo, el doble de tiempo, el doble de coste.

4. Disipación de esfuerzos

Tener dos plataformas distintas, quiere decir que tendrás que dividir tus esfuerzos para analizar y mejorar cada una de las aplicaciones por separado.

Una aplicación de Android no es igual que una aplicación de iOS. Cada sistema operativo tiene su forma de funcionar y su propio estilo, por lo tanto, las aplicaciones no serán clones. Sí, en el fondo harán lo mismo, pero tendrán sus diferencias.

Como ejemplo sencillo, en iOS tienes la posibilidad, en casi todos los dispositivos, de identificarte con la huella dactilar, mientras que en Android la mayoría de los móviles no lo tienen. ¿Podría ser interesante para tu proyecto? Quizás sí, pero actualmente implementarlo en iOS tendría más sentido que en Android. En este punto, ya tendrías una diferencia entre ambas versiones.

Además, un usuario de Android, no es un usuario de iOS, son un tipo de público diferente a nivel general. Existen muchas diferencias en la manera en que actúan estos usuarios y debes de tener en cuenta que no te estás dirigiendo al mismo tipo de persona.

Estos puntos anteriores hace que tengas que diferenciar bien entre una aplicación de Android y una aplicación de iOS, y por lo tanto analizarlas y mejorarlas desde perspectivas diferentes. Quizás en un inicio, sea mejor idea concentrar tus esfuerzos en una sola plataforma y conseguir la mejor experiencia posible en ella.

Desarrollar primero en una plataforma y después ampliar

Como podrás ir viendo a lo largo del post, mi opinión se acerca más a empezar por una plataforma. Déjame que te cuente un camino alternativo a crear desde un inicio la aplicación para las dos plataformas.

La idea consiste en salir inicialmente en una plataforma, la que creas que más te puede beneficiar. Con una sola versión, podrás hacer cambios y mejoras de una forma más rápida y económica. Cuando creas que tienes una aplicación madura, añade otra plataforma para llegar a más gente.

Este es el caso de muchas aplicaciones de éxito y debería hacerte ver que tu éxito, probablemente no dependa de en cuantas plataformas puedas salir el primer día. Existen muchas otras variables que te deberían importar más y quizás sí decidan tu éxito o fracaso.

El caso de Instagram

Instagram es una red social donde sus usuarios pueden subir fotos y videos. Además, pueden añadir filtros a sus publicaciones para darles un toque más personal.

Logo de Instagram

Lo que seguramente no sepas, es que Instagram en sus inicios no era la aplicación que es ahora. De hecho, no se llamaba ni Instragram. Sus funcionalidades no es que fueran más limitadas, todo lo contrario, tenía mucha más variedad de opciones.

Instagram nació con otro nombre, Burbn. Se lanzó únicamente en la App Store de Apple y era una aplicación basada en geolocalización al estilo Foursquare. Burbn, permitía a sus usuarios hacer check-ins en diferentes lugares indicando que habían estado allí, planear futuros lugares de destino, ganar puntos por salir con los amigos y subir fotos de esas salidas.

Sin embargo, Burbn no tuvo mucho éxito en sus inicios. Tenía muchísimas funcionalidades y era un poco compleja de utilizar. Sus creadores, no se dieron por vencidos y decidieron analizar cómo sus usuarios la estaban utilizando. Resultaba que la gente, no estaba utilizando la aplicación como ellos creían, no estaban utilizando tanto las funcionalidades de check-in, si no que estaban utilizando la aplicación casi únicamente para subir y compartir fotos. A partir de ahí, decidieron estudiar más a fondo las aplicaciones de fotografía del momento y transformar Burbn en una aplicación para subir fotos extremadamente sencilla.

Unos meses después de esos cambios, la historia de Instagram que nos interesa en este artículo, fue algo así:

Infografía con los primeros pasos de Instagram hasta sacar su aplicación para Android

Conclusión

Sí, esto es un caso extremo, posiblemente uno entre un millón, pero no te quedes con los números, quédate con la filosofía. El hecho de tener una sola plataforma, les permitió cambiar y mejorar la idea más rápido. Cuando consiguieron una buena aplicación y ya tenían una buena base de usuarios, decidieron ampliar a la siguiente plataforma.

¿Qué hubiera pasado si Burbn en su día hubiera salido para varias plataformas? Tendrían que haber implementado cualquier cambio en cada uno de los sistemas donde estuviera.

¿Hubieran tenido el tiempo y el dinero suficiente para hacerlo? No lo sé, quizás sí, ahora bien, seguro que hubiera sido más complicado.

Como ya te he comentado, dos plataformas supone casi el doble de todo. Eso puede hacer acabar antes de lo esperado tu tiempo o presupuesto previsto para el proyecto.

Desde un inicio vas a tener que tomar una decisión importante y debes hacerlo mirando todos los pros y contras detenidamente.

Si tienes alguna duda a la hora de lanzar tu aplicación móvil, puedes contactar conmigo a través de este formulario. Estaré encantado de ayudarte en lo que me sea posible.

Compartir