A common topic on HN is "teaching kids to code". I can think of no better environment for this than Minecraft + ComputerCraft. One of the most difficult challenges is getting kids interested in coding. Kids have a short attention span, so if you can't do something interesting in a relatively short time frame, they lose interest. ComputerCraft is great because A) I have yet to meet an 8-14 year old who isn't content to play Minecraft for hours, and B) ComputerCraft allows you to do a lot of very cool stuff that this demographic finds immensely rewarding. When you combine the willingness to spend long periods of time focused on a single task with creative inspiration of Minecraft, you have a winning combination.
When I was a kid, I got to take some Logo programming classes at Purdue. I can't imagine how much more intuitive and visceral it would have been if we'd had Minecraft instead of blank white screens.
I happen to play Minecraft now, and I just finished writing a 3D Perlin noise generator in Lua so that my turtles can build structures with some randomization. I'll be adding code to pixellate my smooth, mathematical paths into minecraft blocks using Bresenham's line algorithm. I've also written programs to do highly efficient mining with minimal effort on my part. I've seen programs written by other people that control a fleet of turtles from a central computer, and programs that run complex farming operations. There's so much breadth of possibility with something like Minecraft and ComputerCraft.
If Minecraft is like playing with Legos online with your friends, ComputerCraft is like Mindstorms. I envy the kids who start out on this stuff.
This is awesome, but it's unfortunate that the UI for developing CC code in-game is so primitive. I quickly discovered where my code was stored on the filesystem so I could code using gvim instead, outside of the game. It's a bit of a hassle pausing the game to code and switching back to test, but it's better than editing in-game.
Timo Reunanen has developed a VI-editor for Computercraft :)
Remember that Computercraft can't catch th Keyboard-Escape-key, since it's used by the Minecraft-menu, so the Control-key is used instead.
https://github.com/parkerkane/cpapi
I developed a web based door-locking-system for Minecraft using Computercraft.
Players could enter their personal floppy disc into the drive and a HTTP-GET command was transfered to my LAMP-server where i stored the User-rights.
Different doors could have different security-levels that only some players had access to.
The response from the HTTP-GET would tell if the user had right to open the door or not.
It's a cool system, but pretty clumsy. It's annoying to carrying around a floppy-disc all the time.
8 comments
[ 0.24 ms ] story [ 32.9 ms ] threadI happen to play Minecraft now, and I just finished writing a 3D Perlin noise generator in Lua so that my turtles can build structures with some randomization. I'll be adding code to pixellate my smooth, mathematical paths into minecraft blocks using Bresenham's line algorithm. I've also written programs to do highly efficient mining with minimal effort on my part. I've seen programs written by other people that control a fleet of turtles from a central computer, and programs that run complex farming operations. There's so much breadth of possibility with something like Minecraft and ComputerCraft.
If Minecraft is like playing with Legos online with your friends, ComputerCraft is like Mindstorms. I envy the kids who start out on this stuff.
https://news.ycombinator.com/item?id=6391122
It's a cool system, but pretty clumsy. It's annoying to carrying around a floppy-disc all the time.