April 1, 2016, by Brigitte Nerlich
Musings on language and life, with special reference to ‘programming’
This morning I opened the newspaper and read an article about a new language that lets researchers design novel biological circuits. I mumbled something about this over coffee and my husband said, oh but wasn’t that old hat, we all knew that DNA was a language, code etc. So what was new? I looked again at the article and stumbled upon the word ‘compile’. So I said that all this apparently had something to do with programming and compilation. Ah, he said, now that is interesting, if it’s about compilation. I was none the wiser, being no computer or programming aficionado. Once the coffee was ingested and I had woken up a bit more, I read the newspaper article properly. For more detailed info see New Scientist, for example; and for even more detail, read the article in Science – but I didn’t read those this morning…
A programming language for living cells
Instead I looked at this press release by MIT News entitled “A programming language for living cells”, published on 31 March, 2016. This is the quote that made me think – especially about my ignorance:
“It is literally a programming language for bacteria,” says Christopher Voigt, an MIT professor of biological engineering. “You use a text-based language, just like you’re programming a computer. Then you take that text and you compile it and it turns it into a DNA sequence that you put into the cell, and the circuit runs inside the cell.”
(I suppose ‘literally’ means ‘literally’ here, but I don’t know)
(Com)Piling on the confusion
For me, as a naïve reader, the word ‘compile’ conjures up images of ‘compiling an index for a book’ or ‘compiling some notes’, or producing “(a list or book) by assembling information collected from other sources”. But of course, there is another meaning, which my mind only rarely accesses, as I don’t do or practice the stuff associated with that meaning, namely ‘convert (a program) into a machine-code or lower-level form in which the program can be executed’.
What does that mean? I then looked up that second meaning in the Oxford English Dictionary and discovered that the examples used to illustrate this meaning, just don’t mean anything to me either! Here are just a few:
1952 Proc. Assoc. Computing Machinery 1/2 UNIVAC compiled the program in one and one half minutes.
1960 R. H. Gregory & R. L. Van Horn Automatic Data-processing Syst. viii. 273 After check-out, the final version of the program..can be compiled into the numerical code of the machine.
1961 Communications Assoc. Computing Machinery 4 74 The method..for compiling Boolean expressions is an alternative to the usual method which would compile an object program that performs all logical operations indicated in the expression.
1972 M. D. Freedman Princ. Digital Computer Operation xi. 181 When the complete program has been compiled, the programmer can request that it be executed.
1979 M. S. Carberry et al. Found. Computer Sci. iii. 58 The internal program compiled by the computer is called the object program.
1982 Sci. Amer. Dec. 94/2 Fortran programs are compiled.
Challenges to science communication
So, if I didn’t understand a word of this gobbledygook (more here and here), how could I understand the MIT press release? By the way, in the case of the work done by the MIT people, the language they use is neither Fortran, nor Python, nor C++ …., but Verilog…
This made me think a bit more about challenges to science communication. ‘Normally’ when using words like ‘language’ and ‘code’ and ‘editing‘ etc., ‘normal’ people like me use their understanding of these words to somehow get some understanding of particular aspects of genetics, genomics, synthetic biology and so on. We map our concrete and familiar knowledge of language onto an abstract and unfamiliar domain of knowledge and create a semblance of understanding.
However, in the case of this new research that metaphorical matching and mapping process becomes quite difficult. For two reasons: firstly, not everybody knows what programming and compiling is; and secondly, not everybody knows what ‘building biological circuits’ means (unless we have already cracked THAT metaphor in our ordinary minds!). So mapping one onto the other and generating new understanding might be difficult.
Black box building of biological circuits
But what if you DID understand something about programming and compiling? Then you might be in clover, as you don’t seem to need to understand the biology behind the building of biological circuits. You just build them! As the press release says:
“Over the past 15 years, biologists and engineers have designed many genetic parts, such as sensors, memory switches, and biological clocks, that can be combined to modify existing cell functions and add new ones.
However, designing each circuit is a laborious process that requires great expertise and often a lot of trial and error. “You have to have this really intimate knowledge of how those pieces are going to work and how they’re going to come together,” Voigt says.
Users of the new programming language, however, need no special knowledge of genetic engineering.
“You could be completely naive as to how any of it works. That’s what’s really different about this,” Voigt says. “You could be a student in high school and go onto the Web-based server and type out the program you want, and it spits back the DNA sequence.”
As all school kids (unlike me!) are now encouraged to engage in ‘programming’, the possibilities are endless. These kids might even understand the phrase ‘type out the program you want’! And, apparently they don’t need ‘special knowledge of genetic engineering’ (a type of root metaphor for ‘synthetic biology’)… they can keep that in a ‘black box’ and just get on with things. Is that a good thing? I am not totally sure…
Synthetic biology and biological engineering
I’ll end on a final linguistic note. The MIT press release never mentions ‘synthetic biology’ in its text but only talks about ‘biological engineering’. Is it time to retire the term ‘synthetic biology’ and replace it with ‘biological engineering’ which seems to be much more transparent, descriptive and accessible to the uninitiated – unlike the rest of the article?!
Image: Pixabay
Very ironically, the use of compiling and programming teminology means that this might be a way for me (a non-expert in biology) to understand how all this genetic manipulation malarcky works. I’ve downloaded the paper, and think I have a handle on the computer logic, I just need to understand how it is implemented bioloigcally. Thank you for sharing this.