Women in Computing: engineering biology
Katie Barr tells us what she thinks may lie in store for those starting out in the world of coding.
Computing has been a part of my life forever. I have pictures of me as a baby on my Dad's lap at his computer. I remember him receiving an e-mail in 1992, and he told us it would be revolutionary.
I grew up with a PC. I used Copernicus to help with high school homework. I rebelled as a teenager and refused to be interested in computing, but once I was forced to learn, I became hooked. Now it’s a job, a hobby, and a source of optimism about the world.
I studiously avoided it all the way through my physics degree - then started a PhD and found I was expected to simulate quantum mechanical systems. I was already very interested in the theoretical aspects of computer science, choosing an MSc which enabled me to explore the foundations of computer science, and then a PhD in quantum computing, so practical computing was a natural progression.
I love problem-solving, and I love science. Computing has become an indispensable tool for research science, though not all research scientists need computing skills. I love the feeling when you've been battling at something for ages, then it works. It’s fun to break down something so ubiquitous and learn to truly understand it.
I got into computing because I wanted to understand the links between maths and physics, and my primary interest to this day is to understand nature better. I'd say to this day, my inspiration is using computing to understand the physical world, and the physical world to understand computing. This is why I enjoy scientific and algorithmic computing in particular.
I'd ask it why it can't just know what I want it to do even if I don't ask precisely enough.
I think humans are messy, cleverly engineered computers, so to me it’s not really a one vs the other deal. If we restrict to 'computers designed by humans' then I'd say humans.
Computers will come to do things we could never have guessed they'd do, and some of them may have adverse effects on humanity, but as the ultimate designers (even if we design computers to design computers), I'd hope if it came down to something adversarial, we'd be at an advantage.
I would derive a strict lower bound for an NP-hard problem and resolve P vs NP for good!
In layman’s terms, I'd determine whether the problems we currently perceive to be hard on a computer are really difficult, or if our methods for solving them are inefficient.
I wanted to move to Norwich for personal reasons and was desperate to get back into scientific computing. I was thrilled to discover the Earlham Institute existed, and even more thrilled that they took me on despite my lack of biological background!
I am trying to find variations between different types of wheat, so that we can eventually understand which variants cause which properties, and help growers select appropriate strains for their environmental conditions.
This is challenging because a lot of the tools we use to analyse genomes are not designed for this use case, as the wheat genome is quite unusual. This makes it difficult but very interesting!
We have found nearly three million very simple variations known as single nucleotide polymorphisms which pass initial quality filtering. These variations are between two strains of wheat which are very closely related.
We already knew that there is far more variation in the plant kingdom, and our variation rates are consistent with previous estimates, but I still find the scale mindboggling. More complex variations are harder to find, partly because most existing tools to find them are not built with our use case in mind so do not work, but we have also potentially found regions which are present in one strain, and not the other. Some of these regions are thought to include genes requiring biological analysis.
Get started with Python
Ha! Neither, my video game experience is very limited ...
Python - it's the only one I'm competent at! As primarily a scientific programmer, numpy and scipy are indispensable tools. There are so many great libraries, it's really quick to put something together, and the learning curve is gentle for beginners. The community is fantastic. Complaints regarding performance are getting less, and less well-founded.
Keep going. I once lost a month trying to fix the same mistake every day. It was awful, and it turned out my code was actually correct. Be patient. If your editor doesn't do it for you, ALWAYS type your closing bracket at the same time as your opening bracket!
Have fun! These are all probably easier if you are applying computing to something of interest to you.
Many jobs will be automated, and I hope people's quality of life will dramatically improve. I hope in our lifetime we will see quantum computers enter the field.
Many problems in science now can no longer be effectively addressed without taking into account the fundamentally quantum mechanical nature of the world, and representing this on a classical computer is very difficult.
For instance, in medicine, determining whether a proposed drug will bind to a receptor is a quantum mechanical calculation, depending on the energy states of the drug and the binding site. Quantum computing will revolutionise these fields - provided it's physically possible to simultaneously control enough particles in the right way!