I have a passion to share my love of coding with kids whether it be through Lego Mindstorms robotics, The Hour of Code, or Minecraft. “Wait, did you say Minecraft?” Yep, you read that right. Minecraft! I stumbled upon the Adventures in Minecraft book and and was very excited when I realized that I could insert teachable moments into my boys’ Minecraft gaming experience.
Before I proceed with my review, I have a tiny, little confession to make. I had never played Minecraft before. Sure, I saw the Minecraft screen on my boys’ computers. I knew some of the Minecraft lingo like “spawning” and “Creeper,” but I had never actually logged into Minecraft and tried to play the game in Creative, let alone Survival, mode. So, I ordered the book and bought myself a copy of Minecraft. The things we GeekMoms do for our kids!
Adventures in Minecraft is designed for kids 11-15. Programming is done in Python using the IDLE editor. Students create a local Minecraft programming environment using a Bukkit server to test their programs on. The book walks the student through all the necessary set-up on either the PC, Mac, or Raspberry Pi and starts with programming basics so that even kids without prior programming experience can follow along with the exercises. It is helpful if the student is familiar with Minecraft, but I am proof that you can be successful with this book even if you are new to Minecraft. There are some great beginner tutorial videos out there if you need them. The book also brings some real world results into the exercises through the use of LEDs, push buttons, and a 7-segment LED display. Your program will interact with an electronic circuit! There is also a website that supplements the materials in the book. For example, if you get stuck with a syntax error that you can’t figure out, you can consult the official program listing online.
I decided to work through the chapters in the book slightly ahead of my boys so that I would be available to help them work through any issues they ran into. We started meeting once a week, on weekends, to have a family coding session. The chapters in the book have lots of subsections, and it is easy to find a good place in the book to conclude each session. We code for about 90 minutes each time we get together. I’m honestly not sure who is enjoying these sessions more, me or my boys.
As with most programming languages, one of the first things you do is write a “hello world” program. We all had a great sense of accomplishment seeing the first results of our set-up and programming come alive on the screen. One of us apparently had Star Trek and Lost in Space on the brain too. Why code “hello world” when you can be much more creative!
In Chapter 2, a lot of time is spent figuring out your player’s position in the game. That is, where is the player on the x, y, and z coordinate system? It might be useful to refresh your memory on Cartesian coordinates before proceeding.
And, do make sure to graph out the coordinates of your fence to make sure you understand what coordinates to plug into your program. If your x or z coordinate happens to be a negative number, it will simplify the exercise if you move to a position where all the coordinates are positive, and redo your fence.
I just love the challenge sections in the book too. In Chapter 3, after we learned how to set blocks, it was suggested that we try setting some blocks to SAND or WATER, so I went up in the sky and set one of the AIR blocks to WATER and proceeded to flood my world. I had to call in reinforcements to use buckets to stop it!
Then there was the dice face challenge. I had the hardest time trying to figure out how to add my blocks to the correct position. I just refused to quit, both wanting to set a good example to the boys and also just wanting very much to succeed. I finally did it…in the rain. I know, I know, it’s a rectangle and not a cube, but I still felt pretty good about it!
I found that my Minecraft world was always getting dark or raining, and it impeded my ability to test my code, so I consulted my boys on how to get around that. The command:
/time set day
works great to get back to daytime, and the command:
works great to get rain to stop. You’ll want to keep these in your arsenal of commands as you work through the book.
Houses and More Houses
My boys were sold very quickly on the merits of learning to program in their Minecraft world. When they saw that they could built a huge house in the blink of an eye through a simple program, they were blown away and highly motivated to learn more.
One of the concepts that really differentiates this book from other kids’ programming books is that it includes some electronic interaction with the programming starting in Chapter 5. I ran into a little trouble with the set-up, but it was my own fault for ordering the wrong part. If you are working on the PC or Mac, make sure to order your Arduino Pro Micro board from the correct place.
Soon, I was able to write programs so that when my player landed on a certain type of block in the Minecraft world, various color LEDs on my bread board would light up. How cool is that?!? You do need to consider the additional investment required for the electronic parts which is about $50 depending on whether or not you have some of the parts already on hand, but I think it’s totally worth it!
I’m halfway through Chapter 5, and my boys are halfway through Chapter 3. We are excited to have our next family programming session and to see what is in store for us next. There are nine adventures in the book plus a bonus adventure on the website. If you get stuck, have a cool tip to share, or want to check out the latest changes, like how the new Raspberry Pi 2 will work with Minecraft, you can also go to the Stuff About Code forum.
Interview With Author David Whale
I had a chance to interview one of the authors of Adventures in Minecraft, David Whale. He was kind enough to assist me through a set-up issue I had with my Arduino Pro Micro and then engage me in some additional conversation. I asked him if he had any quotes that he would like to share about why he feels teaching programming to kids is so important and why Minecraft is a great choice to accelerate their learning. He had several which I’ll share with you:
Adventures in Minecraft currently retails on Amazon for $19.07 for the printed book or $13.99 for the Kindle version.