- Resumen de la charla de Nadia Odunayo en Brighton Ruby
Volvamos al 1 de enero de 2020
- Desde junio de 2024, recuerda los primeros logros de Storygraph volviendo al 1 de enero de 2020
- Durante el primer año después de fundarla, se dedicó a desarrollar todos los días y por fin alcanzó la meta de “100 usuarios registrados”
- En ese momento, Storygraph era una “herramienta de recomendación de libros” que ayudaba a los lectores a elegir qué leer después
- El sitio web ofrecía una lista de varios miles de libros y permitía filtrar por estado de ánimo, ritmo, género, tamaño del libro, etc.
- Usuarios iniciales:
- Amigos de Nadia y personas que llegaban por DM desde la comunidad lectora de Instagram (Bookstagram)
- Los usuarios vieron el potencial, se lo recomendaron a conocidos y la base de usuarios fue creciendo gradualmente
- Relanzó la versión beta para celebrar el Año Nuevo de 2020
- Motivó a lectores que ven el Año Nuevo como una época para fijarse metas de lectura
- Gracias al pequeño efecto del evento, consiguió “160 usuarios registrados y 100 nuevos visitantes”
- Los visitantes exploraban el sitio durante un promedio de “6 minutos y 30 segundos”, con una reacción positiva
- Durante 2019 se enfocó en desarrollar el producto e intentó crear algo que valiera la pena compartir cuando alguien buscara recomendaciones de libros o una alternativa a Goodreads
- No apuntaba específicamente a ser una “alternativa a Goodreads”, pero alcanzó a ver la posibilidad de convertirse en un mejor servicio para cierto tipo de usuarios
- Al entrar en 2020, y animada por esos nuevos resultados, continuó el proyecto con todavía más entusiasmo
La pandemia y el crecimiento inicial
- La pandemia le dio tiempo concentrado para desarrollar, aumentó la lectura y también crecieron los nuevos registros
- Pero sentía que el producto todavía no estaba lo bastante pulido y le daba miedo “promocionarlo oficialmente”
- No respondió a artículos ni a opiniones de usuarios y se concentró en desarrollar en silencio
- Hasta mayo de 2020, Storygraph seguía ofreciendo funciones muy básicas, y al desarrollar sola sentía carencias técnicas, ansiedad y vulnerabilidad
- Se mantuvo activa dentro de la comunidad lectora y observó la tendencia de usuarios que pedían una nueva alternativa
- Con la confianza y el impulso obtenidos al llegar a 100 usuarios, decidió dar a conocer el servicio de verdad
Difusión en Twitter y más de 1,000 usuarios
- El 27 de mayo de 2020, respondió o contactó por DM en Twitter a unas 100 personas que habían reaccionado positivamente a Storygraph
- La mayoría no respondió, pero algunas entendieron el potencial del proyecto y mostraron interés
- Algunos usuarios compararon funciones con Goodreads y señalaron carencias
- En ese momento Storygraph tenía funciones limitadas, así que era difícil competir con Goodreads
- Un pequeño grupo de usuarios que entendió el valor del proyecto presentó Storygraph a la comunidad lectora
- Recomendaron el producto a sus amistades lectoras y la base de usuarios se amplió
- El 11 de junio de 2020, Storygraph superó los “1,000 usuarios”
- Apenas dos semanas después de empezar la promoción, la cantidad de usuarios se había más que duplicado
- Hizo un evento de celebración en historias de Instagram
Explosión en Twitter y crecimiento acelerado
- El 16 de junio de 2020, Emma Barnes (de Consonance Books) publicó un tuit:
- “Toda la industria editorial debería conocer Storygraph. Es la mejor innovación en años. Dejemos de depender del pésimo software de las grandes tecnológicas.”
- Ese tuit elevó un poco la actividad de la app, pero no generó una reacción enorme
- Después, Sam Missingham citó el tuit de Emma y lo volvió mucho más popular:
- “Book Twitter, usemos esto en lugar de Goodreads. Lo probé 5 minutos y ya es muchísimo mejor. Además, fue fundado por una mujer negra y no lo opera Amazon.”
- Después del tuit de Sam, la actividad empezó a subir rápidamente
- Razones por las que el contenido del tuit tuvo tanto impacto:
- Llamó la atención de la comunidad de Book Twitter
- Apuntaba a Goodreads, una plataforma de la que mucha gente quería una alternativa
- Tras el movimiento Black Lives Matter, había mucha energía por apoyar a creadores negros
- También coincidió con el creciente rechazo al monopolio de Amazon durante la pandemia
- A medida que el tuit se difundió rápidamente, Storygraph empezó a crecer:
- Pasó de decenas de usuarios a cientos y luego miles
- Las alertas por correo (“inicio de importación de datos de Goodreads”) se dispararon y el sistema empezó a cargarse
- El tuit se volvió viral a una velocidad inesperada y se registraron muchísimos usuarios
- La explosión en la cantidad de usuarios provocó problemas técnicos y una “situación de sobrecarga”
Días oscuros
- El retraso en la función de importación de datos de Goodreads aumentó el descontento de los usuarios
- Se enviaron correos a miles de usuarios avisando que la importación estaba en curso, pero la velocidad era tan lenta que podía tardar meses
- La situación de tener que resolver muchos problemas a la vez le causó un estrés extremo
- Responder a usuarios en Twitter
- Gestionar importaciones de datos que fallaban
- Reescribir el código de la app para reducir el tiempo de importación de meses a “unos cuantos días”
- El 17 de junio de 2020, otro tuit viral provocó un nuevo salto de usuarios:
- Un tuit del tipo “Lo usé un día y me encanta demasiado” se volvió popular
- Llegaban entre cientos y mil registros nuevos por hora
- Como resultado, el sistema se sobrecargó:
- No se podía importar desde Goodreads
- Las recomendaciones personalizadas no funcionaban
- Las tareas en segundo plano se detuvieron por completo
- Al pasar de 1,000 usuarios y acercarse a los “10,000”, empezó a sentir la presión
- Pensó: “Yo nunca quise un negocio B2C”, y empezó a dudar
- Se sintió aislada y se quedó pensando sentada en un “baño oscuro”
- Contuvo las ganas de decir “No puedo hacerlo”, aunque estuvo muy cerca
Historia de la fundadora: volver al principio
- ¿Cómo lo logró? Aquí hace una pausa y vuelve hacia atrás por un momento
- Personalmente creció en un entorno académico y estudió Filosofía, Política y Economía en Oxford
- Por recomendación de sus padres, intentó seguir la ruta de banca de inversión para tener estabilidad financiera
- Pero empezó a cuestionar esa carrera y rechazó la oferta después de graduarse
- Decidió aprender a programar en el bootcamp de software Makers Academy en Londres
- Entró con la meta de adquirir habilidades básicas de programación para poder comunicarse con desarrolladores
- Rompió sus estereotipos sobre los desarrolladores, descubrió el valor de programar y se involucró de lleno
- Después de graduarse de Makers Academy, entró a trabajar en Pivotal Labs
- Durante un año y medio trabajó en la plataforma Cloud Foundry
- Después fundó con su colega Theo Christian una empresa de consultoría y desarrollo de producto llamada Ignition Works
- En esa época se interesó por el movimiento FIRE (independencia financiera y retiro temprano)
- Quería asegurar independencia económica para poder invertir en sí misma y en su actividad emprendedora
- Pero las metas y la alianza en Ignition Works no cumplieron sus expectativas, así que se fue
- Retiró la mitad del dinero de la empresa y consiguió un colchón financiero para 5 años
- Participó en el proyecto Code Newbie junto con su amiga Saron Yitbarek
- Intentaron convertir una comunidad para gente que aprende a programar en una empresa basada en producto, pero fracasaron
- El 3 de enero de 2019, estaba sentada sola en su escritorio pensando en una dirección creativa
- Tenía dinero para aguantar hasta 2022, pero no tenía una gran idea
- Decidió invertir tiempo en dos side projects que llevaba mucho tiempo considerando:
- Runroot: una app que genera rutas para correr automáticamente
- ReadLists: una app tipo dashboard para crear listas de lectura personalizadas y seguir el progreso
- Storygraph nació de la idea de ReadLists, y la manera en que abordó esa decisión fue clave para el éxito de Storygraph
Tres principios
- Todo partió de un enfoque que separaba lo que la fundadora podía controlar de lo que no
- Lo que no podía controlar: tuits virales, nuevos competidores, etc.
- Lo que sí podía controlar: la forma de diseñar la empresa y el producto
- Tres principios principales para el éxito
- Mantener la tecnología simple: usar herramientas estables y maduras en lugar de tecnología compleja
- Hablar continuamente con los clientes: incorporar el feedback de clientes a la mejora del producto
- Mantener los costos bajos: asegurar estabilidad financiera mediante una operación eficiente
Primer principio: simplificar la tecnología
- Siguiendo el primer principio, simplificar la tecnología, definió la siguiente dirección
- Usar tecnologías que ya conocía bien
- Evitar una complejidad innecesaria y usar solo la tecnología mínima requerida para resolver el problema
- Elegir herramientas y plataformas estables, maduras y “aburridas”
- En lo personal, el stack que mejor le funcionaba era Rails
Segundo principio: hablar continuamente con los clientes
- Mientras desarrollaba con Rails, disfrutó el proceso y decidió enfocarse de lleno en un proyecto relacionado con libros
- Para crear un producto exitoso, adoptó el segundo principio: hablar continuamente con los clientes
- La importancia de hablar con clientes
- No hay nada peor que construir un producto que nadie quiere
- Todo el mundo sabe que hay que hablar con clientes, pero lo importante es cómo hacerlo bien
- Preparar un guion y enfocarse en explorar con preguntas abiertas
- Evitar el sesgo de confirmación y centrarse en descubrir problemas reales
- Errores que cometió al principio
- Mostró demos demasiado pronto y no consiguió feedback concreto
- En cambio, usó preguntas abiertas sobre hábitos de lectura, molestias y dificultades
- Revisaba y resumía los resultados de las entrevistas de cinco en cinco, y organizaba los temas en una pizarra virtual
- Desarrollo del producto alfa y beta
- A partir del feedback inicial, obtuvo ideas para funciones útiles, como el servicio de recomendaciones personalizadas
- Muchas funciones iniciales se resolvieron manualmente para evitar desarrollar de más
- Ese fue un ejemplo de aplicación del primer principio, simplificar la tecnología
- Hizo onboarding de usuarios en grupos pequeños mientras seguía recopilando feedback
- Cuando llegó al límite del producto alfa, desarrolló una beta más completa
Tercer principio: mantener costos bajos mientras crece la beta
- El 2 de septiembre de 2019, lanzó la versión beta y animó a los suscriptores del newsletter a compartirla
- Empezó a llegar feedback de forma más seria y contrató a una persona part-time para gestionar manualmente solicitudes de libros
- Seguía operando con costos mínimos y dinero propio, asegurando sostenibilidad con el capital que le quedaba
- Unos meses después, Rob Freelove se interesó en el proyecto y ofreció apoyo en machine learning
- Con su ayuda continuó el desarrollo técnico y mejoró la calidad del producto y la experiencia de usuario
Crecimiento acelerado, regreso de los días oscuros y escalamiento
- Manteniéndose fiel a los tres principios, fue ampliando la base de usuarios lenta pero constantemente, con crecimiento gradual
- El 17 de junio de 2020, el efecto viral en Twitter disparó la cantidad de usuarios
- Miles de personas intentaron importar sus datos de Goodreads y eso sobrecargó el sistema
- Las tareas en segundo plano fallaron y ya no era posible escalar los servidores
- La situación fue abrumadora y pasó por un “momento oscuro” en el que quiso rendirse
- Pero rendirse no era una opción
- Durante dos semanas de “días oscuros”, resolvió problemas clave, entre ellos:
- Reescritura de código
- Upgrade de servidores y base de datos
- Respuesta a nuevos problemas
- Reconoció la necesidad de crecer de forma sostenida y monetizar
- Después de superar la crisis, seguían registrándose cientos de usuarios cada día y el crecimiento por boca a boca continuó
- Cada vez que le costaba tomar decisiones, encontraba dirección hablando con los clientes
- Cuando la base de usuarios ya fue lo bastante grande, empezó a pensar en cómo generar ingresos
Introducción de Storygraph Plus y camino hacia la monetización
- Reducir costos por sí solo tenía un límite, así que empezó a buscar maneras de generar ingresos
- Después de revisar varios modelos de negocio, decidió adoptar un modelo premium con pago directo del cliente (freemium)
- Creó una página de preventa para Storygraph Plus
- Integró pagos con Stripe: al inicio solo se podía pagar en USD y sin suscripción
- Marcaba a los compradores como “Early Bird” en el backend
- Anunció Storygraph Plus por newsletter y arrancó la preventa
- Muchos usuarios querían apoyar una alternativa independiente a Goodreads e hicieron pedidos
- En las primeras semanas consiguió cientos de preventas
- La reacción de los clientes validó la viabilidad de mercado del modelo Plus
- El 1 de enero de 2021, junto con el lanzamiento oficial de Storygraph, cambió el dominio
- Superó los 100,000 usuarios, un logro enorme
- Después de terminar el precio Early Bird, comprobó si la gente seguía pagando la tarifa normal mientras desarrollaba las funciones de Plus
- El 28 de febrero de 2021 (o el 1 de marzo en algunas regiones), lanzó oficialmente Storygraph Plus
- Con 1,400 preventas logró cerca de $50,000 en ingresos
- Incluso después de que la gente empezó a usar las funciones reales de Plus, el interés y la satisfacción se mantuvieron
Desarrollo de la app móvil, migración desde Heroku y crecimiento continuo
- En mayo de 2021, el mayor problema de Storygraph era la ausencia de una app móvil
- Hasta entonces ofrecía una PWA (Progressive Web App), pero los usuarios querían una app nativa instalable desde las tiendas de aplicaciones
- Manteniendo los principios de reducir costos y simplificar la tecnología, usó Rails y adaptadores móviles de Hotwire/Turbo
- Combinó una cantidad mínima de Swift/Kotlin con Ruby y desarrolló y lanzó la app en 6 semanas
- Después del lanzamiento de la app, el número de registros aumentó
- Migración de Heroku a Cloud 66
- Un TikTok viral y el aumento de usuarios dispararon los costos operativos en Heroku
- Costo de servidores en Heroku: llegó hasta $10,000 al mes conforme crecían los usuarios
- Después de investigar plataformas alternativas durante varios meses, Rob decidió migrar a Cloud 66
- El 22 de enero de 2022 se completó la migración a Cloud 66
- Redujo los costos de servidor en 80%, bajándolos a $4,000 al mes y consiguiendo mayor capacidad
- Durante la migración ocurrió un problema que cerró sesión a todos los usuarios, pero se resolvió rápidamente
- El 26 de junio de 2022, Storygraph superó 1 millón de usuarios
- Actualmente:
- 2.7 millones de cuentas registradas
- Alrededor de 25% de usuarios activos mensuales
- 7 millones de visitantes únicos mensuales
- 70 millones de pageviews y 11 millones de requests por día procesados
- Sigue funcionando sobre el mismo repositorio de Rails iniciado en 2019
- Estado de ingresos y costos:
- Costos mensuales: aproximadamente $20,000
- Ingreso recurrente mensual: aproximadamente $60,000
- La rentabilidad ya está asegurada y tanto los fundadores, Rob y Nadia, pueden pagarse un sueldo
Por qué tuvo éxito
- Hubo algo de suerte, pero la clave del éxito de Storygraph fue mantener de forma consistente estos tres principios
- Simplificar la tecnología
- Hablar continuamente con los clientes
- Reducir costos
5 comentarios
Parece que RoR tiene bastantes casos de éxito en comparación con otros frameworks. ¿Todavía vale la pena aprenderlo ahora?
Se siente como si la actividad de la comunidad hubiera crecido de forma impresionante. Parece que esta presentación también se dio en la Rails SaaS Conference, y que exista una conferencia aparte de "SaaS"...
Me llamó la atención que dijera que nunca quiso hacer un negocio B2C y que los costos del servidor fueran más altos de lo esperado.
Como RoR está muy abstraído, me imagino que por temas de rendimiento terminaron usando escalado vertical de las instancias, y por eso el costo del servidor debe ser bastante alto.
Hace un mes se publicó un enlace a un video, Equipo de desarrollo de una sola persona, alcanzar 2 millones de usuarios [video], pero como no había un guion de la presentación, usé Whisper para extraer el guion del video y organizarlo.
También consulten los comentarios en esa publicación.