Buscadores de bugs: el malo final es encontrar el error de los 500 millones de dólares

bug-videojuegos-lenovo

La palabra bug, utilizada por Thomas Alva Edison hacia 1878 refiriéndose a interferencias o mal funcionamiento de un componente electromecánico, ha pasado de ser ese duende intangible que trasteaba bajo la maquinaria a convertirse en el santo grial de la programación: un programa o producto tecnológico sin bugs es un programa difícil de vulnerar, hasta el punto de ser prácticamente indestructible. Pero eso es, la mayoría de las veces, mera utopía.

En la última década se han estandarizado una serie de prácticas donde se promueve el hacking ético: expertos reciben una gran suma de dinero y reconocimiento público a cambio de encontrar exploits y vulneraciones en software de uso masivo. El hacker, como tal, siempre ha existido, adscrito tanto a la ingeniería inversa como al hecho mismo de analizar, alterar e incluso mejorar el comportamiento de algún programa informático. En los años 80 fueron figuras relevantes de la cultura pop que vendían sus hallazgos al mercado negro, cotizados en las plantillas de las mejores empresas. Hoy día trabajan como autónomos a los que se les solicita eventualmente sus servicios.

bounty

Cazando al bicho

Como dejaba entrever este hilo de Reddit, no nos creamos que trabajar en descubriendo y comunicando bugs, por su condición exótica, supone una vida de riquezas y éxitos. La mayor parte de tiempo observas código bien ensamblado, cosas que funcionan como deben. Es quizá ese pensamiento lateral y un tanto perverso de querer encontrar los agujeros, como encontraría una araña para vivir en un cuarto de baño, lo que lleva a vulnerar el sistema.

Pese a que la mayor concentración de cazadores de bugs se encuentra en India, como exponía este artículo, esta es una labor social que abarca cada rincón de los cinco continentes. Son Jóvenes, sin empleo en la mayoría de los casos —aunque con buenas ofertas tras sus descubrimientos—. La industria necesita de su curiosidad y sus conocimientos para poner sobre seguro sistemas que usamos millones de personas. Nada es invulnerable, pero estos superhéroes del código velan por nuestra seguridad y, de paso, nos enseñan que existe una forma positiva de sacar partido a los errores y defectos del prójimo.

La mayoría de programas publicados han pasado por ciclos de beta testing, donde se han forzado ciertos comportamientos —entrar y salir de algunos elementos del menú o, en el caso de videojuegos, forzar mecánicas de salto, disparo y comprobar si el motor de colisiones hace aquello que se le pide cuando intentamos atravesar zonas o texturas—. Y, aún tras estos procesos, siempre quedan flecos o puntos donde el hacker avezado sabrá hacer palanca y hurgar desde dentro.

Bug bounty

¿Hacker, cracker o tester? Diferentes ideologías, diferentes oficios

Recompensar con grandes sumas de dinero a los hackers que encuentren vulnerabilidades en sus sistemas es una tendencia relativamente actual. De hecho, los bug bounty programs no empezaron hasta 1996. Por un lado, se ahorran horas y horas de testing lanzando alphas y betas públicas, donde algún especialista aprovechará para hacer de las suyas. Por otro, se recompensa al cazador para que no especule con la información y pueda facilitársela a competidores u otros crackers que sí quieran lucrarse personalmente del hallazgo, por ejemplo, en casos de brechas en la seguridad de páginas de bancos y de control de datos.

Hay que dividir, por tanto, la profesión del cracker, aquel que motivado por fines lucrativos, políticos o el mero hecho de poder hacerlo, frente al hacker, que en muchas ocasiones se trata de simples aficionados con altos conocimientos en algún campo concreto de la programación. Los primeros trabajan en comités, organizaciones independientes o de manera privada. Los segundos, bajo el amparo de la ley. Aunque a veces convergen los dos casos cuando se trata de abandonware.

Abandonware

De igual manera, no hay que confundirse con el rol del testeador, parte inseparable de la escaleta de desarrollo de un producto tecnológico —aunque en videojuegos de bajo perfil como Fez, el propio Phil Fish, creador total, confesaba que asumió esas tareas consumiéndole hasta 2 años de vida—. En los proyectos de presupuesto ajustado, el beta testing se lleva a cabo por colaboradores subcontratados, como en los servicios de doblaje y localización, en rondas breves donde no se paga tanto la hora como los resultados. En cambio, en juegos de gran presupuesto, los servicios se llevan a cabo por un equipo de diseño/producción específico. Como decía el profesional Jason W. Bay en su libro ‘Land a Job as a Video Game Tester’: «cuanta mayor es la experiencia, antes detectas los fallos».

Debido a la mitología del propio oficio —¿Cobrar por jugar? ¿Dónde firmo?— se tiende a deformar este trabajo, cuando en realidad es mucho más tedioso de lo que parece: pasarse una y otra vez el mismo nivel, jugar bajo parámetros aleatorios, muchas veces en mapas sin texturizar o iluminar correctamente… No es un sueño hecho realidad. Por otro lado, gracias a la posibilidad de escalar o corregir los juegos a golpe de parche programado, el betatester se está transformando en algo así como un corrector de textos en tiempos de prensa editorial online. Son los propios jugadores, enviando cientos de datos a telemetría, a servidores inteligentes, los que cumplen esa función.

Soy betatester, a qué quieres que te gane

Fijáos por un segundo en el vídeo de más arriba. Se trata de un documento histórico, en clave de publirreportaje, el cual recoge el día a día de un tester de videojuegos, en concreto una plantilla de 16 expertos trabajando para SEGA of America. Este vídeo arroja, con el sentido del humor típico de la época, el tedio y el desasosiego que supone dedicar cientos de horas a probar niveles en busca de un bug traicionero que se le escape al diseñador, un plano de cámara roto, una curva de dificultad excesiva, una mecánica que no encaja, lo que sea.

En él se explican las rutinas de oficina —fichar, coger el material a testear, tomar café, jugar un rato, experimentar y forzar los límites de la máquina, tomar más café, seguir jugando, beber litros de café— y se apuntan hacia elementos clave del desarrollo: es en esta etapa de feedback donde se perfilan las líneas de marketing, donde se deciden si algunos elementos definitivamente no encajan y deben ir fuera, e incluso se salvan los muebles frente a videojuegos que no las tienen todas consigo.

Betatesting

El betatester, además, supone uno de los oficios peor pagados de toda la cadena de desarrollo —habrá quien argumente que no crean, sólo prueban, y gozan de ese privilegio antes que nadie— e incluso, aunque hayan encontrado el bug que lo rompe todo, su hallazgo será evaluado para considerar el nivel de peligrosidad del mismo. Si erradicarlo implica más trabajo que dejarlo tal y como está, y las deadlines del proyecto están muy ajustadas, el error se quedará para los anales de la historia.

Dijo un experto del medio que los beta testers son «los fantasmas de la creación», aquellos que se quedaron a un lado y durante varias décadas —no fue sino hasta los 90 cuando introdujeron sus nombres en los créditos de los videojuegos— y que eran un punto de agarre clave en el desarrollo: lo que llegaba a nuestras manos pasaba antes las suyas. Sega dejó de desarrollar hardware, cerró oficinas en varios países e imagino que los cardados sufridos de esos vídeos ya no son ni la sombra de lo que eran, pero estos héroes en nómina han llevado al videojuego hasta el nivel de perfeccionismo en el que nos encontramos actualmente.

Niveles

Mamá, quiero ser testeador

Como apuntaba el insider Brian Baglow en este artículo «el sector del videojuego que conocemos y amamos no es famoso por sus profesionales, su enfoque hacia las personas». De igual manera que en el cine apenas se tiene constancia del nombre del director del proyecto o simplemente de los actores y no del director de fotografía o el guionista, en los videojuegos las personalidades quedan relegadas a un puñado de nombres clave. Los testeadores, como decíamos, no son valorados por los jugadores debido al anonimato al que han sido sometidos durante años. Pero eso no significa que sea un mal oficio, más bien al contrario.

Para empezar, como apuntan en este sumario, no necesitas una formación específica para ser testeador. Se valora la formación específica en programación y diseño, pero se valoran aún más los años de experiencia en el sector. Un debutante puede pasar de los 15.000 euros anuales hasta los 40.000. Tal y como indican estas gráficas, este es un segmento bastante polarizado, donde la mayoría de testeadores son de género masculino, operan a tiempo completo en su sector y los salarios medios están en torno a los 35.000 euros.

Los que prueban, sin duda, se quedan. Existen casi el doble de testeadores de alto perfil que de bajo perfil. Alto perfil hace referencia a aquellos que han trabajado en el mismo espectro laboral durante una horquilla de 3-6 años. Estos pasan de facturar unos 8 dólares la hora a 14 dólares, duplicando el montante anual.

Gráfica

Este otro artículo arroja luz sobre los factores determinantes para lograr los mejores sueldos: cuanta mejor reputación logras, puedes acceder a mayores empresas, donde llegan a pagar hasta 16 dólares la hora, sumando que algunos estudios costeen seguro médico y dental. Por otro lado, los milestones –las metas para bonificaciones— se han convertido en una práctica habitual, donde los productos comercialmente exitosos podrían lograr «bonificaciones de hasta el 40-50% de ingresos extra del salario base». Nada mal, ¿verdad?

Laeny9O.png

Riqueza para unos, pérdidas millonarias para otros

En la industria de los videojuegos, un glitch o error programático puede dar lugar a una riquísima mitología. No en vano conservó Nintendo a su famoso MissingNo —en referencia a un número Pokémon no encontrado—. Hasta fue objeto de estudio, donde el sociólogo William Sims Bainbridge declaró que el estudio creador de Pokémon, Game Freak, había diseñado de manera consciente «uno de los más grandes y populares errores de programación en la historia de los videojuegos», apelando al uso creativo y lucrativo que los jugadores daban de él. Nintendo ha dejado dicho error en las ediciones posteriores de las versiones digitales de Pokémon.

No fue así con el E.T. the Extra-Terrestrial (Atari, 1982), que publicó Atari con las prisas de la campaña navideña y sin pasar los test de calidad pertinentes a un juego de gran presupuesto. El diseño intrincado del mapa en forma de cubo provocó que muchos usuarios lo devolviesen a la tienda, alegando que era defectuoso. Indistintamente de que el manual del juego argumentara sobre ciertos “errores”, el efecto bola de nieve contagió a miles de clientes insatisfechos. De los casi 5 millones de copias que Atari fabricó del juego, sólo logró vender 1.5 millones. Hacia el final de 1983, Atari había registrado unas pérdidas de 536 millones de dólares.

e.t._atari

Y aún con todo, no estaríamos hablando de un juego imposible en términos funcionales. Superman 64 (Titus Interactive, 1999) salió a la venta con tantos bugs que actualmente ostenta las puntuaciones más bajas en publicaciones especializadas. Otros juegos como AirWolf (Kyugo, 1988) ni tan siquiera permitían llegar al final del mismo en su versión para Amstrad CPC.

El uso “positivo” o “negativo” del conocimiento de bugs es, en muchas ocasiones, una cuestión moral. Muchos hackers derriban servidores para demostrar su vulnerabilidad, dándole un cariz punitivo a la situación. Tal es el caso del pain-in-the-butt conocido ‘geohot’, alias de George Francis Hotz. Con apenas 17 años fue capaz de desbloquear el iPhone de Apple para que pudiera utilizarse con otras operadoras ajenas a la exclusividad de AT&T. Es autor del popular Jailbreak, del primer hack oficial de la impenetrable PlayStation 3, creando hasta un sistema operativo desde el que jugar a emuladores, crear copias de seguridad, etcétera. Se marchó de las filas de Facebook tras menos de un año trabajando para ellos.

Hotz Social

George Hotz desde su hotzcueva

Como firme defensor de la libertad —que se traduce, según Sony, en pérdidas millonarias y el lucro del usuario de a pie— George Hotz creó la aplicación Towelroot, mediante la cual se podía rebootear cualquier terminal Android con facilidad, razón por la que Google le ofreció un puesto de trabajo. Y después dio el salto a un sistema de automatización inteligente de vehículo, creado de manera completamente casera, para competir con los prohibitivos precios de la actualidad y demostrar que su Comma.AI puede superar la tecnología actual.

Porque encontrar el “bicho” sólo es un primer paso: después hay que saber qué hacer con él.

Etiquetas: