La segunda mitad del siglo pasado estuvo completamente definida
por una revolución tecnológica:
la revolución del software.
La capacidad de programar electrones en un material llamado silicio
hizo posibles tecnologías, empresas e industrias
que en un punto fueron inimaginables para muchos de nosotros,
pero que ya han cambiado fundamentalmente la forma en que funciona el mundo.
Sin embargo, la primera mitad de este siglo,
va a ser transformada por una nueva revolución de software:
la revolución del software viviente.
Y esto será impulsado por la capacidad de programación bioquímica
en un material llamado biología.
Y hacerlo nos permitirá aprovechar las propiedades de la biología.
para generar nuevos tipos de terapias,
para reparar tejido dañado,
reprogramar células defectuosas
o incluso construir sistemas operativos programables a partir de bioquímica.
Si podemos hacer esto, y necesitamos hacerlo,
su impacto será tan grande
que hará palidecer, en comparación, la primera revolución de software.
Y eso es porque el software viviente transformaría la totalidad de la medicina,
la agricultura y la energía,
y estos son sectores que eclipsan a los dominados por la TI.
Imaginen plantas programables que fijan el nitrógeno de manera más efectiva
o resisten los hongos patógenos emergentes,
o incluso programar cultivos para que sean perennes en lugar de anuales
para que puedan duplicar los rendimientos cada año.
Eso transformaría la agricultura
y es como mantendremos alimentada a nuestra creciente población mundial.
O imaginen inmunidad programable,
diseño y aprovechamiento de dispositivos moleculares que guían
su sistema inmunológico para detectar, erradicar o incluso prevenir enfermedades.
Esto transformaría la medicina
y la forma de mantener la salud de una población que crece y envejece.
Ya tenemos muchas de las herramientas que harán realidad el software viviente.
Podemos editar genes con precisión con CRISPR.
Podemos reescribir el código genético una base a la vez.
Incluso podemos construir circuitos sintéticos que funcionen con ADN.
Pero descubrir cómo y cuándo manejar estas herramientas
todavía es un proceso de ensayo y error.
Se necesita una gran experiencia, años de especialización.
Y los protocolos experimentales son difíciles de descubrir.
y con demasiada frecuencia, difíciles de reproducir.
Y, ya saben, hay una tendencia en biología a enfocarnos mucho en las partes,
pero todos sabemos que algo como volar no se entendería
solo estudiando plumas.
Por lo tanto, programar biología aún no es tan simple como programar su computadora.
Y para empeorar las cosas,
los sistemas vivos no se parecen en gran medida a los sistemas diseñados
que Uds. y yo programamos todos los días.
A diferencia de los sistemas de ingeniería,
los sistemas vivos se autogeneran,
se autoorganizan,
operan a escalas moleculares.
Y estas interacciones a nivel molecular
conducen generalmente a una salida robusta a escala macro.
Incluso pueden repararse a sí mismos.
Consideren, por ejemplo, la humilde planta doméstica,
como la de sus repisas de la chimenea en casa
que siguen olvidando regar.
Todos los días, a pesar de su negligencia, esa planta tiene que despertarse
y descubrir cómo asignar sus recursos.
¿Crecerá, fotosintetizará, producirá semillas o florecerá?
Y esa es una decisión que debe tomarse a nivel de todo el organismo.
Pero una planta no tiene cerebro para resolver todo eso.
Tiene que conformarse con las células de sus hojas.
Tienen que responder al medio ambiente
y tomar las decisiones que afectan a toda la planta.
De alguna manera debe haber un programa ejecutándose dentro de estas celdas,
un programa que responde a señales y claves de entrada
y da forma a lo que hará esa célula.
Y luego esos programas deben operar de manera distribuida
a través de células individuales,
para que puedan coordinarse y que la planta pueda crecer y florecer.
Si pudiéramos entender estos programas biológicos,
si pudiéramos entender la computación biológica,
transformaría nuestra capacidad de entender cómo y por qué
las células hacen lo que hacen.
Porque, si entendemos estos programas,
podríamos depurarlos cuando las cosas salgan mal.
O podríamos aprender de ellos cómo diseñar el tipo de circuitos sintéticos
que realmente explotan el poder computacional de la bioquímica.
Mi pasión por esta idea me llevó a una carrera en investigación
en la interfaz de matemáticas, informática y biología.
En mi trabajo, me enfoco en el concepto de biología como computación.
Y eso significa preguntar, ¿qué calculan las células,
y cómo podemos descubrir estos programas biológicos?
Comencé a hacer estas preguntas junto con algunos colaboradores brillantes
en Microsoft Research y la Universidad de Cambridge,
donde en conjunto queremos entender
el programa biológico que se ejecuta dentro de un tipo único de célula:
una célula madre embrionaria.
Estas células son únicas porque son totalmente inocentes.
Pueden convertirse en lo que quieran:
una célula cerebral, cardíaca, ósea, pulmonar,
cualquier tipo de célula adulta.
Esta inocencia, las distingue,
y también encendió la imaginación de la comunidad científica,
que se dio cuenta, de que si pudiéramos aprovechar ese potencial,
tendríamos una herramienta poderosa para la medicina.
Si pudiéramos descubrir cómo toman la decisión
de convertirse en un tipo de célula u otro,
podríamos ser capaces de aprovecharlas
para generar células que necesitamos para reparar tejidos enfermos o dañados.
Pero cumplir esta visión no está exento de desafíos,
sobre todo porque estas células particulares,
emergen solo seis días después de la concepción.
Y luego, en un día más o menos, se han ido.
Han emprendido los diferentes caminos
que forman todas las estructuras y órganos del cuerpo adulto.
Pero resulta que el destino de las células es mucho más plástico
de lo que imaginamos.
Hace unos 13 años,
algunos científicos mostraron algo verdaderamente revolucionario.
Al insertar solo un puñado de genes en una célula adulta,
como una de sus células de la piel,
se puede transformar esa célula al estado inocente.
Es un proceso que en realidad se conoce como "reprogramación"
y nos permite imaginar una especie de utopía de células madre,
la capacidad de tomar una muestra de las propias células de un paciente,
transformarlas de nuevo al estado inocente
y usar esas células para hacer lo que ese paciente pueda necesitar,
ya sean células cerebrales o cardíacas.
Pero durante la última década más o menos,
averiguar cómo cambiar el destino celular,
todavía es un proceso de ensayo y error.
Incluso en los casos en que descubrimos protocolos experimentales exitosos,
siguen siendo ineficientes
y carecemos de una comprensión fundamental de cómo y por qué funcionan.
Si uno se las arregla para convertir una célula madre en una célula cardíaca,
eso no nos dice cómo cambiar una célula madre
en una célula cerebral.
Entonces queríamos entender el programa biológico
que corre dentro de una célula madre embrionaria,
y comprender el cálculo realizado por un sistema vivo
comenzando con una pregunta devastadoramente simple:
¿qué es lo que ese sistema realmente tiene que hacer?
La informática en realidad tiene un conjunto de estrategias
para lidiar con lo que el software y el hardware están destinados a hacer.
Cuando escriben un programa, codifican una pieza de software,
desean que se ejecute correctamente.
Desean rendimiento, funcionalidad.
Desean evitar errores.
Les puede costar mucho.
Cuando un desarrollador escribe un programa,
podría escribir un conjunto de especificaciones.
Esto es lo que debe hacer su programa.
Tal vez debería comparar el tamaño de dos números
u ordenar números por tamaño.
Existe la tecnología que nos permite verificar automáticamente
si están satisfechas nuestras especificaciones,
si ese programa hace lo que debería hacer.
Nuestra idea era que de la misma manera,
observaciones experimentales, cosas que medimos en el laboratorio,
corresponden a especificaciones de lo que debe hacer el programa biológico.
Así que solo necesitábamos encontrar una manera
para codificar este nuevo tipo de especificación.
Digamos que han estado ocupado en el laboratorio midiendo sus genes
y descubrieron que si el Gene A está activo,
entonces Gene B o Gene C parece estar activo.
Podemos escribir esa observación como una expresión matemática
si podemos usar el lenguaje de la lógica:
Si A, entonces B o C.
Ahora, este es un ejemplo muy simple,
Es solo para ilustrar el punto.
Podemos codificar expresiones verdaderamente ricas
que capturan el proceder de múltiples genes o proteínas a lo largo del tiempo
a través de múltiples experimentos diferentes.
Y así, al traducir nuestras observaciones
en expresiones matemáticas de esta manera,
es posible probar si esas observaciones pueden surgir o no
de un programa de interacciones genéticas.
Y desarrollamos una herramienta para hacer justamente esto.
Pudimos usar esta herramienta para codificar observaciones
como expresiones matemáticas
y luego esa herramienta nos permitiría descubrir el programa genético
que podría dar explicación de todos.
Y luego aplicamos este enfoque para descubrir
el programa genético que se ejecuta dentro de las células madre embrionarias
para ver si podíamos entender cómo inducir ese estado inocente.
Esta herramienta se construyó realmente
en un solucionador que se implementa habitualmente en todo el mundo
para verificación de software convencional.
Entonces comenzamos con un conjunto de casi 50 especificaciones diferentes
que generamos a partir de observaciones experimentales
de células madre embrionarias.
Y al codificar estas observaciones en esta herramienta,
pudimos descubrir el primer programa molecular
que podría explicarlos todos.
Eso es una hazaña en sí misma, ¿verdad?
Ser capaz de conciliar todas estas observaciones diferentes
no es el tipo de cosas que pueden hacer al dorso de un sobre,
incluso si tienen un sobre realmente grande.
Como tenemos este tipo de comprensión,
podríamos ir un paso más allá.
Podríamos usar este programa para predecir qué podría hacer esta célula
en condiciones que aún no habíamos probado.
Podríamos sondear el programa en silico.
Y así lo hicimos:
generamos predicciones que probamos en el laboratorio,
y encontramos que este programa era altamente predictivo.
Nos dijo cómo podríamos acelerar el progreso,
volver al estado inocente de forma rápida y eficiente.
Nos dijo a qué genes apuntar para hacer eso,
qué genes podrían incluso obstaculizar ese proceso.
Incluso el programa predijo el orden en que se activarían los genes.
Entonces, este enfoque realmente nos permitió descubrir la dinámica
de lo que están haciendo las células.
El desarrollo no es un método específico para la biología de células madre.
Más bien, nos permite dar sentido a la computación.
siendo llevada a cabo por la célula
en el contexto de interacciones genéticas.
En realidad, es solo un componente básico.
El campo necesita urgentemente desarrollar nuevos enfoques
para entender la computación biológica más ampliamente
y a diferentes niveles,
desde el ADN hasta el flujo de información entre las células.
Solo este tipo de comprensión transformadora
nos permitirá aprovechar la biología de manera predecible y confiable.
Pero para programar la biología, también necesitaremos desarrollar
los tipos de herramientas e idiomas
que permiten a los experimentadores y científicos computacionales
diseñar la función biológica
y hacer que esos diseños se compilen en el código de máquina de la celda,
su bioquímica
para que luego podamos construir esas estructuras.
Eso es algo parecido a un compilador de software vivo,
y estoy orgullosa de ser parte de un equipo en Microsoft
que está trabajando para desarrollar uno.
Aunque decir que es un gran desafío es un eufemismo,
pero si se lleva a cabo,
sería el puente final entre el software y el wetware.
Sin embargo, en términos más generales, la biología de programación solo será posible
si podemos transformar el campo en uno verdaderamente interdisciplinario.
Se necesita unir las ciencias físicas y de la vida,
y científicos de cada una de estas disciplinas
necesitan poder trabajar juntos con idiomas comunes
y compartir preguntas científicas.
A largo plazo, vale la pena recordar que muchas de las compañías gigantes
de software y tecnología con las que Uds. y yo trabajamos todos los días
difícilmente podrían haber sido imaginadas
cuando comenzamos a programar en microchips de silicio.
Y si comenzamos ahora a pensar en el potencial de la tecnología
habilitado por la biología computacional,
veremos algunos de los pasos que debemos seguir en el camino
para hacer eso realidad.
Existe el pensamiento aleccionador de que este tipo de tecnología
podría estar abierto al mal uso.
Si estamos dispuestos a hablar sobre el potencial
para programar células inmunes,
también deberíamos pensar en el potencial de las bacterias
diseñadas para evadirlos.
Puede haber gente dispuesta a hacer eso.
Un pensamiento tranquilizador en esto
es que, bueno, menos para los científicos
es que la biología es frágil al ser manipuleada.
Así que programar biología no será algo
que harán en el cobertizo de su jardín.
Pero como estamos al comienzo de esto,
podemos avanzar con los ojos bien abiertos.
Podemos hacer las preguntas difíciles por adelantado,
podemos establecer las salvaguardas necesarias
y, como parte de eso, tendremos que pensar en nuestra ética.
Tendremos que pensar en poner límites a la implementación
de la función biológica.
Como parte de esto, la investigación en bioética tendrá que ser una prioridad.
No puede ser relegado al segundo lugar
en la emoción de la innovación científica.
Pero el premio final, el destino final en este viaje,
serían aplicaciones innovadoras e industrias innovadoras
en áreas desde agricultura y medicina hasta energía y materiales
e incluso la informática en sí misma.
Imagínense, que algún día podríamos alimentar el planeta de manera sostenible
en la máxima energía verde
si pudiéramos imitar algo que las plantas descubrieron hace milenios:
cómo aprovechar la energía del sol con una eficiencia que no tiene paralelo
por nuestras células solares actuales.
Si entendiéramos ese programa de interacciones cuánticas
que permiten que las plantas absorban la luz solar de manera tan eficiente,
podríamos traducir eso en construir circuitos sintéticos de ADN
que ofrecen el material para mejores células solares.
Hay equipos y científicos trabajando en los fundamentos de esto en este momento,
entonces, si recibiera la atención adecuada y la inversión correcta,
se podría realizar en 10 o 15 años.
Estamos al comienzo de una revolución tecnológica.
Comprender este antiguo tipo de computación biológica
es el primer paso crítico.
Y si podemos darnos cuenta de esto,
entraríamos en la era de un sistema operativo
que ejecuta software vivo
Muchas gracias.
(Aplausos)