Interview for eebtools.org

This is a copy of an interview by Karthik Ram posted at eebtools.org


Cam Webb, Researcher for the Arnold Arboretum of Harvard University: “I make frequent field trips to collect plants and inventory forest throughout Indonesia, then analyze and share the data using open-source tools.”

Cam Webb, Researcher for the Arnold Arboretum of Harvard University: “I make frequent field trips to collect plants and inventory forest throughout Indonesia, then analyze and share the data using open-source tools.”

Who are you and what do you do?

I am a biologist with research interests ranging from plant ecology and biogeography to molecular phylogenetics and biodiversity informatics. I live in Indonesia, and try to help conserve the magnificent forests of Southeast Asia, and to build local scientific capacity.

What hardware do you use?

I’m on the road a lot, and use small laptops rather than desktops. My last three main machines have been Lenovo ThinkPads (X60, X200, X220). For cheap netbooks for the field, I’ve been impressed with the reliability of MSI.

For phone/mobile technology, I was a Nokia user until recently. The high point was the wonderful Maemo-powered N900. I then upgraded to the very stylish and well-reviewed N9, but I’ve decided I simply dislike the touch interface ubiquitous on just about all phones and tablets: it’s such a step backwards in terms of precision (fat fingers) and efficiency (big hand motions needed). At the same time, Nokia made their terrible decision to drop Maemo/Meego and go with Windows, so I won’t be getting another Nokia (but good luck Jolla!). I’m currently using a BlackBerry Curve 9320, which I like a lot: cheap(-ish) and capable. Unfortunately, the harware future looks bleak for a keypad lover!

What software do you use?

I first installed (Red Hat) GNU/Linux in 1998 on a brick of a Toshiba Satellite laptop. I was seduced (back) by MacOS in 2002, primarily because I wanted an iPod, and with X11 I could do most Linux-y things I wanted (though the Ctrl vs. ⌘ metakey switching never ceased to annoy). However, being a proponent of FOSS, and being based in Indonesia where wages are low and piracy is rife, I felt I should ‘walk the talk,’ and in 2007 moved back to GNU/Linux, on a ThinkPad. From the awesome Gudang Linux in Jakarta, I bought a bunch of distro DVDs (Ubuntu, Debian, Slackware, Fedora) and played around, settling on Fedora, partly out of familiarity with Red Hat. I really like the Fedora community ethos, and enjoyed their ‘cutting-edge’ distro a lot. However, I didn’t like the switch to the Gnome 3 interface, and wanted to customize my system more, reducing the large number of pre-installed packages, and so last year I decided to go a step further and switched to Arch Linux. Very pleased I did; Arch has a great balance between near complete design control and ease. The Arch Wiki and BBS answer almost every question, and AUR is a great model for integrating lesser-used software. I’m a bit of a function-over-form person, and I use the lightweight OpenBox as a window manager, mainly using shell scripts to manage the system (wifi, disks, processes, etc.).

I’ve also consolidated my life around emacs, using gnus as an email reader, dired as a file manager, and bbdb as a PIM. I find the the common interface and commands to be very efficient, although I can’t deny having spent a fair amount of time learning the ins and outs of the extensive emacs world!

For ‘office’ tasks, I use LibreOffice to read /\.docx?/ documents, although it’s hard to beat the convenience and power of sharing working documents with GoogleDocs. LibreOffice Calc is my default spreadsheet. If I can get away with it (i.e., when not collaborating with non-hackers), I use latex for writing complex documents, and ‘markdown’ (with pandoc) for everything else. The new ability of pandoc to handle citations almost as well as bibtex does means I can use markdown/pandoc even more (while I love latex, the raw code can be a pain to remember and read). For citation data: JabRef. For presentations, I make latex PDFs or landslide HTML pages.

For coding, I still prefer to use gawk (v.4) for prototyping, and even for some production applications. I first learned awk on the AIX mainframe while a grad student, and have found gawk to be a fast, flexible, powerful and friendly tool. A working knowledge of regex patterns has also been invaluable on a daily basis. For simulation (loop-heavy) applications that need to be as fast as possible, I use C (phylocom and shiba). I just read Ben Klemens’ 21st Century C, which was full of great tips (including using pthreads for parallelization). Not surprisingly, I use emacs (with Makefiles) as the development environment. I also love git and github, as does just about everyone these days! And for statistical analysis... R, of course.

For small-scale data management, I love to manipulate plaintext data into an XML file with an evolving schema, using James Clark’s superb, validating nXML mode for emacs and his trang RELAXNG schema creator and converter. The XML can then be queried with xqilla or zorba. For larger datasets: MySQL, managed with phpMyAdmin, and xataface to build a quick web front-end. I’ve also become a big fan of Semantic Web technology, and like the 4store RDF/graph database, along with rapper and roqet (librdf) for data manipulation, and Protege for ontology development.

Other stuff I use all the time: Curl, ImageMagick, GIMP, GThumb, GraphViz, QGIS, MPlayer, Sox, Calibre, Sigil.

Finally, I have tremendous respect for Dreamhost, the web-hosting company I’ve been with since 2005. It’s just been so much fun to learn web technologies using their very comprehensive web panel and easy-to-configure tools. As I’ve gained skills, I now prefer the flexibility of ‘rolling my own’ server (currently with Amazon WS), but still rely on Dreamhost for domain registration, email services, etc.

What would your dream set up be?

I think I have it already... although I wish my laptop batteries would last longer!

All joking and pointed digs at MS and Apple aside, I really do marvel at the Free/Open Source Software culture that has created such awesome, flexible, creative solutions for our digital age. This culture has empowered me, and it’s a pleasure to be able to highlight the tools that have helped me. Thanks for reading this far, and I hope you find at least one new tool/approach worth adopting.