Web developers and programmers have a lot riding on the quality of their product. If it behaves in an unusual manner, it’ll frustrate users. If it’s unattractive, it won’t attract users. If it’s no good, it will lose users. Users are the primary concern. Consequently, there are fields dedicated to this concern: User Interface (UI) and User Experience (UX).
Because web developers and programmers have a much wider potential audience than scientists, they have a better handle on the importance and behaviour of the end user. Scientists could learn a thing or two about UI/UX.
Journalism and science have very different time scales. A week-old newspaper is barely worth reading. A week-old scientific paper is still warm from the photocopier. Journalism neglects this discrepancy and pressures science to hurry up. Numerous headlines with the eye-roll-inducing opening “A new study shows” imply that only the newest (or weirdest) science is worthy of attention. Google declares about 2000 times as many results for that phrase compared to “an old study shows”.
To make sense of the differences between science and its representation in the media, it first helps to figure out what does and doesn’t make news, and what does and doesn’t get widely shared or discussed. With that established, we’re better positioned to overcome the challenges of communicating all scientific research, not just the sexy aspects that make good headlines.
This article is going to describe … would be a terrible opening for this article. It’s six words that convey nothing. You already know this is an article, and you already know that it’s going to describe something. We don’t see this, fortunately, because the importance of a strong and compelling opening sentence is well recognised. At the paragraph level, however, it’s easy to forget the importance of the first sentence. In scientific cases, a symptom of poor or lazy writing is opening a paragraph with Figure n shows.
When it comes to visualising your data, the most important question to ask yourself is what’s your point. Wording a paragraph by starting with Figure n shows will not convey the point. It tells me what you did, but not why I should care. Using this phrase would be like putting the Methods section of a scientific paper before the Introduction.
Jet was a ubiquitous colourmap that slowly fell out of fashion over the last five years. It was the default colourmap for Matlab and Matplotlib (and probably others) until 2015ish. The replacements, Parula and Viridis, respectively, get a lot of love. A quick Google search will present numerous blog posts and articles maligning Jet and promoting the use of these newer colourmaps. It’s an unpopular opinion but, especially now that they are common and overused, I dislike Parula and Viridis as much as I dislike Jet.
Scientific literature is like social media: its content disproportionately comprises successes and achievements. Just as social media seldom features mundane necessities like trips to the supermarket, scientific papers seldom feature abandoned experiments or fruitless pursuits. In fact, we generally work backwards from the results and conclusions when writing these papers. We start with the answer and present only the relevant methods. To a non-scientist, this may sound dishonest and deceptive, but it’s not. Its for the reader’s benefit: a linear narrative is much easier to follow than the actual story with its many tangents, setbacks, and realisations.
Anyone exposed to the process of scientific research quickly learns that it seldom follows the so-called scientific method, those dispassionate experiments meant to objectively test hypotheses. Science is better described as Ready, Fire, Aim. Yes, in that order. This phrase, borrowed from Neil Gershenfeld, concisely captures how science is an iterative procedure without a specific target. Put in some groundwork to figure out the general direction (Ready), but take what might otherwise be a shot in the dark (Fire), then spend time making sense of what you hit (Aim). You may well fail and hit nothing, but as Gershenfeld elaborates, you can’t hit anything unexpected by aiming first.
If the result confirms the hypothesis, then you’ve made a measurement. If the result is contrary to the hypothesis, then you’ve made a discovery – Enrico Fermi
Matplotlib, Python’s primary scientific plotting library, provides tools to make many elaborate plots, graphs, and diagrams. Many of these can be animated, but the process isn’t always intuitive. The hardest part is learning how to animate a simple line plot (here’s my easy way). Beyond that, the steps to creating most animations tend to be similar.
The examples below demonstrate the particular methods needed to animate common types of plot. Here I focus on the key components needed for updating each frame of the animation. The full code for the examples is here. It includes liberal and arbitrary use of sines and cosines so as to produce looping gifs.
A computer is a better artist than I am. If I can tell it what to draw, it will produce attractive results. To make a nice schematic, the hardest part is to tell the computer what I want to draw. Fortunately for us so-called left-brain types prevalent throughout the sciences, a familiarity with scientific software can overcome a lack of artistic talent, allow rapid iteration of a design, and even provide creative inspiration.
Invoking my scientific software skills, I am able to produce elegant figures: