Pages

Sunday, January 06, 2013

If you can't beat them...




My kids have been playing and talking excitedly to me about Minecraft for several months now. They play it every day, alone and with friends in multiplayer mode. And when they're not playing, they spend an inordinate amount of time either watching youtube videos about it (typically tutorials posted by  experienced players, but also some hilarious musical parodies -- check out "Revenge" below, and also "TNT"), or discussing with friends what they are going to do the next time they play.

As a parent, I have to confess this worried me. This much passion for a video game? I wished they would be this excited about reading books, as I recall being when I was a kid. True, computers or video games were not as common when I was their age, but still, aren't books inherently better because they lead directly to a love of learning? Aren't video games mere amusement? Empty calories for the brain?

Yet, there's another part of me that objects to these fears and resists them. At their age, the books I read were comics (mostly Amar Chithra Kathas). Not because they were educational or helped me improve my reading, but because they were fun, entertaining, engrossing. The joy I derived from them spurred me to read more, and eventually broaden my interests when I was ready to do so. I can trace in my mind a clear, direct path from that joy to many of my current interests and abilities. Pursuing one's interests passionately, with joy, at one's own pace, is a big part of what it means to be a child. They must be given a lot of freedom to play, grow and learn in their own way.

My older kid insisted that I play it for myself to see what is so compelling about Minecraft. Under his expert guidance, I got a taste of it for myself. It is a first-person adventure game. There are weapons (swords, axes, bows and arrows --- no guns!) and menacing creatures to fight (some that are familiar from other contexts: zombies, spiders, skeletons, and some that are quite unique to the game: creepers and endermen), and one has to gather various resources (food, wood, stone, minerals) and craft some of them into stronger tools and armor to fight these creatures. But it is also very significantly about building one's own world, brick by brick, (houses, shops, markets, buildings, entire villages), and about inhabiting and exploring this virtual world with real-world friends.

Minecraft is an independent game originally created by a single programmer (Markus "Notch" Persson) in 2010.  Its retro graphics demonstrate an appealing emphasis on functionality, game play, and interactive story creation, over the slick-looks-but-tired-game-play emerging from the large commercial game design powerhouses these days.

As this article, titled "Why is Minecraft so damn popular?", notes:
It is, first things first (and before I am lynched by Minecraft fans), a good game. Maybe even a great game. It's got an iconic look, it's widely accessible, it allows gamers to create their own stories, and perhaps most engrossing of all, has an initial simplicity and ease of play that quickly gives way to a complexity as deep as the mines you'll soon find yourself digging. 
It is a hugely popular game. It is reported that about 8.7 million copies of the game have been downloaded for personal computers so far (this does not include other platforms on which it is available, such as Xbox, mobile devices and tablets).



There is another aspect of this game that accounts for its appeal. It has been made available as an open-source platform (in the form of the Minecraft Coder Package). Anyone is free to see the source code of the game, and modify it to their heart's content. It's all written in Java, so this is relatively easy to do for anyone with a decent exposure to programming. There is a large and growing community of modders that have created enhancements and imaginative alternative versions of the game.

A couple of days ago, a friend pointed me at a particularly interesting mod that has been very recently released for Minecraft, called ScriptCraft. This mod, created by Walter Higgins, integrates JavaScript into the game and allows players to write small programs (scripts) to automate building tasks while inside the game. I told my kids about it and they were instantly thrilled and wanted to see it.

I've previously introduced them to Scratch, which allows kids to write simple games quite easily using a drag-and-drop graphical interface for programming, so they are already quite familiar with the idea of writing code to make simple games. But this promises to take coding fun to an whole new level.

Due to some compilation challenges I spent quite a bit of time fighting to install this mod. They watched my progress (or lack thereof) in tense expectation, which made it very clear to me how much this mattered to them both. It was rather amusing, actually. The older one shed real tears when the compilation repeatedly turned up 47 errors. And the little one, as he reluctantly went in to have his teeth brushed,  was heard muttering to all who cared to listen, "how come there's only one "javac" on the computer?"

To their immense relief, I did finally get it working. (On the odd chance this is read by anyone else finding it hard to install or modify something for MCP involving new packages, a helpful piece of advice: use eclipse!) The kids are now having fun dropping ready-made cottages, forts and castles in the game, and for now, with my help, modifying their size and shape.

In the weeks to come, I think this could be a powerful motivator for my older one to delve deeper into programming and algorithmic thinking, which would not be too bad a thing...

3 comments:

HitchcockJeremy2014 said...

Great read! As a high school student who also plays this game, i can vouch for it being immensely popular, among boys and girls alike at our age. Minecraft is actually one of the main reasons i became interested in programming, (about three years ago) and since then i have become pretty well versed with java coding. What is really interesting about this game is the sheer amount of "modability," allowing players who are experienced enough to manipulate the game into something totally different from the main gameplay.

One of my favorite mods, called "The Aether Mod" adds a whole new dimension to the game for players to explore. The developers never got around to updating the mod, so i decided to update for my own use for newer versions of the game. while i did fail at this, it became a changing point where i pursued lots of other coding related interests, and on from there.

Bhaskar Krishnamachari said...

Thanks!

I've continued to be really impressed with Minecraft. In the months since this post, I came to understand that redstone in minecraft lets you understand and build digital logic circuits (including AND/OR/NOT gates), something I myself only learned about as a sophomore in engineering college. And with another mod called computer-craft, I was able to show my kids a very concrete application of programming (in Lua) to something of great interest to them (automating the building of structures in minecraft).

divya bharathi said...

The most inspirational and funny video i had ever watched https://www.youtube.com/watch?v=u3UzgFY5sFk