Ben Craddock has been busy gathering Redstone. He collects blocks of the virtual material from deep within the game world of Minecraft, then pulverizes it into a powder and sets to work.
For most Minecraft players, Redstone might wind up in a virtual torch that will light their way when the sun goes down or open doors to underground traps in the game. But Craddock, 21, who goes by the handle ‘theinternetftw,' has something else in mind: He's trying to engineer a single bit of memory that's small enough to snap onto a 16-bit arithmetic logic unit, or ALU, a key component in a working computer that he's already built out of virtual stone blocks inside the game.
"We have lots of programs designed to [help us] learn to build chips," says Craddock, an undergraduate student in computer science at the University of Georgia, whose Minecraft computer simulation video rivaled Britney Spears in popularity on YouTube last week. "All of them are very clinical. In a game, it becomes a challenge to overcome the limitations. It's a visceral, engaging reaction."
Craddock is one of the growing number of videogamers who are creating computing machines inside virtual worlds. Earlier this year, a gamer built a working computer inside the fantasy strategy and building game Dwarf Fortress. That machine, called the Dwarven computer, is programmable and has 256 bits of memory. (See sidebar.) Two years ago, a French gamer showed a working calculator inside the Little Big Planet game. The Little Big Planet calculator has 1,600 parts, including 610 magnetic switches, 500 wires and 430 pistons - all components from inside the game.
"It's somewhat like using a skateboard to go over a staircase," says Noam Nisan, professor of computer science at Israel's Hebrew University and author of The Elements of Computing Systems, a book that Craddock says inspired his project. "The skateboard is not intended to do that, but you use it that way to show what kind of control you have and the mastery of the platform."
As computers get more complex, some geeks are feeling disconnected from their devices, much like shade-tree mechanics in the age of computer-controlled car engines. Graphical user interfaces, shrinking electronics and increasingly prepackaged hardware modules mean that even extremely computer savvy users know little about how the bits and bytes come together inside the box. The hardware itself is increasingly resistant to the probing of curious geeks who like to open things up: For instance, smartphones and tablets are slowly supplanting traditional PCs but many are sealed and can't easily be opened up.
"It's not users who are choosing that devices be closed up," says Craddock. "It's the way corporate culture is evolving. So a lot of people want to know how to get there from here."
It also means some gamers are turning to what they know best - videogames - to make learning computing fun. After all, they're spending hours upon hours in these games already.
Craddock started playing Minecraft in August, just as the game was blowing up on wikis and social networks like Reddit. Minecraft is an unusual game in that it has been created in Java, is playable on the browser and has graphics that seem at least a decade old in their blocky, pixelated style. Yet the game has proven highly addictive, partly because it's so open-ended: It lets users take its simple stone blocks and create cities, worlds, sculptures or anything else they want.
It didn't take long for him to get hooked on it. But to understand how it turned into a system for virtual mechanical computation, you have to get a little into the lore of Minecraft.
As Craddock moved into deeper levels of the game, he found an interesting material called Redstone. Inside the virtual world of Minecraft, Redstone is a block that has special properties. When it is destroyed, it disintegrates into Redstone Dust that can be used to make wires. A Redstone wire in Minecraft has two possible states: 1 and 0, where 1 is powered and 0 is turned off. (See this explanation about Redstone circuits.)
The next piece to understand is the Redstone Torch. It's an element that acts as a power source.
Now consider how a simple input/output gate is created in the game. Players take an input device built in the game, such as a lever, a button or a pressure plate, and place it on one of the game's virtual stone blocks. The resulting combination can be used to control a number of different outputs, such as opening a door or blowing up a trap.
To take it a step further and build a NOT gate - where if input power is on, output power is off and vice versa - players add a Redstone Torch to the mix. So the combination in that case looks like a input device connected to a generic block with a Redstone Torch on the other end. That module makes its output function like a NOT gate.
(See this FAQ on building logic gates Redstones in Minecraft for a more detailed explanation.)
Once you have NOT gates and other logical gates, it's possible to assemble much more complicated computing devices. After all, the heart of a real computer is essentially a bunch of simple electronic gates that function much like the virtual block-and-Redstone gates within Minecraft.
Like most gamers Craddock figured this out for himself, but as he played hours of Minecraft he started turning to wikis dedicated to strategy and gameplay on how to use the Redstone.
"There were programs on how to find levels within Minecraft that would simulate Redstone and I used that to build my way up to add two-bit numbers and create longer adders."
Craddock used a program called Baezon's Redstone Simulator to put together his ALU. When completed, the Minecraft ALU was 160 blocks long, 110 blocks wide and 10 blocks tall.
Jonathan Ng went even further. Ng, 20, who's studying biochemistry at University College London, created a completely programmable computer inside the game Dwarf Fortress. It took Ng just about a week of planning and then a month of actually creating it inside the game.
"I wanted to learn how computers work but didn't want to really do a physical computer," says Ng. "So I thought, ‘I like to play Dwarf Fortress and no one has done it, so why not create one inside the game?'"
Ng, who hadn't studied computer science at school, learned the components needed to build a computer and then figured out a way to replicate them inside the game. "It's a lot of work," he says. "It's just a crazy, insane project."
But the effort has been worth it, says Ng.
"Earlier computers were a complete black box for me," he says. "But now I see them as very fast automatic calculators."
Learning Through Video Games
For many people, especially parents, video games are useless, unproductive distractions. Hours that could have been spent reading, or practicing a useful skill, are instead frittered away staring into screens in closeted basements and darkened dorm rooms.
But some teachers believe games can offer a rich learning environment. And in-game computers, such as the Dwarven Computer or the Little Big Planet calculator, are some of the best examples of that.
"In many ways, this is an extension of tinkering in one's garage or writing programs and sharing them with friends," says Kurt Squire, an assistant professor at the University of Wisconsin-Madison. "Platforms like these games provide a context to inspire creativity, tools to work with and an audience for your work."
Building such elaborate virtual computers signals the kind of skills that future programmers and computer scientists may need.
"How to start with a simple object and get a complex solution by your imagination alone is the essence of building new things," says Nisan.
Creating a 16-bit ALU in Minecraft has helped him understand computers better than ever, says Craddock.
"When you think about computers and watch the long lines of zeros and ones that the machine has to figure out to give you the answer, it is fascinating to be able to understand the cause and effect where each zero and one turns on and off," he says. "There is this very basic, physical thing happening that makes me want to find a way to reproduce it."
Craddock isn't done with his efforts. Next on his agenda is finding how small he can make one bit of memory so it can fit inside the game. In Minecraft, Redstones can only function in a 300 x 300 square area. Meanwhile, one bit of memory is 15 blocks long.
"I have to make sure all the components fit inside that zone," he says.
Craddock, Ng and other creators of virtual computers are also changing how game designers are creating and viewing video games. The Little Big Planet calculator surprised and thrilled the game designers so much that they decided to include elements in the game's sequel that would make the electronics creation process easier and more social.
"The calculator was certainly a surprise to us. It was very unexpected and inventive," says David Smith, co-designer for Little Big Planet game. "It showed that the community didn't care what the game was supposed to be and found ways of combining what they had to create what they wanted."
Since Smith hadn't designed the game to include the notion of electronics, the calculator had some limitations. "If you wanted to improve an existing level with it, you couldn't. Or if you thought you could count laps with it or find a way to up your score you couldn't," says Smith.
So when he set out to create the sequel, Little Big Planet 2, Smith says he wanted to make sure it supported that kind of mad inventor zeal - while giving inventors the ability to share their creations with others. Smith and his team included animatronic puppets called Sackbots that improved on a version in the original game called Sackboy. In the sequel, Sackbots have circuit boards and electronics that can dictate their behavior and give players greater control over the objects.
Gamers can create artificial intelligence by rigging up the Sackbot circuit board with wires, switches and various logic gates in the game.
Smith says he's can't wait to see what his community of gamers do with the tools.
"There's a playful aspect to this, like playing in a sandpit," he says. "Games can be very powerful that way. It will be interesting to see how complex machines can [come about] inside the games."
But not everyone is as convinced about the potential of learning or changing computing through games.
Impressive as the feat of building computes inside video games may be, there are easier ways to understand how logic gates and computers are built than try to replicate them inside video games, says Nisan.
"It makes it ten times more difficult than it needs to be," says Nisan.
For Craddock, though, his efforts have paid off. Immediately after posting an account of his creation, he got a job offer from a game development studio in Atlanta. Even better, it got his parents, who had been complaining about the time he was spending on video games, off his back.
"My parents are amazed," he says. "My video on YouTube (showing the 16-bit ALU) beat out Britney Spears' video in number of views, but then I lost to Justin Bieber. I don't know what to make out of that."
Photo: The 16-bit ALU inside Minecraft