1
00:00:09,510 --> 00:00:10,762
Hätäkeskus.
2
00:00:11,679 --> 00:00:14,932
Hätäkeskus, mikä hätänä?
3
00:00:15,058 --> 00:00:16,517
Hätäkeskus, mikä...
4
00:00:19,854 --> 00:00:24,567
Yhdeksäs huhtikuuta vuonna 2014
hätäkeskukset sammuivat yhtäkkiä -
5
00:00:24,650 --> 00:00:27,111
miljoonille pitkin Yhdysvaltoja.
6
00:00:27,779 --> 00:00:30,031
Palvelu oli kiinni kuusi tuntia.
7
00:00:30,364 --> 00:00:35,912
Yli 6 000 hätäpuhelua epäonnistui.
Valtio jäljitti ongelman tietokoneeseen -
8
00:00:35,995 --> 00:00:38,956
puhelunvälityskeskuksessa
Coloradon Englewoodissa.
9
00:00:39,082 --> 00:00:41,250
Kyseessä oli simppeli koodausvirhe.
10
00:00:41,918 --> 00:00:43,878
Tuon tietokoneen koodarit -
11
00:00:43,961 --> 00:00:47,882
päättivät määrittää tietokoneelle
välitettyjen puheluiden ylärajan,
12
00:00:47,965 --> 00:00:51,010
jota he eivät uskoneet sen saavuttavan.
13
00:00:51,427 --> 00:00:56,891
Mutta sinä vuoden 2014 yönä niin kävi.
Tietokone seurasi ohjeitaan täydellisesti.
14
00:00:56,974 --> 00:01:02,021
Rajan saavutettuaan se lopetti välitykset.
Ongelma ei ollut tietokone -
15
00:01:02,105 --> 00:01:03,940
eikä bugi koodissa.
16
00:01:04,482 --> 00:01:06,067
Ongelma oli itse koodaus,
17
00:01:06,234 --> 00:01:10,530
eli päätöksentekoprosessi, jonka kautta
tietokoneen kanssa kommunikoidaan.
18
00:01:10,613 --> 00:01:13,741
Sellainen voima tuo
suuren eettisen vastuun.
19
00:01:13,825 --> 00:01:14,659
SOSIOLOGI
20
00:01:14,742 --> 00:01:17,286
Mikään ei korvaa sitä.
21
00:01:17,370 --> 00:01:18,246
TIETOKONETIETEILIJÄ
22
00:01:18,329 --> 00:01:20,665
Samoin kuin kaupunkisuunnittelijat
määrittelevät...
23
00:01:20,748 --> 00:01:21,582
KIRJAILIJA
24
00:01:21,666 --> 00:01:23,751
...miten kaupungissa eletään,
25
00:01:23,835 --> 00:01:28,881
määrittelee koodi elämämme netissä.
Nettihän onkin nykyään elämäämme.
26
00:01:30,007 --> 00:01:33,594
Eikä pelkästään internet,
vaan kun soitamme hätäkeskukseen,
27
00:01:34,554 --> 00:01:35,721
menemme lääkäriin -
28
00:01:36,180 --> 00:01:37,598
tai nousemme autoon.
29
00:01:38,349 --> 00:01:41,185
Vaikka koodi pyörittää elämäämme...
30
00:01:41,602 --> 00:01:42,645
MAAILMAN KOODARIT
31
00:01:42,728 --> 00:01:47,024
...silti vain prosentin kolmasosa
ihmisistä osaa kirjoittaa sitä.
32
00:01:47,441 --> 00:01:51,988
Murskaenemmistölle se on musta laatikko.
Mutta sen ei tarvitse olla.
33
00:01:52,530 --> 00:01:55,199
Miten koodaus siis oikeasti toimii?
34
00:01:55,741 --> 00:01:58,369
Ja mitä uutta maailmaa rakennamme sillä?
35
00:01:59,287 --> 00:02:00,621
NETFLIX-DOKUMENTTISARJA
36
00:02:00,705 --> 00:02:01,664
Tietokone.
37
00:02:03,082 --> 00:02:07,879
Ihminen loi nerokkaan kokoelman
elektronista laitteistoa.
38
00:02:08,087 --> 00:02:10,923
Ei meiltä puutu riittäviä laitteita
ongelmien ratkontaan,
39
00:02:11,007 --> 00:02:14,177
vaan riittävät kuvaukset siitä,
miten ongelmia ratkotaan.
40
00:02:14,260 --> 00:02:18,472
Kun joku puhuu koodauksesta,
sen kuvittelee tosi vaikeaksi.
41
00:02:18,556 --> 00:02:22,685
On tärkeää muistaa,
että kaiken tietokoneissa -
42
00:02:22,768 --> 00:02:25,271
on luonut joku toinen ihminen.
43
00:02:25,354 --> 00:02:31,819
KOODAUS
44
00:02:31,944 --> 00:02:35,865
Jos yrittäisin selittää avaruusoliolle
miten tärkeää koodaus on, ja mitä se on,
45
00:02:35,990 --> 00:02:37,283
sanoisin: "Tiedätkö,
46
00:02:37,533 --> 00:02:41,412
asumme tällä fyysisellä planeetalla,
ja noin 50 vuotta sitten -
47
00:02:41,495 --> 00:02:44,582
muutama ihminen alkoi
rakentaa toista planeettaa.
48
00:02:44,665 --> 00:02:46,876
Se oli virtuaaliplaneetta.
49
00:02:47,001 --> 00:02:50,046
Kun näet ihmisiä kulkemassa -
50
00:02:50,129 --> 00:02:54,300
pää nuokkuen ja puhelintaan tuijottaen,
he ovat siinä toisessa maailmassa.
51
00:02:54,383 --> 00:02:58,054
Sitä koodi on.
Sen toisen maailman rakennusmateriaalia."
52
00:03:00,014 --> 00:03:04,393
Nämä kangaspuut ovat jokaisen
tietokoneen ja älyluurin esi-isä.
53
00:03:04,769 --> 00:03:09,232
Se keksittiin vuonna 1804.
Sen suuri innovaatio olivat nämä kortit.
54
00:03:10,107 --> 00:03:13,611
Korttien reiät antoivat vain tiettyjen
neulojen kulkea läpi.
55
00:03:14,237 --> 00:03:16,405
Satojen korttien tuhannet reiät -
56
00:03:16,489 --> 00:03:19,575
mahdollistivat monimutkaisemmat
kuviot kuin aiemmin.
57
00:03:20,243 --> 00:03:22,912
Tyylitellyt šaalit tulivat muotiin
Euroopassa.
58
00:03:23,079 --> 00:03:26,832
Kudotuista kuvioista sai niin mutkikkaita,
että ne näyttivät piirroksilta,
59
00:03:26,916 --> 00:03:29,168
kuten tämä kangaspuiden keksijästä.
60
00:03:30,169 --> 00:03:34,423
Ennen tätä vetopoikien oli valittava
yksittäiset langat käsin.
61
00:03:34,882 --> 00:03:39,011
Laskeminenkin hoitui silloin käsin
laskijoiden toimesta.
62
00:03:39,595 --> 00:03:43,557
Ensimmäiset tietokoneet olivat ihmisiä.
Parhaatkin apuvälineet -
63
00:03:43,641 --> 00:03:46,143
osasivat laskea vain yhdellä tapaa,
64
00:03:46,227 --> 00:03:48,896
kuten helmitaulu
yhteen- ja vähennyslaskuissa.
65
00:03:49,522 --> 00:03:51,857
Matemaatikko Charles Babbage
halusi koneen,
66
00:03:51,941 --> 00:03:54,610
joka osasi laskea kaiken,
mitä siltä halusi -
67
00:03:54,777 --> 00:03:57,029
tai mitä siihen ohjelmoi.
68
00:03:57,780 --> 00:04:01,200
Hän esitteli ajatuksen koneesta
nimeltä Analyyttinen kone.
69
00:04:01,284 --> 00:04:04,954
Babbage ansaitsi ideallaan paikan
historiankirjoissa.
70
00:04:05,037 --> 00:04:10,167
Tietokoneet saivat alkunsa Babbagesta,
71
00:04:11,127 --> 00:04:13,963
hyvin eksentrisestä brittikeksijästä.
72
00:04:14,046 --> 00:04:16,590
Babbage sai inspiraatiota siihen,
miten se toimisi.
73
00:04:16,674 --> 00:04:20,136
Hän oli ripustanut kotiinsa
kopion tästä kuvasta.
74
00:04:20,219 --> 00:04:23,347
Babbagen koneessa oli
Jacquardin kangaspuiden tapaan -
75
00:04:23,431 --> 00:04:25,391
fyysisiä osia: laitteisto.
76
00:04:25,599 --> 00:04:27,101
Ja samoin -
77
00:04:27,184 --> 00:04:31,272
laitteistolle saattoi syöttää ohjeita
reikäkorteilla.
78
00:04:31,689 --> 00:04:36,068
Reiät päästivät neulat läpi
muiden neulojen työntyessä taakse.
79
00:04:36,152 --> 00:04:39,196
Se käynnisti mekaanisten
laskutoimitusten sarjan.
80
00:04:39,864 --> 00:04:42,658
Reikäkortit ovat ohjelmistoa.
81
00:04:43,701 --> 00:04:45,995
Babbage ei saanut konetta valmiiksi,
82
00:04:46,078 --> 00:04:50,750
mutta hänen kanssaan työskennellyt nainen
näki sen mullistavan potentiaalin -
83
00:04:50,833 --> 00:04:52,293
laskennan tuolla puolen.
84
00:04:52,668 --> 00:04:55,671
Ada Byron, Lovelacen kreivitär, kirjoitti:
85
00:04:56,005 --> 00:04:59,675
"Aritmetiikan rajat ylittyivät
siinä hetkessä, kun ajatus -
86
00:04:59,759 --> 00:05:03,763
korttien käyttämisestä syntyi..."
Hän näki saman kuin Jacquard.
87
00:05:03,846 --> 00:05:06,974
Reiät saattoivat edustaa
muutakin kuin numeroita,
88
00:05:07,058 --> 00:05:08,267
kuten kuvioita,
89
00:05:08,392 --> 00:05:09,310
musiikkia -
90
00:05:10,644 --> 00:05:12,271
tai kokonaisia lauseita.
91
00:05:12,772 --> 00:05:15,191
Sitä voi ajatella vaikka morseaakkosina.
92
00:05:15,274 --> 00:05:19,987
Jokainen morseaakkosten kirjain
koostuu vain kahdesta signaalista.
93
00:05:20,071 --> 00:05:22,948
...tai... Ne ovat binäärisiä.
94
00:05:23,324 --> 00:05:26,452
Näillä piippauksilla voi sanoa mitä vain,
95
00:05:26,869 --> 00:05:29,872
kuten tämän hätäsanoman,
jonka Titanic lähetti vuonna 1912.
96
00:05:29,955 --> 00:05:31,791
OSUIMME JÄÄVUOREEN. UPPOAMME...
97
00:05:31,874 --> 00:05:34,502
SOS ei tarkoita mitään.
98
00:05:34,710 --> 00:05:37,880
Se on vain tosi yksinkertainen morsettaa.
99
00:05:38,005 --> 00:05:42,885
Yhtä hyvin voisi ajatella, että kutakin
kirjainta edustaa ykkösten ja nollien -
100
00:05:42,968 --> 00:05:44,512
yhdistelmä.
101
00:05:44,762 --> 00:05:45,930
Näyttääkö tutulta?
102
00:05:46,138 --> 00:05:47,640
Tämä on binäärikoodia.
103
00:05:47,848 --> 00:05:51,769
Se toimii meillä linkkinä
ihmis- ja konekielen välillä.
104
00:05:51,894 --> 00:05:55,773
Jokainen ykkönen tai nolla
on binääriluku eli bitti.
105
00:05:55,940 --> 00:05:58,359
Nämä ovat tietotekniikan atomeita.
106
00:05:58,526 --> 00:06:00,403
Tiedät ne ehkä eri nimellä:
107
00:06:00,653 --> 00:06:02,613
kahdeksan bittiä on tavu.
108
00:06:03,239 --> 00:06:08,035
Tiedätkö sen kuvan tietokoneellasi,
jonka koko on 1,1 megatavua?
109
00:06:08,160 --> 00:06:12,289
Se on 8 800 000 ykköstä ja nollaa.
110
00:06:12,373 --> 00:06:16,919
Samoin kuin morseaakkosten pisteillä
ja viivoilla kirjoitetaan... ja...
111
00:06:17,002 --> 00:06:22,508
binäärikoodi on vain tapa kirjoittaa,
mitä nykytietokoneessa tapahtuu:
112
00:06:23,217 --> 00:06:24,802
varaus tai ei varausta.
113
00:06:25,428 --> 00:06:27,555
Tämä on yksinkertainen sähköpiiri.
114
00:06:27,763 --> 00:06:32,476
Kuvittele miljoonat tällaiset
yhteistyöhön. Se on nykytietokone.
115
00:06:33,018 --> 00:06:35,271
Sähköpiirissä tämä on bitti.
116
00:06:35,604 --> 00:06:37,857
Jos valo ei pala, nolla.
117
00:06:38,107 --> 00:06:39,567
Palaa, yksi.
118
00:06:40,234 --> 00:06:42,194
Tietokoneet ymmärtävät vain sähköä,
119
00:06:42,278 --> 00:06:44,947
joten kaikki,
mitä koodarit tietokoneilla tekevät,
120
00:06:45,489 --> 00:06:49,368
on lopulta vain sarja
varausten kytkemistä ja sammuttamista.
121
00:06:49,702 --> 00:06:53,414
Se kaikki toimii,
koska oikein yhteen kytkettynä -
122
00:06:53,497 --> 00:06:56,041
ne varaukset voivat edustaa logiikkaa.
123
00:06:56,876 --> 00:07:01,130
Logiikka on oikeastaan
ennustettava sarja faktoja tai tapahtumia,
124
00:07:01,255 --> 00:07:07,136
kuten tämän ja tämän kytkimen sulkeminen
kellon soittamiseksi.
125
00:07:09,054 --> 00:07:12,516
Tietokoneväki kutsuukin tätä
logiikaksi ja piiriksi.
126
00:07:13,476 --> 00:07:15,644
Tai loogiseksi portiksi.
127
00:07:15,769 --> 00:07:18,439
Onnistunkohan polttamatta
reikää pöytään.
128
00:07:18,522 --> 00:07:22,818
JA-portissa molempien piirien
on oltava kiinni valon sytyttämiseksi.
129
00:07:23,360 --> 00:07:24,695
Sitten on TAI-portteja,
130
00:07:24,778 --> 00:07:28,199
joissa valo syttyy,
jos vain yksi piiri on kiinni.
131
00:07:28,365 --> 00:07:29,825
Sen voi sanoa toisinkin.
132
00:07:29,992 --> 00:07:34,371
Jos yksi piireistä on kiinni,
silloin valo syttyy.
133
00:07:34,497 --> 00:07:38,083
Tuollainen "jos sitten" -lause on
algoritmi.
134
00:07:38,375 --> 00:07:42,671
Nykyisessä pop-kulttuurissa algoritmi-sana
tuottaa hämmennystä.
135
00:07:42,755 --> 00:07:45,925
Se on nähty ennenkin,
kun algoritmit ovat seonneet.
136
00:07:46,008 --> 00:07:49,094
Algoritmien toiminta
on useimmille mysteeri.
137
00:07:49,178 --> 00:07:51,847
Mikä hitto algoritmi edes on?
138
00:07:51,972 --> 00:07:55,100
Algoritmi on oikeastaan vain
joukko ohjeita.
139
00:07:55,184 --> 00:07:59,522
Kuvittele meneväsi kauppaan.
Voit mennä vasemmalle ja sitten oikealle.
140
00:07:59,647 --> 00:08:02,525
Tai voit mennä oikealle
ja sitten vasemmalle.
141
00:08:03,025 --> 00:08:07,112
Tai voit kääntyä neljästi vasemmalle,
juosta puistossa, ylittää tien -
142
00:08:07,196 --> 00:08:09,031
ja kääntyä neljästi oikealle.
143
00:08:09,365 --> 00:08:12,076
Kuten samaan paikkaan
voi mennä monia reittejä,
144
00:08:12,159 --> 00:08:16,288
koodauksessa voi olla eri algoritmeja
saman ongelman ratkomiseen.
145
00:08:16,372 --> 00:08:20,042
Tavoitteena on löytää kaikkein tehokkain.
146
00:08:20,459 --> 00:08:22,795
Kaunis koodi ei toista itseään.
147
00:08:22,920 --> 00:08:24,922
Se on eleganttia ja voimakasta.
148
00:08:25,506 --> 00:08:29,051
Algoritmeja pyörittävät tietokoneet
toimivat ohjeiden mukaan,
149
00:08:29,134 --> 00:08:30,844
mutta paljon nopeammin.
150
00:08:31,136 --> 00:08:33,764
Se teki ihmisistä paljon voimakkaampia.
151
00:08:34,223 --> 00:08:37,935
Kun tieteilijät alkoivat kehittää
fuusiopommia,
152
00:08:38,018 --> 00:08:40,646
pääasiassa ihmiset hoitivat
laskutoimitukset.
153
00:08:40,938 --> 00:08:43,190
Mutta sitten he alkoivat käyttää tätä.
154
00:08:43,274 --> 00:08:47,236
ENIAC-tietokone teki lämpöydinlaskelmia
kuusi viikkoa.
155
00:08:47,903 --> 00:08:53,701
Sen suorana seurauksena
vuonna 1952 voitiin ensi kertaa testata -
156
00:08:54,243 --> 00:08:56,662
pommia, joka oli
satoja kertaa voimakkaampi -
157
00:08:56,745 --> 00:09:00,916
kuin Japaniin toisessa maailmansodassa
pudotetut fissiopommit.
158
00:09:01,500 --> 00:09:04,003
Koodauksen voima voimisti kykyä tehdä...
159
00:09:04,128 --> 00:09:05,337
STRATOSFÄÄRI
160 KILOMETRIÄ
160
00:09:05,421 --> 00:09:06,672
...mitä haluamme.
161
00:09:07,590 --> 00:09:11,135
Mutta 40-luvulla se vaati yhä
paljon työtä.
162
00:09:11,468 --> 00:09:16,056
Ohjelmien tuottaminen ykkösillä
ja nollilla ei selvästikään skaalaudu.
163
00:09:16,223 --> 00:09:19,101
Koodin voimaa haluttiin käyttöön enemmän,
164
00:09:19,184 --> 00:09:21,812
mutta koodauksesta piti tulla helpompaa.
165
00:09:22,479 --> 00:09:26,609
Koodista onkin siitä lähtien
pyritty kehittämään yhä enemmän...
166
00:09:26,692 --> 00:09:27,735
TIETOKONETEKNIIKKA
167
00:09:27,818 --> 00:09:29,361
...ihmiskielen kaltaista -
168
00:09:29,445 --> 00:09:32,990
keksimällä jotain,
mitä koodarit nykyään oikeasti käyttävät:
169
00:09:33,115 --> 00:09:34,617
ohjelmointikieliä.
170
00:09:35,200 --> 00:09:38,996
Ykkösiin ja nolliin verrattuna
ne ovat aika abstrakteja.
171
00:09:39,580 --> 00:09:41,707
Abstraktio on ihmisille hankala.
172
00:09:42,249 --> 00:09:45,753
Abstraktimmat kielet ovat
pohjimmiltaan ykkösiä ja nollia.
173
00:09:45,836 --> 00:09:48,631
Löysimme vain parempia tapoja
järjestellä niitä.
174
00:09:48,756 --> 00:09:53,135
Asiaa voi ajatella biologian kautta.
Ihmiset ovat tosi monimutkaisia,
175
00:09:53,218 --> 00:09:57,264
mutta 99 % kehostamme koostuu
vain kuudesta alkuaineesta.
176
00:09:57,348 --> 00:10:00,184
Siitä pääsemme suuriin molekyyleihin.
177
00:10:00,267 --> 00:10:04,730
Tuon järjestyneen kerroksen
ja yksinkertaisimman olion välinen kuilu -
178
00:10:04,813 --> 00:10:06,023
on aikamoinen.
179
00:10:06,231 --> 00:10:09,568
Ja ihmisaivot tekevät
niin edistyneitä juttuja,
180
00:10:09,652 --> 00:10:12,863
että on vaikea uskoa
niiden koostuvan samasta aineesta.
181
00:10:12,946 --> 00:10:17,034
Tietokoneet ovat samankaltaisia
mutta paljon yksinkertaisempia.
182
00:10:17,951 --> 00:10:19,203
Siinä olivat hyvät uutiset.
183
00:10:19,286 --> 00:10:22,915
Koodauksen tarinassa on kyse
tämän laatikon nostamisesta -
184
00:10:23,082 --> 00:10:25,250
binäärimaailmasta saadaksemme -
185
00:10:25,334 --> 00:10:28,837
helpompia, nopeampia
ja voimakkaampia koodauskeinoja -
186
00:10:29,088 --> 00:10:32,049
ilman tarvetta käsitellä
tai edes ymmärtää -
187
00:10:32,383 --> 00:10:35,094
perustana olevia
binääri- ja loogisia portteja.
188
00:10:35,344 --> 00:10:38,889
Se antaa koodareille keinon
luoda tutut tuotteemme.
189
00:10:39,473 --> 00:10:41,392
Ensimmäinen askel siihen oli...
190
00:10:41,975 --> 00:10:45,813
Symbolinen konekieli, jota on
paljon helpompi lukea ja kirjoittaa.
191
00:10:46,188 --> 00:10:51,318
Sen sijaan, että sanoisi 0-1-0-0-0-1-1-1,
kirjoitetaan sana "add".
192
00:10:51,694 --> 00:10:58,200
Sitten laitetaan assembler-ohjelma
kääntämään kirjaimet -
193
00:10:58,283 --> 00:11:03,455
A, D ja D vastaaviksi ykkösiksi
ja nolliksi.
194
00:11:03,539 --> 00:11:07,501
Tällä tasolla binäärikoodi järjestellään
kirjaimiksi ja numeroiksi,
195
00:11:07,584 --> 00:11:10,379
kuten atomit järjestyvät molekyyleiksi.
196
00:11:10,838 --> 00:11:15,217
Koodaus symbolisilla konekielillä
ei silti ollut helppoa,
197
00:11:15,843 --> 00:11:19,763
sillä kaikki nämä tietokoneet
käyttivät eri symbolisia konekieliä.
198
00:11:20,097 --> 00:11:24,810
Jos kirjoitti ohjelman yhdelle koneelle,
se ei toiminut missään muussa.
199
00:11:25,102 --> 00:11:29,440
Nopeasti alettiin pohtia, että oikeastaan
haluamme syöttää tietokoneelle -
200
00:11:29,523 --> 00:11:32,818
tietoa jollain, mitä käytämme päivittäin.
201
00:11:33,193 --> 00:11:35,863
Sitten tulivat ohjelmointikielet,
202
00:11:35,946 --> 00:11:40,075
jotka luotiin symbolisilla konekielillä.
203
00:11:40,159 --> 00:11:42,911
Niillä sitten luotiin lisää kieliä.
204
00:11:43,454 --> 00:11:44,955
Olet ehkä kuullut niistä.
205
00:11:45,038 --> 00:11:45,914
-LISP.
-BASIC.
206
00:11:45,998 --> 00:11:47,207
-JAVA.
-C++.
207
00:11:47,291 --> 00:11:49,042
-Python 3.
-HTML 5.
208
00:11:49,126 --> 00:11:51,044
PEARL, PHP, vähän C:tä.
209
00:11:51,128 --> 00:11:53,756
Aivan kuten puhutut kielet
ovat eri tapoja -
210
00:11:53,839 --> 00:11:56,967
esittää sama ajatus toisille,
211
00:11:57,092 --> 00:12:01,972
ovat ohjelmointikielet vain eri tapoja
esittää sama ajatus tietokoneille.
212
00:12:02,347 --> 00:12:04,850
Korkean tason kieliä on useita,
213
00:12:04,933 --> 00:12:10,314
koska ensinnäkin eri kielet
täyttävät eri tarpeita.
214
00:12:10,731 --> 00:12:12,065
Katsotaan näitä kahta.
215
00:12:12,191 --> 00:12:15,944
Tämä, COBOL, luotiin 50-luvun lopussa -
216
00:12:16,028 --> 00:12:18,906
helpottamaan yritysten koodin käyttöä.
217
00:12:19,239 --> 00:12:23,410
Se muistuttaa englantia
paitsi että jokainen keskustelu -
218
00:12:23,494 --> 00:12:25,579
päättyy sanaparilla "STOP RUN".
219
00:12:26,497 --> 00:12:32,753
Tämä, CPL, kehitettiin 60-luvulla,
ja se sisälsi tieteellisempää laskentaa.
220
00:12:33,212 --> 00:12:35,547
Homma toimii kuin biologinen evoluutio.
221
00:12:35,631 --> 00:12:38,592
Kun eliöt monimutkaistuvat,
ne kehittyvät -
222
00:12:38,675 --> 00:12:41,762
sopeutumaan paremmin elinympäristöönsä.
223
00:12:42,012 --> 00:12:46,058
Kyse on myös pitkälti mieltymyksistä.
224
00:12:46,558 --> 00:12:50,521
Ihmiset tykkäävät ilmaista itseään
eri työkaluilla.
225
00:12:50,896 --> 00:12:52,231
ONKO C++ KARMEA KIELI?
226
00:12:52,314 --> 00:12:56,068
Elon Musk ei esimerkiksi pidä
C++-ohjelmointikielestä.
227
00:12:56,360 --> 00:12:57,986
Sinäkin voit keksiä kielen.
228
00:12:58,070 --> 00:13:02,533
Tämä on korkean tason kieli,
joka koostuu vain sanasta "moo".
229
00:13:02,950 --> 00:13:04,910
Oikeasti. Sen nimi on COW.
230
00:13:05,244 --> 00:13:09,081
Tämä taas koostuu Arnold Schwarzeneggerin
elokuvalainauksista.
231
00:13:09,248 --> 00:13:13,252
Aina luullessani,
ettei niitä tule enää lisää,
232
00:13:13,335 --> 00:13:20,050
keksii joku taas uuden kielen
ja kerää ympärilleen kannattajajoukon.
233
00:13:20,175 --> 00:13:24,888
En näe mitään loppua
uusien kielien keksimiselle.
234
00:13:25,472 --> 00:13:29,017
Ja kaikki nämä kielet
perustuvat yhä logiikkaan.
235
00:13:29,393 --> 00:13:32,312
Esimerkiksi Netflixin koodari voisi sanoa:
236
00:13:32,688 --> 00:13:37,150
"Jos olet katsonut enemmän kuin
kaksi tuntia, näytä sitten tämä."
237
00:13:37,609 --> 00:13:42,531
Että koodi koskettaisi useimpien elämää,
on useimmilla oltava tietokone.
238
00:13:42,739 --> 00:13:46,159
Sitä varten tietokoneiden tuli olla
lähestyttävämpiä.
239
00:13:46,243 --> 00:13:48,370
Se vaati uuden harppauksen.
240
00:13:48,912 --> 00:13:53,208
Se alkoi tästä
Doug Englebartin demosta vuonna 1968.
241
00:13:53,292 --> 00:13:54,376
TIETOKONEINSINÖÖRI
242
00:13:54,459 --> 00:13:58,547
Kohta näemme ruudun, jota hän käyttää,
ja kursorin, joka liikkuu -
243
00:13:58,630 --> 00:14:01,425
tuon hiiren liikkeiden mukaan.
244
00:14:02,050 --> 00:14:06,555
Nykyään ei ohjelmoida
kirjoittamalla lauseita -
245
00:14:06,638 --> 00:14:11,476
paperille ja ojentamalla ne jollekulle,
joka syöttää ne.
246
00:14:11,560 --> 00:14:15,272
Istumme ruudulla näkyvän
graafisen käyttöliittymän eteen.
247
00:14:15,355 --> 00:14:17,566
Sen lyhenne on GUI.
248
00:14:18,025 --> 00:14:21,111
Niiden avulla voi koodata
kokonaan ilman kirjoitusta.
249
00:14:22,571 --> 00:14:24,907
Tai ne vain helpottavat koodausta.
250
00:14:25,240 --> 00:14:29,661
Tyypillisesti käytämme
sen tyyppistä ohjelmointiympäristöä,
251
00:14:30,287 --> 00:14:36,501
jonka Alan ja hänen kumppaninsa
niin kauniisti loivat -
252
00:14:36,585 --> 00:14:40,464
Palo Altossa Xeroxin tutkimuskeskuksessa
70-luvun alussa.
253
00:14:40,714 --> 00:14:42,633
Tämä Alan.
254
00:14:42,883 --> 00:14:46,053
Pidän häntä kotitietokoneiden isänä,
255
00:14:46,136 --> 00:14:50,265
koska hän oli ensimmäinen,
joka artikuloi sen vision.
256
00:14:50,682 --> 00:14:54,353
Tunnustan,
että pidin sitä silloin tieteisfiktiona.
257
00:14:54,436 --> 00:14:59,608
Kun isoja asioita tapahtuu, on se yleensä
kokonaisen yhteisön aikaansaannosta.
258
00:14:59,816 --> 00:15:02,110
Ja Park oli fantastinen siinä.
259
00:15:02,653 --> 00:15:04,196
Se oli kuin taikaa.
260
00:15:04,780 --> 00:15:08,450
Graafinen käyttöliittymä salli
miljoonien lisää -
261
00:15:08,533 --> 00:15:12,871
käyttää tietokonetta
heille luonnolliseen tapaan.
262
00:15:13,622 --> 00:15:16,750
Xeroxin lanseeratessa GUI:t vuonna 1979 -
263
00:15:17,292 --> 00:15:20,170
he näyttivät,
miten koodi voi muuttaa arkea.
264
00:15:20,462 --> 00:15:25,008
Saavut toimistolle, ja Xerox-kone
näyttää aamupostisi ruudulla.
265
00:15:25,092 --> 00:15:27,344
Pian tällaiset Xerox-systeemit -
266
00:15:27,427 --> 00:15:31,181
auttavat hallinnoimaan
tärkeintä resurssiasi: tietoa.
267
00:15:31,848 --> 00:15:38,105
Moni kaltaiseni tutkijayhteisömme
jäsen halusi tehdä maailmasta paremman.
268
00:15:38,647 --> 00:15:43,026
Heidän ideansa liittyi tiiviisti
ihmisen toimintakyvyn laajentamiseen.
269
00:15:43,610 --> 00:15:46,405
Jotain, mikä olisi vuorovaikutuksessa -
270
00:15:46,697 --> 00:15:50,784
yleisöön, normaaleihin ihmisiin,
ja se mahdollistaisi -
271
00:15:50,867 --> 00:15:53,245
enemmän kuin mihin aiemmin pystyimme.
272
00:15:53,662 --> 00:15:56,248
Siinä se onnistuikin.
273
00:15:56,331 --> 00:15:58,875
GUIt olivat suuri hyppäys
tällä asteikolla.
274
00:15:59,501 --> 00:16:03,630
Sitten tuli seuraava
maailmaa mullistava innovaatio.
275
00:16:05,382 --> 00:16:09,177
Uusi tapa jakaa kaikkea,
mitä koodilla sai aikaan.
276
00:16:10,053 --> 00:16:14,433
TV:ssä alettiin ennustaa, mitä pääsy
kaikkeen tähän koodiin tarkoittaisi.
277
00:16:14,808 --> 00:16:17,519
Kuvittele istuvasi aamukahville -
278
00:16:17,602 --> 00:16:20,439
ja käynnistäväsi tietokoneesi
lukeaksesi lehden.
279
00:16:20,522 --> 00:16:24,985
Kuvittele maailma,
jossa kaikki sanat, kuvat maalauksista -
280
00:16:25,068 --> 00:16:28,697
ja jokainen elokuva voitaisiin
katsoa välittömästi kotona.
281
00:16:28,780 --> 00:16:33,744
Olemme mielestäni jonkin jännittävän
ja kauhistuttavan kynnyksellä.
282
00:16:33,827 --> 00:16:36,204
-Eikö se ole vain työkalu?
-Ei ole.
283
00:16:36,288 --> 00:16:40,667
Vaikuttavimmat ohjelmistot
hyödyntävät näitä kaikkia innovaatioita.
284
00:16:40,751 --> 00:16:45,088
Yksi college-opiskelija käytti
korkean tason ohjemointikieltä, PHP:tä,
285
00:16:45,213 --> 00:16:49,760
saadakseen jotakin jakoon internetiin
käytettäväksi tietokoneen GUI:lla.
286
00:16:49,968 --> 00:16:53,889
Hän kuvaili sen ensimmäisessä
TV-haastattelussaan vuonna 2004.
287
00:16:53,972 --> 00:16:56,433
Se on nettitietokanta,
joka yhdistää ihmisiä -
288
00:16:56,516 --> 00:16:59,478
yliopistoissa ja collegeissa
sosiaalisten verkkojen kautta.
289
00:16:59,561 --> 00:17:02,731
Käyttäjiä on 100 000.
Kuka tietää, mitä seuraavaksi.
290
00:17:03,273 --> 00:17:08,361
Facebookilla on nyt yli kaksi miljardia
kuukausittaista käyttäjää.
291
00:17:08,695 --> 00:17:11,656
Nykyään koodarit muokkaavat
miljardien elämää.
292
00:17:11,823 --> 00:17:16,244
Sitä, miten he työskentelevät, ostavat,
syövät, deittailevat ja rentoutuvat.
293
00:17:16,328 --> 00:17:21,333
Mitä teet nyt?
Katsot minua Netflixistä nettiselaimella.
294
00:17:23,376 --> 00:17:27,255
Netflix itsessään on koodia,
jota suoritetaan nettiselaimessa,
295
00:17:27,339 --> 00:17:28,298
joka on koodia,
296
00:17:28,507 --> 00:17:33,804
joka vuorostaan pyörii tietokoneella,
joka suunniteltiin koodia käyttämällä.
297
00:17:34,054 --> 00:17:35,680
Se ulottuu alas asti.
298
00:17:37,599 --> 00:17:41,228
Hyvä koodi on kuin olisi
suunnitellut museon,
299
00:17:41,311 --> 00:17:46,024
jota miljoonat ajattelevat
ja jossa kuljetaan päivittäin.
300
00:17:46,191 --> 00:17:49,569
Mikään ei rinnastu koodaamiseen,
koska se tuntuu luomiselta.
301
00:17:49,653 --> 00:17:52,280
Sitä omaa idean jonkin toiminnasta.
302
00:17:52,364 --> 00:17:58,078
Sitten sitä istuu tietokoneen ääreen
yrittämään sen toteuttamista.
303
00:17:58,161 --> 00:18:01,081
Siihen rooliin sisältyy paljon vastuuta.
304
00:18:01,164 --> 00:18:06,002
Otetaan vaikka nopeusrajoitus.
Yli 95 km/h nopeudet on kielletty.
305
00:18:06,670 --> 00:18:07,546
Selvä.
306
00:18:07,712 --> 00:18:11,299
Mutta entä jos omistamasi
auton tietokone sanoisi:
307
00:18:12,134 --> 00:18:15,387
"Tämä auto ei kulje
yli 95 kilometriä tunnissa.
308
00:18:15,762 --> 00:18:17,973
Se on eri tapa hallita käytöstä.
309
00:18:18,056 --> 00:18:23,395
Kontrolloimalla valintojamme
koodilla on elämässämme -
310
00:18:23,478 --> 00:18:27,941
melkeinpä suurempi sääntelyvaikutus
kuin lainsäädäntö voi toivoakaan.
311
00:18:28,525 --> 00:18:30,819
Ja se voi olla hieno asia.
312
00:18:30,944 --> 00:18:35,198
USA:ssa tapahtuu vuosittain
kuusi miljoonaa kolaria.
313
00:18:35,282 --> 00:18:39,494
Yhden analyysin mukaan 94 % niistä
on kuskin aiheuttamia.
314
00:18:40,370 --> 00:18:43,456
Koodauksen edistysaskeleet
voivat pelastaa miljoonia.
315
00:18:43,665 --> 00:18:46,960
Mutta ne voivat myös vaarantaa
henkiä uusin tavoin.
316
00:18:47,460 --> 00:18:50,922
Minulla on hypertrofinen kardiomyopatia.
317
00:18:51,089 --> 00:18:56,219
Se on lääketieteellinen termi sille,
että minulla on iso sydän.
318
00:18:56,511 --> 00:19:00,932
Se on kirjaimellisesti iso.
Se on kolme kertaa normaalia isompi.
319
00:19:01,016 --> 00:19:05,937
Se selvisi, kun olin 30.
Riskini kuolla 40-vuotiaaksi mennessä -
320
00:19:06,021 --> 00:19:07,147
oli hyvin iso.
321
00:19:07,439 --> 00:19:10,025
Elektrofysiologi sanoi,
"Ei se ole ongelma,
322
00:19:10,108 --> 00:19:12,485
koska voit saada
rytmihäiriötahdistimen."
323
00:19:13,028 --> 00:19:15,030
Tämä laite toimii koodilla.
324
00:19:15,697 --> 00:19:20,160
Pari vuotta sitten ollessani raskaana
koin sydämentykytyksiä.
325
00:19:20,243 --> 00:19:24,748
Noin neljännes naisista kokee niitä.
Se on normaalia.
326
00:19:25,165 --> 00:19:28,418
Mutta laitteeni luuli,
että rytmini oli vaarallinen,
327
00:19:28,501 --> 00:19:29,586
ja se antoi iskun.
328
00:19:29,669 --> 00:19:34,132
Laitevalmistajat eivät halua
odottavien naisten saavan iskuja.
329
00:19:34,216 --> 00:19:36,551
Sitä he viimeksi haluavat.
330
00:19:36,635 --> 00:19:39,262
Sitä ei vain ollut huomioitu.
331
00:19:39,346 --> 00:19:42,474
On valtava määrä päätöksiä,
332
00:19:43,141 --> 00:19:47,395
joita ohjelmoijien on tehtävä.
333
00:19:48,188 --> 00:19:53,735
Väistämättä eteen tulee
jonkinlainen tilanteiden yhdistelmä,
334
00:19:53,818 --> 00:19:55,904
jota he eivät ennakoineet.
335
00:19:56,238 --> 00:20:01,910
Se, mitä yritämme opettaa,
kun opetamme ohjelmoinnin taitoa,
336
00:20:02,244 --> 00:20:07,540
on näiden erilaisten tilanteiden
huomioon ottaminen.
337
00:20:07,832 --> 00:20:09,751
Sitä yrittää olla kattava -
338
00:20:10,293 --> 00:20:16,091
lamaantumatta niistä asioista,
joita ehkä pitää ottaa huomioon.
339
00:20:16,174 --> 00:20:20,011
Siitä tulee vain todempaa,
koska aloimme koodata -
340
00:20:20,136 --> 00:20:21,721
ihan uudella tapaa.
341
00:20:22,347 --> 00:20:25,976
Perinteisessä koodauksessa
tietokoneelle kirjoitetaan ohjeita.
342
00:20:26,059 --> 00:20:30,230
Nykyään voimme antaa
sille syötteitä ja tulosteita.
343
00:20:30,313 --> 00:20:33,525
Lisäksi saamme ne kirjoittamaan
nykyään omia ohjeitaan.
344
00:20:33,942 --> 00:20:37,404
Tietokoneelle annetaan -
345
00:20:38,363 --> 00:20:39,739
paljon esimerkkejä -
346
00:20:40,073 --> 00:20:45,245
sanoen: "Tässä on juhlat."
Sitten on muita juttuja.
347
00:20:45,328 --> 00:20:48,915
Hammaslääkärin vastaanotto
tai luokkahuone: ei juhlat.
348
00:20:49,374 --> 00:20:55,005
Sitten tietokone katsoo niitä
yrittäen rakentaa luokittelujärjestelmän.
349
00:20:55,255 --> 00:20:57,173
Se on koneoppimista.
350
00:20:57,257 --> 00:21:01,469
Kun joku puhuu keinoälystä,
tätä hän tarkoittaa.
351
00:21:01,636 --> 00:21:06,641
Se on aivan uuden tason abstraktio
ja tapa tehdä asioita,
352
00:21:06,725 --> 00:21:11,438
koska se ei sovi siihen tapaan,
miten koostamme asioita.
353
00:21:11,646 --> 00:21:15,442
Niitä kutsutaan koneoppimisalgoritmeiksi,
koska tietokone luo -
354
00:21:15,525 --> 00:21:17,736
itse noudattamansa ohjeet.
355
00:21:18,153 --> 00:21:21,990
Mutta lopulta tietenkin nekin kääntyvät -
356
00:21:22,073 --> 00:21:24,451
pieniksi ohjeiksi.
357
00:21:25,201 --> 00:21:28,330
Google Kääntäjä
oli yli miljoonan koodirivin kokoinen.
358
00:21:28,496 --> 00:21:32,751
Ihmiset kirjoittivat
miljoona pientä ohjetta.
359
00:21:32,876 --> 00:21:38,381
Nykyään se on noin 500 rivin kokoinen -
360
00:21:38,506 --> 00:21:40,008
ja käyttää koneoppimista.
361
00:21:40,091 --> 00:21:44,304
Oletetaan, että huolimattomuuden vuoksi
yksikään juhlakuva -
362
00:21:44,387 --> 00:21:46,639
ei sisältänyt mustia tai latinoita.
363
00:21:46,973 --> 00:21:52,562
Tietokone voi päätellä juhliin kutsuttavan
vain valkoisia tai aasialaisia.
364
00:21:52,812 --> 00:21:56,149
On paljon valkoisia
ja aasialaisia koodareita.
365
00:21:56,232 --> 00:22:02,364
Suunnitteluhuoneessa istuvien
kirjoa pitäisi laajentaa monesta syystä.
366
00:22:02,447 --> 00:22:05,325
Laajempi elämänkokemus
tuottaa parempia kysymyksiä.
367
00:22:05,408 --> 00:22:09,037
Mutta lopulta, jos koneoppimissysteemiin
syöttää dataa -
368
00:22:09,120 --> 00:22:13,208
vaikkapa rikosoikeudesta,
joka sisältää rakenteellista rasismia,
369
00:22:13,291 --> 00:22:17,170
mutta koneoppimisen ohjelmoijat
näyttävät Benettonin mainokselta -
370
00:22:17,253 --> 00:22:22,384
eri rotuineen, kasvoineen
ja sosiaalisine taustoineen,
371
00:22:22,634 --> 00:22:25,303
järjestelmä oppii silti datasta.
372
00:22:25,845 --> 00:22:28,139
Jos ihmiset eivät aktiivisesti
korjaa sitä,
373
00:22:28,223 --> 00:22:31,851
johtaa historiallinen data
meidät toistamaan menneet virheet.
374
00:22:33,812 --> 00:22:38,358
Koodauksen tarina kertoo ihmisen
kunnianhimosta ja luovuudesta.
375
00:22:38,566 --> 00:22:41,528
Falcon 9 -raketti on laukaistu.
376
00:22:41,611 --> 00:22:44,030
Näimme sen, mitä luulimme näkymättömäksi:
377
00:22:44,948 --> 00:22:45,990
mustan aukon.
378
00:22:46,366 --> 00:22:49,953
Rakennamme uutta maailmaa
yhä intuitiivisemmilla työkaluilla,
379
00:22:50,286 --> 00:22:55,750
joita useampi voi käyttää auttaakseen
meitä varmistamaan paremman maailman.
380
00:22:56,126 --> 00:22:59,546
Olemme pyrkineet tekemään tietokoneista
lähestyttävämpiä -
381
00:22:59,629 --> 00:23:02,382
suuremmalle määrälle ihmisiä.
382
00:23:02,507 --> 00:23:07,178
Olemme nähneet tämän vallankumouksen
toteutuvan edessämme viimeiset 50 vuotta.
383
00:23:07,262 --> 00:23:09,139
Siksi on jännittävää elää nyt.
384
00:23:09,973 --> 00:23:14,144
On tärkeää muistaa, että kaiken,
mitä tietokoneella tekeekään,
385
00:23:14,227 --> 00:23:16,729
on luonut joku ihminen.
386
00:23:17,021 --> 00:23:21,234
Voit olla yksi heistä. On hyvin tärkeää,
että sinusta tulee yksi heistä.
387
00:23:21,317 --> 00:23:24,154
Silloin voi muuttaa maailmaa syvällisesti.
388
00:23:24,696 --> 00:23:28,616
Koneoppiminen, data
ja perinteinen koodaus -
389
00:23:28,741 --> 00:23:32,287
tulevat pyörittämään maailmaa
mitä moninaisimmin tavoin.
390
00:23:32,829 --> 00:23:35,123
Yhteiskuntana meidän on sanottava:
391
00:23:35,206 --> 00:23:37,917
"Ok, meillä on tämä voimakas
uusi teknologia,
392
00:23:38,251 --> 00:23:43,089
ja joillain tavoin se voi olla hienoa,
mutta siitä ei tule hienoa itsekseen.
393
00:24:09,240 --> 00:24:10,992
Tekstitys: Antti Rinta-Loppi