Secure shell (SSH) is an essential tool for remote operations. However, not everything with it is smooth-sailing. Especially, when you want to do things like reverse–port-forwarding via a proxy-hump or two a Jupyter notebook to your local machine from a compute node on a no-home container . Even if it sounds less plausible than the exploits on Mr Robot, it actually can work and requires zero social-engineering or sneaking in server rooms to install Raspberry Pis while using a baseball cap as a disguise.
Continue readingConference feedback — with a difference
At OPIG Group Meetings, it’s customary to give “Conference Feedback” whenever any of us has recently attended a conference. Typically, people highlight the most interesting talks—either to them or others in the group.
Having just returned from the 6th RSC-BMCS / RSC-CICAG AI in Chemistry Symposium, it was my turn last week. But instead of the usual perspective—of an attendee—I spoke briefly about how to organize a conference.
Continue readingDeploying a Flask app part I: the gunicorn WSGI server
Last year I wrote a post about deploying Flask apps with Apache/mod_wsgi when your app’s dependencies are installed in a conda environment. The year before, in the dark times, I wrote a post about the black magic invocations required to get multiple apps running stably using mod_wsgi. I’ve since moved away from mod_wsgi entirely and switched to running Flask apps from containers using the gunicorn WSGI server behind an Apache reverse proxy, which has made life immeasurably easier. In this post we’ll cover running a Flask app on localhost using gunicorn; in Part II we’ll run our app as a service using Singularity and deploy it to production using Apache as a HTTP proxy server.
Continue readingThera-SAbDab Updates (2023)
This blogpost is a short notice about recent quality-of-life and feature updates to our Therapeutic Structural Antibody Database (Thera-SAbDab). We hope these changes will make the database more user-friendly and facilitate new analyses…
Continue readingTips & tricks with PyMOL
I have been using PyMOL, a molecular visualisation program, throughout my PhD and wanted to share some of the things I’ve learned.
1. Installation
Open source PyMOL can be installed using conda: conda install -c conda-forge pymol-open-source
. It does not watermark figures and has full functionality, as far as I have been able to tell.
GitHub.dev: Just press “.”
GitHub.dev is an incredibly useful feature in GitHub which allows you to view and edit code directly on the browser as a remote VSCode session.
To access this remote VSCode session, either:
- Press “.”
- Change “.com” to “.dev” in the URL
This is a great way to quickly explore someone’s code without having to clone it onto your machine or go through the GitHub UI.
Out of Band Management
We’ve all had things go wrong with computers, however when they go catastrophically wrong, there’s often little you can do other than to be physically on site to reinstall. This doesn’t have to be the case though. Most PCs have a tiny secondary processor which can allow full remote control of a computer that’s crashed, unresponsive or even switched off.
Continue readingThe Surprising Shape of Normal Distributions in High Dimensions
Multivariate Normal distributions are an essential component of virtually any modern deep learning method—be it to initialise the weights and biases of a neural network, perform variational inference in a probabilistic model, or provide a tractable noise distribution for generative modelling.
What most of us (including—until very recently—me) aren’t aware of, however, is that these Normal distributions begin to look less and less like the characteristic bell curve that we associate them with as their dimensionality increases.
Continue readingCurrent strategies to predict structures of multiple protein conformational states
Since the release of AlphaFold2 (AF2), the problem of protein structure prediction is widely believed to be solved. Current structure prediction tools, such as AF2, are able to model most proteins with high accuracy. These methods, however, have a major limitation as they have been trained to predict a single structure for a given protein. Proteins are highly dynamic molecules, and their function often depends on transitions between several conformational states. Despite research focusing on the task of predicting the structures of multiple conformations of a protein, currently, no accurate and reliable method is available. In this blog post, I will provide a short overview of the strategies developed for predicting protein conformations. I have grouped these into three sets of related approaches. To conclude, I will also demonstrate how to run one of these strategies on your own.
Continue readingOPIG Retreat 2023
With the new academic year approaching, OPIG flew off to the rural paradise of Wilderhope Manor in sunny Shropshire for their annual group getaway. The goal of this retreat was assumed to be a mixture of team building, ‘conference-esque’ academic immersion, a reconnection with nature in the British countryside, and of course, a bit of fun. It is fair to say OPIG Retreat ‘23 delivered on all accounts, leaving the OPIGlets refreshed and ready for what the next year may bring.
Continue reading