Skip to content

Toolbox.

One of the most popular posts on this blog was What’s in your Bag?, which basically listed the digital tools I was using back in 2014. Chatting with other researchers about the tools you both use (and why) is a great way to say on top of the latest trends, so this page presents an up-to-date account of my digital research toolbox:

Operating system: OS X (laptop), Linux (NCI)

Data analysis and visualisation:

  • Simple manipulation of netCDF files (e.g. changing metadata/attributes, renaming variables): NCO
  • Simple data analysis tasks on netCDF files (e.g. temporal and spatial averaging): CDO
  • Quick viewing of netCDF files: Panoply
  • Data analysis (including reading and writing netCDF files): Python. The core library I use is iris, which is essentially built on top of NumPy and netCDF4
  • Plotting: Python. Predominantly the Iris / Cartopy (geographic maps) and Seaborn (regular histograms, line graphs, etc) libraries, which are built on top of matplotlib
  • Workflow automation: Unix Shell, Make

Code development: jupyter notebook

Source code editing: Gedit, TextWrangler

Software installation / package management: conda (see this post for details)

Version control: Git (version control software), GitHub (hosting service)

Simple data processing: OpenOffice Calc

Word processing: OpenOffice Writer for short documents and LaTeX for papers and theses. I used to use the Texmaker editor for writing LaTeX documents, but increasingly I’m using an online editor called Authorea instead because it’s great for collaborative LaTeX editing (see my post about it here).

Reference management: Mendeley

Presentations: Microsoft PowerPoint, which I then make available via Speaker Deck

Graphics editing (including conference posters): Adobe Illustrator

Cloud storage/backup: SpiderOak

 

I’ve also got my eye on…

Alternatives to PowerPoint and Illustrator: The rest of my setup consists of free and open source software, but I haven’t been able to kick the PowerPoint and Illustrator habits. There are a number of LaTeX packages for creating presentations, as well as OpenOffice Impress and Prezi, so I probably have no excuse when it comes PowerPoint. I’ve tried Inkscape for graphics editing and posters but have found the experience to be much worse than Illustrator.

vi for source code editing: It allows you to edit code at the command line (which means it doesn’t require a pop-up window) and is available with all Linux distributions, so you can never get caught out when using a new/foreign computer. This post makes a strong case for using PyCharm rather than a simple editor like vi, so that’s something I’d like to try as well.

Fancy data visualisation: Geoviews is the latest data visualisation library from the Met Office. It allows for the generation of static or interactive plots and makes tweaking and iterating much easier (i.e. very few lines of code).

A new programming language called Julia: High-level programming languages like Python and MATLAB are great because they’re easy for humans to read (which speeds up the code development process), but the trade-off is that they run much slower than low-level compiled languages like C or Fortran. Julia is a new language that’s the best of both worlds: a high-level (i.e. pretty), compiled (i.e. fast) language. I can’t imaging moving over the Julia until there are many more data analysis and visualisation libraries, but I’ve got my eye on it all the same.

%d bloggers like this: