A writing project that bridges two worlds

For the last several months I’ve been working on a manuscript to be included in an edited volume tentatively called Plant Gravitropism: Methods and Protocols. It is part of a series called Methods in Molecular Biology, published by Springer.

rotating stage and camera systemMy contribution focuses on ROTATO, the image analysis and feedback system we use routinely in my lab to measure root gravity responses. The objective of the series is to allow “a competent scientist who is unfamiliar with the method to carry out the technique successfully at the first attempt,” which seems pretty unlikely to me. I can’t think of a single experiment that I’ve every carried out successfully on the first try, but that’s another matter. I’ve been surprised by how hard it’s been to write this, so I thought I’d do some thinking out loud to try to gain a little insight into my struggle.

I think some of my struggle has come from being too close to the method to see it with “beginner’s eyes.” I’ve been working with ROTATO since it was a pile of parts stripped from IBM PCs (we used the computer power supply for 5 V DC and the stepper motor from the floppy drive). I watched over my friend Jack’s shoulder as he wrote the software to make it work. I know the ins and outs of how it works and what makes for a good experiment. Through the years I’ve had a tough time teaching my students how to get good data with it, and I think that’s in part due to the hidden assumptions I make about it. Dragging those assumptions out into the light has been an ongoing process, and writing this paper has been helpful.

Another aspect of the struggle is with how to handle the software part of the method. I am not releasing the code (it’s not mine), and even if I could it wouldn’t do much good because of its dependence on an obsolete frame grabber card. So I’m trying to include enough detail about how it works to allow a scientist/programmer to reimplement the method. But I’m a biologist, not an engineer, so I’m struggling with how much to say and how to say it. I think this is the heart of the issue, that I’m trying to bridge the worlds of biology and engineering.

This is, in fact, what ROTATO is about, and what makes it so important. It takes pictures of a biological response and uses them to control the position of the organ doing the response. It is clever, naive in certain ways, clunky, finicky, crashy, and it works. It has allowed us to learn new things about how roots respond to gravity. So that’s what I’m trying to convey in this methods paper, how to make a ROTATO that works well enough to learn new things, of which there are plenty, I am sure.

Scripting Google Spreadsheet to do email merge

I recently posted about using TextExpander to semi-automate the process of sending grade updates to students. That post got me poking around for other ways to do a more thorough mail merge, and I found a tutorial for scripting Google Spreadsheet to send emails. With some minor modifications, I now have a spreadsheet set up as a grade book that can email each student with their current point total and class average at the push of a button. Below is a description of how I adapted the original spreadsheet to make it do what I wanted. You can open my spreadsheet and make your own copy to modify, too.

The original file is designed to collect user information with a form, save it to a spreadsheet, and email the user. Working from the copy of the tutorial spreadsheet, the first thing I did was to delete the form, as I do not need it in my application. Then I rearranged the columns and added some for my assignments and for totals. I left the original columns for first name, last name, and email address intact to minimize the need to edit the script. The script uses the first row of each column to identify which variable that column holds, so it’s important to respect those labels.

When I had the tutorial spreadsheet how I wanted it, I customized the text of the email template to suit my purposes. I added two new variables, based on two new columns, Total Points and Class Avg:

template text to send email

Then I ran the script with myself as the test recipient, and I was disappointed to find that the value for Current Avg did not get filled in. I returned to the script and began looking for the place where the data range is set, finding it in line 4. The original tutorial spreadsheet has 4 columns, so the range is set to 4. I have 5 columns I want the script to read from, so I changed the dataSheet.getMaxRows value to 5:

screen shot of script text

I ran the script again and it worked as expected.

The last step I took was to customize the subject line for the automated email. In the tutorial spreadsheet, this subject line is hard-coded in the script, which seemed a little too permanent or hidden or something. I changed it to set the subject line by reading it from a cell in the ‘Email Template’ spreadsheet.

Any time I want to update my students on their grades, I just run the script by clicking on the Tools menu, selecting Script Manager, and clicking ‘Run’. This solves one more of the problems I’ve had weaning myself from the tyranny of the LMS.

 

 

How Vitamix Sells Pricey Blenders to Affluent, Health-Conscious Foodies

Having recently joined the Cult of Vitamix, I enjoyed this piece in BusinessWeek on the company that makes these awesome machines. Although I wasn’t the one driving this particular purchase, this pretty much sums up my burgeoning relationship with it:

For all its appeal to celebrity chefs and extreme athletes, a Vitamix is tailor-made for the semi-enlightened male vaguely inclined toward better nutrition yet still rooted in his natural state of couch-bound torpor.

On a somewhat related note, it also makes a mean whisky sour.

Acer C720 Chromebook – first thoughts from a Mac user

As I’ve written about a few times before here,  I’m testing the Acer C720 Chromebook as a potential notebook computer for general purpose lab use. I wanted to get a sense for how it performs and what kinds of things it can do, so I’m using it as my main at-home computer for a few weeks. This isn’t what I really bought it for, but I wanted to have a good idea of what its limitations were before committing us to it.

So far the most surprising thing about using a Chromebook is how easily it has fit into my computing life. I have been a full-time Mac user for 11 years, and yet I can do most of my work from this computer. I thought I was far more dependent on Mac-specific applications and utilities than I really am. For example, I received an email a few days ago from a student asking about a missing assignment while I was on the Chromebook. I keep my gradebook for that class in Numbers, and I have it synced with iCloud because I like to be able to enter grades on my iPad during lab.

My first instinct when I read her request was that it would have to wait until I got back to my Mac, but then I remembered that iWork for iCloud was available:

iCloudApps

I logged in to iCloud.com, opened my grade book from the web, checked on the missing assignments, and emailed the student without needing to wait until I got back to my office. Since then, I’ve used the web version of Numbers two other times to update grades, and both times it just worked. The same holds for most of the other cross-platform services I make heavy use of, like Evernote, Dropbox, Simplenote, and (of course) all the Google Apps. With Evernote and Dropbox, it’s not quite like using a native app, but the web interfaces do the job.

One of the programs I use heavily on the Mac is OmniFocus, and I certainly notice its absence on the Chromebook. I can email tasks into it from the Chromebook, but there is no way to access my to-do list over the web. I’ve moved a few kinds of tasks into Wunderlist as a temporary solution, but I still miss OmniFocus. I’m sure if I were writing a paper, or just not in the throes of final exam writing and grading, I would also miss Papers, but alas, I am not. Part of what I need to do now, though, is figure out what our students need to be able to do with these and whether they can get that work done.

As far as the hardware goes, I’ve been more than impressed. The battery life on it is impressive. I’ve used it without a charge for over 7 hours and it still reports about 30% charge left. I was also pleasantly surprised when I plugged it in to a monitor and learned that it does desktop spanning, not just mirroring. I assumed this would be one area of compromise to save cost, but it can drive both the internal display and a 1080p monitor with no problem.

 

Using TextExpander for email merge

TextExpander iconIt’s the end of another semester, and a lot of my lab students have been asking me what their lab grade is going to be. I don’t keep an online gradebook for my labs, so I needed a quick way to send them an update with their current grade. I keep their grades in a spreadsheet, and in the past I went so far as to create a mail merge report and send each student a PDF of their results, which was a fairly time-consuming process. Instead I turned to a Swiss Army knife called TextExpander.

TextExpander is a program that runs in the background and waits for you to type a specific sequence of keystrokes. When it detects that sequence, it fires and inserts the text you have associated with that shortcut at the point of your cursor. Not only can it insert the prescribed text, it can also do some thinking and use variables. For example, here is my snippet for the text of an email to a lab student:

Lab Grade Update

You have a %clipboard in lab, which includes your lab exam grade and all assignments handed in to date.

The real magic in this snippet is the %clipboard part, which TextExpander fills in with whatever is present on the system clipboard when the snippet is expanded. Before expanding the snippet in the body of an email, I just select the grade in my spreadsheet and copy it. When I type the couple magic keystrokes, the text above is inserted, complete with that student’s score.

OK, so this isn’t so much a real ‘mail merge’ as a ‘data merge’, but it’s still a time saver and requires effectively zero setup. It also works with whatever is on the clipboard, meaning it is not tied to a specific data store, unlike a traditional mail merge and its data mapping requirements.

Chromebooks and the ‘technology floor’

A few weeks back I wrote about using Chromebooks in some of our biology labs, and now that the Acer C720 has started shipping, I ordered two of them to start testing. I’ve only had them for a day, so this is not a performance review in any way, but I will say that it seems like a very functional computer. I’m used to the 11″ MacBook Air as my daily computer, and the screen size and keyboard are on par with that, although the color gamut seems more restricted; so far the battery life seems much better than the Air.

Part of what I want to work through as I’m testing is what, exactly, is the service model I’m aiming for — what is the purpose for these? The current computers are used to run evolution and ecology simulation software and a statistics package. I didn’t even bother requesting them this semester for our new bioinformatics exercise, opting instead to encourage students to bring their own, which worked fine. So why not just continue to do that instead of investing in lab-owned notebooks? If we are going to have to virtualize some of the software anyway, why not just give students access to it on their own machines?

This would be consistent with the trendy practice known as ‘bring your own device’ (BYOD), but I’m not convinced it’s the right way to go for us. One of the biggest weaknesses of this policy for education is that it lacks any kind of predictability. I’m not referring to predictability in terms of make and model and minimum specs, I mean whether the student brought their computer that day. There is a great benefit to being able to count on certain equipment being available and functional when planning a lab. For example, I know that we have a number of nice spectrophotometers, so I can design a lab exercise that requires them. Knowing that each student or pair of students is going to have access to a computer, and knowing what that computer is capable of, changes the design of the lab, to put it simply.

Here are a few activities that come to mind:

  • The lab manual could be moved online. As it stands, we have the manual printed for the students and (try to) collect the cost from them, which turns me into a cashier. This could be as simple as a PDF or as complex as a real ebook with interactive content.
  • We could produce short instructional videos for routine lab techniques and link to them from the online lab manual. These would be for things like pipetting, using the spectrophotometer, setting up a TLC experiment, or even setting up a slide on the microscope, which seems like a neverending mystery to many students.
  • Get into more detail on the practical side of data management and statistical testing. As it stands, we send students away and ask them to perform simple statistical tests on the data they have collected, but what they take away from this varies widely across the class. Some really get it, but others can’t get a handle on it. It would be nice to do more show-and-tell before sending them away to work alone.
  • Do some real training in literature searching. We have a light requirement for incorporating primary literature into the 2 formal lab reports, but we don’t spend time in lab talking about how to do this. I’d like to change this.

I could go on with a dozen other examples, but none of these is surprising, nor do any require anything other than a computer with Internet access. But you have to know it’ll be there. Right now, the range of access to a computing device begins at ‘none’, and having a set of lab computers would drastically improve that to ‘something’. I guess that is what I find so attractive about this whole idea: it offers a ‘technology floor’ where there is none now.

The idea of a technology floor works on a number of levels here. It supports the objectives we decide on teaching toward in any particular lab, that’s its primary job. But it also doesn’t have to remain exposed, students could choose to bring an equivalent computer of their own and use it. I’m thinking of the difference between vinyl flooring and travertine tile — they look and feel quite different, but ultimately serve the same function.

The Academic Decline: How to Train the Next Generation of Botanists – US News

US News had a piece that caught my eye a couple weeks ago on training the next generation of botanists, which is defined in a surprisingly narrow way in the article. A botany major is about much more than plant identification, but that’s really all the article mentions, completely ignoring the promise of plant biotechnology. Regardless, it makes me proud that we still offer a botany major here at OWU.

Losing net neutrality

Once the court voids the nondiscrimination rule, AT&T, Verizon, and Comcast will be able to deliver some sites and services more quickly and reliably than others for any reason. Whim. Envy. Ignorance. Competition. Vengeance. Whatever. Or, no reason at all.

via We’re About to Lose Net Neutrality — And the Internet as We Know It | Wired Opinion | Wired.com.

Tweeting genomes

This kind of blew my mind:

https://twitter.com/Harrison_Peter/status/395656427487760385

He’s now turned his script on a much larger project, tweeting a bacterial genome. It got me thinking, though, about the nature of information. Twitter is designed to be a publishing platform for small, human-readable messages. A genome is neither small nor human-readable. Harrison has devised a clever way to overcome the first limitation, but the results don’t exactly make for a gripping account to follow because nucleotide sequences are not all that human-readable. Seriously, don’t follow @GenomeTweet.

Cells are constantly forming small messages that ALSO are not human-readable, but control all kinds of activities in the cell. Is a tweet kind of like messenger RNA? It is sent out in response to some signal, and itself serves as a kind of signal, meant to have an influence on the system.