Wednesday, 24 February 2010

Top five bits of software

I'm a big advocate of using free software, especially to do research. It means that anyone, anywhere can, in principle, repeat what you've done. To me this introduces a big element of transparency into what researchers do and breaks down barriers of affordability that could otherwise stifle research elsewhere. 

What makes good software? I'm sure there's lots of discussion on this out in the ether, but the elements most important for me are a strong sense of identity, i.e. doing what they say on the tin and not worrying about too much else, multi-platform support (I'm not a Mac fan, I'm afraid, or a Microsoft-hater) and perhaps most importantly have a good, intuitive interface. 

So, ideology aside, here's my recommendations for top 5 pieces of free software:

1. Mendeley. Really, really get Mendeley. There's a reason it tops this list. It's a reference library which does everything Endnote can do, but better and for free (there's a premium version coming soon, but they tell me the basic package will remain free). Top functions: extracting metadata from pdfs, exports references to MS Word, Open Office writer and bibtex, free web syncronisation, automatic web import. It's still beta (i.e. in testing), and does have bugs, but none of them have seriously impacted on my use of it. Alpha coming soon, I believe.

2. Texnic center. I'm showing my maths roots here, but for a document where you don't have to worry about the formatting, or battle equation editor and its variants in MS Word, you simply can't beat LaTeX, and Texnic Center saves you having to remember the syntax for every symbol or format. For the uninitiated, LaTeX is a non-WYSIWYG editor that will produce effortless, professional looking pdfs and other formats. It takes a little bit of learning, but the effort is well worth it and Texnic center makes the transition as smooth as possible.

3. Netvibes. This one is probably more idiosyncratic. RSS feeds are how to get the web to come to you, rather than having to trawl through every site you want to look at every day. I use it for blogs, news and keeping up with journal publications. Netvibes allows me to see all the information at once and to take in the whole picture, plus it's got ready-to-go widgets for things like Twitter and BBC news.

4. Opera. According to the news it's got about a 2% market share in internet browsers, but I like Opera. After the release of Firefox 3, it seemed to be getting a bit big and clunky, so I tried Opera for a bit and I'm hooked. It does most things you could do in Firefox, but without having to trawl through add-ons. By far the best thing for me is the mouse gestures to open tabs, go back and forwards etc. The only thing I miss is coolpreviews, but the mouse gestures almost make up for that. So, with Microsoft set to offer more of a choice in browsers, why not give it a  go? I'm dreaming of the day they release Opera mobile for Android.

5. Maxima. I recall being in a maths class at school about a decade ago and my pure maths teacher being gob-smacked by Mathematica's capabilities for solving equations analytically. Well, if you want to buy Mathematica go and pay your £800 pro license and you can have it. On the other hand, get Maxima for free. For me it combines the best bits of Mathemetica and Maple (the two top of these kinds of software). I'll grant it's not quite as powerful when it comes to plotting, but for solving a few simultaneous equations or doing some tedious matrix manipulation analytically, it's my weapon of choice.

So, there's the top five. Most of these I've picked up relatively recently (last year or so) and they're all very intuitive and have lots of online docs to help you along. Let me know if any of these have changed your life as well, or if you just plain disagree. There's probably lots more out there that could make my life easier...

Tuesday, 16 February 2010

Bruker nanostar

Lurking in the basement of Reading's chemistry department is  a shiny new Bruker Nanostar instrument. In the dim, distant past when I wasn't indoctrinated with science, I remember the main association with x-rays was ray-gunning people and looking at your skeleton. Well, these days I sagely realise there's a lot more that can be done with them. In particular, the Nanostar instrument will measure what is known in the trade as small angle x-ray scattering (SAXS). I won't go through the details, but essentially the principle is that you can measure really small things with really small wavelengths. This means potentially structures of protein crystals and, in my case, structures of water channels a few nanometres thick. 

So, how have I got on with the instrument? My assessment is basically: hardware good, software bad. We have a detector of a type which will take a full x-ray beam without being burned to smithereens, unlike the old style of detectors. I hear it's not quite as good a resolution as some of the other state of the art detectors, but it's easily good enough for the applications we've put it to so far. Everything seems pretty sturdy. Shortening the sample-detector distance is time-consuming I'll grant, but not difficult. We're probably exceptional in needing that fairly routinely and I've got it down to about 45 minutes to do the swap-over. 

My issues come when you start to use the software. It simply isn't intuitive. A simple example: to make the simplest kind of measurement requires going into the menu 'collect', selecting the submenu 'scan' and then choosing one of the following options: 'add', 'single run' or 'multi-run' (among other options). Can you tell me why any of those menu names would be the most obvious choice? No, thought not. Also, reading this I'm sure you have no idea what any of those three options do. It transpires that the easiest way to run several samples in different positions is 'single run'. I still haven't worked out what 'multi-run' does. 

There is a scripting language, with which you can put in commands (garnered from a log file or 'Help - Errata', obviously) and get the instrument to do more or less what you want. The whole thing smacks of software written by programmers who don't understand the capability of your average bench-top chemist. The prospect of writing a program is a pretty daunting one for most of our users. In my case, using grazing incidence, it is the only option since there is no standard measurement routine that controls sample angle. 

At the end of the day, we are happy with the results we have (lots of pretty spots and so on) but for an instrument with the capability and cost of the Nanostar, I am very disappointed with the standard of the software. I don't buy the argument that extra capability makes the software necessarily difficult to handle. There's already two pieces of software for simple and advanced control to stop stupid people messing things up. The simple one just isn't simple enough and feels like it was written in a rush by someone who has never run an x-ray scattering pattern.