Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Learn to program with Minecraft : transform your world with the power of Python
Richardson C., No Starch Press, San Francisco, CA, 2015. 320 pp. Type: Book (978-1-593276-70-6)
Date Reviewed: Jul 21 2016

Minecraft is a very popular virtual world video game with a user base that exceeds 100 million registered users. Python is an open-source, interpreted programming language growing in popularity because of the number and variety of open-source extensions supporting applications in data analysis, data visualization, web scraping, machine intelligence, web development, game development, and scientific programming, just to name a few. This book brings the two together. It is at once an introduction to the Python programing language and a tutorial on how to use the Minecraft Python library to interact with Minecraft through a Python program. As an introduction to Python programming, the book covers the language from the very basics of variables and control structures, to functions, modules, and even some object-oriented topics. As a tutorial on the Minecraft library, all of the examples are done with Minecraft. However, the book assumes that you are already familiar with Minecraft. And if you are not, you will need to purchase a copy, buy some Minecraft tutorial books, and familiarize yourself.

There are many positive things to say about this book. It is well written, well edited, and well produced. It has an abundance of clear illustrations that are largely screen shots from Minecraft. There is also an abundance of code examples that are color coded according to IDLE standards so the code in the book will look exactly like the code you type in. The book is a series of exercises that are clearly explained and of incrementally greater difficulty. At a time when many Python books have a “thrown together” feel, this book is refreshingly well done.

But, it is not without potential drawbacks. If you are not familiar with Minecraft, you may have to put this book aside and learn a bit about it before you can proceed. In addition, you have to buy a copy of Minecraft and install a number of other pieces of software including Python 3.5 or higher and the Minecraft library. None of this creates an onerous burden except for the fact that the full set of skills needed generally doesn’t reside in a single person. That is, people who are familiar with Minecraft are probably not familiar with Python, or its libraries and installations. People who are familiar with Python are not likely to be familiar with Minecraft. Why is this? The average Minecraft player is around high school age whereas the average Python programmer is well above that.

Is it worth learning Minecraft in order to learn the Python library for Minecraft? The short and unsatisfying answer is that it depends. Some people do not like video games and/or virtual worlds. They are not excited with the visual experience of a 3D world or the psychological experience of presence in a virtual world. For them, this represents an onerous learning curve with little payoff. But still, there is something to be gained. It is fun to create 3D graphics, and scripting them adds a whole new dimension of possibilities. If you subscribe to the view that, eventually, all computer interfaces will grow from 2D point-and-click interfaces to 3D virtual world interfaces, then this is an opportunity to get a little ahead of the curve.

So, who is this wonderful book best for? Perhaps if you are a Minecraft wizard who wants to learn Python to automate tasks in the virtual world, then it might be perfect for you. If you are a Python programmer who wants to learn about building in a 3D world, then it might be for you also. But, it seems like the best target audience would be a high school or undergraduate class in which the students are quite likely to be familiar with Minecraft already and you wish to leverage that knowledge to teach them programming. In that case, this book is clearly a good fit.

More reviews about this item: Amazon, Goodreads

Reviewer:  J. M. Artz Review #: CR144617 (1610-0724)
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
General (D.1.0 )
 
 
Computer Science Education (K.3.2 ... )
 
 
Games (K.8.0 ... )
 
 
Computer And Information Science Education (K.3.2 )
 
 
General (K.8.0 )
 
Would you recommend this review?
yes
no
Other reviews under "General": Date
Problems in programming
Vitek A., Tvrdy I., Reinhardt R., Mohar B. (ed), Martinec M., Dolenc T., Batagelj V. (ed), John Wiley & Sons, Inc., New York, NY, 1991. Type: Book (9780471930174)
Aug 1 1992
KNOs: KNowledge acquisition, dissemination, and manipulation Objects
Tsichritzis D., Fiume E., Gibbs S., Nierstrasz O. ACM Transactions on Information Systems 5(1): 96-112, 1987. Type: Article
Nov 1 1987
Programmer perceptions of productivity and programming tools
Hanson S. (ed), Rosinski R. Communications of the ACM 28(2): 180-189, 1985. Type: Article
Jul 1 1985
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy