As the iGEM season starts winding up, it is becoming very urgent to make the second life project publicly presentable! I spent today getting organized and nailing down the design for the last big feature that will live in the Biobrick Simulator heads up display object: levels.
The simulator is not a game (though it will be fun), but the 'playing through levels' concept is widely known amongst young people these days, and it's much more appealing than something like 'concepts', or 'chapters', even though those terms are better descriptions of what a 'level' will be. Each level is a self contained set of parts, with the goal of introducing one or two new features of the simulator and concepts in molecular biology to the user. The preliminary list of levels is a good illustration of the progression I'm looking for:
- First Transcription
- Activators (a simple activatable device, and an activator)
- Repressors (a simple repressable device)
- External Activator (the activator/repressor is produced by a device, instead of given)
- External Repressor
- Negative Autoregulation (Control)
- Positive Autoregulation (Memory)
- Or Gates
- Inverters (Not Gate)
- And Gates (two inverters w. dual repressed promoter)
- Bistable Toggle Switch
- Tristable Toggle Switch (See [http://openwetware.org/wiki/IGEM:Brown/2007/Tri-Stable_Switch Brown's 2007 project.])
- Repressilator
Unfortunately, there are also a good number of systems I had wanted to make into levels, but whose features aren't yet supported by the simulator's engine! Including, but not limited to:
- Lac Operon
- Tet Operon
- And Gates (additional varieties)
- Lux Operon / Quorum Sensing
- Feedforward systems (various types)
- XOR Gates
- Ara Operon?
In addition, a number of the levels I will be building would benefit from features these other systems require, especially inducers for LacI and TetR. Inducers make a huge amount of sense for systems like the toggle switches, for getting from one state to another; and also for positive autoregulation, for turning on/off cellular memory. That's to say nothing of incorporating environmental signals like temperature, osmolarity, and light, each of which have sensor parts within the registry, leading to more systems and more levels... but I digress! In a perfect world I'd have a chance to implement all of these things before putting together a selection of levels. But since I would like a version of the simulator with most of its *features* in place before the end of summer, choices have to be made about content. And who knows, there might still be time.
Fortunately, none of the code that remains to be written for the levels is very complicated. The Level Selection screen makes the levels and their parts available, the Home screen gives some basic guidance for each level, and the Parts screen makes supplementary objects, and replacement objects in case you happen to delete the ones you're working with (or wish to combine multiple levels' parts together. That will work just fine!) All three screens are necessary for the levels to work, and none have new or complicated features, it's mostly a question of adapting code I've already written for other purposes.
And all of that isn't even the last major portion of the island that needs to be developed! To support all of this biobrickery, users will first visit a zone describing the basics of molecular biology and biochemistry (in Second Life's interactive style). Katie is already working on a display of DNA replication for this zone. Also fortunately, each of the exhibits I have in mind are more or less stand-alone displays, as compared to the biobrick simulator where every part interacts with half a dozen others, so I don't anticipate it taking as long.
But, with development as with biology, a good safe bet is to multiply all your time estimates by three...