Carrito de la compra

Romance Dawn

No es fortuito que escriba estas líneas un 31 de Diciembre mientras me tomo un respiro entre el jolgorio característico que precede a las campanadas del nuevo año. Esta medianoche en la que se entrelazan los recuerdos del pasado y los propósitos del futuro es un buen momento para reflexionar y hacer balance. Dicen que la vida es lo que pasa mientras haces planes y no podría ser más cierto, mi panel de Trello es una auténtica locura, siempre repleto de cosas por hacer.


Sin embargo hay una meta que ni con toda la planificación del mundo he conseguido cumplir, un sueño que se sigue resistiendo desde hace 10 años. Esta es la historia detrás de ese sueño, del camino para desarrollar un proyecto. Un proyecto educativo propio que no solo debe ser exitoso, sino que debe proporcionarme la suficiente confianza y estabilidad como para dedicarle gran parte de mi futuro. Y eso, no es nada fácil.



Canal de Youtube

Es 2014 y decido abrir un canal de Youtube llamado Escuela de videojuegos. Después de varios años programando servicios web en mi trabajo necesito un soplo de aire fresco y desarrollar videojuegos es una espinita clavada en mi corazón. No quiero solo crear videojuegos, sino entender cómo funcionan para replicar su funcionamiento. Así es como descubro un programa llamado GameMaker: Studio que aprendo a utilizar leyendo libros. Después de realizar docenas de prototipos, por fin empiezo a entender la magia detrás de los videojuegos y la comparto en varias series de vídeos.


GM:S es un programa genial al que le debo mucho, pero en cierto momento me veo limitado. Su GML es un lenguaje procedimental orientado al desarrollo de scripts, como una especie de C con funciones gráficas. Para alguien con cierta experiencia en la programación, la imposibilidad de aplicar patrones de diseño orientados a objetos es muy desalentador. Este hecho, sumado al lanzamiento de GM:S 2 con un precio de lanzamiento de $99.99 que hasta ahora era gratuito, desemboca en su abandono y un viraje, después de realizar una encuesta, hacia otro motor más potente llamado Unity.


Así es como para finales de 2015 empiezo una nueva etapa donde me centro en compartir tutoriales sobre Unity y el lenguaje de programación C#. Todo funciona medianamente bien pero la realidad es que el motor no acaba de convencerme. Es demasiado complejo, con muchas opciones, su flujo de trabajo se me hace tedioso, actualizar un proyecto a otra versión del programa puede hacer explotar el código y encima se ralentiza muchísimo, teniendo que esperar minutos y minutos solo para comenzar a trabajar y ejecutar un proyecto. Mi ilusión desaparece poco a poco, hasta que llega la bomba.


Un cambio en el algoritmo de Youtube que ahora prioriza la retención de la audiencia por encima de todo. Como mis tutoriales son muy largos, la mayoría de suscriptores entran para echarles un vistazo y seguramente retomarlos más adelante. Esto me penaliza, si un usuario ve 30 segundos de un vídeo Youtube lo considera un fracaso y deja de recomendarlo. Estas dos cosas hacen que abandone el canal, y años más tarde una serie de conflictos de copyright en el audio de la entradilla supone el golpe mortal. Por 5 segundos de audio quieren monetizarme todos los vídeos y yo no lo voy a permitir, antes prefiero borrarlos. Y así, en un arrebato de impotencia y rabia, lo borro todo. Es muy lamentable porque poco después Youtube añade la posibilidad de silenciar trozos de los vídeos. Pero a lo hecho, pecho.



Plataforma educativa

Mediados de 2017, hace un año que he abandonado Youtube y aunque ya no suba vídeos he seguido aprendiendo nuevas tecnologías de desarrollo. Tengo ganas de compartir mis nuevos conocimientos pero no quiero depender de otras plataformas, así que después de no pensarlo demasiado, decido desarrollar mi propia escuela completamente desde cero con tecnologías como Node.js, Vue y Nuxt.


El desarrollo de la plataforma me lleva medio año dedicándome única y exclusivamente a ello. Ahora solo necesito publicar algo de contenido inicial y pensar en un plan para monetizar el proyecto. Dado que tengo muchos alumnos en Udemy se me ocurre crear algún tipo de contenido de programación más genérico para empezar y así es como dedico los siguientes meses a grabar pequeños cursos de todo tipo sobre Python, Django, JavaScript, Node.js, p5.js, Linux... He publicado 17 cursos disponibles de forma gratuita y en este momento mantener la escuela online me cuesta 50€ mensuales.


Como no tengo muy claro cómo enfocar la monetización se me ocurre enlazar un sistema de patrones que actúen como mecenas del proyecto. Por desgracia la cosa no arranca, he pasado casi un año con esto y solo consigo ingresos para pagar una cuarta parte de los gastos. Me resisto a cambiar el sistema de monetización porque ya me he desinflado, a estas alturas estoy muy quemado y empiezo a odiar mi propio proyecto. La aventura de desarrollar mi propia escuela me ha costado cientos de horas y más de 1000€, sintiéndolo en el alma tumbo el proyecto en verano de 2019, ya no me puedo permitir seguir con esto. Necesito descansar.



Curación y redescubrimiento

Ya no tengo ánimos ni fuerzas para continuar con mis proyectos educativos, tengo la horrible sensación de haber tirado por la borda mis últimos 4 años, empiezo a pensar que podría haber invertido mejor mi tiempo. La situación personal tampoco acompaña, sin quererlo ni beberlo me veo inmerso en litigios familiares, la angustia de esperar procesos y resoluciones judiciales no se la deseo a nadie. Para colmo todo el tema de la pandemia y la incertidumbre de no saber qué va a pasar. Estoy triste, frustrado y quemado, necesito alejarme de todo con la esperanza de quizá volver a intentarlo en un futuro ahora distante. Y así lo hago.


Finales de 2021, llevo más de 2 años desconectado sin pensar en proyectos personales, simplemente dejándome llevar. Desde que cumplí los 30 mi estado físico no es lo que era, trabajar mucho, dormir poco, comer mal y no ejercitarme me empieza a pasar factura. El cuerpo no es consciente del estrés al que está sometido hasta que no le das un descanso, y entonces aflora todo. Los problemas para conciliar el sueño y los dolores de espalda se vuelven comunes. Esto no puede continuar así y decido hacer un cambio de 180º.


Recuperar paulatinamente un estilo de vida más saludable me ayuda a abandonar los pensamientos negativos. El ejercicio, caminar y hacer bicicleta, me sirven como vía de escape para canalizar esos pensamientos negativos en energía positiva. Uno no es consciente de su importancia hasta que no experimenta de primera mano como te ayuda. Si te encuentras triste, frustrado o incluso depre, hazte un favor y camina. No solo ha mejorado mi estado mental sino también físico y la mayoría de dolores han desaparecido, duermo mejor y lo más importante, estoy más lucido para tomar decisiones. Consolidar hábitos de vida saludables hace un efecto en cadena que me permite adoptar nuevos hábitos de forma natural.


Así es como inicio un período de redescubrimiento y decido dedicar un rato cada día a aprender cosas pendientes. Empiezo con el piano por mi cuenta, nada serio, solo para disfrutar el proceso. Retomo mis estudios sobre la electricidad y los componentes electrónicos que no veía desde el bachillerato. Incursiono sin darme cuenta en el mundo de Arduino. Esto me lleva a interesarme por la soldadura de circuitos y a comprar algunos proyectos de práctica en AliExpress que exhibo con orgullo en mi postada. Incluso recupero el gusto por el hardware y después de mucho tiempo decido armarme un nuevo ordenador a piezas, algo impensable.


Como si el destino llamase a mi puerta, un día aparece en la lista de tareas una llamada "Aprender sobre los gráficos computacionales". Este es un tema tremendamente difícil y repleto de matemáticas que siempre me ha llamado la atención. Me armo de valor y lo intento, es hora de retomar el álgebra de matrices y aprender de una vez por todas cómo se programa un motor gráfico. Así es como paso los próximos 3 meses documentando todo el proceso de desarrollar un motor de renderizado 3D con C++ y SDL2 sin usar la GPU, de forma muy similar a como funcionaban los primeros videojuegos 3D. Después de mucho esfuerzo y dedicación doy por finalizada esta tarea. Estoy contento, he logrado uno de mis objetivos más complejos. Antes ya entendía cómo funcionaban los videojuegos, ahora sé cómo funciona el proceso de renderizado detrás de ellos y encima he aprendido un montón de C++ por el camino. El gusanillo de los videojuegos, una llama otrora casi extinta, empieza a revivir en mí con fuerza. Quizá ha llegado el momento de retomar mi proyecto educativo, pero esta vez enfocado única y exclusivamente en los videojuegos.



Preparando el terreno

Entre una cosa y otra llega 2023, un año que marca un punto de inflexión. Llevo varios meses recopilando ideas para el nuevo proyecto educativo. Si bien no sé cómo enfocar el tema, sí que tengo muy claro lo que NO quiero y eso ya supone un filtro enorme. En esas ando hasta que llega Marzo de 2023 y sucede algo que pone patas arriba al mundo: el lanzamiento de ChatGPT 4. La revolución de los chatbots y la IA lo sacude todo. Desde el primer momento me interesa el tema y empiezo a experimentar con esta tecnología, viendo cómo puede ayudarme en mis desarrollos con Python. La IA me sorprende tanto que acabo lanzando un curso sobre ello.


Principios de Abril de 2023, después del lanzamiento del curso decido dar un primer paso hacia mi futuro proyecto educativo creando una nueva comunidad en Discord, por ahora de acceso exclusivo a los alumnos de Udemy. Primero invito a los alumnos del curso de ChatGPT y luego de forma escalonada a los demás. Paralelamente empiezo a investigar cómo ha cambiado el mundo del desarrollo de videojuegos. Unreal y Unity siguen siendo los motores más usados, pero ha aparecido un nuevo candidato en escena, uno que ya existía y que ahora, en su versión 4.0 publicada el pasado 1 de Marzo está acaparando miradas, es Godot. Hay dos cosas que me llaman mucho la atención de este motor. La primera es su lenguaje de programación llamado GDScript, prácticamente un clon de Python. La segunda es su filosofía libre. Después de un par de semanas viendo tutoriales y haciendo experimentos tengo claro que Godot es el futuro del desarrollo de videojuegos y nadie me va a convencer de lo contrario, agárrense los machos porque ya tengo claro alrededor de qué girará todo mi proyecto educativo.



Los próximos meses los dedico a hundirme en la filosofía de Godot y su ecosistema, descubriendo todo tipo de funcionalidades de GDScript y otras opciones del motor que pasan desapercibidas. Sigo haciendo tutoriales y experimentos hasta que al final doy con un canal llamado GDQuest. Lo que él ofrece es una fuente de inspiración para mí y un punto de partida. También descubro su plataforma de aprendizaje Learn to Code From Zero with Godot y alucino pepinillos. Años atrás quería hacer algo parecido sobre Python pero no lo conseguí. Necesito saber cómo funciona este proyecto y al descubrirlo me vengo arriba. Decido desarrollar, sin pensármelo demasiado, mi propia versión de esa plataforma interactiva. Paso toda la primavera trabajando en ello hasta lograr un prototipo funcional. Estoy feliz porque he logrado algo que quise realizar años atrás, pero no es suficiente. Ofrecer esa plataforma para aprender a programar con GDScript de forma online me gusta como un apoyo, pero el proyecto no puede girar alrededor de eso, mi experiencia con los fracasos del pasado sabe muy que necesito algo más. Decido pausar este subproyecto y seguir a la expectativa a ver si se me ocurre algo mejor.


Después de muchas vueltas decido una vez más que lo mejor es ofrecer cursos formativos sobre desarrollo de videojuegos, pero vuelvo a los problemas del pasado. Debo mantenerme al margen de otras plataformas pero tampoco quiero desarrollar un proyecto desde cero, necesito buscar algún servicio que ofrezca lo que necesito. Así empiezo una búsqueda de mi servicio ideal, en ella pruebo todos los servicios habidos y por haber. Plataformas como Kajabi, LearnWorld, Thinkific, Teachable... Todas tienen su lado bueno y su lado malo. Algunas son muy caras y otras tienen muchas limitaciones, pero lo que menos me gusta es que los diseños básicos son muy feos y para tener uno a medida debes pagar mucho. Eso me lleva a pensar una aproximación distinta, programar un frontend a medida y delegar la parte de la venta y consumición de los productos. Me pongo a ello e invierto otro mes de mi tiempo en programar todo el sistema con Django, incluso integro la parte de la plataforma interactiva en la propia página web.



Paso los siguientes días redactando términos y condiciones, políticas de privacidad, informándome sobre cómo manejar legalmente una tienda online. Más o menos lo tengo todo listo, solo me falta decidir a quién delego la venta y consumición de los productos. Al final descubro una plataforma llamada Gumroad que permite vender productos digitales, tiene buena pinta así que empiezo a hacer mis experimentos. Por desgracia, aunque permiten vender cursos, el sistema es muy limitado. Si no puedo vender un curso en streaming tendré que vender un fichero comprimido con los vídeos... ¿Qué hago? Esto no me convence y una vez más vuelvo a toparme contra un muro.


Semanas antes de toparme con el muro antes dicho, sucede algo sorprendente digno de mención. El 12 de Septiembre el motor Unity anuncia una serie de medidas muy controversiales, como la implementación de un sistema de pago por descarga y otras barbaridades. La comunidad de desarrolladores de videojuegos se estremece, quejas masivas hacia la compañía por parte de cientos de empresas desarrolladoras. Los usuarios están cabreados y buscan alternativas en otros motores que no hipotequen su futuro. Godot empieza a resonar por todos lados y la gente empieza a conocerlo. Al final Unity da marcha atrás, incluso despiden al CEO que maquiavelicamente había creado tal plan, pero el mal ya está hecho y yo estoy contento, sé que mi proyecto apunta en la dirección correcta, el universo me lo está diciendo. Es solo cuestión de tiempo hasta que consiga dar con la tecla.


Mientras tanto es momento de empezar a pensar en el contenido inicial. ¿Cómo serán los primeros cursos? ¿Qué temas tratarán? ¿Deberían ser técnicos o más bien prácticos? ¿Y si escribo un ebook para regalarlo durante el lanzamiento? ¿Podría hacer algo en conjunto con Udemy? ¿Cómo voy a sacar partido a la comunidad de Discord? Poco a poco el "roadmap" de los próximos años empieza a dibujarse en mi mente, y en un pestañeo, llega Diciembre. Incapaz de encontrar una alternativa a Gumroad me resigno a ofrecer ficheros comprimidos y enfoco mi estrategia en eso. No es lo ideal, pero por lo menos podré ponerme en marcha. Resignado empiezo a escribir un ebook gratuito para los primeros alumnos y entonces... Ocurre un milagro navideño.


El amanecer de la aventura

De alguna forma que todavía no entiendo, buscando por Internet algo que no tiene absolutamente nada que ver, descubro una plataforma llamada Payhip. Es como un Gumroad super vitaminado con amplias posibilidades. Decido probarla y ponerla a prueba durante un día entero, no le encuentro fallos. A cambio de una comisión del 5% puedes vender de todo, incluso cursos en streaming, aunque el hosting de los vídeos va a tu cargo. No hay problema, tengo experiencia usando Vimeo como proveedor de vídeos. Las plantillas del frontend son simples de utilizar y estéticamente se adaptan a lo que busco, me pongo a trasladar todo lo que tengo y en pocos días la web está preparada.


Por fin está hecho. Todos mis años de experiencia, todos mis fracasos, mi esfuerzo y mi ilusión apuntando en una misma dirección. El amanecer de una nueva aventura empieza hoy, un Romance Dawn todavía por escribir.

Acerca de Hektor Profe

Héctor Costa Guzmán (España,1989) es instructor profesional de programación formado en administración de sistemas y desarrollo de aplicaciones. Con 17 años de experiencia en el mundo de la programación y más de 220.000 alumnos en sus cursos de Udemy, actualmente se ha propuesto enseñar los secretos detrás del funcionamiento de los videojuegos gracias al motor libre Godot.