Un DM17 y un cañón de riel era todo lo que realmente necesitaba en el año 2000. Pasé cientos de horas corriendo, saltando y apuntando en un juego de disparos en tiempo real de ritmo rápido que el mundo no había visto antes. Disfrutar de la mejor forma de entretenimiento informático de John Carmack que era incluso mejor que GTA 2 en su momento.
Al mismo tiempo, quería ganar mi primer dinero. Deseaba poder comprar libros sobre programación de juegos 3D como Quake. No había Internet en el sentido en que lo conocemos ahora. Solo había un foro en línea sobre la demostración, donde la gente compartía animaciones 3D alucinantes, pero en realidad no compartían cómo hacer esas cosas. Era el momento en que se estaba formando la industria polaca de juegos en 3D. Algo contribuyó a la fundación de algunas compañías increíbles como CD Studio Red con creaciones monumentales de The Witcher y Cyberpunk.
Las bibliotecas no ofrecían nada más que libros sobre microprocesadores y ensambladores. Comprar libros de codificación era mi única oportunidad de seguir adelante con mi pasión por el desarrollo de juegos. Eran caros, así que tuve que ganar dinero cuando era adolescente.
No fue fácil en una ciudad poscomunista de tamaño medio en el centro de Polonia. Un país que fue drenado por años de ocupación rusa, con altas tasas de desempleo y por detrás del mundo en casi todos los aspectos.
Mi única oportunidad era usar mis habilidades informáticas para obtener ganancias. Después de evaluar mis opciones, llegué a la conclusión de que la forma más cercana que puedo encontrar es cosechar fresas en una granja cercana.
Cuando estaba a punto de hacer otro viaje a un trabajo sabroso pero no rentable, noté en un periódico (internet antiguo) una lista de que alguien estaba buscando un técnico de TI que pudiera crear un sitio web.
Sabía tanto sobre la creación de un sitio web como sobre la cosecha de fresas, por lo que se hizo evidente que tenía que contactar a la empresa detrás de la lista.
Resultó que era un fabricante local de comidas listas para comer. Tomé un autobús y viajé a los suburbios con mi dinero de fresas para encontrarme con la dueña, una mujer de mediana edad. Después de la presentación, me explicó que quiere recibir pedidos a través de Internet. Si bien no sabía mucho sobre la creación de sitios web, sabía cuál era el estado de la llamada WWW en ese momento. Sabía que era imposible lograrlo con las primeras versiones de Javascript. Nadie lo estaba haciendo. Ella debe haber estado loca.
Así que ahí estaba yo. Sentado en un autobús rumbo a casa con un pago por adelantado de mi nuevo libro y 30 días antes de la fecha límite.
Pasé días y noches tratando de descubrir cómo recolectar pedidos a través de Internet. Estaba aplastando pato tras pato sin respuestas. Finalmente, con un poco de magia que no entendí y una cinta adhesiva, pude configurar el sitio web. Pero había un problema.
Los productos estaban en diferentes formas. Había pierogi y kiełbasa. Había sopas. Diferentes productos, diferentes unidades, diferentes paquetes y complementos. Tuve que codificarlo en una versión pura y muy temprana de JavaScript. El código era un desastre. Y no funcionó correctamente.
Por ejemplo, cuando un usuario eligió un kiełbasa, de repente su unidad cambió a mililitros y se ofreció la opción de elegir el relleno de fresa.
En ese momento, los navegadores no ofrecían herramientas para desarrolladores. No había forma de configurar herramientas como Sentry para investigar lo que estaba sucediendo.
Solo fuiste tú, felizmente sin tener idea de lo que estás haciendo y Javascript que felizmente asumió que sabes lo que estás haciendo. Y estábamos allí mirándonos felices disfrutando el concepto de gente pidiendo kiełbasa rellena de fresa.
Gasté todo mi dinero y tuve siete días para conocer a la mujer visionaria. Esperando volver a los campos de fresas para devolver el pago por adelantado, hice lo que todos harían. Empecé Quake III para divertirme antes de mi fracaso final.
Abrí la consola y escribí /cg_fov para ajustar mi campo de visión para más fragmentos. Sorprendentemente, en ese mismo momento, sentí que escribí /cg_fov universe. Un pensamiento golpeó mi mente que era loco y hermoso al mismo tiempo. ¿Qué pasaría si pudiera agregar una consola a la aplicación? ¿Qué... qué pasaría si pudiera llamar a los comandos en el navegador que generan valores de variables en cada paso del procesamiento del código? ¡Pude ver dónde ocurren los errores y por qué kiełbasa se reconoce como pierogi!
Cerré Quake y comencé a codificar. Me llevó seis largos días resolver todo y configurar la consola. Era un campo de entrada con un botón. El botón pasó el comando al código Javascript. Luego, el código lo ejecutó y agregó el resultado a un elemento div en el sitio web. Un día antes de la fecha límite estaba listo para probarlo. Llamé a un comando /show_log e inmediatamente la página se llenó con todos los datos y pasos que hizo el algoritmo para asumir que kiełbasa es pierogi.
Después de probar durante varias horas, finalmente logré corregir todos los errores en el código. Funcionaba perfectamente. ¡Y la consola me permitió probarlo!
Volví a la empresa con el proyecto final orgullosa de mi creación. El propietario de la empresa odiaba los colores de la aplicación y tuve que trabajar otro mes para encargarme de eso.
Pero finalmente, aceptó el proyecto. Hasta donde yo sé, fue la primera empresa que aceptó pedidos de comidas preparadas a través de un formulario en línea basado en condiciones. Pude comprar otro libro sobre codificación de juegos en 3D y me metí en el desarrollo web.
Entonces, esta es la historia de cómo Quake me ayudó a depurar mi aplicación. También es una historia que a veces vale la pena aprovechar las oportunidades, incluso si no estás preparado para ellas. Para mí, fue el comienzo de mi exitosa carrera de codificación.