BayleShanks & ChrisGaiteri talk about making a wiki for neuro people. They talk about how hard it is to get people to use a wiki together, and also how to share models- the usual standardization problem.
Wikis have the potential to dramatically enhance the value of molecular biology research. They can do so by positioning independent projects within a larger collaborative framework. But, I have yet to find a wiki structure that is used to examine the results of experiments and formulate future plans in a collaborative setting. I’d like to start one, but I’m not sure how to proceed in this particular case.
Specifically I’m thinking of a model of muscle contraction I worked on with students from comp. sci., physics and neuroscience departments. We want to open source the MATLAB code and link relevant portions of it to wiki entries like “calcium,” which will have a multidisciplinary perspective and links to related molecules/perspective/code.
The model itself is a rough analogy for some of the issues that motivate wiki formation, in that people in the field are either not interested in talking to one another, or if they want to talk, they are speaking different (academic) languages. The wiki I propose would both make it easy for researchers to include other relevant effects and perspectives in their work and to contribute to a structured discussion of the relevance of their own work – all through this model-centric wiki.
Ideas for how to develop this community (in terms of software at least)?
Do you mean that there would be one wiki which is devoted to the different aspects and connections of this one model?
In this case, there is only a small group of researchers who use the model. Getting all of them to use the website is probably the hardest part. If you can't get them to do that, then you don't need to spend time tweaking the software.
That being said, I can already think of one feature you'll probably want in the software; the ability to include LaTeX equations in pages. Luckily, I think many of the major wiki engines have plugins for that now. For example, OddMuse has a LaTeX Extension.
On BayleShanks comment above…
I agree - getting everyone to use the same website will be tough. BUT it's not a static website - it's a wiki. It’s their website as much as anyone else’s. If a researcher doesn't like the site or the model it's up to him or her to change that.
The model itself is very open ended, more of a rough framework, and far from a sort of set piece that I'm trying to force researchers to use. It's relatively easy to insert a specific mechanism and look at how that affects large-scale behavior.
It's very easy to handwave in molecular research, but when you actually put what you're claiming down in code you are forced to consider the interconnectedness of your work. That is why I want to couple the model and the wiki.
Any textbook can increase the knowledge base of any given scientist. That by itself is useless. It's just another drop in the ocean. Because molecular biology is highly specialized the most you can really to is develop a short term view of related work. There is no structure that supports interaction between more distant threads of research.
But how about scientific meetings? But what you really do there? You look for stuff YOU think is related, not what may in fact be related, and try to hobnob with big names who are all about presenting their own work, not some developing, amorphous, anonymous web. Wiki’s are way more temporally and fiscally efficient anyway.
Case in point:
I read over 500 recent papers on actin/myosin last year and only 3 of them actually looked at what happens when molecular motors interact - but that's the entire point - things have to interact to contract! Basically molecular motors were unconnected because the research is "unconnnected."
a more techical question…
It would be great if somehow the program would compile itself in a custom version just as you navigate through the wiki and say I want this parameter and that parameter. This is somewhat reminiscent of machinecodesblocks, but there will need to be multiple simultaneous versions of the program, if only because of run-time concerns. I think I a more realistic possibility is to have links to the wiki within the model code back out to the wiki. Just like communitywiki, the relevant pages would have discussions with researchers saying “I use this part and this part of the model, but not this part, for x, y, and z reasons.”
Proposed research cycle:
When researchers post results it would be nice to quickly see what modules they are using, and if you disagree with/are interested in the results, you could quickly load their code, integrate it with the modules you study and see what happens. Cool results would then be posted to the wikipage the original researcher is writing and he would then learn about this cool interaction and see specifically how it arises - no more hand-waving and disjointed debates!
Finally the question: What software is likely to have this kind of advanced version tracking, or is there a better overall scheme you can come up with?
I know this should be moved to a new page, but I don't think the discussion has evolved enough for me to think of a name for it yet Maybe we should move it to Chris's homepage for now, and then refactor it into other pages later?
Chris, I agree very much with your objective. In fact, one of my thesis ideas was to do something similar; to take models of neurons that we already know about and link them together (I didn't find anyone to jump on that, but I'm quite happy with what I'm doing instead). Lloyd Watts was working on that for awhile; in a talk he said he basically talked to different specialists who had characterized certain neurons, but they hadn't connected their models together with models of their inputs and outputs, so Lloyd did that.
I do think it would be a feat of software engineering to get a critical mass of different research teams using compatible modeling software, though. It is a standardization problem; each researcher using models likes to use the computer languages that they personally prefer, and they also want to setup their data structures the way they want to. In order to get different "modules" to work together they have to define a standardized language for interfacing. There may be various of these standardization efforts going on, but I don't know if any have achieved critical mass. Most of the modelers I know write their own C code to implement their model. Others use MATLAB. Others use NEURON. Others use GENESIS. The only standarization effort I know of is CellML; there may be others though.
Until a standardized language for models gets critical mass and until a set of convenient software tools are libraries are built for interfacing with that language, I doubt that many research teams will be convinced to take the time to integrate their models together – so even though the site is a wiki, researchers will have to be convinced to do the work to integrate their model into a module in the site.
I think if you wanted to start working on this today, you'd choose CellML? (or something similar) and then start adapting wiki software to work with it, as well as helping with other tools for it (the CellML? people are already working on some of these tools; see http://www.cellml.org/related_efforts and in particular http://cese.sourceforge.net/). Then you'd have a wiki which can conveniently contain both English text and also CellML? modules, as well as a toolset to allow a user to select some of the CellML? modules, link them together according to the specifications included in the wiki, and run simulations using them. Making all that would be a bit of work in itself (perhaps years of work, if you wanted to make it really convenient and really extensible for the users). But then you'd still have to convince other researchers to jump on board and rewrite their models in the language of CellML?.
I think it is something that is worth doing but it's a big, long project.
These concerns can be addressed by having a wiki used by many researchers which references, discusses, and interrelates the extent research papers, findings, and models. That's my goal for NeuroWiki. Having a wiki that talks about the models isn't nearly as good as having a wiki that contains the models themselves, but it's a start.
Moving from BayleShanks thought that…
I agree - and that’s what OpenContract? (name of the model) will begin as, a wiki about the model. Hopefully it will become an interface of ideas and code that goes a bit beyond a nifty help file/discussion forum.
The code is currently in MATLAB because we felt that would be the most accessible language to a varied audience. Certainly getting Neuron to work with Genesis to work with MCELL… would be very difficult. But I'm hoping that the microstructure of muscles will enable us to squeak past some compatibility issues with electrophysiological models. Namely, there are a set number of motor domains and a set number of binding sites with probabilistic activation (I realized this is extremely simplified and you already know this BayleShanks). And granted this is tempered by some complex geometric concerns, but it's still a heck of a lot easier than dealing with neurons. Since we separated upstream activators and geometric concerns from the basic matrix though, I think we could swing this in MATLAB (I doubt anyone can argue with the data structure). That said, if science at large becomes a wiki there are substantial programming issues to be resolved. If there was a big enough push to transform science this way hopefully there will be few workarounds too.
Thanks for the CellML?/XML links - I'll keep reading about that and try to formulate a sort of web interface for MATLAB.
Summary: This will be "long and hard," but I think this biological system has quirks that might circumvent the programming language conflicts. Neuroscience on the other hand would be extremely difficult to wiki (v.)? so, go NeuroWiki!
I went through a rather long search to find some kind to find communitywiki, and aside from meatballwiki, it's the only forum for discussion about wikis that I've seen. How can I solicit more comments on science in a wiki? - ChrisGaiteri
What does the last sentence mean?
Do you mean:
I'm just not totally clear.
I was thinking of bullets #1&3 - minus the serious part. I'm not sure anything interesting comes of "serious" discussions. But if there's a way to pull more people in to an extended discussion that would be great. I'm hoping to help others circumvent the difficulty I had of trying to find a discussion about wikis amidst all the wiki discussions.
On the other hand if someone thinks a Meatball page would not be redundant, that would be a great step too.