AgentCubes


AgentCubes is an educational programming language for kids to create 3D and 2D online games and simulations. The main application of AgentCubes is as computational thinking tool teaching kids computational thinking through game and simulation design based on the Scalable Game Design curriculum.
Similar to a spreadsheet, an agentcube is a grid-based organization. An agentcube is a four dimensional organization consisting of rows, columns, layers cubes containing stacks of programmable agents. This grid-based organization is useful to create a wide array of applications ranging from 1980-style arcade games such as Pac-Man, over 3D games to simple agent-based model. Agents can be given user created 3D shapes, they can compute formulae, move in the grid, change appearance, play sounds, animate themselves, and send messages to each other.
AgentCubes was developed with support by the National Science Foundation. Research explored if K-12 students could pick up computation thinking patterns designing games and, if later, these students could leverage these computational thinking patterns to transfer skills to make STEM simulations.

History

AgentCubes is inspired by AgentSheets which introduced modern drag and drop blocks programming in 1995. Most notably, AgentCubes transitioned from 2D to 3D design including highly accessible 3D modelling technology called Inflatable Icons. Historically, both AgentSheets and AgentCubes are rooted in an early prototype of parallel programming for kids running on a Connection Machine 2, a massively parallel supercomputer. The notion of massively parallel computing carried over to AgentCubes but leaving out the need for supercomputing hardware.
AgentCubes Online has been used in large National Science Foundation teacher professional development scale up projects nationally in the US and through the support of private foundation in countries such as Mexico, and Switzerland. In 2017 1 million projects were created. AgentCubes online is now available in English, Spanish, German, Italian and French. There are free and commercial versions of AgentCubes available. In Switzerland AgentCubes is free.

Computational Thinking Tool

With the goal to shape computational thinkers and not necessarily programmers AgentCubes, and AgentSheets before it, have the goal to be computational thinking tools and not programming tools. Computational thinking tools make Computer Science education practical in K-12 by combining Programming Support Tools with Creativity Support Tools:
Programming in AgentCubes is based on an IF/THEN parallel conditional rule formalism. Lists of conditions and actions can be assembled into rules. Rules, can be wrapped up as methods with names which can be invoked by other rules. In the spirit of computational thinking tools it is typically possible to implement games and simulations with a small number of rules. For instance, a complete Pac-Man-like game including sophisticated AI allowing the ghost to collaboratively track down pac-man can be written in just 10 rule. Similar rule-based tools are ToonTalk, or Microsoft's Kodu.