Hecho a mano

Wozzii

Startup de educación que cofundé · 2019 a 2021

Un aula colaborativa construida sobre YouTube, donde los tutoriales sueltos se vuelven cursos y las notas que escribe un alumno quedan para el siguiente. Lo cofundé y fui su programador principal.

El problema
Los tutoriales de YouTube necesitaban estructura y notas compartidas para convertirse en cursos.
Lo que hice
Cofundé el producto y lideré el equipo de tres: modelo de datos, pagos y revisiones.
El resultado
Un aula colaborativa donde los usuarios aprenden en comunidad.
Construido con
Next.jsTypeScriptFirebaseStripeAlgolia
RolCofundador · CEO · Programador principal
Equipo3 personas
Plazo2019 a 2021
ResultadoUn aula colaborativa donde se aprende en comunidad
+200usuarios activos en la plataforma
+20cursos armados con videos sueltos de YouTube
+300notas escritas por la comunidad
El problema

Convertir tutoriales de YouTube en un espacio para aprender juntos

En YouTube hay muchos tutoriales útiles, pero estudiar con ellos puede ser desordenado: videos por un lado, notas por otro y poca facilidad para compartir lo aprendido. Reunimos esas piezas en cursos con notas vinculadas a cada video, para que el trabajo de un alumno ayudara al siguiente.

Cómo lo construí

Un equipo de tres, donde yo tomaba las decisiones técnicas

Fui cofundador, CEO y programador principal de un equipo de tres. Eso significaba decidir el modelo de datos, hacerme cargo de todo el proceso de pago y revisar todo lo que salía. Firebase nos permitió avanzar rápido. Su base de datos de documentos también nos obligó a resolver la consistencia y los datos compartidos de otra manera que con una base relacional.

Una sola lectura de base de datos por pantalla.

Wozzii corre sobre una base de datos de documentos, y el modelo de datos fue decisión mía: cada pantalla debía cargar desde un solo documento. Una nota lleva el nombre y la foto de su autor, y un curso lleva su lista de videos, así que mostrar sus notas no cuesta consultas extra. Los contadores exactos, como cuántas veces se copió un curso a la lista de un alumno, usan incrementos atómicos y una transacción que escribí. Cloud Functions mantienen al día el índice.

Implementé con Stripe las suscripciones de precio libre.

Construí el flujo de pago de punta a punta sobre Stripe. Quien aprendía escribía el precio que quería pagar, la app abría un checkout por exactamente ese monto y arrancaba la suscripción desde ahí, y después podía cambiar la tarjeta o cancelar sin pasar por nosotros. El precio libre era toda la promesa del producto, así que el número que escribía el alumno tenía que llegar intacto hasta el cobro, y una renovación fallida tenía que poder recuperarse sin escribirle a soporte.

Desarrollé un sistema de puntos para que el alumno vuelva.

Queríamos fomentar el hábito de estudiar, así que el producto premiaba la participación. Se ganan puntos por los minutos vistos, por cada nota escrita y por terminar el onboarding. Los puntos aparecen al instante en pantalla y en la copia del perfil que mantiene la app. En segundo plano, una instrucción suma esos puntos al total guardado en la base de datos, en vez de sobrescribirlo. Así, dos pestañas abiertas no se pisan.

El impacto

Lo que entregó un equipo de tres personas

Entre tres lanzamos un producto funcionando: videos sueltos organizados en cursos, notas vinculadas al video al que pertenecen, búsqueda sobre todo eso y suscripciones donde el precio lo ponía quien aprendía. Más de doscientas personas lo usaron, armaron más de veinte cursos y dejaron más de trescientas notas para quien viniera después. Los pagos y el modelo de datos fueron míos, y fueron una parte central de mi trabajo.

Lo que demuestra

Puedo construir un producto completo, con los pagos incluidos, y aprendí a validar que la gente está dispuesta a pagar antes de construir el sistema de cobro.

Pantallas