1 00:00:00,720 --> 00:00:04,656 Kod är vårt nästa universella språk. 2 00:00:04,680 --> 00:00:08,856 På sjuttiotalet var punken den kraft som drev en hel generation. 3 00:00:08,880 --> 00:00:11,336 På åttiotalet var det förmodligen pengar. 4 00:00:11,360 --> 00:00:15,316 Men för min generation är mjukvara gränssnittet 5 00:00:15,316 --> 00:00:18,536 för vår föreställning av världen omkring oss. 6 00:00:18,560 --> 00:00:20,256 Det betyder att vi behöver 7 00:00:20,280 --> 00:00:23,536 en mycket mer blandad grupp människor 8 00:00:23,560 --> 00:00:25,336 som utvecklar dessa produkter, 9 00:00:25,360 --> 00:00:30,296 och som inte ser datorer som tekniska, tråkiga, konstiga och magiska, 10 00:00:30,320 --> 00:00:32,296 utan som något de kan mixtra med 11 00:00:32,320 --> 00:00:34,760 och vrida och vända på och så vidare. 12 00:00:35,720 --> 00:00:39,496 Min egen resa in i programmeringens och teknikens värld 13 00:00:39,520 --> 00:00:42,496 började vid den späda åldern fjorton år. 14 00:00:42,520 --> 00:00:46,616 Jag var galet förälskad i en äldre man, 15 00:00:46,640 --> 00:00:48,976 och mannen i fråga råkade vara 16 00:00:49,000 --> 00:00:53,416 USA:s dåvarande vicepresident, Al Gore. 17 00:00:53,440 --> 00:00:56,496 Jag gjorde vad varenda tonårsflicka skulle velat göra. 18 00:00:56,520 --> 00:00:58,730 På något sätt ville jag visa min kärlek, 19 00:00:58,730 --> 00:01:00,410 så jag byggde den här webbplatsen 20 00:01:00,410 --> 00:01:01,360 till honom. 21 00:01:01,360 --> 00:01:04,296 2001 fanns inget Tumblr, 22 00:01:04,319 --> 00:01:06,576 inget Facebook och inget Pinterest. 23 00:01:06,600 --> 00:01:08,736 Jag behövde alltså lära mig koda 24 00:01:08,760 --> 00:01:12,136 för att kunna uttrycka all min längtan och kärlek. 25 00:01:12,160 --> 00:01:14,496 Så kom programmeringen in i mitt liv. 26 00:01:14,520 --> 00:01:17,056 Den startade som ett uttryck för mina känslor. 27 00:01:17,080 --> 00:01:20,696 Ungefär som när jag var liten, och använde kritor och lego. 28 00:01:20,720 --> 00:01:25,320 När jag blev lite äldre, blev det genom gitarrlektioner och teater. 29 00:01:25,920 --> 00:01:28,896 Men sedan fanns det annat att bli uppfylld av, 30 00:01:28,920 --> 00:01:31,336 som poesi och strumpstickning, 31 00:01:31,360 --> 00:01:34,656 böjning av franska oregelbundna verb, 32 00:01:34,680 --> 00:01:36,536 att skapa låtsasvärldar, 33 00:01:36,560 --> 00:01:39,696 och Bertrand Russell och hans filosofi. 34 00:01:39,720 --> 00:01:41,616 Jag började bli en av dessa 35 00:01:41,640 --> 00:01:45,320 som tyckte att datorer var tråkiga och tekniska. 36 00:01:46,120 --> 00:01:47,936 Idag tycker jag annorlunda. 37 00:01:47,960 --> 00:01:52,016 Småflickor vet inte att de förväntas ogilla datorer. 38 00:01:52,040 --> 00:01:53,296 Småflickor är fantastiska. 39 00:01:53,320 --> 00:01:58,466 De är väldigt bra på att fokusera på saker, de är konkreta 40 00:01:58,466 --> 00:02:00,736 och de ställer fantastiska frågor som, 41 00:02:00,760 --> 00:02:03,336 "Vad?" och "Varför?" och "Hur?" och "Men om?" 42 00:02:03,360 --> 00:02:07,340 Och de vet inte att de bör tycka illa om datorer. 43 00:02:07,760 --> 00:02:09,696 Det är föräldrarna som gör det. 44 00:02:09,720 --> 00:02:11,015 Vi föräldrar tycker 45 00:02:11,039 --> 00:02:16,136 att datorvetenskap är en mystisk, knepig disciplin 46 00:02:16,160 --> 00:02:19,816 som bara nördar kan hålla på med. 47 00:02:19,840 --> 00:02:22,576 Att det nästan är lika världsfrånvänt 48 00:02:22,600 --> 00:02:25,136 som, säg, kärnfysik. 49 00:02:25,160 --> 00:02:27,616 De har ju delvis rätt. 50 00:02:27,640 --> 00:02:31,136 Det finns en hel del syntax, kontroller och datastrukturer 51 00:02:31,160 --> 00:02:33,816 algoritmer och metoder, 52 00:02:33,840 --> 00:02:36,416 protokoll och paradigm i programmering. 53 00:02:36,440 --> 00:02:40,736 Och vi bygger mindre och mindre datorer. 54 00:02:40,760 --> 00:02:45,296 Vi har byggt abstrakta lager på lager 55 00:02:45,320 --> 00:02:46,816 mellan människa och maskin 56 00:02:46,840 --> 00:02:50,056 till den grad att vi inte längre vet hur datorer fungerar 57 00:02:50,080 --> 00:02:52,256 eller hur man kommunicerar med dem. 58 00:02:52,280 --> 00:02:55,056 Vi lär våra barn hur människokroppen fungerar, 59 00:02:55,080 --> 00:02:56,080 vi lär dem 60 00:02:56,080 --> 00:02:58,200 hur förbränningsmotorer fungerar 61 00:02:58,200 --> 00:03:01,216 och vi säger till och med att om du verkligen vill bli astronaut 62 00:03:01,240 --> 00:03:02,696 så kan du bli det. 63 00:03:02,720 --> 00:03:04,896 Men när barnet frågar oss, 64 00:03:04,920 --> 00:03:07,656 "Vad är en bubbelsorteringsalgoritm?" 65 00:03:07,680 --> 00:03:12,096 Eller, "Hur vet datorn vad den ska göra när jag trycker på "Start", 66 00:03:12,120 --> 00:03:13,976 eller vilken video den ska spela upp? " 67 00:03:14,000 --> 00:03:16,576 "Linda, är Internet en plats? " 68 00:03:16,600 --> 00:03:19,320 Då blir vi vuxna märkligt tysta. 69 00:03:20,400 --> 00:03:22,856 "Det är magi," svarar en del av oss. 70 00:03:22,880 --> 00:03:25,130 "Det är alldeles för komplicerat," 71 00:03:25,130 --> 00:03:26,520 säger andra. 72 00:03:26,520 --> 00:03:28,016 Tja, det är ingetdera. 73 00:03:28,040 --> 00:03:30,616 Det är inte magi och det är inte komplicerat. 74 00:03:30,640 --> 00:03:34,256 Allt bara hände väldigt, väldigt snabbt. 75 00:03:34,280 --> 00:03:37,176 Ingenjörerna byggde dessa fantastiska maskiner, 76 00:03:37,200 --> 00:03:39,616 men de gjorde dem främmande för oss, 77 00:03:39,640 --> 00:03:41,856 liksom det språk vi talar till datorer 78 00:03:41,880 --> 00:03:44,896 så att vi inte längre vet hur vi talar till datorer 79 00:03:44,920 --> 00:03:47,416 utan att ha häftiga användargränssnitt. 80 00:03:47,440 --> 00:03:49,016 Det är därför ingen märkte 81 00:03:49,040 --> 00:03:51,736 att då jag konjugerade franska verb, 82 00:03:51,760 --> 00:03:55,016 övade jag egentligen min förmåga att se mönster. 83 00:03:55,040 --> 00:03:57,336 När jag var exalterad över stickning, 84 00:03:57,360 --> 00:04:00,896 följde jag egentligen en sekvens av symboliska kommandon 85 00:04:00,920 --> 00:04:02,656 vilka innefattade loopar. 86 00:04:02,680 --> 00:04:06,396 Och att Bertrand Russells livslånga sökande efter ett språk 87 00:04:06,396 --> 00:04:09,096 mellan engelska och matematik, 88 00:04:09,120 --> 00:04:11,440 fann sin hemvist i en dator. 89 00:04:12,080 --> 00:04:14,630 Jag var programmerare men ingen förstod det. 90 00:04:15,080 --> 00:04:19,536 Dagens ungar, de klickar, swipar och trycker sig genom världen. 91 00:04:19,560 --> 00:04:22,776 Men om vi inte ger dem verktygen att skapa med datorer 92 00:04:22,800 --> 00:04:26,736 kommer vi bara att uppfostra konsumenter istället för skapare. 93 00:04:26,760 --> 00:04:29,296 Frågeställningen ledde mig till denna lilla flicka. 94 00:04:29,320 --> 00:04:31,696 Hon heter Ruby och är sex år. 95 00:04:31,720 --> 00:04:35,816 Hon är totalt orädd, fantasifull och lite bossig. 96 00:04:35,840 --> 00:04:38,296 Varje gång jag sprang på ett problem 97 00:04:38,320 --> 00:04:40,576 - när jag försökte programmera - som, 98 00:04:40,600 --> 00:04:44,576 "Vad är objekt-orienterad design eller vad är minneshanteringsmetoder?", 99 00:04:44,600 --> 00:04:46,040 försökte jag föreställa mig 100 00:04:46,040 --> 00:04:49,040 hur en sexårig flicka skulle beskrivit problemet. 101 00:04:49,040 --> 00:04:51,696 Jag skrev en bok om henne som jag illustrerade 102 00:04:51,720 --> 00:04:54,096 och det Ruby lärde mig var följande: 103 00:04:54,120 --> 00:04:56,220 Man behöver inte vara rädd 104 00:04:56,220 --> 00:04:57,976 för småkrypen under sängen. 105 00:04:58,000 --> 00:05:00,056 Även det största problem 106 00:05:00,080 --> 00:05:03,576 består av en mängd mindre problem. 107 00:05:03,600 --> 00:05:06,336 Ruby presenterade mig också för sina vänner, 108 00:05:06,360 --> 00:05:09,256 den färgstarka sidan av Internet-kulturen. 109 00:05:09,280 --> 00:05:11,136 Hon har vänner som Snöleoparden, 110 00:05:11,160 --> 00:05:14,096 som är vacker men inte vill leka med de andra barnen. 111 00:05:14,120 --> 00:05:18,736 Hon har vänner som de gröna robotarna som är vänliga men röriga. 112 00:05:18,760 --> 00:05:20,936 Och hon har vänner som Linux-pingvinen 113 00:05:20,960 --> 00:05:24,616 som är otroligt effektiv, men ibland svår att förstå sig på 114 00:05:24,640 --> 00:05:27,160 Och de idealistiska rävarna, med flera. 115 00:05:27,880 --> 00:05:28,880 I Rubys värld 116 00:05:28,880 --> 00:05:31,560 lär man sig teknik genom lek. 117 00:05:31,560 --> 00:05:34,776 Till exempel, att datorer är bra på att repetera saker, 118 00:05:34,800 --> 00:05:37,696 så Ruby skulle lära sig loopar är så här, 119 00:05:37,720 --> 00:05:40,930 det här är Rubys favoritdanssteg: "Klapp, klapp, stamp, stamp, 120 00:05:40,930 --> 00:05:42,616 klapp, klapp och hopp." 121 00:05:42,640 --> 00:05:46,656 Du lär dig "räkne"-loopar genom att repetera det fyra gånger. 122 00:05:46,680 --> 00:05:49,496 Du lär dig "while"-loopar genom att repetera sekvensen 123 00:05:49,520 --> 00:05:51,296 medan jag står på ett ben. 124 00:05:51,320 --> 00:05:54,616 Du lär dig "until"-loopar genom att repetera sekvensen om och om igen 125 00:05:54,640 --> 00:05:56,696 tills mamma blir riktigt arg. 126 00:05:56,720 --> 00:05:57,736 (Skratt) 127 00:05:57,760 --> 00:06:01,480 Men framförallt lär du dig att det inte finns några färdiga svar. 128 00:06:02,320 --> 00:06:05,056 För att ta fram en läroplan för Rubys värld, 129 00:06:05,080 --> 00:06:08,376 behövde jag fråga barnen hur de ser på världen, 130 00:06:08,400 --> 00:06:10,416 och vilken typ av frågor de har 131 00:06:10,440 --> 00:06:12,790 och jag anordnade speltester. 132 00:06:13,360 --> 00:06:15,920 Jag började med att visa barnen fyra bilder. 133 00:06:16,480 --> 00:06:18,816 Jag visade en bild på en bil, 134 00:06:18,840 --> 00:06:21,256 en livsmedelsbutik, en hund och en toalett. 135 00:06:21,280 --> 00:06:24,750 Jag frågade, "Vilken av dessa tror ni är en dator?" 136 00:06:25,480 --> 00:06:28,216 Barnen var konservativa och svarade, 137 00:06:28,240 --> 00:06:30,016 "Inget av det där är en dator. 138 00:06:30,040 --> 00:06:31,696 Jag vet vad en dator är: 139 00:06:31,720 --> 00:06:33,056 Det är en skimrande låda 140 00:06:33,080 --> 00:06:36,696 som mamma och pappa sitter framför alldeles för länge." 141 00:06:36,720 --> 00:06:39,116 Sedan diskuterade vi och upptäckte 142 00:06:39,116 --> 00:06:41,206 att till exempel en bil är en dator, 143 00:06:41,206 --> 00:06:43,456 för den har ett navigationssystem inbyggt. 144 00:06:43,480 --> 00:06:46,256 En hund - en hund är kanske inte en dator, 145 00:06:46,280 --> 00:06:47,496 men den har ett halsband 146 00:06:47,520 --> 00:06:50,020 och det har kanske en inbyggd dator. 147 00:06:50,020 --> 00:06:53,616 Livsmedelsbutiker, har många olika datorsystem, 148 00:06:53,640 --> 00:06:57,056 som kassasystem och inbrottslarm. 149 00:06:57,080 --> 00:06:58,416 Barn, vet ni vad? 150 00:06:58,440 --> 00:07:00,976 I Japan är toaletterna datorer 151 00:07:01,000 --> 00:07:02,896 och det finns personer som hackar dem. 152 00:07:02,920 --> 00:07:04,696 (Skratt) 153 00:07:04,720 --> 00:07:05,936 Och vi fortsätter 154 00:07:05,960 --> 00:07:09,176 barnen får de här små klisterlapparna med en av- och på-knapp. 155 00:07:09,200 --> 00:07:12,816 Jag säger, "Idag har ni den fantastiska möjligheten 156 00:07:12,840 --> 00:07:16,456 att göra om allt i det här rummet till en dator." 157 00:07:16,480 --> 00:07:17,816 Återigen, säger barnen, 158 00:07:17,840 --> 00:07:20,736 "Det låter jättesvårt, jag kan inte." 159 00:07:20,760 --> 00:07:22,336 Jag svarar, "Var inte oroliga, 160 00:07:22,360 --> 00:07:24,936 era föräldrar kan inte heller. 161 00:07:24,960 --> 00:07:27,176 De har precis börjat höra talas om 162 00:07:27,200 --> 00:07:29,416 Sakernas Internet. 163 00:07:29,440 --> 00:07:31,416 Men ni barn, ni är de 164 00:07:31,440 --> 00:07:35,816 som kommer att leva i den här världen där allting är en dator." 165 00:07:35,840 --> 00:07:38,056 En liten flicka kom till mig 166 00:07:38,080 --> 00:07:40,096 tog en cykellampa och sade, 167 00:07:40,096 --> 00:07:43,616 "Om den här cykellampan var en dator, 168 00:07:43,640 --> 00:07:45,656 skulle den kunna byta färg". 169 00:07:45,680 --> 00:07:48,696 Jag svarade, "Bra idé! Vad skulle den mer kunna?" 170 00:07:48,720 --> 00:07:50,456 Hon tänkte och tänkte, 171 00:07:50,480 --> 00:07:54,846 och sade, "Om den här lampan var en dator, skulle vi kunna 172 00:07:54,846 --> 00:07:57,256 göra en cykelutflykt med min pappa, 173 00:07:57,280 --> 00:07:58,996 vi skulle sova i tält 174 00:07:59,000 --> 00:08:02,760 och cykellampan skulle också vara en videoprojektor." 175 00:08:03,640 --> 00:08:05,970 Det är såna ögonblick jag letar efter, 176 00:08:06,400 --> 00:08:07,976 tillfällena då barnen förstår 177 00:08:08,000 --> 00:08:10,230 att världen långt ifrån är färdig, 178 00:08:10,230 --> 00:08:13,376 att ett riktigt häftigt sätt att göra den mer färdig 179 00:08:13,400 --> 00:08:15,616 är genom att bygga teknik 180 00:08:15,640 --> 00:08:18,400 och att vi alla kan vara en del av detta. 181 00:08:19,200 --> 00:08:22,256 Slutligen byggde vi också en dator. 182 00:08:22,280 --> 00:08:27,016 Vi lärde känna den bussiga CPU:n och de hjälpsamma RAM och ROM 183 00:08:27,040 --> 00:08:28,456 som minns saker. 184 00:08:28,480 --> 00:08:31,416 När vi tillsammans monterat ihop datorn, 185 00:08:31,440 --> 00:08:34,096 byggde vi också en applikation till den. 186 00:08:34,120 --> 00:08:36,135 Min favorithistoria rör den lille killen, 187 00:08:36,159 --> 00:08:37,416 som är sex år gammal 188 00:08:37,440 --> 00:08:40,729 och som drömmer om att bli en astronaut. 189 00:08:41,120 --> 00:08:43,376 Pojken har enorma hörlurar på sig 190 00:08:43,400 --> 00:08:46,656 och han är helt absorberad av sin lilla pappersdator 191 00:08:46,680 --> 00:08:48,696 för ni förstår, han har byggt sitt eget 192 00:08:48,720 --> 00:08:53,016 intergalaktiska planetnavigationssystem. 193 00:08:53,040 --> 00:08:56,176 Hans pappa, den ensamma astronauten i omloppsbana runt Mars, 194 00:08:56,200 --> 00:08:58,056 finns på andra sidan av rummet 195 00:08:58,080 --> 00:08:59,696 och pojkens viktiga uppdrag 196 00:08:59,720 --> 00:09:02,640 är att få ner pappan till jorden igen. 197 00:09:03,760 --> 00:09:07,216 De här barnen kommer att ha en väsensskild bild av världen 198 00:09:07,240 --> 00:09:09,640 och hur vi bygger den med teknik. 199 00:09:10,840 --> 00:09:14,696 Slutligen, ju mer tillgänglig och ju mer inkluderande, 200 00:09:14,720 --> 00:09:18,096 och varierande vi utvecklar tekniken, 201 00:09:18,120 --> 00:09:22,096 desto mer färgrik och bra kommer världen att bli. 202 00:09:22,120 --> 00:09:24,696 Föreställ er för en stund följande, 203 00:09:24,720 --> 00:09:27,296 en värld där de historier vi berättar 204 00:09:27,320 --> 00:09:30,336 om hur saker och ting skapas inte bara innefattar 205 00:09:30,360 --> 00:09:32,776 killar-runt-tjugo-nånting i Silicon Valley, 206 00:09:32,800 --> 00:09:37,480 utan också kenyanska skolflickor och norska bibliotekarier. 207 00:09:38,000 --> 00:09:42,216 Föreställ er en värld där morgondagens unga Ada Lovelaces, 208 00:09:42,240 --> 00:09:45,456 som lever i en värld av ettor och nollor, 209 00:09:45,480 --> 00:09:50,096 kommer att växa upp till modiga och optimistiska teknikkramare. 210 00:09:50,120 --> 00:09:53,496 De tar tillvara både styrkan och möjligheterna 211 00:09:53,520 --> 00:09:55,120 samt också begränsningarna. 212 00:09:55,680 --> 00:09:59,816 En värld av teknik som är fantastisk, nyckfull, 213 00:09:59,840 --> 00:10:01,810 och en smula galen. 214 00:10:03,120 --> 00:10:04,616 När jag var liten flicka, 215 00:10:04,640 --> 00:10:06,656 ville jag bli historieberättare. 216 00:10:06,680 --> 00:10:08,256 Jag älskade fantasivärldar 217 00:10:08,280 --> 00:10:09,896 och min favoritsysselsättning var 218 00:10:09,920 --> 00:10:13,976 att vakna i Mumindalen. 219 00:10:14,000 --> 00:10:17,120 På eftermiddagarna strövade jag omkring på planeten Tatooine. 220 00:10:17,320 --> 00:10:20,500 På kvällarna somnade jag i Narnia. 221 00:10:21,400 --> 00:10:24,970 Programmering visade sig vara det perfekta yrket för mig. 222 00:10:25,720 --> 00:10:27,656 Jag skapar fortfarande världar. 223 00:10:27,680 --> 00:10:30,640 Men istället för att skriva, skapar jag dem med kod. 224 00:10:31,640 --> 00:10:34,696 Programmering ger mig den fantastiska möjligheten 225 00:10:34,720 --> 00:10:37,096 att bygga små universum 226 00:10:37,120 --> 00:10:41,330 med sina egna regler, paradigm och sätt att fungera. 227 00:10:42,120 --> 00:10:46,370 Att skapa något av ingenting med enbart logikens kraft. 228 00:10:46,920 --> 00:10:48,136 Tack. 229 00:10:48,160 --> 00:10:50,600 (Applåder)