There's an ancient and universal concept that words have power, that spells exist, and that if we could only pronounce the right words, then -- whoosh! -- you know, an avalanche would come and wipe out the hobbits, right? So this is a very attractive idea, because we're very lazy, like the Sorcerer's Apprentice, or the world's greatest computer programmer. This idea has a lot of traction with us.
З давніх давен існує універсальна ідея про те, що слова мають силу, силу заклинання, тобто, якщо промовити потрібні слова, то зі свистом зійде лавина і змете все навколо. Думка доволі приваблива, адже кожен із нас лінивий, як Учень Чарівника, чи як найвидатніший в світі програміст [на фото – Лінус Торвальдс] Ця думка набула серед нас поширення.
We love the idea that words, when pronounced, are little more than pure information, but they evoke physical action in the real world that helps us do work. So, of course, with lots of programmable computers and robots around, this is an easy thing to picture.
Нам сподобалось, що сказане слово - а слова - це лиш трохи більше, аніж чиста інформація - викликає фізичну дію в реальному світі і допомагає нам чогось добитись. Звісно, при надлишку комп'ютерів та роботів це неважко собі уявити. Хто розуміє, про що йде мова - підніміть
How many of you know what I'm talking about? Raise your right hand. How many don't know what I'm talking about? Raise your left hand. So that's great. So that was too easy. You guys have very insecure computers, OK? So now the thing is, this is a different kind of spell. This is a computer program made of zeros and ones. It can be pronounced on a computer, does something like this. The important thing is we can write it in a high-level language.
праву руку. Прекрасно. Хто не розуміє, про що мова - підніміть ліву руку. Прекрасно. Дуже добре. Це було зовсім не складно. Скажу вам, що ваші комп'ютери дуже ненадійні. Справа в тому, що мова іде про зовсім інше заклинання - про складену з нулів та одиниць програму. Його можна "промовити" на комп'ютері і воно створить, наприклад, ось це. А головне - його можна записати на мові високого рівня.
A computer magician can write this thing. It can be compiled into zeros and ones and pronounced by a computer. And that's what makes computers powerful, these high-level languages that can be compiled. And so, I'm here to tell you, you don't need a computer to actually have a spell. In fact, what you can do at the molecular level is that if you encode information -- you encode a spell or program as molecules -- then physics can actually directly interpret that information and run a program.
Комп'ютерний чарівник може написати заклинання, воно буде скомпільовано в нулі та одиниці і буде "промовлено" на комп'ютері. Сила комп'ютерів в тому, що вони можуть компілювати мови високого рівня. Так я вам ось що скажу: для заклинання комп'ютери зовсім не потрібні. Насправді, інформацію можна кодувати на молекулярному рівні - заклинання чи програма кодується у вигляді молекул - а потім фізичні властивості інтерпретують інформацію напряму, в результаті чого запускається програма. Так працює білок.
It's what happens in proteins. When this amino-acid sequence gets pronounced as atoms, these little letters are sticky for each other. It collapses into a three-dimensional shape that turns it into a nanomachine that actually cuts DNA. The interesting thing is that if you change the sequence, you change the three-dimensional folding. You get, now, a DNA stapler, instead. These are the kind of molecular programs we want to be able to write. The problem is, we don't know the machine language of proteins or have a compiler for proteins.
Коли ця послідовність амінокислот "промовляє" у вигляді атомів - а ці букви між собою склеюються, - то послідовність звертається в трьохвимірну форму, яка перетворюється в нано-механізм по розрізанню ДНК. Цікаво, що коли змінити послідовність, то вона звернеться в іншу трьохвимірну форму. і тепер уже перетвориться в механізм по скріплюванню ДНК. Такий тип молекулярної програми ми і хочемо навчитись писати. Але проблема в тому, що ми не знаємо машинної мови для білків, у нас немає компілятора для білків.
So I've joined a growing band of people that try to make molecular spells using DNA. We use DNA because it's cheaper, it's easier to handle, it's something we understand really well -- so well, in fact, that we think we can actually write programming languages for DNA and have molecular compilers.
Я приєднався до спільноти, що росте і намагається створити молекулярне заклинання з допомогою ДНК. Цікавість до ДНК викликана тим, що вона дешевша, з нею легше працювати і її будова достатньо зрозуміла. Настільки зрозуміла, що ми готові створювати мови програмування для ДНК і молекулярні компілятори. Ми вважаємо, що це можливо. А тому одне з моїх перших запитань було:
So then, we think we can do that. One of my first questions doing this was: How can you make an arbitrary shape or pattern out of DNA? I decided to use a type of DNA origami, where you take a long strand of DNA and fold it into whatever shape or pattern you might want. So here's a shape. I actually spent about a year in my home in my underwear, coding, like Linus [Torvalds], in that picture before. This program takes a shape and spits out 250 DNA sequences. These short DNA sequences are what are going to fold the long strand into this shape that we want to make. So you send an e-mail with these sequences in it to a company, and the company pronounces them on a DNA synthesizer, a machine about the size of a photocopier. And they take your e-mail, and every letter in your e-mail, they replace with a 30-atom cluster -- one for each letter, A, T, C and G in DNA.
Як можна згорнути ДНК в довільну форму чи структуру? Я вирішив скористатись чимось типу ДНК орігамі: береш довгу нитку ДНК і складаєш в яку-небудь форму чи структуру. Ось, наприклад, форма. Над створенням коду мені довелось приблизно рік попотіти вдома, в нижній білизні - точнісінько, як Лінус Торвальдс на одній із фотографій перед цим. Отож, задається форма і програма складає 250 коротких послідовностей ДНК, які в подальшому згорнуть довгу нитку ДНК в потрібну форму. Є компанія, яка займається ось чим. Надсилає електронний лист зі своєю послідовністю і вони її "промовляють" на синтезаторі ДНК. Цей прилад, розміром з фотокопіювальну машину, заміняє кожну вказану в повідомленні літеру на набір з 30-ти атомів, для кожної літери свій: A, T, C, і G - як в ДНК. Вибудовані в потрібній послідовності набори
They string them up in the right sequence, and then they send them back to you via FedEx. So you get 250 of these in the mail in little tubes. I mix them together, add a little bit of salt water, and then add this long strand I was telling you about, that I've stolen from a virus. And then what happens is, you heat this whole thing up to about boiling. You cool it down to room temperature, and as you do, those short strands do the following thing: each one of them binds that long strand in one place, and then has a second half that binds that long strand in a distant place, and brings those two parts of the long strand close together so they stick together.
відсилаються терміновою поштою FedEx. В посилці їх 250 штук в пробірках. Перемішуєш, заливаєш трохи солоної води, додаєш ту довгу нитку, про яку я говорив - я її вилучив у вірусу. Потім нагріваєш суміш майже до кипіння, охолоджуєш до кімнатної температури і, по міри вистигання, короткі нитки роблять ось що: кожна скріплюється з довгою ниткою в певному місці одним кінцем, а другим кінцем - з іншою частиною тієї ж довгої нитки, так, що зводить дві частини довгої нитки докупи і вони склеюються.
So the net effect of all 250 of these strands is to fold the long strand into the shape you're looking for. It'll approximate that shape. We do this for real, in the test tube. In each little drop of water, you get 50 billion of these guys. With a microscope, you can see them on a surface. The neat thing is if you change the sequence and change the spell, just change the sequence of the staples, you can make a molecule that looks like this. And, you know, he likes to hang out with his buddies. A lot of them are actually pretty good.
В результаті 250 коротких ниток складають довгу нитку у відповідну форму і виходить наближення до заданої форми. Ми реально досягаємо його в пробірці. В кожній краплі води - 50 мільярдів таких штучок. Через мікроскоп можна побачити їх на поверхні. Особливо цікава можливість змінити заклинання - це змінить послідовність з'єднань. Можна зробити молекулу такого виду і, виявляється, вони прагне бовтатись із собі подібними. Багато з них вийшли доволі непогано.
If you change the spell again, you change the sequence again, you get really nice, 130-nanometer triangles. If you do it again, you can get arbitrary patterns. So on a rectangle, you can paint patterns of North and South America, or the words, "DNA."
Знову зміниш заклинання - знову зміниться послідовність і отримаєш прекрасні трикутники довжиною в 130 нанометрів. Зміни ще раз - отримаєш довільну форму. Можна на фоні прямокутника намалювати образ Північної та Південної Америки, чи слова "ДНК". Ось що таке ДНК орігамі. Це один із способів - а їх багато -
So that's DNA origami. That's one way. There are many ways of casting molecular spells using DNA. What we really want to do in the end is learn how to program self-assembly so we can build anything, right? We want to be able to build technological artifacts that are maybe good for the world. We want to learn how to build biological artifacts, like people and whales and trees. And if it's the case that we can reach that level of complexity, if our ability to program molecules gets to be that good, then that will truly be magic.
робити молекулярні заклинання з допомогою ДНК. Насправді наша кінцева ціль - навчитись програмувати самоупорядкування, що відкриє можливість будувати що завгодно. Ми хочемо будувати об'єкти технологій - від цього буде користь всім. Хочемо навчитись будувати об'єкти біології - людей, китів, дерева. І якщо нам вдасться досягнути такого рівня складності, якщо наша здатність програмувати молекули буде настільки успішною, то це справді стане чарами. Дякую вам.
Thank you very much.
(Оплески)
(Applause)