Euskalmoji – Lecciones aprendidas

Euskalmoji es la primera app que ofrece un teclado con stickers de temática vasca para tu móvil iOS o Android. Es una idea e iniciativa de 3 personas con perfiles muy complementarios: Tellmewow (agencia de marketing online), Iván Pretel (desarrollador especialista en Android), y Roberto Garrido (desarrollador especialista en iOS). También han colaborado Ainara García Miguel (ilustradora) y Gontzal Sáez (comunicación).

Si eres de Euskadi o alrededores, seguro que has oído hablar de ella, o te ha llegado algún Euskalmoji en algún grupo de WhatsApp. Ha salido en prensa digital y escrita, y también en radio y televisión.

Euskalmoji estado en el top 10 de apps gratuitas en el Apple Store de varios países, llegando al número 1 durante varias horas en el Store de España

 

Pero no todo ha sido un camino de rosas, y en este artículo nos gustaría contarte los retos a los que nos hemos enfrentado como desarrolladores.

 

euskalmoji número uno en app store desarrollo ios

Euskalmoji ha sido número uno en el Apple Store durante horas

 

Arquitectura de Euskalmoji

Primero, una brevísima explicación de la arquitectura de la app:

Euskalmoji para iOS es una app con dos targets: la app, y una extensión de teclado. La app es una app con arquitectura MVC basada en storyboard con 3 view controllers que contienen justo lo necesario: instrucciones, información de contacto, opción para compartir la app, y opción para añadir una review en el store.

La extensión de teclado está basada en un objeto UIInputViewController, que gestiona el ciclo de vida y la interacción con el teclado. De él cuelga el teclado de stickers, que es un UICollectionViewController con todos los Euskalmojis. Al tocar uno de ellos, se copia al portapapeles, de forma que podemos pegarlos en cualquier app con una caja de texto que acepte imágenes como entrada.

 

Dos instancias de firebase

De la arquitectura explicada en la sección anterior se desprende una conclusión: si tenemos dos targets, necesitamos dos instancias de firebase. Firebase funciona así, por cada target o ejecutable necesitas una instancia. No ha sido realmente un problema, pero duplicamos las fuentes de información sobre lo que pasa con nuestra app/teclado. Y esto resulta un tanto incómodo.

 

Problemas de memoria

La primera aproximación fue integrar los 60 Euskalmojis y cachearlos en en una estructura tipo mapa cada vez que se usaban, para conseguir que el teclado vaya fluido y no se notaran saltos al hacer scroll. En el simulador de Xcode y en iPhone 7  todo iba muy bien, hasta que empezamos a probar en iPhone 5C, y es ahí donde nos dimos cuenta de que el teclado se cerraba debido al uso de memoria. Y es que estábamos metiendo en memoria 60 imágenes de 400×400. Evidentemente había que buscar una alternativa.

Se eliminó la caché, empezamos a cargar los Euskalmoji bajo demanda, y además les reducimos el tamaño. Se eliminó el problema de memoria pero surgió otro: ahora los emojis eran demasiado pequeños, y cuando los compartíamos no quedaba tan gracioso. Lo que decidimos fue integrar dos versiones de cada Euskalmoji: una de reducido tamaño pero lo suficientemente grande para que no apareciese pixelado en teclado, y una de tamaño original que es la que finalmente se usa para compartir.

 

Subida al store

Una semana antes de la release prevista se nos ocurrió “ir subiendo al store” una versión funcional para ver cómo respiraban los revisores de Apple y evitar sorpresas de última hora. Pues bien, la primera en la frente. Apple rechazó la versión por ir contra las normas. Y es que cuando enviamos una app con extensión de teclado al Apple Store es obligatorio ofrecer al mismo tiempo un teclado funcional, ya sea numérico, alfabético, o alfanumérico. Reaccionamos rápido frente a éste imprevisto implementando un pequeño teclado alfabético. Aprovechamos la ocasión para meter la tipografía Vasca para seguir una línea homogénea con la temática de la app.

Cuando volvimos a subir otra versión al store, la app fue nuevamente rechazada. En este caso nos habían tocado revisores diferentes y no sabían cómo hacer funcionar el teclado. Esto se solucionó con un breve intercambio de emails. Éxito: la app ya estaba disponible para publicar.

 

Permitir acceso total

Euskalmoji – Mensaje apocalíptico

 

En serio, maldito mensaje apocalíptico. Cientos de usuarios han dejado de usar la app por el mensaje que Apple muestra al activar esta opción en los ajustes del teclado. Pero, ¿por qué necesitamos acceso total?

Necesitamos acceso total porque Euskalmoji funciona como un teclado de stickers que son copiados al portapapeles y luego pegados donde el usuario quiera. Para usar el portapapeles es necesario el acceso total. Ésta es la única explicación y no hay nada oscuro detrás.

La app de referencia en teclados personalizados es Bitmoji, y también funciona de la misma forma. Y por supuesto lo mismo ocurre con el teclado de Google.

Es muy comprensible el miedo, y se entiende perfectamente que haya gente que no quiera usarlo sólo por este motivo. Pero puedes estar tranquilo: no leemos conversaciones, ni por supuesto nos quedamos con el número de tarjeta de la gente. Además, sólo tenemos acceso a lo que escribe el usuario mientras utilice el teclado de Euskalmoji, no los demás.

 

No son emojis, son imágenes

Esta es otra de las quejas que más nos llegan al buzón y de las que más se leen en redes.

Los emojis “reales” son caracteres especiales introducidos en el estándar Unicode. Es decir, forman parte de un estándar desarrollado por un panel de expertos y no es posible que aplicaciones de terceros “introduzcan” nuevos emojis diferentes a los definidos en el estándar. Es posible que el nombre “Euskalmoji” lleve a confusión.

Esto es, por tanto, una limitación técnica: no es posible introducir emojis nuevos en el conjunto de emojis definido en el estándar Unicode.

 

Conclusión

La semana de lanzamiento ha sido muy bonita. 30k instalaciones el primer día, y otras tantas el segundo. App número 1 en el Apple Store de España durante varias horas, por encima de apps de referencia como WhatsApp, Facebook, Twitter, o Youtube. Hemos llegado a miles de personas y hemos salido en prensa digital e impresa, radio y tele. No está nada mal para cuatro amigos que han hecho esto por pura pasión y gastando el dinero de su propio bolsillo.

En mi caso personal, me ha servido para salir de mi zona de confort de “sólo programador”, y ponerme la gorra de diseñador de producto. He podido, por primera vez y tras varios años trabajando de desarrollador, tomar parte en todas las fases del desarrollo y publicación de un producto software: desde la conceptualización e idea, pasando por la selección de contenidos, la programación, la difusión y el marketing. Ha sido una experiencia única.

Es curioso cómo el punto de vista cambia cuando eres tú el que da la cara por el producto que entregas. Y es que en muchas ocasiones discuto con mis clientes sobre el hecho de dar soporte a versiones antiguas de iOS, cosa lo cual no aporta mucho valor, y te obliga a lidiar con APIs anticuadas. Todo por dar soporte a un 1% de los usuarios. Pues bien, en el caso de Euskalmoji ya estoy dando vueltas al tema de cómo ampliar el soporte a iOS 9, ya que actualmente sólo soportamos la 10.

No todo ha salido bien en la primera release, y en este artículo he pretendido ser honesto y transparente y contarte las cosas que han salido mal, bien por errores propios, o bien por limitaciones técnicas.

¿Y a ti? ¿Se te ocurre como superar las limitaciones técnicas y los retos expuestos en el artículo? ¡Cuéntamelo en los comentarios!

 

7 Comments
  • Hugo Tobio
    Posted at 14:24h, 20 July Reply

    Enhorabuena por el proceso y lo aprendido, Y gracias infinitas por compartirlo. Prpuestas oe posiblemente ya os han hecho;
    -stikers de line
    -merchandising
    -gifs animados para subir a Giphy
    -Engine bendible B2b para quien quiera hacer sus emojis

    un saludo

    • Roberto
      Posted at 14:28h, 20 July Reply

      ¡Buenas Hugo!
      Muchas gracias por comentarlo. No descartamos nada, pero ahora toca digerir todo esto, dar un paso atrás, reagruparnos, y volver con fuerza pronto.
      Gracias por tus aportes.
      ¡Un abrazo!

  • Hugo Tobio
    Posted at 14:25h, 20 July Reply

    Vendible!!!!

  • Jorge González
    Posted at 15:03h, 20 July Reply

    ¡Enhorabuena a Roberto y al equipo! Yo estoy convencido que en el mundo tecnológico, aunque diseñes o programes para terceros es necesario hacer productos propios. Primero porque te da la oportunidad de trabajar de primera mano con otros profesionales con los que tienes ganas de compartir una experiencia. Te sirve también para ponerte en la piel del “cliente” y ver las dudas que se generan como desarrollador de producto. En este tipo de proyectos puede haber un objetivo de monetización definido o no. A veces lo más “vendible” sale de la idea más loca. ¡Felicidades!

    • Roberto
      Posted at 20:22h, 20 July Reply

      ¡Gracias Jorge! Sin duda una gran experiencia de la que aún estamos aprendiendo.
      ¡Ahora a seguir!

  • Jordi
    Posted at 09:32h, 18 August Reply

    Roberto, genial el post, y enhorabuena por el éxito de los emojis.

    Si se puede, dos preguntas:
    – que característica de firebase utilizáis? Es decir, para que usáis firebase?
    – dónde crees que estuvo el éxito de la viralizacion de la app? Cómo conseguisteis 30k descargas el primer día? Son números muy impresionantes.

    Repito, enhorabuena. Por el post y por la app.

    Un abrazo

    • Roberto
      Posted at 09:44h, 18 August Reply

      Aupa Jordi! Gracias por comentar 🙂
      Usamos Firebase para saber qué imágenes se copian más al porta papeles, para medir first_opens/app_removes, y para saber el número de usuarios diarios por cada plataforma.
      Respecto a la viralización, no tengo una respuesta formada al respecto. Te cuento las cosas que ocurrieron y creo que influyeron en ello:
      – Teníamos contratada a una persona con contactos dentro del mundo de la prensa local para lanzar una nota de prensa cuando nosotros se lo dijéramos.
      – El día del lanzamiento, empezamos a compartir el proyecto los miembros del equipo en nuestras redes sociales. Ocurrió que, antes de mandar nota de prensa, ya nos llamaron de dos medios importantes, así que decidimos lanzarla de inmediato.
      – Creo que es un proyecto cuya temática “llega a la patata”. Toca en lo vasco, en lo nuestro, y eso puede que también influyese.
      – Los iconos tienen un carácter gamberro que en cierta manera nos caricaturiza a los vascos, y creo que como nos gusta reírnos de nosotros mismos, eso también influyó.
      – En verano hay pocas noticias “relevantes” en los medios, y por tanto se da un caldo de cultivo interesante para emitir este tipo de cosas.
      – Es gratuito y sin anuncios.

      Estas son un poco las cosas que me vienen a la mente que pudieron contribuir a la viralización. No soy experto en marketing y supongo que los compañeros de TellMeWow pueden hablar con más autoridad de este tema 🙂

      Muchas gracias por tu comentario, y si tienes dudas o más cosas que quieras saber, no dudes es escribirnos por aquí.
      ¡Abrazo!

Deja un comentario