In President Obama's 2013 State of the Union address he spoke about increasing the quality of science, technology, engineering, and math (STEM) education in America. It's not surprising, then, that engineering ranks as the second hardest job to fill in America due to talent shortages. The STEM summit in 2010 gave five key strategies to increase the quality of STEM education, one of which I include below:
"Schools, especially those with stretched resources in states ravaged by budget crises, must look to supplement their students learning in informal venues," according to the summit.
Video games have the potential to offer one of these venues because the average American between ages eight and 18 already plays video games for an average of 13.2 hours per week. Recently, several games that include engineering concepts have grown more popular. Some of these games even include programming, circuitry, and microcontrollers, which could spark a new generation of computer and electrical engineers.
My own introduction to programming started with a turtle graphics game over 10 years ago. The premise was simple: you had a "turtle" with a pen as a tail, and you could tell it what to do. I thought the game was fun because I had to think creatively to have the turtle make the shapes and patterns. Little did I know that I learned how to program in Logo, and that the concepts of loops and conditional statements would be so useful later on.
Figure 1.
Minecraft has become the most popular program today that uses engineering concepts. Minecraft operates as an open-world sandbox game where users can gather materials to create 3D structures. A material named Redstone can power many circuit components and can create logic gates, clocks, and oscillators. At the simplest level these components let switches open doors and push mine carts, and people have used them to make intricate 3D printers, graphing calculators, and even working computers.
Figure 2. Minecraft logic gates and building blocks.
Furthermore, Mojang recently released a special version of Minecraft for the Raspberry Pi microcontroller board. While the game provides only a watered-down version of the PC title, it adds an API that lets you change the game's source code. This API encourages programmers to use Minecraft as a sort of fancy GUI, but people can use it in other ways, too. Because the Raspberry Pi has APIs to access GPIO, UART, and I2C pins, you could connect the game to the physical world. Switches in the game might control real appliances, or a temperature sensor could determine the weather in game. The possibilities are endless.
An even more exciting prospect for generating interest into computing and electronics is 0x10c, a game currently under development by the makers of Minecraft. In 0x10c, you control a ship that has a fully functional computer you can program in assembly language. This virtual computer uses a fictional 16-bit architecture that is already fully documented. People have begun writing emulators, games, and utilities for this "computer." Students seldom learn assembly-language programming before college, so a video game that requires its use could provide an amazing tool to generate interest in machine-level computer languages.
When it comes down to it, games like Minecraft and 0x10c will expose today's youth to electronics in the same way the transistor-radio kit or amateur (ham) radio kits have done in the past. They let you feel pride in something that you've made, all while entertaining. One major difference, though, is that these video games are giant worlds of possibility, whereas the transistor radio and ham radio were constricted to kits. Perhaps this open sandbox thinking will create a new generation of creative and thrifty engineers.
What activities helped you develop an interest in engineering?