Computer Science Education Week

Happy Computer Science Education Week!

Tomorrow starts the one week of the school calendar dedicated to shining light on the computer science field. In the coming days, many of our children will participate in a “Hour of Code” event with a visit to  to explore how to create with code.

As a computing professional, I believe the computer science field is amazingly relevant, ever changing, and the source to some pretty cool jobs. By our very training, computer scientists are always in search of a solution – both evolutionary or revolutionary – to things that impact our daily lives. Since the start of my career, I’ve had the opportunity to research and develop technologies in support of our nation’s military. From the development of a system to detect nuclear radiation to a system that will allow our country to better prepare for and defend against increasingly sophisticated cyber threats , these types of projects make work both challenging and rewarding. I think they also speak to the uniqueness of the computing field and, as a society that is faced with increasing automation, why this week is so critical in the lives of our children.

From a historical perspective, I’d like to call attention to one of the founders of computer science – Alan Turing. Turing was a brilliant mathematician and, during World War II, invented a way to crack the German Enigma machine allowing the Allies to decrypt naval messages containing Nazi ship movements. He went on to invent the Turing Machine, the very first “computer”, and his Turing Test is still used as a benchmark for determining whether or not a computer is truly “intelligent”. There is a short documentary on YouTube that describes the life and contributions of Alan Turing.

Computer Science Education Week is great time to discuss our children’s futures and what we can do to make sure they are fully equipped to ensure those dreams come true. For those parents who have youngsters interested in computers and you just don’t know where or how to start, we’re here to help!

Happy Coding!

Michael Orr
Predicate Academy

Fall Class Preview – Puppet Masters


Introducing Puppet Masters

Over the summer we’ve been hard at work on a new class that we’ll roll out to our Foundations (ages 10-12) and Journey (ages 12+) classes. With a few notable exceptions, automating puppets is very similar a robotics class and a “must take” for anyone who likes to see their creations come to life!

Servo Motors

Puppet Masters will be the first time we teach about the fundamentals of working with servo motors. Servos are a bit different than your typical motor – in additional to movement, it’s possible to provide specific directions such as “move to position 90 degrees”, rather than just spin. As a result, servo motors can be used in applications where very precise movements are required. For our puppet, we’ll have some fun movements like waving, walking, and dancing. In other applications combinations of servos provide some really cool automated capability.


Puppet Kit


The mariachi style puppet and hardware kit comes to us from a small vendor called MonkMakes, based in the UK. MonkMakes provides a number of maker educational products. For those that have previously taken our robots class, we used a motor control board, also from MonkMakes. The Puppet Kit has everything we need to quickly code up some fun projects using the Python programming language. We have purchased a number of these kits for use in the studio. If your innovator is interested in building and continuing to work with a puppet at home, we’ll be more than happy to pass along purchasing instructions.

Class Details

There’s a TON of fun things that can be done with servos and puppets. We’re going cover the basics how to code servos with Python then work on some fun movements – waving, walking, even some dancing…

With basic movements down, we’ll be looking at some complex animations, even using game joysticks to control movements. We have a few ideas for competitions – including puppet volleyball, that we’re experimenting as an option.  We’re certain this class is going to be a blast! Physical computing (where code meets the real world) is a great way to introduce your youngster to the amazing field of computer science

Register Now

Check out our seasonal enrollment page for more details on registering for this class: New to Predicate? Don’t forget to enroll for a Jumpstart class before fall:


Big changes in store for fall!


Happy Summer! We hope everyone is enjoying the weather and time away. With September rapidly approaching, we have some really exciting announcements as we prepare for our Fall Season.


At the end of summer, we will be reconfiguring our studio for smaller classes with enrollment caps set between six to eight innovators (the previous cap was 12). After many seasons of providing some really cool technology and coding programs, we’ve found that “less is more” when it comes to the quality of instruction and team collaboration. Some of our best experiences center around a class of eight – so that’s our target! With that in mind – be sure to register early!


We’re also pretty excited to announce that we picked up a room across the hall that will be configured into a waiting area for parents and innovators. We’ll have wifi, comfortable seating, gaming stations, even a few spots for your innovators to hook up their Pi kits and hack out some code. We will not be staffing this room so our insurance requires that youngsters be supervised by parents at all times.


The fall classes reflect a new (and reduced) pricing model. Classes that require hardware (e.g. puppets and cameras) will provide everything that is needed for use in the studio. For those wishing to maintain a mirror setup at home, we will happily arrange for the purchase/setup of the supples, but will no longer impose these costs on everyone.


Anyone wishing to enroll and pay onsite, via check or cash, will receive a 10% discount at the time of registration. Merchant fees for accepting credit is very costly and many parents have requested to pay via cash or check.  We are open on Monday and Tuesday between 3:30 and 9pm through the end of August, so swing on by, sign up, and save! Unfortunately, due our small class sizes, we cannot reserve seats in advance.


We have some great classes lined up for the fall! Class details, meeting times, and enrollment lines are now available on our website:

Thanks for your continued interest in our program and we’ll see you in September!

This Week @ Predicate – 06/05


This Week @ Predicate

It’s Week 9 of our Spring Session and the coding continues! Our behind the scenes tour this week takes us through images, agar, and joysticks.

Adventures – Game Makers
Predigame – Image”

Our Game Makers finally got add images to their games. Since the start of the class, we’ve been working with basic shapes (circles and squares) and using them to drive all the new concepts for our games. Images, particularly custom ones, always add a bit of thrill to game play. Our class learned the basics of image management with code and we covered aspects such as loading, scaling (resizing), placement, and motion. With the addition of a ‘for’ loop, it was possible to quickly fill the game with many images. We have a couple of surprises in store for next week as we continue exploring gaming with images.

Foundations – Python Gaming

This week we transformed our image clicking game from week 8, into variation of the agar (What’s agar? Check out this website: Our game involves moving around to “eat” the targets. Both players and targets are images that our innovators download from the web. After a bit of image customization, we took a tour through some fun coding extensions – such as keeping score, customizing score fonts, and adding a second player. Multiplayer support always creates quite a bit of collaboration within each class – a desirable property that keeps the creative juices flowing 🙂 We have a few more extensions to the game that we plan to introduce next week.

Foundations/Journey – Physical Computing

This week we studied the science of joysticks, our third and final analog sensor. Potentiometers and force resistors, our first two sensors, provide single dimensional data (a single sequence of values) and the applications can be a bit limited. From a gaming perspective, it’s possible to use potentiometers and/or force resistors to move a paddle left or right but not, at least not simultaneously, up and down. That’s where joysticks come in. After a bit of wiring we took a tour of our joystick’s capabilities and tried to match coordinate (x, y) values with the position on the joystick. With that understanding, we dove into a fun coding project where we mapped joystick movements to “simulate” arrow button presses on the keyboard. With these changes in place we were able to use our joystick to play ANY game where the keyboard would normally be used. The class favorite was a variation of pacman.

This Week @ Predicate – 5/23


This Week @ Predicate

It’s Week 8 of our Spring Session and the coding continues! Our behind the scenes tour this week takes us through keyboard events, clicker games, and hungry hungry image.

Adventures – Game Makers
Predigame – Keyboard Events”

Our Game Makers integrated use of the keyboard to add an additional element of control to our games. This week we recreated the game Squirrel Eat Squirrel game ( – one that many in the class recognize and play prior to the start of our instructional time. The game pulls in a number of concepts from keyboard control, counting time (score), and identifying colliding objects.

Foundations – Python Gaming
“Clicker Games”

This week our gamers continued working with images. The premise of all of our games thus far is “click-to-destroy” moving objects. This week we demonstrated how to add sounds and keep score. There was plenty of time for class competitions and we added variations that would require speed of action as well as the least number of clicks. Our classes had a blast. Needless to say, with all the clicking over the past two weeks, it’s likely that the buttons on our mice are starting to show some wear 🙂

Foundations/Journey – Physical Computing
“Sensing Force – Hungry Hungry Image”

Over the past two weeks, we’ve been working with a force resistor that provides a rough weight measurement – from 0 to about 22lbs – and can be used in a number of practical applications. This week we extended our image pixilation game, “The Image Eater”, to pull a series of pictures from Giphy (the Google of animated gifs). The goal of the game was to destroy as many pictures in the least amount of time. The Giphy provided a nice element of surprise to the game – you never knew what was going to pop in next.

This Week @ Predicate – 5/15


Reminder – Memorial Day Weekend

Just a reminder that Predicate will not hold classes over Memorial Day weekend. Specifically, we will not have class on Friday May 26, Saturday May 27, Monday May 29, as well as Tuesday May 30.

This Week @ Predicate

It’s Week 7 of our Spring Session and the games are starting to look amazing! Our behind the scenes tour this week takes us through mouse events, images, and sensing force – part 2.

Adventures – Game Makers
Predigame – Events”

Our Game Makers continued building off last week’s game with additional attention to mouse events – performing game actions based off mouse clicks. To make things a bit interesting, we introduced the concept of scale. That is, with a given mouse click, we changed the size (bigger or smaller) of a shape. We used scale in the context of extending our game to “pop” circles. Of course, any new game can’t go without a little class competition and we did just that –  one round was captured on video and posted to our Facebook page.

Foundations – Python Gaming

This week our gamers learned how to find, modify, and insert images into their game. The premise of our game thus far is “click-to-destroy” moving objects. Last week we focused on circles and we used the mouse to change movement pace as well as experimented with options for shrink, move, and expand. Images add an element of personalization to the game – we saw flying pizza, villains from Once Upon a Time, gummy bears, even politicians. It’s hard to play a game without keeping score, so we added some code to track the number of clicks and time to destroy all objects.

Foundations/Journey – Physical Computing
“Image Eater”


Last week we introduced the force resistor that provides a rough weight measurement – from 0 to about 22lbs – and can be used in a number of practical applications. This week we highlighted the application of force resistance in the context of an image pixilation game, “The Image Eater”.  The first round of our game was pretty basic – a certain amount of the image was “eaten” based on the strength of the resistor strike. The class got to customize the image, sound effects, and amount of damage per strike. We posted a video of our game on Facebook. The game was fun for all ages, even our crew 🙂

This Week @ Predicate – 5/8


This Week @ Predicate

It’s Week 6 of our Spring Session and the games are now underway! Our behind the scenes tour this week takes us through cookie clicking, mouse events, and sensing force.

Adventures – Game Makers
Predigame – Cookie Clicker”

Our Game Makers completed their very first game this week – The Cookie Clicker. The game was a combination of all the skills we’ve covered thus far in class for drawing and moving shapes paired with using the mouse. The purpose of the game is to click as many shapes as fast as possible. Cookie Clicker makes for a great competition and strategic collaboration – we captured a bit on video:

Foundations – Python Gaming
“Mouse Events”

This week our gamers learned about input events – how players interact with a game. Specifically, our focus was on using the mouse. Any time a player clicks on the gaming surface the computer captures a bit of information on the click – basically it’s a way of the computer telling a coder that a user clicked the mouse and where that click happened. It’s up to the coder to figure out if the click location was important and how the game should react. We walked through a little bit of math for tracking mouse events against moving objects and then provided a number of challenge problems and mini-game ideas. The creative inventions from our classes were quite impressive!

Foundations/Journey – Physical Computing
“Sensing Force”


This week we introduced our second analog sensor – the force resistor. Like the potentiometer, the force resistor provides variable resistance – the amount of weight pushed on the circular pad reduces the amount of resistance in a circuit. While these sensors are not good for providing precise measurements (you wouldn’t want to weigh your veggies on them at the supermarket), they do a good job of providing a rough sample and are more than sufficient to create some physical games – such as the high striker game, a mini version of a boardwalk classic, as well as breakout with pressure paddles.



This Week @ Predicate – 4/24


Reminder – Spring Break / Round 2
(Week of April 30th)

Hi Parents, just a reminder that we will not hold classes over the week of April 30th for the second half of our spring break. For reference, our full spring schedule is available on our website:

This Week @ Predicate

We’ve hit the halfway point of our Winter Session and innovation awesomeness is in full effect. Our behind the scenes tour this week takes us through randomness, (virtual) collisions, and “brickatory”.

Adventures – Game Makers
Predigame – Randomness”


Our Predigame platform is showing our young innovators how to create more with less typing. This week we highlighted how to introduce random colors and movements to our game. While we’ll still focused on drawing circles and squares – it’s amazing to see some of the mini-games that have been created!

Foundations – Python Gaming
“Virtual Collisions”


This is one of those classes where coding meets math. The topic of our class was detecting when two circles collide with each other. This builds a bit on our previous exercise of bouncing against wall. We introduced a practical example of the Pythagorean Theorem – it’s a topic we recognize many have yet to cover in school, but when they do, hopefully it will bring back a memory to our bouncing balls code. In addition to collisions our classes were presented with a number of coding challenges (one of the first times we did this in a Predicate class) – it was really good to see our innovators explore a bit on their own and figure out how to solve these problems!

Foundations/Journey – Physical Computing


This week we took some existing code and integrated in our potentiometers. The topic of the class is “value normalization” – reading data from a potentiometer provides some number between 0 and 1. This number can be “normalized” into a different range (e.g. 0 to 10, 0 to 100, etc). There are a number of applications of a potentiometer once the readings can be normalized. Our example was controlling the paddle on a game of breakout.

Breakout is a bit more fun playing competitively. We introduced a special version of the game “Brickatory” where everyone in the class could compete against each other. We recognize that some of our innovators are starting to get a bit clever, so we came prepared to ensure they didn’t go in and try to cheat. Needless to say, we didn’t catch all potential cheats but we’ll be the first to admit that hacking code for personal benefit – IN OUR COMPETITIONS – is perfectly acceptable!

This Week @ Predicate – 4/10


Reminder – Spring Break / Round 2
(Week of April 30th)

Hi Parents, just a reminder that we will not hold classes over the week of April 30th for the second half of our spring break. For reference, our full spring schedule is available on our website:

This Week @ Predicate

It’s Week 4 of our Spring Session and we had a number of fun exercises in store for our classes. Our behind the scenes tour this week takes us through the bouncy shapes, object abstraction as well as Pandora and Potentiometers.

Adventures – Game Makers
“Predigame – Bouncy Shapes”

This week our tour of the Predigame platform focused on moving shapes. We showed how to create code to create big shapes, small shapes, fast shapes, and slow shapes – lots of opportunities to explore and understand cause and effect. And that’s just what they did! It was a REALLY engaging exercise where the whole class got to see how to they can create and control with code.

Foundations – Python Gaming
“Object Abstraction”



In order to get more of something to draw on the computer screen, our young innovators tend to copy and paste oodles and oodles of code. We often say in the field “don’t repeat yourself” – meaning that when it comes to code, copying and pasting will work, but isn’t necessarily the best answer. We introduced a concept call abstraction that allows is to describe an object (e.g. a Ball) and then easily create many of them with just a few lines of code. It’s a clever trick and made it really easy for our innovators to generate many many objects without a bunch of work.

Foundations/Journey – Physical Computing
“Pandora and Potentiometers”


This week we explored how to stream music from Pandora and automatically animate our 16 LED assembly. This uses the same software that is frequently on display during ABC’s The Great Christmas Light Fight (here’s an example video). Everyone in the class got to pick their custom pandora station and we walked through how use that station in an automated light show.

As a second activity in class we’ve switched from digital to analog. While we all use digital devices every day, we live in an analog world. This week we explored how to integrate analog signals on a digital computer – the process is called is called “analog to digital conversion” (here’s a quick video that explains the process). We wired in a “analog to digital” micro-controller to our hardware assembly – which is starting to look like a bowl of spaghetti! With this chip in place, we introduced a potentiometer, an electronic component that consists of a dial that applies or releases resistance as it moves from left to right (same as a fading switch). This is what we would call an analog device. Using the analog to digital converter we are able to “sample” the position of the dial – how far left or right. What can be done with this information? We have a cool surprise in store for next week!


This Week @ Predicate – 4/3


Reminder – Easter Break

Hi Parents, just a reminder that we will not hold classes over Easter Weekend (Friday April 14, Saturday April 15, Monday April 17, and Tuesday April 18). For reference, our full spring schedule is available on our website:

This Week @ Predicate

We’ve completed our third week of classes here at Predicate and across the board our goal this week has been focused on skill refinement. Since the start of our spring session we’ve introduced a number of new technical concepts. Most of our classes this week focused on reinforcing those skills. Our behind the scenes tour this week takes us through making faces, screen animations and light shows.

Adventures – Game Makers
“Predigame – Making Faces”


This week our tour of the Predigame platform focused on assembling shapes into faces. We started with an overview of grid coordinates and positioning shapes within the grid. The focus then shifted on creating larger objects.These days, it’s hard to code shapes without defaulting to emoji construction. We saw so many creative renderings come alive with just a few lines of python code.!

Foundations – Python Gaming
“Screen Animation”


Everybody loves animation! These week we demonstrated how to take our emojis and float them across the screen. In order to animate we had to teach a little bit of algebra – a few caught on to this but crunching on some math in the context of code is always more fun.  Computer animation isn’t much different from how it was done back on paper; software paints a new character frame at a fast enough speed to give the illusion of movement.

Foundations/Journey – Physical Computing
“Light Show”


This is our third week working with the 16 LED assembly. Last week we demonstrated how to download and play our favorite Youtube audio clip. This week we continued with the audio animation and completed our light show. The coding exercise has provided ample opportunity for our classes to appreciate some more advanced programming concepts – such as functions which allow code to be reused without repetition. For those who completed their show had the opportunity to code a binary clock where lights were used to display the current time in binary, 0 = off, 1 = on (e.g. 7:30:15 in binary would be: 0111:011110:0:001111).