Video: https://youtu.be/InbVSEA8V0U
What do Minecraft and Blockly have in common? Minecraft is a popular, open world video game where players can build structures using digital blocks. Blockly is a open source visual programming language where students can build programs using blocks. LearnToMod combined these together to teach students how to modify Minecraft using either the Blockly visual editor or JavaScript.
This session will be the retrospective of an enthusiastic father teaching his hesitant daughter (who loves Minecraft) about programming. We started with Hour of Code and pair-programmed through LearnToMod’s video lessons. What did we create? How did we like it? What would we recommend to others? Come learn about our experience and ask questions.
Learning to Mod Minecraft: A Father/Daughter Retrospective
1. Learning to Mod Minecraft:
A Father/Daughter Retrospective
Kevin Hakanson
Audra Hakanson
2.
3. Kevin
Father
Sr. Software Architect
20+ years experience
B.A. Comp Sci; Math
M.S. Software Engineering
Daughter
Jr. High Student
First Time Coder
Honors Curriculum
Audra
4. What’s a Retrospective?
Software Development process with goals:
● Learn from experience
● Build on what works
● Gain perspective
● Decide what to do differently
(credit: Esther Derby)
5.
6. • Minecraft Hits One Million Concurrent
Players on PC (Jan 2015)
• With 10,000 ticket sales, 2015 Minecon
earned a Guinness World Record for largest
convention for a single video game (July
2015)
is very popular
7. Denmark in Minecraft
● Geodata for Minecraft
● 4 trillion individual bricks
● Fed topographic map data into an algorithm
that created it in Minecraft automatically
http://eng.gst.dk/maps-topography/denmark-in-minecraft/
8.
9. Mod (or Modification)
The alteration of content from a video game in
order to make it operate in a manner different
from its original version
(Wikipedia)
13. LearnToMod Software
Online and interactive. Mod Minecraft in your
browser. Tutorials and puzzles help you unlock
badges and learn to code.
● Modding Studio
● Private Server
● Lessons
15. LearnToMod with Blocks
Learn to Mod Minecraft
without typing. Learn
coding concepts without
annoying syntax errors.
Blocks are every bit as
powerful as JavaScript,
and they're easier to use.
16. Blockly
Google's Blockly is a web-based, visual
programming editor. Users can drag blocks
together to build programs.
17. Hour of Code (code.org)
Learn the basic concepts of Computer Science
with drag and drop programming.
Learn repeat-loops, conditionals, parameters,
and basic algorithms.
18. Pair Programming
Technique in which two
programmers work as a pair
together on one workstation. One,
the driver, writes code while the
other, the observer, pointer or
navigator, reviews each line of
code as it is typed in.
(Wikipedia)
25. Audra’s Comments
● Learned about different kinds of blocks
● Bug fixing problems were easiest
● Learned how to “read” the blocks and
understand what they would do
● Fun to draw pictures and being able to
create something
30. Write your own Minecraft
plugins and watch your
code come to life with
flaming cows, flying
creepers, teleportation, and
interactivity.
No previous programming
experience necessary
31. Minecraft Server Mod
● Plugin API
● Integrated database and API
● Easy configuration
● Rock solid modding framework
● ...
32. The book is for anyone who
wants to learn how to
modify Minecraft--no
previous programming
experience required!
Aimed at kids who already
play Minecraft.
33. ScriptCraft
Minecraft Mod that lets you extend Minecraft
using the JavaScript programming language.
ScriptCraft makes modding Minecraft easier. It
includes a logo-like "Drone" object that can be
used to build complex buildings, roads, villages,
even entire cities.
72. LearnToMod Private Server
Runs older versions of software
• Not a problem for Blockly mods
• May be confusing for JavaScript mods if looking
at ScriptCraft documentation/examples.
73. Setup Your Own Server
References:
• Setting up a local Minecraft server with
Scriptcraft
• Letting friends play on your Minecraft server
• Sharing your local Minecraft server on the
Internet
http://yiddish.ninja/mc/
74. Retrospective Review
● Learn from experience
● Build on what works
● Gain perspective
● Decide what to do differently
75. Learn From Experience
Blockly is easier than JavaScript
Code.org activities helped
Forgot details after a long break from modding
Minecraft API harder to understand than coding
We could change the “rules” of Minecraft
76. Build On What Works
Helpful to have a partner
LearnToMod
• sets up a server for you
• code in the web browser
• also lets you code in JavaScript
77. Gain Perspective
Some things just don’t work – and that’s OK
• “order matters” – bug in grading
• “squid launcher” – bug in Minecraft
You need to invest the time to learn
Won’t teach you how to make DragonMounts
Got distracted playing the game with mods
78. Decide What To Do Differently
Extra and unnecessary badges that got boring
and felt like wasted time
Look for existing in-game commands (e.g. /fill
or /summon)
Dedicate specific blocks of time