These students gain valuable programming expertise by making a playable Rubik's Cube. They use logic to plan the project by creating diagrams that dissect a task and organize its parts into a hierarchy, and they learn both bottom-up and top-down design. They build levels of subprocedures and superprocedures and can debug programs!
Playable Rubik's Cube for iPad and iPhone
indexing each of the total 54 cells on a whiteboard
![](/images/pairs/rubikscube_draft_MariusL.jpg)
debugging with an iPad simulator
![](/images/pairs/rubikscube_LucasZ.jpg)
each cell is a rhombus
![](/images/pairs/rubikscube01.jpg)
cells rendered in squares and parallelograms
![](/images/pairs/rubikscube02.jpg)