Welcome to Meet the Teacher – CodeMonkey’s blog segment where teachers from all over the world share their experiences on what it’s like being an educator. Today’s post features Ryan MacRaild, a Technology Educator at Brecksville-Broadview Heights Middle School, Ohio
“We would like you to teach coding.”
Well, huh, not sure that I know enough about coding to teach it but hey, let’s do this!
3 years ago I began teaching various coding languages in my 8th grade computer elective. HTML and CSS with some JS thrown in. A little A-frame for VR worlds, and some Python for the kids who were really eager to grow. What made it difficult was the vast levels of ability I found in my students and my complete lack of knowledge of ANY of those topics. I know this is pretty common in every other subject area to have learners at different levels, but teaching coding is more similar to teaching a foreign language than it is teaching “tech” in the fact that most students have ZERO meaningful experience coding anything.
I have used various sites for different languages and each has its strengths and weaknesses for teaching portals. Making a website is cool, making a turtle glide across the screen is fun, even animating objects in a 3D world can be a blast. But every young coder wants to do one thing: code games.
Block based was one approach, but 8th graders could do so much more.
When I stumbled upon CodeMonkey, I was skeptical because it seemed very elementary. Step to banana. Turn to banana. Collect banana.
But that was just phase one! There were so many options to build upon, many of which were more advanced and exactly what I needed to engage my skeptical 8th graders who may have been turned off by the simplicity of the banana grabs.
Game Builder. I mean come on. Throw a Mario style game builder in front of any student and they want to just keep going! Frogger style game designer. Even a good gravity based activity called Moon Lander.
But don’t let me get ahead of myself.
Game Builder has changed how I teach coding. The platform is based on JavaScript. If/ then statements, calling, coding: stuff I didn’t even know how to do before I started teaching it. But the process and system built into Code Monkey gives you the support as an educator to lead your students, and unsurprisingly, they grasp onto the concepts way faster than I would have!
Let’s not put the banana before the monkey, however.
Before they can even begin to make their own game, Code Monkey offers multiple courses to show new game designers the game mechanics to code different actions:
-Power ups
-Collisions
-Double speed
-Double size
-Jumping
-Sound effects
-Sprite animations
-And much more
But with our class the students have to qualify to become a game designer. You have to complete a predetermined number of activities before you can make your own game.
Then the real work (fun) starts.
While I try not to restrict the students too much, I do have a few requirements.
A goal. You have to play for a purpose. Peril and risk, there has to be danger or conflict. A definitive start and end, rising and falling action. Sounds like creative writing if you ask me.
There can be a timer or points but there has to be an opportunity for the player to win. Or lose. That’s why you play the game after all! So yes, there is a rubric, but that is to just give the students a framework on which to build.
My current problem is students get so entrenched in characters, animations and trying to make the game so outstanding that the amount of time available just isn’t enough for them to get their work done. We have gone from spending 3 weeks to almost 5 or 6. Obviously, that varies from class to class and student to student, but needless to say, it’s also a great problem to have. I even have to tell some students to work backward, get the coding done for a “basic” sprite then integrate the one they want later, or the coding just won’t get done! What a great real world, time management lesson.
The other problem is my own personal limitations as a programmer. I was a science teacher originally, so coding and programming are not native to me. I have spent a large amount of time studying, taking courses, attending workshops and conferences and just doing the same activities my students are, trying to keep my skills up and grow as a coder. Lifelong learners unite! CodeMonkey has been very responsive when we have questions, however. If it is something that we can’t figure out on our own, I have generally found a solution with the help of support within a day. And while working with my students, we attempt solutions for one class period, if we don’t find the answers, then we ask the pros. We are in it together, and as a teacher, not knowing the answer can be daunting, but also very liberating and helps your students see that it isn’t just about coding but its about problem-solving, collaboration, asking the right questions and knowing where to find answers.
As you teach, you also learn, and one of the most powerful tools I use when teaching coding is NOT having all the answers. It shows your students you are human, you are able to help find answers not just tell them answers and a little transfer of power to the student goes a long way toward buy in.
“Let’s figure that out together.”
“I’m not sure, keep working on it and see what you come up with.”
“Maybe try to change this and see what happens.”
“Something doesn’t quite look right in line 12, what are you seeing?”
Overall, my experience with CodeMonkey Game Designer is very rewarding for both my students, my course and my curriculum. It has filled a void that I had been missing in class: Game Design. Buy in has been tremendous, student productivity is through the roof and the outcomes are even more impressive than I had hoped. Real lines of code, real interactivity and real programming help inspire my students as well as this 20 year veteran teacher to learn new things on a daily basis.
BIO:
Ryan MacRaild is a middle school computer teacher in the Brecksville-Broadview Heights School district in a suburb south of Cleveland, Ohio. A former science teacher, MacRaild has worked as an integrationist as well as classroom teacher for the better part of 20 years. He also coaches HS soccer. Ryan helped develop and launch the first full school Chromebook 1:1 in the Cleveland area in the late 00s. He is a CodeMonkey and Khan Academy Ambassador as well as a Raspberry Pi Certified Teacher. He has presented locally, regionally and nationally about integrating technology in the classroom. Find him on Twitter @MrMacRaild