Delfi Young

La historia de Presente

A principios de este año me propuse desarrollar una app. Trackeé el progreso por varios meses con OKRs personales. Pensar periódicamente en este objetivo me ayudó a investigar y entrar en contacto con personas que también habían desarrollado apps, incluso a colaborar voluntariamente con una app ya establecida. Sin embargo, hacia mediados de año reconocí que no estaba avanzando con mi propia app.

En Septiembre 2021, en una sesión de escritura y decisiones, me propuse lo siguiente:

"Quiero una app lo suficientemente buena para ser lanzada a todo público en Android y iOS para Diciembre 21, 2021."

Llegué. Acá pueden descargar mi app Presente para Android y iOS.


Con este blog post busco cumplir dos objetivos:


Creo que compartir ambos procesos pueden ayudar a otros recorriendo el camino de la tecnología y/o las emociones.

1. Investigar y aprender

Antes de saber qué app quería hacer, me puse a aprender Flutter.

¿Por qué Flutter?

Flutter permite desarrollar una app con un único código que sirve tanto para iOS como para Android (los dos sistemas operativos más populares entre smartphones). En general, desarrollar para Android requiere conocer Kotlin o Java por ejemplo, lenguajes que no sirven para iOS (que se desarrolla en Swift). Así que Flutter ofrece un 2x1 muy conveniente para quien no está seguro para qué sistema opearativo codear. React Native es otro lenguaje que permite codear para Android y iOS con un mismo código, pero recién lo supe después de empezar con Flutter.

Quiero destacar la importancia de leer o charlar con personas que ya transitaron el camino que quería transitar, porque me indicaron cuál era el primer paso. Afortunadamente conocía a más de un conocido con background en Producto o Marketing que le había ido bien aprendiendo Flutter con este curso de Udemy, así que arranqué con ese. Si es tu primera compra en Udemy, el curso sale U$S 13.99 (al menos así lo compré yo).

Gracias a este bootcamp pude instalarme todo lo necesario para empezar a desarrollar una app muy simple.

2. Practicar

Tuve la suerte de poder contribuir a la app de un amigo y poner en práctica los conocimientos que tenía, lo cual aceleró mi aprendizaje y, más importante, me hizo creer que podía hacer una app. Como dice el refrán, parece imposible hasta que está hecho.

Es por esta experiencia que Presente tiene su código público en Github y además un roadmap para que cualquiera pueda ayudarme voluntariamente desarrollando el proyecto.

3. Idea

Hay una frase de un founder que siempre me quedó: "construye algo que necesistes desesperadamente día a día".

Con esa oración en mente, después de varios meses encontré algo que necesitaba con desesperación.

Tiendo a sentirme desbordada por mis emociones. También me siento ansiosa por el futuro, y me encuentro a mí misma pensando y planeando situaciones completamente fuera de mi control. Cuando estoy abrumada, por ejemplo, me gusta sostener mi mano (con mi otra mano) como si otro me estuviera acompañando de la mano mientras atravieso la parte difícil de entender lo que siento.

Necesitaba desesperadamente ese espacio seguro conmigo misma, pero ¿cómo dármelo en cualquier lugar, y en presencia de cualquiera?

Muchas veces necesité "algo" que pudiera sacar del bolsillo y que me diera espacio - aún si es espacio imaginario - donde pudiera sentirme presente, segura y contenida por mí misma mientras atravieso mi ansiedad y emociones. En general ese "algo" era mi cuaderno, o un papel escrito que llevaba conmigo, o un frasquito con esencias aromáticas. Pero a veces mi cuaderno era muy grande para llevarlo, el papel se perdía entre bolsillos, y la fragancia un poco sospechoso para abrir y aspirar algo en cualquier lugar público.

Se me ocurrió que podía cargar ese "algo" en mi teléfono, ya que igual lo llevo a todos lados y puedo sacarlo en cualquier momento. No requeriría espacio y podría ser mucho más versátil.

Descargué varias apps sobre alivio del estrés y ataques de pánico. Una de ellas se llamaba My Safe Zone, y se parecía a lo que yo necesitaba: traer contención a través de gestos sencillos y respiraciones.

My Safe Zone

Apps como esta buscan aliviar el estado abrumador con gestos como arrastrar o mantener presión por varios segundos, para que el usuario se enfoque en tareas simples y no en su pánico.

Ahí pensé en crear Presente.

4. Test

Bajé el proyecto ejemplo de Flutter. Le puse un botón y de Github saqué código para la funcionalidad de contar segundos.

Lo probé una noche que me empecé a angustiar porque nada estaba saliendo como lo había esperado.

Durante los primeros 300 segundos sentí la rabia, la tristeza, la decepción. Hacia el segundo 500, apareció una voz. Me invitaba a dialogar conmigo misma. ¿Esperar algo? A ver, contame qué planes tenías para esta noche. ¿Y no podés adaptar lo que esperabas para lo que está pasando ahora? Si nada está saliendo mal... sólo que es distinto. Para el segundo 1000, estaba muy tranquila, contenida, compasiva y segura de haber aprendido algo de mí.

5. Plan

En Agosto armé un documento en Notion para que un par de amigos me dieran feedback. También lo compartí con posibles interesados en contribuir con código / UX al proyecto.

Mi plan era:


Con el 60% de la app diseñada en Figma, a inicios de Octubre me puse a codear.

Diseño

6. Ejecución

Avanzaba lentamente, pero avanzaba. Dedicaba parte de los fines de semana y algunas tardes post-trabajo. Sin embargo, en noviembre me encontré con que la UI de la app no era linda, y por más que miraba Dribbble o tutoriales de App Design no conseguía que mejorara su UI. Seguía pareciéndose mucho a la Flutter app de ejemplo, y tenía dos tabs que no me gustaban.

Quería algo mucho más "integrador" en una sola pantalla.

Llegué a la conclusión de que no podía hacer todo. Estaba intentando aprender Diseño y Desarrollo al mismo tiempo y no me salía ninguna de las dos. Tomé la decisión de delegar una y enfocarme en la otra.

Delegué el diseño a un freelancer de Fiverr al que no le di casi info - me entregué a que diseñara lo que quisiera.

Afortunadamente, a los pocos días recibí unos diseños preliminares muy lindos. Sólo se necesitaron un par de días más para que el freelancer revisara el feedback que le di y me entregara la versión final.

Design Feedback

La historia completa es que en un principio contraté dos freelancers, con la esperanza de tener más diseños de los que elegir, pero uno de ellos se demoró mucho y terminó devolviéndome el dinero.

Costo: $25 por 2 diseños diferentes + Figma source file en 5 días

No me voy a cansar de remarcar lo mucho que me destrabó tener un diseño 100% terminado, y no por la mitad. Me resolvió la ansiedad de no poder decidir un look & feel, me motivó porque era lindo y porque lo que yo imaginaba existía un poco más en papel. Con el source file cambié algunos colores y lo adapté a lo que yo podía codear en Flutter. Todo empezó a fluir.

Avancé mucho desarrollando hasta que me trabé en la funcionalidad de la respiración. No conseguía que al finalizar un ciclo comenzara otro hasta que el usuario lo detuviera. Hice una función con 4 timers - uno adentro de otro, trabajando de manera errática. Dije basta, tengo que delegar otra vez.

Entré a Codementor - un sitio que me recomendaron para resolver problemas de código junto con un developer mucho más experimentado. De esta manera, en lugar de que otro lo arregle, lo haría yo pero aprendiendo del proceso con otro. Sin embargo, era sábado y no encontré a nadie disponible de inmediato. Chateé con un desarrollador español que podría charlar conmigo el lunes. Realmente quería solucionarlo antes, así que entré a Upwork a buscar un freelancer que codeara en Flutter. Pedí varios presupuestos. Me quedé con uno de $50 por la funcionalidad que necesitaba. Fue bastante buena la experiencia, hubo idas y vueltas pero el freelancer estuvo refinando el código mientras yo testeaba hasta que quedé conforme.

Pros: en 24hs tenía mi problema resuelto, y por mucho menos $ que con Codementor. Cons: al día de hoy no entiendo una parte completa del código. No quería subir el código a Github porque me sentía un fraude, pero me prometí entender el código algún día, así que está subido.

Tradeoffs.

Al igual que con el diseño, tener el último pedacito de funcionalidad en la app me destrabó para terminar de codear los detalles y finalmente, lanzar.

7. Lanzamiento

Era 25 de noviembre y estaba ahead of schedule: tenía la app terminada antes de diciembre, casi esperando que la mandara a los stores. Por esa época estuve comprando un auto y complicada con unas mudanzas - por dos fines de semana sólo comí galletitas de agua y Gatorade cuando mi estómago me lo permitía. Cuando me recuperé, era 1 de Diciembre y mi buffer de tiempo se había acabado.

Tanto Play Store como App Store piden algunas cosas para publicar una app:


Creé las screenshots con Figma (hay algunos templates en la Community para screenshots), reciclé un sitio de Notion + Potion que tenía y le dirigí mi dominio presente.app para que hubiera un sitio que declarar en los stores.

Presente se publicó en el Play Store bastante rápido - unos 7 días en revisión, creo que es normal para publicar por primera vez.

Con Apple lidié un poco más - me rechazaron dos veces la app por no tener una página de soporte. Terminaron aceptándome con esta info justo abajo del título.

Cabe destacar que para publicar una app en Android el costo es U$S 25 (una vez), en cambio para Apple hay que abonar U$S 99 anuales para formar parte del Apple Developer Program y poder publicar apps.

Por último, publiqué el código en Github, trasladé el sitio reciclado de Notion a uno mejorado en Github Pages y agregué los links de descarga a los stores.

Reflexiones finales

Este post es mi último paso antes de compartir la app con el público.

Como varias cosas que hago, si me cuesta compartirlas cuando están terminadas, más aún cuando las estoy haciendo.

Si bien hubo instancias del desarrollo donde charlé y recibí feedback de otros, me quedo con ganas de haber incluido a más personas en el proceso. Mis profes de yoga, mis compañeros de trabajo, otros desarrolladores.

Lo positivo es que queda mucho por hacer - ya tengo una decena de ideas para seguir desarrollando en la app - y puedo compartirlo con más personas.

Por otro lado, toda la experiencia me sirvió para tomar decisiones sobre lo que podía hacer y lo que no, con el tiempo que tenía.

El resultado me sorprende. Hace unos meses no sabía ni qué iba a desarrollar. Hoy veo Presente y me parece una app linda, simple, y que creé para mí. Le veo mucho potencial en mi día a día - tanto para usarla como para escribir sobre ella. Me encanta haber creado algo nuevo en mi mundo.

#app #tecnología