small medium large xlarge

Learn to Program with Minecraft Plugins: new edition for CanaryMod; October PragPub

October 01, 2014

In May this year, we published a book aimed at helping kids learn how to program in Java, using the Minecraft game. Parents and educators flocked to the book, and eager kids around the world started writing Java plugins using the popular Bukkit library.

But then in September, 2014, the Bukkit library disappeared, apparently the victim of copyright dispute from a former developer. The server portion of the library (CraftBukkit) was removed from the Bukkit site, github, and other sites.

We here at, however, are agile publishers. So it is with great pleasure we present the new second edition of our very popular book, Learn to Program with Minecraft Plugins: Create Flaming Cows in Java Using CanaryMod, now available in beta from

This new edition of the book has been thoroughly revised and updated to use the CanaryMod library and server, available at The beta version is available today, and will be in print around the end of the month.

Any readers who purchased a paper book or an ebook directly from will receive a free upgrade to the ebook of this 2nd edition.

Learn to Program with Minecraft Plugins (2nd edition): Create Flaming Cows in Java Using CanaryMod

Expand your Minecraft experience! You’ll learn how to write Java code and build plugins for your own Minecraft servers using the popular Java programming language. This new edition has been completely revised to use the freely available CanaryMod library.

You'll create plugins that can change blocks from air to stone, or spawn cows and creepers. You'll write plugins that react to game events, and even schedule tasks that will run later in the game. Readers from age 9 to 99 will learn how to use variables and functions to build plugins that fling players into the sky, create flying creepers, and of course, shoot flaming cows.

Along the way you’ll learn real programming using Java, from classes, objects, and data structures (including arrays and hashes) to exception handling and threads. You'll even learn how to back up your code (and go back in time!) using Git, and run your own server at home or in the cloud. A progress bar shows you how far you've come in each chapter, and by the end of the book you'll be able to design and code your own plugins.

Put your gaming to good use, and learn real programming skills today.

Now available in beta from

October PragPub Magazine

This month in PragPub we explore a new language and learn how to be more efficient with a familiar one.

Say you want a functional language that compiles to JavaScript. Say you want it to have a pleasing syntax and the key features of functional languages. Maybe you want a good type system but you also want the ability to compile to tight loops. The interface to existing JavaScript code should be simple and straightforward, and at the same time the syntax should be as close as possible to purely functional logic, in the mode of Haskell.

You want the purity of undiluted functional programming, the familiarity and broad applicability of JavaScript, and you want it to generate efficient code.

So you look around, and you discover that there is no such language.

So what do you do?

If you’re Phil Freeman, you create the language.

In this month’s PragPub Phil introduces his language, PureScript. Along the way he’ll show you how to get the details of testing out of the way and focus on the logic of the tests. He’ll do it in a way that applies to JavaScript and other JavaScript-compatible languages, but he’ll also be teaching you PureScript.

PureScript is a young language, Phil admits. “It doesn’t have everything right now, but it should serve as a simple core on which to develop new ideas.” We hope you get some new ideas from this article.

Ruby is no longer a new language, and some of its early bumps have been smoothed over. But Ruby code can still be a little slow. Alexander Dymo has been optimizing Ruby code for years, and in this issue he shares some of his insights into how to speed up Ruby. Spoiler: look at your iterators. Look at them really, really closely.

Dan Wolbruck continues his series on the history of programming languages, this time focusing on COBOL. Johanna Rothman has some career advice about mistakes you’ve probably made, and shouldn’t make again. Brian Marick made some mistakes, has learned a lot about refactoring, and still makes mistakes. That’s one of the ways he learns. In this issue, he shares one of those mistakes, and what he learned from it.

There’s more: we reflect on the new social network Ello, for example, and for a little brain exercise, we offer a puzzle. You might do it for fun, but really it’s good for you.

Now available at

Google Drive Support

Good news! In addition to electronic delivery to Dropbox and Kindle, we've added support for Google Drive.

It works the same as Dropbox: you enable it at, and our gerbils will
drop newly generated books into your Google Drive in the Pragmatic Bookshelf folder.

The big benefit of this is reading books on Android devices. Install the Google Drive client and the Google Play Reader app, and your bookshelf books are just a click away.


Upcoming Author Appearances

  • 2014-10-02 Portia Tung, Agile Cambridge, UK
  • 2014-10-06 Janie Clayton-Hasz, 360|iDev Min; Greenville, SC
  • 2014-10-14 Portia Tung, Dare Oslo, Norway
  • 2014-10-14 James Grenning, Minneapolis MN, DevJam Studio
  • 2014-10-16 Chris Adamson, CocoaConf Seattle
  • 2014-10-17 Chris Adamson, CocoaConf Seattle
  • 2014-10-19 Chris Adamson, CocoaConf Seattle
  • 2014-10-23 Johanna Rothman, Agile Hiring Webinar
  • 2014-10-24 Portia Tung, Agile Tour London, UK
  • Don't Get Left Out

    Are your friends jealous that you get these spiffy email newsletters and they don't? Clue them in that all they need to do is create an account on (email address and password is all it takes) and select the checkbox to receive newsletters.

    Are you following us on Twitter and/or Facebook? Here's where you can find us and keep up with the latest news and commentary, and occasional discounts:

    Tell your friends! Tweet this

    Follow us on Twitter: pragprog</a>, <a href="">pragpub, Andy PragmaticAndy</a> and Dave <a href="">pragdave.

    Coming Soon:

    • CoffeeScript: Accelerated JavaScript Development, Second Edition
    • Fire in the Valley in print
    • Arduino, A Quick Start Guide, Second Edition

    Recently Released:

    Thanks for your continued support,

    Andy & Dave
    The Pragmatic Programmers

    Books • eBooks • PragPub Magazine • Audiobooks and Screencasts