Tech Heroes #1: John Carmack

The science of computing isn’t solely made up of hackers writing code for "serious" applications and technologies—it also includes those who brought computers into our everyday lives. One of these individuals, known primarily in the gaming community, is John Carmack.

You may not recognize his name, but you’ve likely used one of his creations—his games. Commander Keen, Wolfenstein 3D, Doom, and Quake are just a few of his works. But you might wonder, what does gaming have to do with computer science? The answer is simple: games brought computers into most households.

Until the mid-'90s, PCs were an expensive and time-consuming hobby. In most parts of the world, people were reluctant to spend so much money on gaming when consoles were far better suited to the task. However, when DOOM debuted on PCs, it was revolutionary. Consoles couldn’t match its capabilities, and the only way to experience its full potential was on a PC. This increased demand, which in turn drove prices down.

Before Carmack reached the greatness of DOOM, he wrote countless lines of code. He began developing his first games for a magazine, where he met John Romero. At that time, smooth scrolling on PCs was something no one had achieved, and NES games were envied for their fluid scrolling. Unlike PCs, which were primarily designed for tasks like Excel, NES consoles had the hardware to accomplish this.

Carmack struggled but ultimately succeeded in achieving smooth scrolling even on a PC. He was so excited about this breakthrough that his first demo was the initial level from Super Mario Bros. 3. He thought Nintendo would be interested, so he showed them the demo, hoping to secure permission to create Super Mario Bros. 3 for PCs. However, Nintendo declined, wanting Mario to appear only on their hardware for obvious reasons.

Carmack’s achievement, smooth scrolling, led to the creation of a new PC hero: Commander Keen. In this game, Carmack utilized the technology he had developed, forever changing the landscape of gaming on PCs.




However, this first achievement did not satisfy his hunger, and soon gamers were enjoying a new game titled Wolfenstein 3D. In it, Carmack gave players the illusion of three-dimensional space by using raycasting technology. This technique relies on a 2D map of the area the player is navigating, and based on the player’s position and viewing direction, it calculates distances and renders walls in the correct proportions to appear 3D.

His next project would leave the entire world in awe and forever change gaming and computers. The phenomenon of DOOM in 1992 was the result of implementing in real code a method that had existed since the 1960s, known as Binary Space Partitioning (BSP). Using this technology, he created yet another 3D game—though not truly 3D—that left everyone speechless.




However, such a persistent programmer would certainly not want to settle for something that was 3D but not truly 3D. So, for the first time in 1996, with Carmack's blessing and his equally blessed code, we all saw what true 3D on a PC really meant.

With the money he earned from his discoveries, he founded an aerospace company and collaborated with NASA. Recently, he has been focused on virtual reality and the potential of Oculus Rift.

John Carmack writes code non-stop. In fact, legend has it that his ideal vacation is when he can isolate himself in a room with his computer, so he can write code undisturbed.

He is a strong advocate for open-source software, and many of his creations have become open-source, allowing them to live on for 20+ years after their creation. To understand what I mean, one can simply play Brutal Doom.




At 47, he still has plenty of time to provide us with more of his algorithmic achievements, especially in the field of virtual reality, which he has been exploring in recent years.