Archive for 2009

Sabbatical Presentation

No Comments »

Last Thursday I gave my Sabbatical report on my Second Life activities this semester. It is only about 20 minutes long so it is really difficult to say and show everything one might want to show. The video was just posted today so if you want to see my take on what to say about Second Life in less than 20 minutes have a look at:

http://video.jccc.edu/publicvid/innovations/PaulDecelles.asx

Mitosis in the Morning...

No Comments »

As part of my evolution build I wanted to have an activity related to chromosomal rearrangements. We know these are important in evolution, some of the clearest examples are in our own evolutionary history. So I developed a series of human chromosomes similar to those over at Genome Island.

These consist of representations of human chromosomes, textured with the standard banding patterns (ideograms) that geneticists use. When the user clicks on the chromosome, menu dialogue allows the user to look at the similarities between the human chromosome and the chromosomes of selected mammals: mouse, chimp, and the macaque. This is done using a data base portal called Ensembl. This displays regions of synteny, which in the bioinformatics context refers to regions of chromosome that have the same arrangement of genes in both species. Here is a quick example for human chromosome 1 showing the regions of synteny in chimp chromosomes to human chromosome 1.

It's probably hard to see what's going on here. But the big white structure in the center represents huna chromsome 1, and the chimp chromsomes with regions of synteny for human chromosome 1 are shown to the left and right. Human chromosome one has synteny with most of chimp chromosome 1 with just a little region of synteny with chimp chromosome 2A and chimp chromosome 10.

Speaking of chromosomes, Max Chatnoir was wishing for a build related to mitosis and meiosis so to help me think about this, I spent the last couple of days building mitosis at my carmine site. None of this is scripted and it still isn't clear what the best strategy for this is.







Here is a quick look at my mitosis builds. These are quite large and I will probably scale them down a bit. They are relatively simple but do take up a fair amount of real estate-not prims but literally really real estate.

This shows prophase, prometaphase, metaphase, anaphase and telophase. You can see me in the bottom of the picture. Each of the "cells" is 10m in diameter.

I don't normally build this big, but it seemed easier to do this big. The mitosis build is currently at:
http://slurl.com/secondlife/Carmine/120/190/138








Here is a close up of metaphase when the chromosomes (shown in red and blue) are lined up in the middle of the cell.
















My thinking is rather than animate mitosis, having this build (maybe on a smaller scale) and then an activity center where students can play with chromsome models like they do in lab. I think it is possible to script the chromosomes to sense a proper arrangement. That would provide a nice collaborative activity.

Speaking of collaborative activities, I also tweaked my predator natural selection module and installed it on my college land site. The module is packaged appropriately with a velociraptor texture so hopefully student predators will get in to the spirit of things.












Here's the module installed at http://slurl.com/secondlife/JohnsonCountyCommCollege/41/95/64. I am also building an activity center just above Predator which students will do first to study natural selection under less challenging conditions.

Evolution IV

No Comments »

Now that I have my drift and selection modules in hand, the next goal is to working on activities that can be fit around them. I know this is a bit backwards on the surface, but what I want to focus on in my evolution module is mainly the agents of evolution. These are basically:





  • Mutation
  • Genetic Drift
  • Non random mating (of which there are several types!)
  • Migration
  • Selection
To house the activities related to these agents, I have deviated from my photosynthesis and genetics design and come up with a series of open activity arenas. Each one will have a sensor driven script for tracking visitors, an simple activity rezzer of my own design, built into one of the corner posts. Rather than use my Carmine land, I am building the agents of evolution site at my College's island. The design challenge is to work with in a 281 prim limit.

The natural selection and drift modules use temporary prims so only the rezzers for these count. My 5 activity arenas and office take up a grand total of 67 prims so that leaves me a budget of 220 prims. Now I can stretch that, since activities will not be rezzed all at the same time since each arena but each activity has a "budget" of 40 prims. Ah but each activity arena can hold multiple activities in waiting so the "budget" isn't so draconian after all. 220/5 activity arenas.

Oh and my goal is to have this done by May 7th. At least now I can focus on design more rather than the arcanity of the LSL's llfrand function and other such issues. Plus I will have two radically different design approaches to compare, the module in a box approach of my photosynthesis and gentics builds versus my more open arena centered approach.





Evolution lends
itself to the more open approach, and this summer I will install photosynthesis and the Cami genetics modules in Carmine using the arena centered approach. That way I can have the same material side by side with different design features to begin to assess what works best with students.

Evolution II 101 Dalmations?

No Comments »

Well no, how about 30 Caminalcules after selection favoring a recessive allele for 8 generations. The natural selection module beta is finished and works very well. The basic strategy is to have the user or users act as visual predators removing camis from the population. The module might for instance be on a certain background where some cami phenotypes are real obvious while others are not.

The "predators" remove cami's by touching them, and the population is up dated. After a set period of time say 1 minute the remaining cami's are used to make a new population, which the module generates when it is touched and the cycle is repeated until only one genotype remains or until the users give up.

At the start of each generation the module generates a report in chat on the screen showing the allele frequencies for both of the cami loci.

If Cami's are never "eaten" the result is genetic drift. So this module really combines genetic drift and natural selection. It does not use or even compute selection coefficients, but one could add that to a report.

A certain cell membrane...

No Comments »

My biology viewers might recognise what this SL model is supposed to be.

Membrane of a certain cell

This is a preliminary prototype for a neuron membrane showing stylised transport proteins (purple). The round guys with the lids are gated sodium proteins the lidless tubes are gated potassium channel proteins. The "lids" on the sodium gates will be scripted to pop open to let Na+ ions through while the bottoms of the K+ channels will flip open and closed.

The oval shaped guy on the right is part of a Na+/K+ pump.

All these proteins are embedded in a stylised plasma membrane (red fatty acid residues connected to white polar heads with phosphorus for the phospholipids).

This project is actually part of a planned metabolism build which uses the neuron to illustrate how cells use active and passive transport for complex processes. So it's not meant as a full action potential simulation though my scripting strategy will take that possibility into account.

The Cami Lab is up!

No Comments »















The Caminalcules
(camis for short) have been safely installed in a Mendelian Genetics lab module called the Cami Lab. I use my note card configurable camis to illustrate dominance relations, monohybrid crosses, and dihybrid crosses. The evolution module will be directly underneath.

I have had to readjust my land and merge several parcels to give me some prim breathing room. Feel free to come and visit Cami Lab currently at:

http://slurl.com/secondlife/Carmine/128/144/136

As part of this, I rescripted my simple viewer to use Erich Bremer's double buffering script which makes loading much faster. My essentially new viewer uses LSL's way cool llDetectedTouchST function. This function detects where on a prim's surface you are touching and returns that as the x and y terms of a vector.

You can then access, these to do things like change a slide or teleport. What is really cool is that the coordinates are normalized to the size of the prim so they are presented as a float between 0.0 and 1.0, so if you stretch, say a viewer, the detected function still works properly.

Virtual World Best Practices Conference

No Comments »

Wow its over and I am still mentally going through everything that I saw at this conference. But needless to say seeing all the wonderful things being done in Second Life and other Virtual World systems is exciting. There was just no way to be everywhere at once and the best I can do here is present a few comments and pictures. The presenters are putting up outlines of their talks and slides at the best practices Wiki here.
















Rather than try to recap everything,
a few general impressions. First the conference was extremely well run with surprisingly few crashes, considering the number of avatars present at any given time.

















While the conference was mainly held and dealt with Second Life, one track did look at other virtual world systems. For example here is Nicole Yankelovich presenting on Sun Microsystems wonderland project, which I have blogged about earlier.

In the same vein there were virtual tours of Beyond Space and Time's Forbidden City, a tour I went on. It is visually stunning and photo realistic and I high recommend it as a great resource for anyone interested in Chinese culture.

It's not to use the latest 3D world buzz word interoperable with Second life and from my perspective it is not a virtual word in the same sense as Second Life. Everything is controlled and you can't build and somehow to me that lack of spontaneity makes the experience less immersive than Second Life; there is no sense of being embedded in a larger world.

I did not get to see this, but people interested in accessibility issues ought to check out Max the guide dog designed to help persons with limited vision cope with Second Life which after all is highly visible. Along the same vein, Nichole Yankelovitch mentioned what looks like an interesting Autism site located physically not too far from me at at University of Missouri. This particular project is called iSocial. This system uses Wonderland so it is not accessible through Second Life.

The talks I was at involved the main presenter using voice rather than chat with background text banter among the avatar's in the audience, and I found myself listening to the presentation, taking pictures and dealing with several chats at the same time. Now that may seem rude but remember several things in SL, the avatar can do all these things while looking perfectly still to the speaker. Secondly the chat generally became entrained to the speaker's topic.

In some cases the presenter was clearly comfortable with this, in other cases the moderator would monitor the chat and relay questions to the presenter. The one thing that did mar a few presentations was sound quality. One otherwise good presentation was very difficult to listen to because the sound was too distorted and I think presenters using voice need to pay close attention to the quality of their equipment and how they use it.

Here is maybe an extreme case of my screen while at a presentation. Those who have seen my computer screens in RL or for that matter my cluttered RL office desk will probably chuckle at this.
















Most of the talks
were formatted pretty much as standard Avatar sitting and listening to the main presenter while watching power point type slides. I think this was a good strategy since there were lots of new Second Life participants and getting the hang of SL camera controls can take a little time. The most interesting alternative was a walk about presentation by Dona Cady (RL) and Don Margulis (RL) where the slides were on separate panels and the avatars had to teleport to the presentation site high up in the sky. Since the slides were on large panels there was no fussing with camera or slide viewer controls. So again sometimes simple things work best.
















This presentation
also did a nice job relating virtual worlds to the sorts of paradigms common in oriental cultures. The slides by the way are wonderful and I hope the presenters get them up on the conference Wiki for others to see.

The talks tended to be theoretical or taxonomic in nature rather than quantitative but they all raised lots of neat questions. For example Shailey Minocha and colleagues from Open University gave a fascinating talk on realism versus fantasy in Second Life and how that might relate to the design of learning spaces.









What they found suggests that spaces for social interaction tend to be filled with familiar stuff couches and tables, "vending machines" etc, while less realistic and more metaphorical spaces can be effective for discussions. For example a discussion about test tube babies had a series of test tubes for the avatars to sit in during the discussion.



Other talks dealt with applying pedagogical models to virtual worlds or dealt with the importance play as part of the learning experience. I particularly enjoyed Max Chatnoir's talk where she emphasized this in terms of science in Second Life.

The themes of her talk were some what echoed in a really interesting study by on the effectiveness of collaboration by Jason Breland and colleagues in the use of virtual world systems by architecture students.



Also these two talks were among the most quantitative; Max had some wonderful data on visitors to Genome Island and what they do, much of it very fine grained as she builds sensors into many of her objects. So she can infer for instance, what tasks she has assigned her students are the most challenging in terms of the amount of time they spend on the task or with the object.

Breland's study was almost an analysis of variance type study that attempted to control for experience in determining the effectiveness of collaboration. I think an expert on ANOVA could help Breland and company with their design but they have an interesting approach to getting at some good answers to important questions.

The conference was really intense and even when I got away, for instance to go back to my SL lab to do some scripting, I found myself talking to conferees. And I drank copious quantities of coffee. So to the left is my mug.










But there was plenty of play as well...that's part of learning right? There were lots of fun avatars among the participants and presenters.

Pathfinder Linden from Linden Labs was a constant presence.













Here I am in a Kimono, I either wore this or a two piece pants suit.













Lori Vonn Luster













Here is one of the presenters, Jonathon Richter, during his talk. Those Salamander people really are dedicated. Imagine the effort keeping that skin moist!











Continuing the herpetological theme, this dragon kept asking for cookies.
















Of course as any good conference there was a big party at the end. So to close things out we all went to a club for dancing. Now this was pretty new experience for me since I am not a particularly social critter in real life but it turned out to be lots of fun in spite of a fair amount of lag due to lots of avatars in a small space. Plus I had to dig a bit to find an outfit that was a bit more suited for the event. Fortunately I had just the thing.





Here is a general party shot. As people danced there was lots of local chat and it was more fun than I thought it would be. What was interesting is the parallel with real life in that more women danced than men. In real life I am very self conscious about my dancing...but not here and I didn't even work up a sweat.























Of course a party called for switching out the coffee for a glass of...

OK just one.

Caminalcules Spotted at Genome Island!

No Comments »

No need to panic. I sent Max Chatnoir a pair of them for her to break as a beta tester, which she very nicely did in about 1 minute. So made some changes based on her feedback. The Caminalcules can now do various modes of inheritance and can either mate with each other of self fertilize as any proper organism for genetic studies ought to be able to do. Did I mention they also do linked genes? The picture show Max with her first brood. There had been a problem with permissions which caused a bit of grief until I tracked the problem down.






This coming week will see lots of frantic designing and building for the Caminalcule project including plans for a build on Genome Island once the prototype build is finished at Carmine. But a good part of today and Saturday I will be at the Virtual World best Practices Conference. Oops! Starting in about 10 minutes.

Wonderland

No Comments »

Today Kira Cafe hosted a presentation by Nicole Yankelovich from Sun Microsystems about Wonderland, an environment for creating virtual worlds. Wonderland is quite different than Second Life in a number of respects. So I will briefly summarize my in world notes.

The handsome nautilus to the left is Joshua Linden by the way.

Wonderland is free and developers can make either open source or proprietary applications. One can create data driven worlds or programmatic worlds. Also it has modules that allow you to create just bits of functionality e.g. an audio recorder or a microphone. In fact a big push for her group in Sun is in audio for virtual conferencing. For example, one can dial up or down bandwidth from telephone quality to CD quality for internal meetings. Thus one can get a really immersive experience

Suns' vision is different than Second Life since rather than one big world, Wonderland is decentralized and the idea is to have the possibility of a federation of worlds.
As for how big a world can wonderland make, version 0.4 could only support 20 users and scalability is an issue. Her group is aiming for worlds with several hundred avatars.

Right now they are in the middle of doing their fourth developer release 0.5 version. This involves a complete rebuild with better avatars and graphics.

Sun is very much interested in the education market, and its use for data visualization and teaching. There is also a wireless sensor platform (this is way cool) for bringing real world data into a Wonderland World for processing or visualization. Sounds like Wonderland has a lot of potential given that it is JAVA based and open source. Perhaps learning system providers such as Blackboard and Angel Learning Systems should check this out.

The Wonderland group is not directly involved in interoperability issues between virtual worlds but perhaps one of their community will pick this up.

Makes me wish I knew JAVA!

By the way Friday, Simone will be at Intel's Science Sim for a visit and blogging session.

Related Links:

https://lg3d-wonderland.dev.java.net/index.html

http://www.sunspotworld.com/

First Life Bursts In...

No Comments »

Second Life from my perspective is meant to enrich the rest of our lives and in that spirit some people watch for the first robin but I watch for the first...

First Bee...

A Visit to Kira Cafe

No Comments »

I really do need to blog more about some of the places and workshops I visit. One of my new places to visit is Kira Cafe sponsored by the Kira Institute. Kira Cafe is for discussion of science and more. As the institute's mission statement notes:

The Kira Institute's mission is to investigate distinct views of reality, taking off from one central question: “Starting with science, what else is true?

The Institute holds lots of workshops/discussions related to this theme. Some of them are ongoing. For example the other week I attended a really interesting one about the role of virtual environments in scientific visualization as part of an ongoing workshop called Relocatable Laboratories in the Metaverse (ReLaM). This workshop dealt with Open Sim and the Science Sim by Intel.

Today was a weekly science discussion called Nymf's Science Circle which was hosted by Darkeagle Darkstone (left), in real life a computer science instructor in a Californian community college. The discussion revolved around the theme of how virtual reality environments such as SL can help persons with disabilities. Quoting from the note card:

" There are people here, who in real life are strapped into wheelchairs. Here can the walk away from the isolation and prejudice the face in their day to day lives. Here they dance, fly, and mingle. Their bodies here are not ravaged and mangled by disease or genetics in the Virtual worlds. Their speech is not slurred or laborious; we accept them here like everyone else. We discover that they are valuable and treasured friends. "

I was particularly interested in discussion related to use of SL by persons with autism (called in the discussion autists)

Kira has a packed schedule of events and you can view them here. You can visit the Kira campus in Second Life at http://slurl.com/secondlife/BaikUn/234/95/251.

A handy little string function...

No Comments »

For the Caminalcule project I'm finding it easier to represent a genotype as a string because I can easily manipulate strings. But LSL is not real whippy on the string manipulation front.One function I needed was one that would substitute a sub-string starting at a certain position in an original string without making any other changes in the original string.

There are functions that do similar things but they rely on having a recognizable set of characters in the original string as in standard find and replace. But what I wanted was a function that goes to a particular position in the original string where I (or a script) specify where the position starts.

This is important for me because the way I represent genotypes there are some things that change a lot, but somethings may not change very often and yet I want to keep those things together with the more variable stuff-kind of like what happens in a chromosome.

So if I have two sentences:

"The sly big fox is learning scripting." and

"The big sly cat is learning scripting" ,

I might want to change what ever starts at letter 9 with the substring "red". Hence my little function:

replace_string(string original,string sub_string,integer pos).

Try copying the following code and inserting it in to a prim and let me know what you think. Given Blogger's tendency to mess up LSL code, you might have to change a few things by hand. Or IM me (Simone Gateaux) in world and I will send the script to you.


//begin code here
string replace_string(string original,string sub_string,integer pos)
//replaces part of string starting at pos with substring; does not change the original string length
//real handy for me
{

integer orig_length;
integer length;
string new_string;
length = llStringLength(sub_string);
orig_length = llStringLength(original);
if ((orig_length-1) > pos &&( pos >= 0))
{

new_string = llInsertString(original,pos,sub_string);
new_string = llDeleteSubString(new_string,pos+length, pos+length -1+length);

}
else new_string = original;
return new_string;

} //end function

default
{

touch_start(integer num_detected)
{
string newstring;
string oldstring = "The sly big fox is learning how to script.";
string replacement = "red";
integer position = 8; //position start at 0 index so here 8 is the start of "big"
newstring = replace_string(oldstring,replacement,position);
llWhisper(DEBUG_CHANNEL,oldstring);
llWhisper(DEBUG_CHANNEL,newstring);
}
}
//end code




Caminalcules III Colorful pups...

No Comments »
















This week I implemented a version
of Eloise Pasteure's suggestion to get genetic data into the Caminalcule's offspring, representing the genetic data as a 7 digit integer. This integer has two positions for each locus or allele pair, a dominance term which is 1 position for each locus and an extra flag telling the program whether to process one or both loci when making the phenotype of the offspring. It's a little less compact than what Eloise suggested but easier for me to keep track of.

This version of the Caminalcule will illustrate Mendel's two laws and does not do linkage...yet. The second locus, by the way, has to do with the type and number of black spots on the critter and I just got that implemented today.

Yet to do are some fixes to the menu system- I've had to think carefully how the lldialog function works-and think out the mechanics of Caminalcule mating. How will they communicate and behave? Right now they can detect each other with sensors but I haven't given them an sort of movement. What happens if two encounter each other and they are genetically incompatible? What sort of reproductive system? We already know that some of them are hermaphroditic. Is there also a non hermaphroditic gender? Hmmmm. Stranger things than this happen in nature. You might look up the life cycle of Caenorhabditis elegans, one of the major organisms in modern genetics.

Lots of potential here for getting students thinking about life cycles and gender that go beyond genetics and collaborating with each other. I've also been to several interesting workshops related to Second Life and I will post more on those later.

Con la tecnología de Blogger.