Koch Lab:Research/MediaWiki for Open Science
We can use this set of pages for Caleb's open research project which is generally related to using MediaWiki for open science applications. This page was created on December 31, 2008, and we'll try to fill it in over the following weeks.
We're going to use DPL Goals as part of organizing the project. See User:Cmorse/Tasks and goals.
Email to wiki
Word clouds (low priority)
- A feature to enable word clouds from the wiki data base. For example, wordles of user contributions would be really fun and probably increase interest in OWW.
- Would a cloud containing the most common page categories work?
- Steve Koch 01:51, 30 January 2009 (EST): Yes, that would be cool. I also think it would be really fun to see wordles from a users contributions. E.g., I would probably embed that on my user page for fun.
- A system to make categories much easier in MW. So it can become more like tagging in other Web 2.0 sites
- Cmorse 13:16, 1 February 2009 (EST) Found an extension that creates a cloud of the most commonly used tags that you can select for the current page here: 
- Steve Koch 14:55, 1 February 2009 (EST): I couldn't find the demo of it on the Mike2.0 site, but it looks very useful. My guess is that would make categorizing much much easier, and it's similar to what we're used to with other sites. Something in that code would probably be useful for the word clouds I was mentioning above, too, right?
- A system for easily linking to permalinks of specific protocols (for lab notebook purposes).
- What kind of protocols?
Here's an example. This protocol could evolve, so it'd be nice to be able to quickly and easily link to the "permalink" of the protocol for today.
I'm still not quite sure what you're looking for here. Do you know of any websites that have something similar?
- Steve Koch 14:50, 1 February 2009 (EST): No, I don't. Hmmm: here's a possible implementation that maybe would let you know what I'm thinking. This would be cool:
- A button to push that says, "insert commonly linked page." or "insert link to protocol."
- This would popup a window with checkboxes for protocol pages. There would be two checkboxes, (a) insert link and (b) use permalink to today's version of page. There would also be a box at the top of the page for somehow narrowing down which protocols to use. Like maybe the window will show all pages with category protocol, and then you could narrow down by keyword (e.g. tethering).
- After saying OK on checkbox, it would put links to those pages at the top of the edit box. So, when you save, the page would now have links to the pages or permalinks of the pages.
Does that make any sense? It seems like a pretty complicated system, and we could probably come up with something simpler. I could imagine using DPL to display the pages. Something simpler may be similar to the "quick nav" pull down menu that Bill and Austin put on the OWW skin.
"Auto save" for pages
- "Auto save" for pages. One option is a new button called "Save and continue editing," which would work like the preview button, but would actually save a version.
- This looks like something that I could do with a plugin pretty quickly. I'm interested in hearing about why you would like to see this added. There might be a more advantageous way to Fix the problem. --Cmorse 12:23, 26 January 2009 (EST)
- It's for the purposes of lab notebooks, where you tend to take a lot of little bits of notes over the course of hours. People are reluctant to save every little edit--it's annoying to have to open the text box and find your place again. And waiting to save has the risk of losing everything. I figure by having a button like "save and continue editing" it would be just like previewing, except the previewed changes would actually be saved into a new entry. Presumably the wiki data base is differential, so this won't add burden to the data base. Ideally, the electronic lab notebook would have the feature of paper, where it's very easy to jot down notes, and when you jot them down, they're immediately recorded and the ink never mysteriously vanishes if you forget to "save." Of course people lose paper all the time, so electronic can be even better than paper in this regard.
- I think I found the perfect extension for this. It's called LiveSaver: http://www.mediawiki.org/wiki/Extension:LiveSaver. Essentially it automatically saves any changes you make to the page in the browser as a cookie. So that if something happens to the page you can come back and it will have all of your changes saved.
- You can try out that extension here: http://kochlab.org:81/wiki/index.php?title=Main_Page. Try making changes to the page, close the tab you made the changes on, then go back to the same edit page again.
- Steve Koch 21:41, 26 January 2009 (EST): That worked really well! I am worried, though, that it would be confusing for people, since the text appears there without being obvious that it's not part of the current page. There may be other implementation as well, but you're right, it may be very close to what we need. What do you think about the possibility of you modifying it? Any experience with that to know what's involved?
- Cmorse 23:40, 26 January 2009 (EST) Modifying it is definitely doable. The existing extension was pretty old and I had to modify it just to get it working. I'll see what I can cook up.
- Cmorse 02:51, 28 January 2009 (EST) I'm getting close to a working solution. In its final state I think its going to give the user a small prompt above the edit box if changes might have been lost. I'm also adding the ability to disable the extension in case it was causing problems.
- Steve Koch 12:28, 28 January 2009 (EST): This sounds great! A couple questions that you don't need to answer right away: (1) are you taking notes about things that did and didn't work? In the spirit of "open science," those failed attempts are very valuable. I'd like you to work towards keeping your electronic lab notebook, either in private or public wiki. And (2) are you going to be able to post this as an extension on the mediawiki site? I think that would be awesome.
- Cmorse 12:28, 29 January 2009 (EST) (1)I am planning on posting it to the mediawiki site. Especially since I based it on an existing open source extension there. I will probably just take ownership of the original extension since it hasn't been updated in 2 years. (2)To be honest, I'm not really sure what to put in my notebook since most of the problems I have are due to syntax and/or logic errors. What types of things do you normally put in your notebook when you're writing code?
- Steve Koch 13:23, 29 January 2009 (EST): You could put entries such as: "Worked on ___ part of code. Seems to be working, but I want to fix __, __, and ___. Here is the current version of my code." And then link to that version of the code, if possible. Or another possible example: "found an old extension: ___. tried it out, but I don't think it's going to work for us because ___." The purpose to keep in mind for your notebook is so that one year from now you (or someone else) would be able to read it and figure out what you did. If you're not comfortable doing it in public, it's fine to use the private wiki.