1
00:00:09,510 --> 00:00:10,762
911. ¿Emergencias?
2
00:00:11,679 --> 00:00:13,389
Emergencias, dígame.
3
00:00:13,473 --> 00:00:14,932
Emergencias, dígame.
4
00:00:15,058 --> 00:00:16,392
Emergencias, dígame...
5
00:00:19,854 --> 00:00:24,400
El 9 de abril de 2014
Emergencias dejó de estar disponible
6
00:00:24,484 --> 00:00:27,111
para millones de personas
en todo Estados Unidos.
7
00:00:27,779 --> 00:00:30,031
Estuvo más de seis horas
fuera de servicio.
8
00:00:30,364 --> 00:00:33,367
No se atendieron
más de 6000 llamadas de emergencia.
9
00:00:33,743 --> 00:00:35,912
El Gobierno detectó
que se debía a un ordenador
10
00:00:35,995 --> 00:00:38,706
de un centro de llamadas
de Englewood en Colorado.
11
00:00:39,082 --> 00:00:41,209
Fue un simple error de programación.
12
00:00:41,918 --> 00:00:43,961
Los que programaron el ordenador
13
00:00:44,045 --> 00:00:47,507
pusieron un tope de llamadas
que se podían registrar.
14
00:00:47,840 --> 00:00:51,010
Un tope que los programadores
consideraron inalcanzable.
15
00:00:51,427 --> 00:00:54,222
Pero que se alcanzó esa noche de 2014.
16
00:00:54,680 --> 00:00:56,933
El ordenador siguió las instrucciones.
17
00:00:57,016 --> 00:00:59,310
Llegó al tope y dejó de enrutar llamadas.
18
00:01:00,061 --> 00:01:01,979
El problema no fue por el ordenador
19
00:01:02,105 --> 00:01:03,940
ni por un error en el código.
20
00:01:04,482 --> 00:01:06,067
Fue por la programación.
21
00:01:06,275 --> 00:01:09,362
El proceso de toma de decisiones
con el que las personas se comunican
22
00:01:09,445 --> 00:01:10,488
con el ordenador.
23
00:01:10,571 --> 00:01:14,659
Este tipo de poder
conlleva una gran responsabilidad ética.
24
00:01:14,742 --> 00:01:15,910
No hay nada como hacerlo.
25
00:01:15,993 --> 00:01:18,204
No hay nada que pueda ocupar su lugar.
26
00:01:18,329 --> 00:01:20,915
Igual que los que construyen una ciudad
27
00:01:21,541 --> 00:01:23,751
determinan cómo se vive en ella,
28
00:01:23,835 --> 00:01:28,840
la programación controla cómo vivimos
en internet, que es nuestra forma de vida.
29
00:01:29,507 --> 00:01:31,300
No solo se usa cuando usamos internet,
30
00:01:31,384 --> 00:01:33,594
sino también
cuando llamamos a Emergencias
31
00:01:34,554 --> 00:01:35,596
o vamos al médico
32
00:01:36,180 --> 00:01:37,598
o vamos en coche.
33
00:01:37,890 --> 00:01:40,643
Está en nuestro día a día.
34
00:01:41,602 --> 00:01:47,024
Pero solo un 0.33 % de nosotros
sabe programar.
35
00:01:47,233 --> 00:01:49,986
Para la gran mayoría
es algo muy complicado.
36
00:01:50,695 --> 00:01:51,988
Pero no tiene por qué serlo.
37
00:01:52,446 --> 00:01:55,199
¿Cómo funciona la programación?
38
00:01:55,658 --> 00:01:58,286
¿Y qué mundo nuevo
estamos creando con ella?
39
00:01:59,287 --> 00:02:01,122
UNA SERIE DOCUMENTAL ORIGINAL DE NETFLIX
40
00:02:01,205 --> 00:02:02,540
El ordenador.
41
00:02:03,082 --> 00:02:05,835
Una colección ingeniosa
de hardware electrónico
42
00:02:05,918 --> 00:02:07,879
que fue creada por el hombre.
43
00:02:08,087 --> 00:02:11,382
Tenemos las máquinas adecuadas
para resolver nuestros problemas,
44
00:02:11,465 --> 00:02:14,177
pero no las descripciones adecuadas
de cómo resolverlos.
45
00:02:14,260 --> 00:02:17,972
Cuando te hablan de programación
te parece algo muy difícil.
46
00:02:18,556 --> 00:02:22,685
No debes olvidar
que todo lo que usas en un ordenador
47
00:02:22,768 --> 00:02:25,271
fue creado por un ser humano.
48
00:02:25,354 --> 00:02:31,777
LA PROGRAMACIÓN
EN POCAS PALABRAS
49
00:02:31,944 --> 00:02:34,947
Pon que viene un extraterrestre y dice:
"¿Por qué es importante?
50
00:02:35,031 --> 00:02:35,907
¿Qué es?".
51
00:02:35,990 --> 00:02:37,283
Yo le diría que vivimos
52
00:02:37,533 --> 00:02:41,412
en una tierra física y hace unos 50 años
53
00:02:41,495 --> 00:02:44,582
unas cuantas personas
empezaron a construir otro planeta.
54
00:02:44,665 --> 00:02:46,876
Pero no uno físico, sino uno virtual.
55
00:02:47,001 --> 00:02:50,004
Solo hay que mirar a la gente
andando por la calle
56
00:02:50,087 --> 00:02:52,548
con la cabeza inclinada
sin quitarle ojo a sus móviles.
57
00:02:52,632 --> 00:02:54,091
Están en ese otro mundo.
58
00:02:54,383 --> 00:02:56,093
Así que de eso va la programación.
59
00:02:56,219 --> 00:02:58,054
Son los cimientos de ese otro mundo.
60
00:03:00,056 --> 00:03:03,476
Este telar es el predecesor
de todo ordenador y smartphone
61
00:03:03,559 --> 00:03:04,393
de la Tierra.
62
00:03:04,852 --> 00:03:06,854
Se inventó en 1804
63
00:03:06,938 --> 00:03:09,232
y la mayor innovación
fueron estas tarjetas.
64
00:03:10,107 --> 00:03:13,361
Solo algunos ganchos podían pasar
por las perforaciones de cada tarjeta.
65
00:03:14,237 --> 00:03:16,489
Con miles de perforaciones
en cientos de tarjetas,
66
00:03:16,572 --> 00:03:19,492
los tejedores podían hacer
patrones más complejos que antes.
67
00:03:20,243 --> 00:03:22,620
El chal se puso de moda en Europa.
68
00:03:23,037 --> 00:03:26,666
Y los diseños que se tejían
eran tan complejos que parecían dibujos,
69
00:03:26,916 --> 00:03:29,168
como este del inventor del telar.
70
00:03:30,169 --> 00:03:34,423
Antes del telar, había gente encargada
de seleccionar a mano cada cuerda.
71
00:03:34,966 --> 00:03:36,801
Las matemáticas también se hacían a mano
72
00:03:36,884 --> 00:03:38,886
con "ordenadores".
73
00:03:39,095 --> 00:03:40,972
Los primeros ordenadores eran personas.
74
00:03:41,681 --> 00:03:43,557
Y las mejores máquinas que había
75
00:03:43,641 --> 00:03:45,977
solo podían resolver
un tipo de problema matemático,
76
00:03:46,227 --> 00:03:48,229
como el ábaco para sumar y restar.
77
00:03:49,480 --> 00:03:51,857
El matemático Charles Babbage
quería una máquina
78
00:03:51,941 --> 00:03:54,610
que resolviese el problema matemático
que quisieses
79
00:03:54,777 --> 00:03:57,029
o que hubieses programado.
80
00:03:57,780 --> 00:04:00,908
Propuso "la máquina analítica".
81
00:04:01,242 --> 00:04:04,662
La idea de Babbage le concedió
un lugar en la historia.
82
00:04:05,037 --> 00:04:10,167
Los ordenadores fueron inventados
originalmente por Babbage,
83
00:04:10,710 --> 00:04:13,879
un inventor británico muy excéntrico.
84
00:04:14,046 --> 00:04:16,382
A Babbage le motivaba cómo funcionaría.
85
00:04:16,966 --> 00:04:19,593
Tenía una copia de este retrato
colgada en su casa.
86
00:04:20,219 --> 00:04:23,347
La máquina analítica de Babbage,
al igual que el telar de Jacquard,
87
00:04:23,431 --> 00:04:25,391
contenía partes físicas o "hardware".
88
00:04:25,599 --> 00:04:27,101
Y, al igual que con el telar,
89
00:04:27,184 --> 00:04:31,272
podías dar instrucciones al hardware
mediante tarjetas perforadas.
90
00:04:31,439 --> 00:04:33,274
Los ganchos pasan por las perforaciones,
91
00:04:33,357 --> 00:04:36,193
pero si no hay perforaciones,
son desviados hacia atrás
92
00:04:36,652 --> 00:04:38,988
creando una cadena de cálculos mecánicos.
93
00:04:39,864 --> 00:04:42,825
Y las tarjetas con perforaciones distintas
son "software".
94
00:04:43,701 --> 00:04:46,203
Babbage no llegó a terminar
la máquina analítica.
95
00:04:46,579 --> 00:04:50,416
Pero una joven que trabajaba con él
vio que su potencial
96
00:04:50,666 --> 00:04:52,335
iba más allá de las matemáticas.
97
00:04:52,668 --> 00:04:55,671
Ada Byron, condesa de Lovelace, escribió:
98
00:04:56,005 --> 00:04:59,675
"Los límites de la aritmética
fueron superados en cuanto surgió
99
00:04:59,759 --> 00:05:02,011
la idea de aplicar las tarjetas".
100
00:05:02,261 --> 00:05:04,221
Vio lo que veía Jacquard.
101
00:05:04,347 --> 00:05:06,974
Las perforaciones podían representar
algo más que números.
102
00:05:07,058 --> 00:05:08,267
Podían ser patrones,
103
00:05:08,392 --> 00:05:12,271
música o frases enteras.
104
00:05:12,772 --> 00:05:15,191
Se puede considerar
como una especie de código Morse.
105
00:05:15,274 --> 00:05:19,987
Cada letra del alfabeto Morse se expresa
como un conjunto de dos señales.
106
00:05:20,071 --> 00:05:21,739
...O bien...
107
00:05:21,906 --> 00:05:22,865
Es binario.
108
00:05:23,324 --> 00:05:26,452
Y solo con esos pitidos
podemos decir cualquier cosa,
109
00:05:26,952 --> 00:05:30,790
como esa llamada de socorro
que envió el Titanic en 1912.
110
00:05:31,457 --> 00:05:34,502
"SOS" no significa nada.
111
00:05:34,710 --> 00:05:37,880
Pero es increíblemente fácil
de enviar en código Morse.
112
00:05:38,089 --> 00:05:42,885
Hay que tener presente que cada letra
se puede expresar como una combinación
113
00:05:42,968 --> 00:05:44,512
de ceros y unos.
114
00:05:44,637 --> 00:05:45,930
¿Te suena?
115
00:05:46,138 --> 00:05:47,640
Esto es el código binario.
116
00:05:47,848 --> 00:05:51,769
Y es la forma de cerrar la brecha
entre las máquinas y el lenguaje humano.
117
00:05:51,894 --> 00:05:55,773
Cada uno o cero
es un dígito binario o "bit".
118
00:05:55,940 --> 00:05:58,359
Estos son los átomos
de la informática moderna.
119
00:05:58,484 --> 00:06:00,236
Quizá los conozcas de otra forma.
120
00:06:00,653 --> 00:06:02,613
Ocho bits son un byte.
121
00:06:03,239 --> 00:06:07,576
¿Sabes esa foto que tienes en el ordenador
de 1,1 megabytes?
122
00:06:08,160 --> 00:06:11,956
Está compuesta por ocho millones
y ochocientos mil unos y ceros.
123
00:06:12,373 --> 00:06:16,919
Los puntos y rayas del código Morse
son solo una forma de escribir y...
124
00:06:17,002 --> 00:06:20,297
Los unos y ceros del código binario
son la forma en que escribimos
125
00:06:20,423 --> 00:06:22,508
lo que está
pasando en un ordenador moderno.
126
00:06:23,217 --> 00:06:24,802
Con o sin una orden.
127
00:06:25,511 --> 00:06:27,346
Esto es un circuito eléctrico sencillo.
128
00:06:27,763 --> 00:06:30,599
Imagina millones de estos
funcionando juntos.
129
00:06:30,975 --> 00:06:32,476
Así es un ordenador de hoy.
130
00:06:33,018 --> 00:06:35,271
En un circuito eléctrico, esto es un bit.
131
00:06:35,604 --> 00:06:37,857
¿La bombilla está apagada? Cero.
132
00:06:38,107 --> 00:06:39,567
¿Encendida? Uno.
133
00:06:40,067 --> 00:06:42,153
Los ordenadores
solo entienden la electricidad.
134
00:06:42,278 --> 00:06:46,323
Así que lo que los programadores
hacen con los ordenadores es
135
00:06:46,449 --> 00:06:49,368
dar una serie de órdenes
de encendido o apagado.
136
00:06:49,702 --> 00:06:53,205
Todo funciona porque,
si se combinan correctamente,
137
00:06:53,414 --> 00:06:56,041
las órdenes son lógicas.
138
00:06:56,625 --> 00:07:00,754
Básicamente, la lógica es
una serie predecible de hechos o eventos,
139
00:07:01,255 --> 00:07:03,048
como cerrar este interruptor
140
00:07:04,467 --> 00:07:07,052
o hacer que este haga sonar el timbre.
141
00:07:09,054 --> 00:07:12,516
De hecho, los informáticos
lo llaman "circuito lógico Y".
142
00:07:13,476 --> 00:07:15,644
O "puerta lógica".
143
00:07:15,769 --> 00:07:18,439
Veamos si consigo hacerlo
sin cargarme la mesa.
144
00:07:18,522 --> 00:07:21,567
En una puerta Y
ambos circuitos deben estar cerrados
145
00:07:21,650 --> 00:07:22,943
para que se encienda la luz.
146
00:07:23,235 --> 00:07:24,695
Y hay puertas O.
147
00:07:24,778 --> 00:07:28,199
En este caso, la luz se enciende
si solo uno de los circuitos está cerrado.
148
00:07:28,365 --> 00:07:29,700
O pongámoslo de otra forma.
149
00:07:29,909 --> 00:07:34,371
Si uno de estos circuitos está cerrado,
entonces enciende la luz.
150
00:07:34,497 --> 00:07:36,916
Ese tipo de petición con "si" y "entonces"
151
00:07:36,999 --> 00:07:38,083
es un algoritmo.
152
00:07:38,292 --> 00:07:42,505
En la cultura pop actual,
la palabra "algoritmo" causa confusión.
153
00:07:42,755 --> 00:07:45,925
No es la primera vez
que hay un problema con los algoritmos.
154
00:07:46,008 --> 00:07:49,094
Casi nadie sabe
cómo funcionan los algoritmos.
155
00:07:49,178 --> 00:07:51,847
Pero ¿qué demonios es un algoritmo?
156
00:07:51,972 --> 00:07:54,892
Pero un algoritmo
solo es un conjunto de instrucciones.
157
00:07:55,184 --> 00:07:56,644
Imagina que vas al súper.
158
00:07:56,894 --> 00:07:59,522
Puedes ir por la izquierda
y luego girar a la derecha.
159
00:07:59,647 --> 00:08:02,525
O puedes ir por la derecha
y luego girar a la izquierda.
160
00:08:02,900 --> 00:08:04,902
O puedes ir
cuatro veces por la izquierda,
161
00:08:04,985 --> 00:08:07,071
dar una vuelta al parque,
cruzar una autopista,
162
00:08:07,154 --> 00:08:09,031
y luego ir cuatro veces por la derecha.
163
00:08:09,365 --> 00:08:12,076
Hay distintas instrucciones
para llegar al mismo sitio.
164
00:08:12,159 --> 00:08:14,578
En programación
puede haber distintos algoritmos
165
00:08:14,662 --> 00:08:16,121
para resolver el mismo problema.
166
00:08:16,372 --> 00:08:20,042
El objetivo es encontrar
el más elegante y eficiente.
167
00:08:20,459 --> 00:08:22,795
El mejor código no se repite.
168
00:08:22,920 --> 00:08:24,922
Es muy elegante. Es formidable.
169
00:08:25,631 --> 00:08:28,926
Los ordenadores con algoritmos
hacían lo que les pedíamos,
170
00:08:29,134 --> 00:08:30,844
pero mucho más rápido.
171
00:08:31,136 --> 00:08:33,764
Esto dio mucho poder a la gente.
172
00:08:34,223 --> 00:08:37,601
Cuando los científicos empezaron
a desarrollar la bomba de fusión,
173
00:08:38,018 --> 00:08:40,437
usaron principalmente ordenadores humanos.
174
00:08:40,896 --> 00:08:42,815
Pero luego recurrieron a otro ordenador.
175
00:08:43,315 --> 00:08:47,152
El ordenador ENIAC realizó
cálculos termonucleares durante 6 semanas.
176
00:08:47,903 --> 00:08:50,197
Los resultados obtenidos contribuyeron
177
00:08:51,323 --> 00:08:53,659
a realizar en 1952
la primera prueba con éxito
178
00:08:54,076 --> 00:08:57,580
de una bomba muchísimo más potente
que las bombas atómicas de fisión
179
00:08:57,663 --> 00:09:00,833
que se usaron en Hiroshima y Nagaski
durante la Segunda Guerra Mundial.
180
00:09:01,500 --> 00:09:04,920
Poder programar aumenta
la capacidad de la gente de hacer
181
00:09:05,421 --> 00:09:06,672
lo que se proponga.
182
00:09:07,590 --> 00:09:11,135
Pero en los años 40
aún suponía mucho trabajo.
183
00:09:11,468 --> 00:09:16,056
Programar con ceros y unos
no era suficiente.
184
00:09:16,140 --> 00:09:19,143
La gente quería sacar más partido
a lo que ofrecía la programación.
185
00:09:19,310 --> 00:09:21,520
Pero quería que resultase
más fácil programar.
186
00:09:22,438 --> 00:09:27,776
Desde entonces, se ha intentado
que la programación se parezca más y más
187
00:09:27,860 --> 00:09:29,028
al lenguaje humano
188
00:09:29,403 --> 00:09:32,990
y eso llevó a inventar
lo que los programadores usan actualmente:
189
00:09:33,115 --> 00:09:34,617
los lenguajes de programación.
190
00:09:35,200 --> 00:09:38,996
Estos lenguajes son muy abstractos
si los comparamos con los ceros y unos.
191
00:09:39,580 --> 00:09:41,457
Lo abstracto no gusta a la gente.
192
00:09:42,249 --> 00:09:45,669
Los lenguajes abstractos
se reducen a los mismos unos y ceros,
193
00:09:45,794 --> 00:09:48,213
solo que están mejor organizados.
194
00:09:48,881 --> 00:09:50,966
Pensemos en la biología.
195
00:09:51,550 --> 00:09:53,135
Los humanos son muy complejos,
196
00:09:53,218 --> 00:09:56,972
pero el 99 % de nuestro cuerpo
está compuesto por solo seis elementos.
197
00:09:57,348 --> 00:10:00,184
Y podemos hablar de moléculas grandes.
198
00:10:00,267 --> 00:10:04,730
Entre esa capa de organización
y la del ser vivo más simple
199
00:10:04,813 --> 00:10:06,023
hay una gran diferencia.
200
00:10:06,357 --> 00:10:09,568
Y los humanos tienen cerebros
que hacen cosas tan avanzadas
201
00:10:09,652 --> 00:10:12,488
que cuesta creer
que estén hechos de lo mismo.
202
00:10:12,946 --> 00:10:16,784
Los ordenadores son bastante parecidos,
pero son mucho más sencillos.
203
00:10:17,951 --> 00:10:18,952
Eso es lo bueno.
204
00:10:19,578 --> 00:10:22,915
En la programación lo que se intenta
es subir este recuadro hacia arriba
205
00:10:23,165 --> 00:10:25,250
y alejarse del sistema binario para poder
206
00:10:25,334 --> 00:10:28,837
programar de una forma
más fácil, rápida y potente.
207
00:10:29,088 --> 00:10:32,049
Sin ni siquiera tener
que lidiar ni entender
208
00:10:32,341 --> 00:10:35,052
los sistemas binarios
ni las puertas lógicas que hay detrás.
209
00:10:35,344 --> 00:10:38,889
Eso permite a los programadores
hacer los productos que tanto usamos.
210
00:10:39,306 --> 00:10:41,308
El primer paso
para llegar a ese punto fue...
211
00:10:41,850 --> 00:10:45,813
El lenguaje ensamblador,
que es mucho más fácil de leer y escribir.
212
00:10:46,188 --> 00:10:51,318
En lugar de 0-1-0-0-0-1-1-1
pongamos que usamos la palabra ""ADD".
213
00:10:51,694 --> 00:10:58,200
Un programa llamado "el ensamblador"
traduce las letras
214
00:10:58,283 --> 00:11:03,455
"A-D-D"
a sus correspondientes ceros y unos.
215
00:11:03,580 --> 00:11:07,292
A este nivel, el sistema binario
está organizado en letras y números,
216
00:11:07,626 --> 00:11:10,379
igual que los átomos
se organizan en moléculas.
217
00:11:10,921 --> 00:11:15,217
Pero programar en lenguaje ensamblador
no era fácil del todo
218
00:11:15,843 --> 00:11:19,513
porque todos los ordenadores
usaban distintos lenguajes ensambladores.
219
00:11:20,097 --> 00:11:24,810
Si hacías un programa para un ordenador,
solo funcionaba en ese ordenador.
220
00:11:25,102 --> 00:11:27,187
La gente no tardó en plantearse
221
00:11:27,271 --> 00:11:29,440
que lo que quería
que tuviese un ordenador
222
00:11:29,523 --> 00:11:32,818
eran cosas que usamos a diario.
223
00:11:33,193 --> 00:11:35,863
Hay lenguajes de programación
224
00:11:35,946 --> 00:11:39,825
que creamos con el lenguaje ensamblador.
225
00:11:39,950 --> 00:11:42,953
A partir de esos lenguajes
creamos otros lenguajes de programación.
226
00:11:43,370 --> 00:11:44,955
Seguro que os suenan.
227
00:11:45,038 --> 00:11:45,914
- LISP.
- BASIC.
228
00:11:45,998 --> 00:11:47,207
- Java.
- C++.
229
00:11:47,291 --> 00:11:49,042
- Python 3.
- HTML 5.
230
00:11:49,126 --> 00:11:51,044
PEARL, PHP, un poco de C...
231
00:11:51,128 --> 00:11:53,756
Igual que los idiomas
ofrecen distintas formas
232
00:11:53,839 --> 00:11:56,717
de expresar la misma idea
a otras personas,
233
00:11:57,050 --> 00:12:00,012
los lenguajes de programación
son formas distintas de expresar
234
00:12:00,137 --> 00:12:01,972
la misma idea a los ordenadores.
235
00:12:02,347 --> 00:12:05,058
Hay más de un lenguaje de alto nivel
236
00:12:05,142 --> 00:12:07,936
porque, para empezar, cada lenguaje
237
00:12:08,020 --> 00:12:10,105
tiene distintas necesidades.
238
00:12:10,731 --> 00:12:12,024
Veamos estos dos.
239
00:12:12,191 --> 00:12:15,944
Este, COBOL, se creó a finales de los 50
240
00:12:16,028 --> 00:12:18,906
para que a las empresas
les resultase más fácil programar.
241
00:12:19,239 --> 00:12:23,410
Se parece mucho al inglés
si todas las conversaciones
242
00:12:23,494 --> 00:12:25,579
acabasen con "STOP RUN".
243
00:12:26,497 --> 00:12:32,753
Este, CPL, se desarrolló en los 60
e incluía más computación científica.
244
00:12:33,212 --> 00:12:35,297
Es como la evolución biológica.
245
00:12:35,547 --> 00:12:38,550
Los organismos se hacen más complejos
y desarrollan características
246
00:12:38,634 --> 00:12:41,637
para adaptarse mejor a su entorno.
247
00:12:42,012 --> 00:12:45,933
Y, a decir verdad,
también es una cuestión de gusto.
248
00:12:46,558 --> 00:12:50,521
A cada uno le gusta
expresarse de una forma distinta.
249
00:12:50,604 --> 00:12:53,774
Por ejemplo, el lenguaje C++.
250
00:12:53,857 --> 00:12:56,068
A Elon Musk no le gusta.
251
00:12:56,360 --> 00:12:57,611
Tú podrías hacer uno.
252
00:12:58,028 --> 00:13:02,533
Es un lenguaje de alto nivel
hecho con la palabra "moo" (mu).
253
00:13:02,950 --> 00:13:04,910
Va en serio, se llama COW (vaca).
254
00:13:05,285 --> 00:13:08,956
Este está formado
por citas de Arnold Schwarzenegger.
255
00:13:09,164 --> 00:13:13,252
Cada vez que pienso
que ya no se van a hacer más
256
00:13:13,335 --> 00:13:20,050
alguien se inventa uno nuevo
y consigue un grupo de admiradores.
257
00:13:20,175 --> 00:13:24,888
Así que dudo que dejen de surgir
nuevos lenguajes.
258
00:13:25,472 --> 00:13:29,017
Y todos estos lenguajes
se basan en la lógica.
259
00:13:29,393 --> 00:13:32,312
Por ejemplo,
un programador de Netflix podría decir:
260
00:13:32,396 --> 00:13:35,899
"Si lleva más de dos horas viendo Netflix,
261
00:13:36,024 --> 00:13:37,150
muestra esto".
262
00:13:37,526 --> 00:13:40,362
Pero para que la programación
llegase a la vida de las personas
263
00:13:40,445 --> 00:13:42,531
debían usar ordenadores.
264
00:13:42,739 --> 00:13:46,076
Así que los ordenadores
debían ser más sencillos e intuitivos.
265
00:13:46,159 --> 00:13:48,370
Y eso requería pegar otro gran salto.
266
00:13:48,912 --> 00:13:50,497
Uno que empezó aquí,
267
00:13:50,747 --> 00:13:54,334
en una demostración
que hizo Doug Englebart en 1968.
268
00:13:54,459 --> 00:13:56,587
Vamos a ver la pantalla en la que trabaja
269
00:13:56,712 --> 00:13:58,547
y cómo se mueve ese punto
270
00:13:58,630 --> 00:14:01,425
respecto al movimiento del ratón.
271
00:14:02,050 --> 00:14:06,346
Hoy en día la gente no programa
escribiendo algo
272
00:14:06,430 --> 00:14:11,476
en un trozo de papel y dándoselo a alguien
para que lo pase al ordenador.
273
00:14:11,560 --> 00:14:15,105
Hoy, te sientas y tienes una pantalla
con una interfaz gráfica de usuario.
274
00:14:15,355 --> 00:14:17,566
Lo que se conoce como "GUI".
275
00:14:18,025 --> 00:14:21,111
Con las GUI,
se puede programar sin escribir nada
276
00:14:22,487 --> 00:14:24,907
o programar de una forma más fácil.
277
00:14:25,240 --> 00:14:29,661
Lo normal es trabajar
en un entorno de programación
278
00:14:30,287 --> 00:14:34,958
del tipo que Alan y sus compañeros
279
00:14:35,042 --> 00:14:36,501
crearon tan bien
280
00:14:36,585 --> 00:14:40,464
en el Centro de Investigación Xerox
de Palo Alto a principios de los 70.
281
00:14:40,714 --> 00:14:41,548
Hablamos de Alan.
282
00:14:41,715 --> 00:14:42,633
De este Alan.
283
00:14:42,883 --> 00:14:46,053
Lo considero
el padre de los ordenadores personales
284
00:14:46,136 --> 00:14:50,265
porque fue el primero
en forjar esa visión.
285
00:14:50,515 --> 00:14:54,353
Y he de confesar que cuando lo hizo
pensé que era ciencia ficción.
286
00:14:54,436 --> 00:14:56,605
Cuando se hacen grandes cosas
287
00:14:58,106 --> 00:14:59,608
suele haber mucha gente detrás.
288
00:14:59,816 --> 00:15:02,110
Y la verdad es que Park lo bordaba.
289
00:15:02,653 --> 00:15:04,196
Parecía que era magia.
290
00:15:04,780 --> 00:15:08,450
La interfaz gráfica de usuario permitió
que millones de personas
291
00:15:08,533 --> 00:15:12,871
usaran ordenadores
de una forma que les resultara natural.
292
00:15:13,580 --> 00:15:16,750
Cuando Xerox anunció por primera vez
las GUI en 1979,
293
00:15:16,833 --> 00:15:20,170
mostró cómo la programación
podía cambiar nuestro día a día.
294
00:15:20,462 --> 00:15:22,923
Entras en tu despacho y una máquina Xerox
295
00:15:23,006 --> 00:15:25,008
te muestra tu correo en una pantalla.
296
00:15:25,092 --> 00:15:27,344
Pronto, con un sistema Xerox como este
297
00:15:27,427 --> 00:15:29,721
podrás gestionar tu recurso más valioso.
298
00:15:30,472 --> 00:15:31,431
La información.
299
00:15:31,848 --> 00:15:36,520
Había gente como yo
y muchos de los investigadores
300
00:15:36,603 --> 00:15:38,105
que querían hacer un mundo mejor.
301
00:15:38,188 --> 00:15:43,026
Lo que tenían en mente estaba relacionado
con el perfeccionamiento humano.
302
00:15:43,610 --> 00:15:46,196
Algo que pudiese interactuar con nosotros,
303
00:15:46,697 --> 00:15:53,245
la gente gente corriente,
y permitirnos hacer más cosas que antes.
304
00:15:53,662 --> 00:15:56,039
Sí que nos permitió hacer más cosas.
305
00:15:56,331 --> 00:15:58,875
Las GUI fueron
un gran paso en ese sentido.
306
00:15:59,501 --> 00:16:03,630
Y luego llegó la siguiente innovación
que cambaría el mundo.
307
00:16:05,382 --> 00:16:09,177
Una nueva forma de distribuir todo
lo que podíamos hacer con la programación.
308
00:16:10,137 --> 00:16:14,433
En la tele, empezaron a predecir
lo que supondría poder acceder a ello.
309
00:16:14,808 --> 00:16:17,519
Imaginaos que os sentáis
con vuestro primer café del día,
310
00:16:17,602 --> 00:16:20,439
y encendéis vuestro ordenador personal
para leer el periódico.
311
00:16:20,522 --> 00:16:24,985
Imaginaos un mundo
en el que todos los libros, pinturas
312
00:16:25,068 --> 00:16:28,697
y películas se puedan ver
de forma instantánea en casa.
313
00:16:28,780 --> 00:16:33,744
Algo realmente increíble
está a punto de llegar.
314
00:16:33,827 --> 00:16:35,287
Solo es una máquina, ¿no?
315
00:16:35,370 --> 00:16:36,204
No, qué va.
316
00:16:36,288 --> 00:16:40,667
Los mejores productos de software de hoy
usan todas estas innovaciones.
317
00:16:40,751 --> 00:16:44,671
Un estudiante universitario usó PHP,
un lenguaje de programación de alto nivel,
318
00:16:44,755 --> 00:16:47,632
para crear algo
que se compartiese en internet
319
00:16:47,716 --> 00:16:49,760
y que requería usar ordenadores con GUI.
320
00:16:50,093 --> 00:16:53,680
Lo explicó en 2004
en su primera entrevista en televisión.
321
00:16:53,972 --> 00:16:56,433
Es un directorio en línea
que conecta a la gente
322
00:16:56,516 --> 00:16:59,478
de distintas universidades
a través de sus redes sociales.
323
00:16:59,561 --> 00:17:02,731
Ahora somos 100 000 personas,
así que ya veremos cómo acaba la cosa.
324
00:17:02,814 --> 00:17:07,027
La cosa acabó teniendo
a más de 2000 millones de personas
325
00:17:07,152 --> 00:17:08,361
en Facebook cada mes.
326
00:17:08,695 --> 00:17:11,656
Hoy, los programadores
cambian la vida de millones de personas.
327
00:17:11,907 --> 00:17:15,869
Cómo trabajan,
compran, comen, ligan y se relajan.
328
00:17:16,078 --> 00:17:17,537
¿Qué estás haciendo ahora mismo?
329
00:17:17,621 --> 00:17:21,208
Me estás viendo
en un navegador web de Netflix.
330
00:17:23,376 --> 00:17:27,255
Netflix en sí es un código
y se ejecuta en un navegador web
331
00:17:27,339 --> 00:17:28,215
que es un código
332
00:17:28,507 --> 00:17:33,804
que se ejecuta en un ordenador
diseñado con un código.
333
00:17:34,054 --> 00:17:35,680
Y así sucesivamente.
334
00:17:37,599 --> 00:17:40,519
Un gran código
es cuando eres el arquitecto de un museo
335
00:17:41,311 --> 00:17:43,355
en el que millones de personas piensan,
336
00:17:43,480 --> 00:17:45,857
visitan y usan todos los días.
337
00:17:46,191 --> 00:17:49,569
No hay nada como escribir códigos
porque estás creando algo.
338
00:17:49,653 --> 00:17:51,863
Tienes una idea
de cómo algo debería funcionar,
339
00:17:52,364 --> 00:17:56,201
te sientas delante de un ordenador
340
00:17:56,284 --> 00:17:58,078
y lo haces realidad.
341
00:17:58,161 --> 00:18:01,039
Eso conlleva una gran responsabilidad.
342
00:18:01,164 --> 00:18:04,000
Hay un límite de velocidad.
343
00:18:04,167 --> 00:18:05,669
No puedes ir a más de 100 km/h.
344
00:18:06,545 --> 00:18:07,420
Vale.
345
00:18:07,712 --> 00:18:11,299
Pero ¿y si tuvieras un coche
y el ordenador dijera
346
00:18:12,092 --> 00:18:15,053
que el coche
no debe superar los 100 km/h"?
347
00:18:15,846 --> 00:18:17,848
Eso es otra forma de controlarte.
348
00:18:18,056 --> 00:18:23,395
Al controlar lo que podemos hacer,
un código puede tener
349
00:18:23,478 --> 00:18:27,941
un efecto más reglamentario
que lo que la ley puede conseguir.
350
00:18:28,525 --> 00:18:30,819
Y eso podría ser algo bueno.
351
00:18:30,944 --> 00:18:35,198
Hay unos seis millones
de accidentes de coche en EE. UU. cada año
352
00:18:35,282 --> 00:18:39,494
y un estudio reveló que el 94 %
son por culpa del conductor.
353
00:18:40,370 --> 00:18:43,248
Los avances en la programación
podrían salvar millones de vidas.
354
00:18:43,665 --> 00:18:46,960
Pero también podrían poner
nuestra vida en peligro de formas nuevas.
355
00:18:47,460 --> 00:18:50,922
Tengo miocardiopatía hipertrófica.
356
00:18:51,006 --> 00:18:56,219
Ese es el término médico
y significa que mi corazón es muy grande.
357
00:18:56,511 --> 00:18:58,096
Mi corazón es literalmente grande.
358
00:18:58,180 --> 00:19:00,932
Es tres veces más grande
que el de una persona normal.
359
00:19:01,016 --> 00:19:05,937
Me enteré cuando tenía 30 años
y la posibilidad de morir a los 40
360
00:19:06,021 --> 00:19:07,147
era muy grande.
361
00:19:07,439 --> 00:19:10,025
El electrofisiólogo me dijo:
"No hay ningún problema
362
00:19:10,108 --> 00:19:12,485
porque puedes usar un desfibrilador".
363
00:19:13,028 --> 00:19:15,030
Este dispositivo funciona con un código.
364
00:19:15,697 --> 00:19:20,243
Hace unos años cuando estaba embarazada
tuve palpitaciones.
365
00:19:20,744 --> 00:19:24,748
El 25 % de las mujeres
tiene palpitaciones y es algo normal.
366
00:19:25,207 --> 00:19:28,418
Pero mi dispositivo pensó
que mi ritmo cardíaco era peligroso
367
00:19:28,501 --> 00:19:29,586
y me dejó helada.
368
00:19:29,669 --> 00:19:34,132
A los fabricantes les da igual
si una embarazada se queda sorprendida.
369
00:19:34,216 --> 00:19:36,426
Es lo último que quieren.
370
00:19:36,635 --> 00:19:39,262
Ni se les ha pasado por la cabeza.
371
00:19:39,346 --> 00:19:42,474
Hay una gran cantidad
de decisiones que tomar
372
00:19:43,141 --> 00:19:47,395
y los programadores son los que las toman.
373
00:19:48,188 --> 00:19:50,690
Y es inevitable
374
00:19:51,066 --> 00:19:53,735
que haya
alguna combinación de circunstancias
375
00:19:53,818 --> 00:19:55,904
que no hayan previsto.
376
00:19:56,238 --> 00:19:58,198
Así que lo que intentamos enseñar
377
00:19:58,281 --> 00:20:01,910
cuando enseñemos programación
378
00:20:02,244 --> 00:20:04,496
es cómo puedes tener en cuenta
379
00:20:04,621 --> 00:20:07,540
todas esas condiciones.
380
00:20:07,832 --> 00:20:10,168
Cómo puedes abarcar tanto
381
00:20:10,293 --> 00:20:14,673
sin que te dé algo
al ver la cantidad de cosas
382
00:20:14,756 --> 00:20:16,091
que debes tener en cuenta.
383
00:20:16,174 --> 00:20:20,011
Y eso ganará fuerza
porque hemos empezado a programar
384
00:20:20,136 --> 00:20:21,721
de una forma completamente nueva.
385
00:20:22,305 --> 00:20:25,642
En la programación tradicional escribimos
instrucciones para el ordenador.
386
00:20:26,059 --> 00:20:28,895
Pero ahora podemos darle
una serie de entradas
387
00:20:28,979 --> 00:20:30,230
y una serie de salidas
388
00:20:30,313 --> 00:20:33,525
para que escriba
sus propias instrucciones.
389
00:20:33,817 --> 00:20:37,404
Lo que haces es darle al ordenador
390
00:20:38,280 --> 00:20:39,739
un montón de ejemplos
391
00:20:40,073 --> 00:20:43,660
y le dices "Esto es una fiesta".
392
00:20:43,785 --> 00:20:45,287
Y luego usas otras cosas.
393
00:20:45,370 --> 00:20:47,163
Esto es un dentista y no una fiesta.
394
00:20:47,330 --> 00:20:48,915
Esto es una clase y no una fiesta.
395
00:20:49,374 --> 00:20:53,169
El ordenador usa esto para tratar de crear
396
00:20:53,253 --> 00:20:55,005
un sistema de clasificación.
397
00:20:55,255 --> 00:20:57,173
Esto se denomina aprendizaje automático.
398
00:20:57,257 --> 00:20:59,968
Hoy en día,
cuando se habla de inteligencia artificial
399
00:21:00,552 --> 00:21:01,469
se habla de esto.
400
00:21:01,636 --> 00:21:06,641
Esto es otro concepto
y una forma distinta de hacer las cosas
401
00:21:06,725 --> 00:21:11,438
porque no es la manera
en la que agrupamos estas cosas.
402
00:21:11,646 --> 00:21:15,442
Son algoritmos de aprendizaje automático
porque el ordenador
403
00:21:15,525 --> 00:21:17,736
crea su propio conjunto de instrucciones.
404
00:21:18,069 --> 00:21:21,990
Pero, claro, al final también se traducen
405
00:21:22,073 --> 00:21:24,451
en pequeñas instrucciones.
406
00:21:25,201 --> 00:21:28,038
En Google Translate había
más de un millón de líneas de código.
407
00:21:28,538 --> 00:21:32,751
Eso exige escribir
un millón de pequeñas instrucciones.
408
00:21:32,876 --> 00:21:38,256
Ahora Google Translate tiene
unas 500 líneas de código
409
00:21:38,423 --> 00:21:40,008
que usan el aprendizaje automático.
410
00:21:40,091 --> 00:21:44,304
Supongamos que por un descuido
en ninguna de las fotos de fiestas
411
00:21:44,387 --> 00:21:46,639
sale gente negra o hispana.
412
00:21:47,140 --> 00:21:49,434
El ordenador podría establecer una regla
413
00:21:49,517 --> 00:21:52,562
en la que solo se invitase a las fiestas
a blancos y asiáticos.
414
00:21:52,812 --> 00:21:55,982
Hay muchos programadores
blancos y asiáticos.
415
00:21:56,733 --> 00:22:02,447
Pero hay que meter a más gente en el saco
por un millón de razones.
416
00:22:02,530 --> 00:22:05,325
Harán mejores preguntas
si se incluyen más experiencias.
417
00:22:05,408 --> 00:22:09,037
Pero si estás añadiendo datos
a tu sistema de aprendizaje automático,
418
00:22:09,120 --> 00:22:13,208
pongamos que es un sistema penal
que incluye datos racistas
419
00:22:13,291 --> 00:22:15,585
y que los programadores
del aprendizaje automático
420
00:22:15,668 --> 00:22:17,170
son partidarios de la diversidad.
421
00:22:17,253 --> 00:22:22,384
Diferentes razas, caras y orígenes.
422
00:22:22,592 --> 00:22:25,303
Ese sistema de aprendizaje
seguirá aprendiendo de los datos.
423
00:22:25,387 --> 00:22:28,139
Si no hay gente
corrigiendo constantemente estas cosas,
424
00:22:28,223 --> 00:22:31,726
los datos históricos nos llevarán
a cometer los errores del pasado.
425
00:22:33,812 --> 00:22:38,358
La programación deriva
de la creatividad y ambición humanas.
426
00:22:38,566 --> 00:22:41,528
Se lanza el cohete Falcon 9.
427
00:22:41,611 --> 00:22:44,030
Hemos visto algo
que no creíamos que pudiéramos ver.
428
00:22:44,697 --> 00:22:45,740
Un agujero negro.
429
00:22:46,366 --> 00:22:49,953
Estamos construyendo un mundo nuevo
con más herramientas intuitivas
430
00:22:50,286 --> 00:22:55,750
que podemos usar para hacer
que este mundo sea un lugar mejor.
431
00:22:56,126 --> 00:22:59,546
Hemos intentado
que los ordenadores estén al alcance
432
00:22:59,629 --> 00:23:02,382
de todo tipo de personas.
433
00:23:02,507 --> 00:23:07,053
En los últimos 50 años
hemos visto el fruto de esta revolución.
434
00:23:07,262 --> 00:23:09,139
Por eso es genial vivir en esta época.
435
00:23:09,973 --> 00:23:13,935
Es muy importante recordar
que todo lo que usas en tu ordenador
436
00:23:14,227 --> 00:23:16,146
fue creado por un ser humano.
437
00:23:17,147 --> 00:23:21,317
Tú puedes ser una de esas personas
y es muy importante que lo seas.
438
00:23:21,401 --> 00:23:24,154
Puedes cambiar el mundo
de una forma fundamental.
439
00:23:24,571 --> 00:23:29,159
Va a haber un mundo que use
el aprendizaje automático, la información
440
00:23:29,242 --> 00:23:32,162
y la programación tradicional
de muchas maneras.
441
00:23:32,662 --> 00:23:35,123
Y lo que debemos hacer
como sociedad es decir:
442
00:23:35,206 --> 00:23:37,584
"Vale, tenemos esta tecnología nueva
443
00:23:38,251 --> 00:23:43,089
que en cierto modo puede ser genial.
Pero no lo será por sí sola".