Author Archives: Eoin Malins

Le Tour de Farce v9.0

With many tours (Farcical and otherwise) restricted due to Covid, 2022 celebrated the resurrection of OPIG’s glorious Tour de Farce. This year’s route was nine miles and an unusually conservative four pubs.

After listening to Lewis’ conference prep talk, we left the Statistics Department around 5pm for a leisurely trundle through Mesopotamia, The Oxford Psychopath, Old Marston and out to our first rest stop, The Victoria.

Continue reading

Solving WORDLE with grep

People seem to have become obsessed with wordle, just like they became obsessed with sudoku. After my initial burst of “oh a new game!” had waned, I was left thinking “my time is precious and this is exactly what we have computers for”. With this in mind, below is my quick and dirty way of solving these. I’m sure the regexp gurus amongst you will have a more elegant solution.

Step 1: Make sure you’ve got /usr/share/dict/words installed. This is just a huge list of words in a specific language and for me, this required installing the British words list.

sudo apt-get install wbritish

Step 2: Go to wordle

Step 3: Pick a random 5-letter word as your starting point. This is where grep and /usr/share/dict/words comes in:

Continue reading

A handful of lesser known python libraries

There are more python libraries than you can shake a stick at, but here are a handful that don’t get much love and may save you some brain power, compute time or both.

Fire is a library which turns your normal python functions into command-line utilities without requiring more than a couple of additional lines of copy-and-paste code. Being able to immediately access your functions from the command line is amazingly helpful when you’re making quick and dirty utilities and saves needing to reach for the nuclear approach of using getopt.

Continue reading

Enhance your presentation by using virtual webcams and scene transitions

If you haven’t checked out Matt’s post on using OBS for recording video, I highly recommend doing so. OBS is a terrific way to present your work online. It can provide (amongst many, many other things) the ability to create live picture-in-picture scenes, so you can move through your powerpoint deck whilst overlaying video of your tiny talking head in the corner.

Continuing on from Matt’s post, I’d like to promote the OBS virtual camera plugin and Touch Portal.

Every company, department or course has its own favourite video conferencing application and whilst they all have their strengths, consistency is not one of them. If you want to consistently display your presentation and your live video regardless of the platform in use, this quickly gets into the “messy” territory. This is where the virtual camera comes in.

Continue reading

The right tool for the job – The Joy of Excel

Excel’s pervasiveness has resulted in it being used (correctly or incorrectly) in just about every area of science.

Unfortunately, Excel has some traps for the new player and unless you’ve fallen for them before, they are not entirely obvious. They stem from the fact that Excel will try to help the user by reformatting data into what it thinks you mean.

Continue reading

HERO proteins are here to save you (assuming you’re another protein or a fruit fly)

For one of OPIG’s short talks, I recently introduced the work done by Kotaro Tsuboyama et al. found in the paper A widespread family of heat-resistant obscure (Hero) proteins protect against protein instability and aggregation. As the name implies, HERO proteins have been found to retain function even after being boiled at 95C and have been found both in Drosophila and human HEK293T cell lines. Whilst it’s not impossible to find proteins which can “survive” 90+ Celsius, these are expected to be the reserve of extremophiles, not found in humans or fruit flies.

Continue reading

Considering Containers? – Go for Singularity

Docker is an excellent containerisation system ideally suited to production servers.  It allows you to do one small thing but do it well.  For example, breaking a large blog up into individually maintained containers for a web-server, a database and (say) a wordpress instance. However due to inherent security woes, Docker doesn’t play nicely with multi-tenanted machines, the kind which are the bread and butter for researchers and HPC users.  That’s where Singularity steps in.   

Continue reading

Making the most of your CPUs when using python

Over the last decade, single-threaded CPU performance has begun to plateau, whilst the number of logical cores has been increasing exponentially.

Like it or loathe it, for the last few years, python has featured as one of the top ten most popular languages [tiobe / PYPL].   That being said however, python has an issue which makes life harder for the user wanting to take advantage of this parallelism windfall.  That issue is called the GIL (Global Interpreter Lock).  The GIL can be thought of as the conch shell from Lord of the Flies.  You have to hold the conch (GIL) for your thread to be computed.  With only one conch, no matter how beautifully written and multithreaded your code, there will still only be one thread will be executed at any point in time.

Continue reading