/images/jl11_lots.jpg

John Lees' blog

Pathogens, informatics and modelling at EMBL-EBI

Annual conference, Microbiology Society (2022, Belfast)

I recently attended the Annual Conference of the Microbiology Society, which was held in Belfast. This was my first time attending this meeting, and I was a bit nervous that as a genomics researcher/someone who wouldn’t know a colony from his elbow I might not be able to follow much. This proved to be unfounded, and I was really happy to see that genomics is becoming a routine part of many microbiology studies, rather than a separate area (machine learning if anything seems to be the new bogeyman – I look forward to the hype settling down).

Model flexibility and number of parameters

This post is some thoughts I had after reading ‘Real numbers, data science and chaos: How to fit any dataset with a single parameter’ by Laurent Boué.

arXiv:1904.12320

The paper above shows that any dataset can be approximated by the following single-parameter function:

sin2(2xτarcsinα)\sin^2 (2^{x \tau} \mathrm{arcsin} \sqrt{\alpha})

Where xx is an integer, τ\tau is a constant which controls the level of accuracy, and α\alpha is a real-valued parameter which is fit to the dataset in question.

Quantify everything, all of the time

I recently read the article by Wu et al in Nature Biotechnology (you can also find similar articles in pretty much all of the Nature journals) which analysed data on participants at some virtual meetings over the past couple of years, and came to the conclusion that ‘Virtual meetings promise to eliminate geographical and administrative barriers and increase accessibility, diversity and inclusivity’. Which sounds great!

Of course there are certainly some good things to come out of virtual meetings, and many unresolved issues with in person conferences. When the issues include lack of equality, contributing to climate change, and giving more funding dubious publishers it’s certainly a lot easier to write in opposition to these events than support. Though pre-COVID a lot of articles criticising conferences talked about methods for reform, newer articles seem to err more on the side of totally abolishing them.

Did 1.27M people die from AMR in 2019?

I would answer ‘I don’t know’. If I was being less trite, I would add that I’m more confident saying that it was between 100k and 10M – whichever way you look at it, vast numbers that are growing larger, and which require action on multiple fronts.

The authors of the study ‘Global burden of bacterial antimicrobial resistance in 2019: a systematic analysis’ (also called ’the GRAM study’) have actually attempted to estimate this. Their paper was published a couple of weeks ago, and you can read it here: https://doi.org/10.1016/S0140-6736(21)02724-0.

Delete your tweets

Each year I delete all my old tweets.

Disadvantages to keeping your old tweets around:

  • No-one reads them.
  • They’re difficult to search through.
  • They’ve probably lost most of their context.
  • You might have changed your mind, or they’ve become outdated.
  • Shitposting is usually a lot less funny in retrospect.

Advantages to keeping your old tweets around:

  • The dubious ability to quote tweet an old take/prediction that turned out to be true. (How many times have you seen the someone do this with a prediction that turned out wrong?).

It’s pretty easy to automate. You’ll first need to sign up for the twitter developer API, but once you’ve got a key you can use something like python-twitter to delete everything with a timestamp in a certain range. You will also archive them easily as part of this process, so you’re not really losing anything.

Learning rust as a C++/python programmer (advent of code 2021)

This year I used rust to do advent of code (AoC). I got up to day 17 before Christmas caught up with me, but I hope to come back to the last week at some point soon. Here’s my code so far: https://github.com/johnlees/advent-of-code-2021.

I’ve never done any rust programming before, so started off by reading these two pages which got me going fairly quickly:

At the moment I usually code in C++ and python (and increasingly CUDA), though I do know a few other languages to various levels. rust is a systems language, is compiled, and is statically typed so I expected it to be similar to C++. But it’s less encumbered by the history/backward-compatibility of C/C++, and sometimes feels a bit more like writing python, which can be quite nice.