Griditch

  • Home
  • Research
  • Contact
  • Schools
  • Privacy Policy
  • Home
  • Research
  • Contact
  • Schools
  • Privacy Policy

go create

program your own interactive games, stories and animations.

Imagine we're going to create a computer game...


Picture
Courtesy of BBC Bitesize
​Here's an example of a  classic computer game.
  • The objective of the game is to navigate the man to the exit.
  • To make things more interesting, you'll need to find a key to unlock the gate that's blocking the exit.​
  • And for good measure enemies are lurking - land on them and you'll lose a life.
  • Now let's create using Griditch!

Griditch Programming Language
​The Griditch programming language can be thought of as a collection of tangible sprites (grit's) that you can hold in your hands.​
Picture
Now you can feel the code!


For example the - wooden blocks and TNT crate - sprites that make up the maze in the puzzle above might contain the following block code...
Picture
Sample code embedded into Sprite's
Now, imagine if you could pick up these sprites - with Griditch you can, because the Enemy and Wall grit perform a similar function to the TNT crate and wooden block...
Picture
Sample code embedded into Grit's
Each grit is embedded with a chip that can be programmed to display the following images on a connected device when scanned...
Picture
Player stat's will indicate a life has been lost
Picture
Play will pass to the next player

Another way to think about the Griditch programming language is to use a Russian nesting doll analogy. Think of a Grit as the largest of dolls encoded with a Block programming language (2nd largest doll). We know that under the hood, block code contains a Human Readable language (3rd largest doll). Finally, all human readable code is compiled from Machine code the lowest level language (Smallest doll).
Picture
Layers of abstraction
So you can think of a grit as a tangible sprite containing three layers of code.

Here's a description of each Grit...

Picture
​
  1. Hero - I'm the protagonist. Use me to denote the start of your game. 
  2. Home - Use me to mark the end point of a game.
  3. Lock - Use me to set a IF, ELSE condition. You gain 5 coins IF you unlock me.
  4. Key - Use me to open the lock. IF you find me THEN I can open the lock.
  5. Enemy - Use me to set a IF, ELSE condition. You lose a life if you land on me.
  6. Defence - Use me to defend against the Enemy. IF you find me THEN I can destroy the enemy. 
  7. Direction - Use me to control the direction of your Hero grit. You gain a coin when you land on me.
  8. Wall - Use me to denote areas of the board that should be avoided. Play passes if you land on me
  9. Griditch - Use me as a VARIABLE grit. For example you could program me as a mystery bonus with a value between 1 to 50 coins.
We could create a game using these stock images...
...but better still we can allow our imagination to go wild and get really creative!

Rather than sticking with the basic images, Griditch allows you to write new images to grits using the app.​


Picture
Let's take the knight theme as an example. Game developers always start with a simple storyboard to help them visualise how their game will look before they get stuck into writing lines of code. We'll do the same.
Now we've got a better idea of how of our knight will journey through his adventure, we can write the new images to our grits'.
Picture

​The Hero grit displays a knight.


The Home grit displays a castle.
​

The enemy grit displays a dragon.
​

​The defence grit displays a sword.




Well done, you've just used abstraction to help create this game. Here's how...

In our exercise the printed image on each grit acts only as a representation of the digitally encoded image. Each printed image makes it easier to identify the underlying function of the grit without the need to know a detailed description.

Now imagine if each time we encoded a new digital image to a grit, we also changed the printed image to match. As well as creating a lot of unnecessary work for ourselves, things could get confusing very quickly. For example, a player could easily mistake the image of a sword for a enemy or defence.

This exercise demonstrates the concept of 'Abstraction', one of the four cornerstones of computational thinking used to help solve problems.
​

Abstraction involves ignoring irrelevant details by reducing them to a set of essential characteristics relevant to the problem at hand.

​That's exactly what we've done with our grits. The basic printed image contains just the essential characteristics required to identify its function.
computationally
collaboratively
home
concretely
creatively

Interested, curious or just want to find out more? We would love to hear from you!​

Email

griditch@gmail.com