XModus Learning

Computer Science and Play-Based Learning for Kids

 



This summer we are excited to offer two weeks of coding camps - July 8th to 12th and July 15th to 19th - at St. James Community Square (West 10th and Trutch).

  • Ages 8 to 13
  • Maximum 18 students per class
  • No computer programming experience required.
  • One computer per-student and all computers provided.
  • Scheduled stretch, snack and play breaks away from the computers.

What's new this year?
Just like our students we've learned a lot this year and as a result are upgrading our camps to reflect these new insights and ideas.


  • More physical activities away from the computers.
  • More student-led exploration and customization.
  • More team-based activities.
  • More computer science topics.

Let's get physical: During our spring and Pro-D camps we added more time away from the computers, including organized sports (basketball and soccer) as well as neighbourhood walks, and we saw students return to their projects with more energy and creativity. These breaks not only re-energized the students but also gave them time to discuss ideas with their peers -- away from the computers. Sounds obvious but when instruction time is limited it's not always obvious what the best mix of time is.

Let's try that: During our classes we increased the number of student suggestions we asked for and when possible incorporated these suggestions directly into the class. Sometimes these took us off into the weeds but more often they sparked new ideas with the students (and the instructor) which resulted in more engagement by the students and more willingness to explore and participate. So to follow on this new trail we've modified our courses to allow students to customize the experience more so than in the past so that their projects are more truly their own.

Let's work together: During one of our classes a classroom-teacher suggested we ask students for input by group instead of by student such that no single student answered the questions but rather they answered as a group. This small change led to increased student input, increased participation and more ownership by the students -- a win-win. So we've restructured our classroom layouts such that students are physically grouped and regrouped each class to encourage them to work together. Not only do we help them learn to work together but we also help them form new friendships and new approaches to working together -- another win-win.

Elementary Computer Science
In the past our Elementary Computer Science (ECS) projects and game programming with Python projects were taught as separate classes but this summer we are incorporating more computer science topics into our games to make them not only more interesting but also allow students to explore more advanced topics when their curiosity takes them there. Don't worry, it's still CS for kids.

Daily Camp Outline - 9 AM to 4 PM (7 hours)
9:00 - 9:30 Student drop-off and setup
9:30 - 10:30 Activity #1
10:30 - 10:50 Morning snack/recess (outside) break
10:50 - 11:00 Setup for Activity #2
11:00 - 12:00 Activity #2
12:00 - 13:00 Lunch - eat, then outside for activity
13:00 - 13:10 Setup for Activity #3
13:10 - 14:10 Activity #3
14:10 - 14:30 Afternoon snack/recess (outside) break
14:30 - 14:40 Setup for Activity #4
14:40 - 15:40 Activity #4
15:40 - 16:00 Clean-up and student pick-up.

Python Game Programming & Minecraft Adventure Building
Kids aged 8 to 13, have the option of learning how to build a video game using Python in the morning from 9:00 AM to 12:00 (noon) and then working in teams to build Minecraft adventures in the afternoon from 1:00 PM to 4:00 PM. We will take breaks away from the computers throughout the day, as well as a lunch-hour outdoor walk and a supervised free-time lunch break.

Python Game Programming (9:30 - 12:00)
In the morning, from 9:00 AM until noon, we will work together to design and build a computer game using the Python programming language. Students will start off creating a basic video game using Python (and PyGame). Gradually over the 5 days they will continue to add more functionality and customize the game play and the look and feel as they work towards a finished game. Each day we will introduce more programming techniques as we work towards a complete game but for students who are already familiar with Python they can choose to work ahead or to add more functionality to their game under the guidance of the instructor.

No prior programming experience is required, but those with existing experience will have the opportunity to work on more advanced features for their game.

At the end of the camp each student will have a working game that they designed and programmed using the Python programming language. All game code will be made available for download on XModus.com following the camp.

Students will learn:
1. How to design a computer game.
2. How to convert their design into a computer program using Python.
3. How to test and debug their Python program.
4. The math and physics necessary for a computer game.

Minecraft Adventure Building (1:00 - 4:00)
After lunch, in the afternoon, from 1:00 to 4:00 PM, we will work in teams to design and craft new Minecraft Adventures. Working in teams, students will learn how to make an adventure world using Minecraft. Each day we will introduce new ideas and concepts including redstone and command block creations, new building techniques and map planning to ensure they have a complete (and fun) adventure. At the end of the camp we will play test the maps and give feedback on how students can continue to improve their adventures. All adventures will be made available for download on XModus.com following the camp.

For students who are not interested in Minecraft or who want more time to work on their Python projects they will have the option to use some or all of their afternoon Minecraft time to continue working on their Python project.

Students will learn:
1. How to work as part of a team to complete a project
2. How to design a Minecraft adventure world.
3. How to convert their design into a fun adventure world.
4. How to test and debug their adventure.

Register Now >

FAQ >








Register Now >

FAQ >

Battleship Hard Mode Pro-D Camp (2019) Game Example:


Battleship Hard Mode Pro-D Camp 2019 (Python + PyGame)

Summer Camp (2017) Game Example:


Summer Camp 2017 - Castle Run (Python + PyGame)

Spring Camp Game Example:


Spring Camp 2017 - TankU - Moon Tank Loader (Python + PyGame)

Winter Camp Game Example:


Aliens vs Plants (Python + PyGame)

Minecraft Camp Adventures:


The Cocoon


Cats


The Unicorns


Elemental Dragons


Slendermaze


The Builders


The Maze Runners


The Runner

 



Using the popular Minecraft video game kids work together in teams to solve puzzles and complete adventures with their teammates. Each class presents the kids with a different problem such as: math and economics in Farm Craft, team-based puzzles during the hunt for the Golden Pyramid, and improving their vocabulary and spelling by asking questions of the in-game characters during the Avatar Quest. Kids are challenged each class to interact with each other and encouraged to be creative, ask questions and help each other through the tasks. This is not kids sitting alone playing Minecraft, these are custom crafted adventures where kids work together to explore new ideas, make new friends and solve problems.

Q: What are some of the adventures?

Hunt For The Golden Pyramid
Through a series of clues located around a small village the students will set out on the search for the Golden Pyramid that is lost somewhere in the dessert. Once they find the pyramid they must find a way inside and through team work solve the puzzles and build, break and make their way into the inner chamber where the treasure awaits.

Farm Craft 1.x
First students are taught the basics of Minecraft food production from farming (growing crops, tending animals) through to crafting finished foodstuffs (bread, cakes, cookies, etc.) and then they must figure out how to feed a small village using their farming skills.

Following on their successful feeding of a village the students must now feed a small city and do this by selling their foodstuffs and trading with other villages for additional raw materials to make more complex products. Basic supply and demand factors will influence the price of individual ingredients and students will need to figure out ways to increase their food production, get their goods to market and work towards feeding their city.

Island Rescue Mission
Your team of crafters has been dispatched to a remote island to rescue some stranded scientists whose ship has been damaged during a natural disaster. Upon arriving you discover that the scientists are missing, their island and their facility has been damaged and your team must find the missing scientists, repair their facility and their ship and complete their mission. This will be a survival mission but with no monsters.

Escape From Everest
Two hundred years ago the polar ice caps melted leaving only the top of Mount Everest above water. Your team has been asleep for 200 years in an underground bunker that was built at the top of Mount Everest and now you must start the process of re-greening the Earth and then sending a signal rocket to alert the colonies on the Moon that it is safe to return.

Avatar Quest
Students discover a vast medieval-themed adventure map that contains 20 Non-Player Characters (NPC's) that they must discover and talk to in order to uncover the clues necessary to unlock the treasures and complete the quest. Players type in their questions and answers and NPC's answer them with answers, clues, jokes, slang and humor. (Students learn to create their own character-driven adventures during our Digital World Builder Camp).




New adventures each season, Fall, Winter, Spring and Summer.


FAQ >

Register Now >


 




Come learn how to program using Python. Follow an instructor as they lead you step-by-step through each new concept and then put your new skills to the test by completing a programming challenge using your new skills. Once you've mastered the new concepts go crazy and modify and extend your code both in class and at home.

No previous programming experience is required and all computers and software will be provided within the class. All of the components of the class are cross-platform and open-source so students can run their projects at home on their own computers (Windows, OS X/macOS or Linux).

FAQ >

Register Now >


 




Come learn how to program using Python. Follow an instructor as they lead you step-by-step through each new concept and then put your new skills to the test by completing a programming challenge using your new skills. Once you've mastered the new concepts go crazy and modify and extend your code both in class and at home.

Python + Minecraft:
Classes will utilize a combination of Minecraft and Python where students will use programs written in Python to modify and control a Minecraft world. These classes are focused on programming and not playing Minecraft. During these classes students will learn how to move a character around, move and place blocks and how to create block-based animations.

No previous programming experience is required and all computers and software will be provided within the class. All of the components of the class are cross-platform and open-source so students can run their projects at home on their own computers (Windows, OS X/macOS or Linux).

FAQ >

Register Now >


 




Scratch - Coding With Blocks

Come be creative with a computer and learn how to code with blocks using Scratch, a free visual programming language developed by the MIT Media Lab. Scratch provides a stepping stone to more advanced computer programming by providing pre-built blocks of code that students connect to build animations, games and more. Students will be introduced to basic computer coding concepts and given the tools necessary for them to imagine, create, play and share their creations.

Scratch Basics (ages 7 - 9)
In Scratch Basics students are introduced to the basic elements of Scratch through hands-on lessons using graphical characters that they will control to make their own stories and games. This class is designed for younger students who have little or no previous Scratch experience and want an introduction to Scratch and coding with blocks.

No previous experience is required and all computers and software will be provided.

Scratch Intermediates (ages 9 - 12)
In Scratch Intermediates students will be further challenged to explore topics including probability & statistics, story-telling and video games through specific lessons and then free time. This class is designed for students who have previous Scratch experience and want to explore more advanced ideas and topics.

Meant for older students (9 - 12) or those with previous Scratch experience. No previous Scratch experience is required and all computers and software will be provided.

Scratch at home:
Continue your projects at home on your own computer and browser. https://scratch.mit.edu

Register Now >

 


 



As part of our in-class Elementary Computer Science courses, Hacking Secret Ciphers introduces students to the problem of sending a secure (secret) message and then challenges them to write a computer program to encrypt and decrypt these messages. Students start by learning to conduct the process by hand, then proceed to using mathematics and then learn the process to convert their manual steps into a computer program using Python. By the end of the week they will have a fully-functional Python program that is capable of encrypting and decrypting secret messages. Once they have their own programs they will be challenged to try and crack a series of secret messages by using and modifying their existing program. We wrap up the class with a discussion of alternative algorithms to try and follow-on tasks they can do if they wish to continue learning computer science and programming.

During the course students will learn how to:
1. Use a substitution cipher and a cipher wheel.
2. Use modular-arithmetic in place of a cipher wheel.
3. Convert their steps into a computer program using Python.
4. Test and debug their Python program.
5. Brute-force crack their ciphers using Python.

  • Grades 5 - 7
  • Maximum 30 students per class
  • No computer programming experience required.
  • One computer per-student and all computers provided.