Friday, July 15, 2011

Floating Cities & K12 Learning - Instructional Game Theory Model

Imaging using a tool to create instruction that incorporates both synchronous and asynchronous student participation, requires students to work together, does not limit students by age, grade level or location, has very few rules requiring students to create and learn the rules as they progress, incorporates skills students will use in “work” world, promotes creativity, writing, questioning, fact gathering, uses intrinsic and extrinsic rewards, provides ample feedback (from teacher, “peers,” and self), addresses content standards, incorporates the students’ physical environment, provides a model for ethical and responsible engagement, social networking skills, multiple solutions, “highly” engaging, game play, writing for multiple purposes, digital and physical components, and the tool could be reused over and over again for different instructional goals.

Imagine that this tool could be used to teach a specific concept in a particular grade, used to teach an entire class, or even used as a tool to develop an entire school.

What might that tool look like? It may sound like I’m describing the “Holy Grail” of instructional tools. I don’t think I have discovered that particular tool, but I do think I have an idea of one that seems to point in a direction that leads to more possibilities in the “Holy Grail” tool direction.

A few weeks ago I caught wind of a site called The Floating City. It was created by Thomas Dolby, the musician - “She Blinded Me With Science” fame, and a small crew of creative individuals not numbering probably more then ten, from what I have read. The site is named after his next album, The Floating City and takes place on a fictitious world, in an era which seems to be around the time of the Second World War and loosely imaged as what the planet may have looked like if things turned out a little differently. To get a visual, think of the Kevin Costner movie, Waterworld, but taking place during the 40s with a strong SteamPunk theme. The site is designed as a multi-user game, with teams of players searching for clues as to the reason for the (fictitious) Floating City. Along the way, players of the game read the Gazette, the only remaining news paper, gather clues floating in the water, trade objects (named after some of the lyrics in a Dolby song) back and fourth to create complete sets which then can result in codes to download complete mp3s of the particular Dolby songs. Everything in the game from the objects, the Gazette, the names of locations on the world map, to the clues that are provided through game play, are provided to give players a chance at forming their ideas related to how the Floating City came about. Is there a correct answer? Will one be fleshed out? Either way, it’s a great strategy to promote creativity. If you’re interested, I highly suggest you take your browser over there and get yourself an account and check it out.

What I really enjoy about the Floating City site is how it was constructed and the learning model it promoted. As I mentioned earlier, the Floating City was constructed with a small, creative, team of developers. They took advantage of OpenSource and free tools, such as Google Maps API, and mashed up their entire game using a little of this tool, and a little of that tool, to eventually get to the environment that is the Floating City. Not having to develop a ton of code to create a discussion board, or a messaging system, or a graphic user interface, such as the game map, freed them up to develop the look, feel, and more importantly, the narrative (instruction) of the game. Looking at how they developed this got me thinking as to why couldn’t we do the same thing in our schools or classrooms. There really is no reason, aside from the prerequisite knowledge of basic installation requirements that some of these tools require, skills most of our school IT departments readily have, why could we not allow teachers to create instruction modeled on a similar tool? I think most teachers are very creative and would jump at the opportunity to create instruction that was more game like, promoted creative thinking, writing, sharing and collaborating while at the same time addressed standards, digital citizenship, and technology.

So this last week I decided to see what it would take to develop the “bones” of a similar model based on the Floating City. As a Director of Technology, I know a little about a lot of technology. I have a very liberal education as it comes to instructional technology. I’m not an expert C+ coder, or a PHP web site developer, or a database design guru. I do know a little though…just enough to be dangerous.

A multi-user (game) environment requires sharing of information between the players. In order to do this you need to store the player information. So right from the start, you need to use a network based database. My database of choice was mySQL. Looking at the other “instructional components” of the Floating City such as the discussion board and messaging system, these tools are also OpenSource (free) and work within the mySQL database. I looked at the Google Maps API, and in the short time I evaluated the API, everything made sense to me with the exception of the custom map tiles. With a little more time I probably would have figured it out, but when I went back and looked at the Floating City map, having a custom map this based on true latitude and longitude coordinates is probably not necessary. The Floating City map is used primarily to access the profile and inventories of other player and could have well been either a random representation of players on a image of a map or even player determined locations on an image of a map. So I scrapped the idea, at least for now, for using the Google Maps API for an interface component.

The Floating City is all web based and that makes it compatible with almost all devices and all operating systems. However, on the iPhone the layout is a bit cumbersome due to the layout just being reduced to fit the screen and requiring the user to pinch to zoom in on links. They probably could solve that with a custom App. I thought about doing my model just using php and MySQL. But that would also require time spent on developing CSS, php and lots of html code. It could be done, but I decided that I did not have the time. Plus, if this model is to be used over and over, I wanted a development tool that would provide me a little more flexibility. The tool that I chose was RunRev’s LiveCode. I should point out that LiveCode is not OpenSource. It is a commercial application with a variety of licensing options. However they do give a discount to educators. LiveCode stands on the shoulders of other rapid development tools such as Apple’s old HyperCard software. It allows for the development of applications very quickly and uses a scripting language that is very easy to understand. One difference between doing the development in LiveCode as opposed to doing it all in html/CSS/PHP is that in LiveCode you actually compile a standalone application. That being said, you can provide your users access to your LiveCode programs via the web and using a web plugin. The plugin can be installed by your users for free and then your application will play in the user’s web browser window, similar to how Adobe’s Flash works. The other benefit of using LiveCode is that they make tools to port your LiveCode application to MacOS X, Windows, Linux, Apple’s iOS, Google’s Android, and Windows Mobile. So with a little tweaking on the design layout, you can compile for mobile devices.

In about a week’s time, working on it when I had the time, I was able to create my own model. The model is just the bones, there is no narrative or design yet, but the logic is all in place. The model consists of the following components:
  • User Login and Authentication
  • Location of Player on Map
  • Ability of player to relocate themselves on map and save coordinates
  • Ability to click on other players map icon and get player profile and current inventory
  • Ability for player to review their profile and inventory
  • Ability for player to initiate a trade
  • Ability for player to accept or decline a trade
  • Ability to generate an automatic message when trade is initiated
  • Ability to send a reply to received message
  • Ability to delete messages
  • Ability to send a new message to different player
  • Ability to enter code or phrase to unlock mission
  • Ability to enter mission code to receive “badge” or recognition

Though many of the missions are hard coded, based on entering the correct data by the player, because the data is stored in a database, it does provide the teacher the ability to change things on the fly such as rewards, badges, and inventory. In addition, the missions can be as varied as the teacher’s imagination. They could be as simple as a code the player types in, a website that the students is directed to and research, an audio sample or video file, or even a QRCode. As long as it can provide some type of definitive code that a player can enter into the game and that the game can verify as correct, it can be used within the game.

The following is a screen cast of the LiveCode project:

The wheels are turning, and I have some ideas for narratives that may fit well within this model. Stay tuned for both student and adult examples!