Cómo un diseñador construyó y envió una aplicación iOS en 6 meses

Existe un debate constante sobre si los diseñadores deben aprender a codificar o no. Si bien estoy feliz de hablar de eso extensamente, creo que es útil verlo desde una perspectiva diferente.

¿Qué está tratando de lograr? ¿Estás tratando de conseguir un trabajo, desarrollar tu currículum, entrar en una nueva área de diseño, comunicarte mejor con los desarrolladores? Aprender a codificar realmente depende de lo que quieras lograr.

En mi caso, quería enviar un producto.

Un poco de historia de fondo

En 2015, trabajé en la primera versión de Sofa con dos amigos. Yo era el diseñador, uno era el desarrollador de iOS y el otro era el desarrollador web. Trabajamos, y seguimos trabajando, muy bien juntos.

Sofa 1.0

En este punto no necesitaba saber cómo codificar. Mientras pudiera comunicar el diseño, eso fue lo suficientemente bueno. Enviamos la versión 1.0 después de aproximadamente un año de desarrollo y pruebas beta.

Entonces la vida se interpuso en el camino. Este fue un proyecto paralelo para todos nosotros y todavía teníamos trabajos a tiempo completo. Los dos desarrolladores se pusieron extremadamente ocupados y no pudieron trabajar en Sofa con la misma capacidad. La aplicación se sentó allí sin actualizarse y fue doloroso para mí. Tenía toneladas de ideas basadas en los comentarios de los usuarios para implementar, pero no pude hacerlo. Este fue un gran impulsor para mí para aprender a codificar.

Comenzando con Framer

Como la mayoría de los diseñadores, incursioné en HTML, CSS y un pequeño Javascript. No fue hasta que usé Framer que realmente comencé a entender los fundamentos.

Este no es mi prototipo, solo una captura de pantalla

Framer es una herramienta increíble para que los diseñadores aprendan a codificar. Poder ver los resultados de su código en vivo ayudó a enseñarme lo que realmente estaba sucediendo. Framer me enseñó cosas básicas como variables, bucles for y funciones. Nada lujoso, pero totalmente necesario.

A partir de ahí, incursioné un poco más en Javascript, pero mi corazón siempre estuvo en las aplicaciones nativas de iOS.

Pasando a Swift

Había tratado de aprender iOS en los días previos a Swift, pero Objective-C me era difícil de digerir. Cuando se anunció Swift, inmediatamente pensé "Oye, podría aprender eso". No estaba seguro, pero me dio un poco de confianza.

Esta es la parte difícil. Hay muchos recursos para aprender el desarrollo de iOS, pero la mayoría son bastante terribles. Los maestros hacen demasiadas suposiciones sobre lo que el alumno ya sabe. Esto es cierto incluso para cursos diseñados para principiantes. Te dicen cómo hacer "X", pero nunca te dicen que también debes hacer "A, B & C". Termina siendo increíblemente confuso, intimidante y desmoralizador.

El mejor recurso que utilicé para comenzar a aprender el desarrollo de iOS fue de Meng To. Su curso de Diseño + Código es oro absoluto. Es un diseñador que sabe comunicarse con otros diseñadores. Esto es realmente importante y una de las principales razones por las que creo que otras fuentes de aprendizaje no son tan buenas. Tienes desarrolladores que enseñan a no desarrolladores. Se olvidan de cómo era aprender al principio. Meng resuelve todo esto para los diseñadores.

Sitio web de Design + Code

Design + Code me enseñó cómo enviar datos de un lado a otro entre vistas, cambiar el diseño de la aplicación con código y usar Storyboards. Una vez más, otros cursos hacen esto, pero no se lo explican bien a los diseñadores.

Ese curso me enseñó los fundamentos del desarrollo de iOS. Desde allí pude explorar y construir algunos prototipos. Uno fue uno de los primeros prototipos de Sofa 2 y el otro fue una pizarra colaborativa para iPads. Nunca terminé ninguno de ellos, pero aprendí un montón en el proceso.

Sofá 2.0 de construcción y envío en 6 meses

En el verano de 2017, llegué al punto en que no podía esperar más para mover Sofa hacia adelante. Los horarios de mis compañeros de equipo no disminuían y podría pasar otro año hasta que pudieran contribuir nuevamente. Fue entonces cuando decidí construir 2.0 yo mismo.

Cuando comencé no sabía exactamente cómo iba a hacerlo, pero me zambullí y comencé. Sabía lo suficiente de lo básico para ponerme en marcha.

Primeras confirmaciones para Sofa 2.0

Mientras construía, había dos recursos que usaba constantemente: Stack Overflow y YouTube. Sí, YouTube Cuando aprendes algo nuevo, leer sobre ello no siempre es suficiente. Ver a alguien resolver el problema que tienes es increíblemente útil. Ahí es donde brilla YouTube. Escribía lo que intentaba imaginar y luego comenzaba a mirar. Hay algunas cuentas de YouTube que constantemente me enseñaron cómo hacer las cosas:

  • Mark Moeykens
  • Brian Advent
  • Construyamos esa aplicación
  • Sean Allen

Estoy eternamente agradecido con estas personas por publicar contenido excelente que fue fácil de entender.

Sofá 2.0 de construcción. Nunca pude conseguir que el green funcionara.

De julio a septiembre, trabajé para obtener la experiencia básica del funcionamiento de la aplicación. Luego, de septiembre a diciembre, tuve beta testers para ayudar a probar los supuestos y refinar la experiencia.

Con cada semana que pasaba, ganaba más confianza. Hubo algunos problemas difíciles de resolver y algunas cosas de las que tenía miedo, como Core Data, pero en general terminó siendo bastante sencillo.

Terminé lanzando Sofa 2.0 el 6 de diciembre de 2017. Técnicamente un poco menos de 6 meses, pero de todos modos nunca fui bueno en matemáticas. Es difícil describir la sensación de trabajar en algo durante mucho tiempo y luego compartirlo con el mundo. Es aterrador, emocionante, humillante y sobre todo ... ¡divertido!

Durante este tiempo, mi buen amigo y compañero de equipo de Sofa, Oliver Pfeffer, estuvo allí apoyándome. Escribió la aplicación original de Sofa y es el mejor desarrollador / compañero de equipo con el que he trabajado. Cuando le dije que yo mismo iba a construir la versión 2, él me apoyó de inmediato. Siempre me señalaba en la dirección correcta cuando estaba atrapado, sin darme la respuesta. Me permitió resolver las cosas por mi cuenta para que pudiera aprender. Hacia el final, hizo una revisión del código (tengo que refactorizar mucho do) y escribió una pequeña biblioteca para limpiar los datos del libro de Google Books. Puede que no lo piense, pero tuvo una gran influencia en el proceso de construcción de 2.0.

Versión enviada de Sofa 2.0

No hice esto solo

Soy muy consciente de que no hice y no pude hacer nada de esto solo. Framer me enseñó los conceptos básicos de la codificación, Meng To me enseñó los conceptos básicos del desarrollo de iOS, y Stack Overflow, YouTube y Oli me enseñaron partes más profundas de iOS.

No solo las personas me enseñaron el código, sino también las personas que me apoyan todos los días. Mi esposa, familia, amigos, compañeros de trabajo, jefes, etc. Soy extremadamente afortunado de estar rodeado de personas que se preocupan por mí y apoyan mis pasiones tontas. Es algo que nunca olvido.

Tú también puedes hacer esto

Esto no es solo para diseñadores, sino para todos. Si tiene un objetivo hacia el que se dirige, pero actualmente no tiene las habilidades, no se preocupe. Aprender cosas nuevas hoy es más fácil que en cualquier otro momento de la historia. Todo lo que tienes que hacer es dedicarle tiempo. Puede que no tarde tanto o sea tan difícil como crees

Si está interesado en ver los frutos de mi trabajo, puede descargar Sofa desde la App Store 🛋. No dude en comunicarse conmigo en Twitter con cualquier pregunta o comentario.