Code is the next universal language. In the seventies, it was punk music that drove the whole generation. In the eighties, it was probably money. But for my generation of people, software is the interface to our imagination and our world. And that means that we need a radically, radically more diverse set of people to build those products, to not see computers as mechanical and lonely and boring and magic, to see them as things that they can tinker and turn around and twist, and so forth.
Код - це майбутня універсальна мова. В семидесятих рушієм цілого покоління була панк-музика. У вісімдесятих - це, напевно, були гроші. Але для мого покоління комп’ютерні програми є інтерфейсом нашої уяви і нашого світу. І це означає, що нам потрібна набагато, набагато різноманітніша спільнота людей, які б створювали нові продукти і не сприймали комп'ютери як щось незрозуміле, нудне і магічне, а ставились до них, як до конструктора, з яким можна майструвати, крутити і вертіти його.
My personal journey into the world of programming and technology started at the tender age of 14. I had this mad teenage crush on an older man, and the older man in question just happened to be the then Vice President of the United States, Mr. Al Gore. And I did what every single teenage girl would want to do. I wanted to somehow express all of this love, so I built him a website, it's over here. And in 2001, there was no Tumblr, there was no Facebook, there was no Pinterest. So I needed to learn to code in order to express all of this longing and loving.
Моя власна мандрівка у світ програмування і техніки почалась у юному віці - в 14 років. У мене було це божевільне підліткове захоплення старшим чоловіком, і так трапилось, що тим старшим чоловіком був на той час віце-президент Сполучених Штатів пан Ел Ґор. І я зробила те, що й усі дівчата підліткового віку. Я хотіла якось висловити всю ту любов, тож я зробила для нього вебсайт. Ось він. У 2001 не було Tumblr, не було Facebook і Pinterest, тож я мусила навчитися писати код, щоб висловити свою пристрасть і любов.
And that is how programming started for me. It started as a means of self-expression. Just like when I was smaller, I would use crayons and legos. And when I was older, I would use guitar lessons and theater plays. But then, there were other things to get excited about, like poetry and knitting socks and conjugating French irregular verbs and coming up with make-believe worlds and Bertrand Russell and his philosophy. And I started to be one of those people who felt that computers are boring and technical and lonely.
Так я дізналася про програмування. Спершу воно було засобом самовираження, таким самим, яким для мене були кольорові олівці і леґо у молодшому віці. А коли я підросла, це були уроки гітари і театральний гурток. Але потім було ще й інше, чим можна було захоплюватись. Наприклад, поезія і в’язання шкарпеток, і відмінювання французьких неправильних дієслів, і вигадування чудернацьких слів, і Бертран Расселл з його філософією. І я почала ставати однією з тих, хто вважає комп’ютери нудними, складними й нецікавими.
Here's what I think today. Little girls don't know that they are not supposed to like computers. Little girls are amazing. They are really, really good at concentrating on things and being exact and they ask amazing questions like, "What?" and "Why?" and "How?" and "What if?" And they don't know that they are not supposed to like computers. It's the parents who do. It's us parents who feel like computer science is this esoteric, weird science discipline that only belongs to the mystery makers. That it's almost as far removed from everyday life as, say, nuclear physics.
Ось що я думаю сьогодні. Маленькі дівчата не знають, що їм не повинні подобатись комп’ютери. Малі дівчата - дивовижні. Вони можуть дуже-дуже добре зосереджувати свою увагу і бути точними, і вони ставлять дивовижні питання, такі як "що?" і "чому?" і "як?" і "що, якщо?". І вони не знають про те, що їм не мають подобатись комп’ютери. Це знають їхні батьки. Це нам, батькам, здається, що комп’ютерні науки - якась езотерична, дивна наукова дисципліна, підвладна лише чаклунам. Що вона майже так само далека від повсякденного життя, як, скажімо, ядерна фізика.
And they are partly right about that. There's a lot of syntax and controls and data structures and algorithms and practices, protocols and paradigms in programming. And we as a community, we've made computers smaller and smaller. We've built layers and layers of abstraction on top of each other between the man and the machine to the point that we no longer have any idea how computers work or how to talk to them. And we do teach our kids how the human body works, we teach them how the combustion engine functions and we even tell them that if you want to really be an astronaut you can become one. But when the kid comes to us and asks, "So, what is a bubble sort algorithm?" Or, "How does the computer know what happens when I press 'play,' how does it know which video to show?" Or, "Linda, is Internet a place?" We adults, we grow oddly silent. "It's magic," some of us say. "It's too complicated," the others say.
І, частково, вони мають рацію. У програмуванні є багато синтаксису, потоків керування і структур даних, алгоритмів і практик, протоколів і парадигм. І ми, як суспільство, ми робили комп’ютери все меншими і меншими. Ми надбудовували, один над одним, все більше рівнів абстрації між людиною і машиною, дійшовши до того, що вже зовсім не розуміємо, як працює комп’ютер або як з ним говорити. І ми вчимо наших дітей, як працює людське тіло, ми вчимо їх, як працює двигун внутрішнього згорання, і навіть кажемо, що якщо вони справді хочуть стати астронавтом, то вони можуть стати ним. Але коли дитина приходить і питає: "Що таке алгоритм сортування бульбашкою?" або "Звідки комп’ютер знає, що робити, коли я натискаю Play? Як він знає, яке відео відтворювати?" або "Ліндо! Інтернет - це місце?". Тоді ми, дорослі, дивним чином замовкаємо. "Це магія", - каже дехто з нас. "Це занадто складно", - кажуть інші.
Well, it's neither. It's not magic and it's not complicated. It all just happened really, really, really fast. Computer scientists built these amazing, beautiful machines, but they made them very, very foreign to us, and also the language we speak to the computers so that we don't know how to speak to the computers anymore without our fancy user interfaces.
Ані те, ані інше. Це не магія і це не складно. Просто все це сталося дуже-дуже-дуже швидко. Комп’ютерники створили чудові, дивовижні машини, але вони зробили дуже незрозумілими для нас ці машини і мову, якою ми з ними говоримо, тож ми вже не знаємо, як спілкуватися з комп’ютерами без вишуканих інтерфейсів користувача.
And that's why no one recognized that when I was conjugating French irregular verbs, I was actually practicing my pattern recognition skills. And when I was excited about knitting, I actually was following a sequence of symbolic commands that included loops inside of them. And that Bertrand Russell's lifelong quest to find an exact language between English and mathematics found its home inside of a computer. I was a programmer, but no one knew it.
Ось чому ніхто не розумів, що відмінюючи французькі неправильні дієслова, я, насправді, тренувала свої навички розпізнавання образів. А коли я захоплювалась в’язанням, я, насправді, виконувала послідовність символічних команд, що включали в себе цикли. А спроби Бертрана Расселла створити гібрид математики та англійської мови, увінчалися успіхом всередині комп’ютера. Я була програмістом, але цього ніхто не знав.
The kids of today, they tap, swipe and pinch their way through the world. But unless we give them tools to build with computers, we are raising only consumers instead of creators.
Сьогоднішні діти рухаються по життю, клікаючи, клацаючи, скролячи, але, якщо не дати їм інструментів, щоб творити з допомогою комп’ютера, то замість творців ми виростимо просто споживачів.
This whole quest led me to this little girl. Her name is Ruby, she is six years old. She is completely fearless, imaginative and a little bit bossy. And every time I would run into a problem in trying to teach myself programming like, "What is object-oriented design or what is garbage collection?", I would try to imagine how a six-year-old little girl would explain the problem.
Усі ці пошуки привели мене до цієї маленької дівчинки. ЇЇ звуть Рубі, їй шість років. Вона має багату уяву, цілком безстрашна і трохи любить покомандувати. Щоразу, як я стикаюся з проблемою, намагаючись пояснювати аспекти програмування, такі як об’єктно-орієнтований дизайн або "збирання сміття", я намагаюсь уявляти, як 6-річна дівчинка пояснювала б цю проблему.
And I wrote a book about her and I illustrated it and the things Ruby taught me go like this. Ruby taught me that you're not supposed to be afraid of the bugs under your bed. And even the biggest of the problems are a group of tiny problems stuck together. And Ruby also introduced me to her friends, the colorful side of the Internet culture. She has friends like the Snow Leopard, who is beautiful but doesn't want to play with the other kids. And she has friends like the green robots that are really friendly but super messy. And she has friends like Linux the penguin who's really ruthlessly efficient, but somewhat hard to understand. And idealistic foxes, and so on.
Тож я написала про неї книгу і проілюструвала її, й ось чому мене навчила Рубі. Рубі навчила мене що не варто боятися жуків під ліжком, і що навіть найбільші проблеми - це група маленьких проблем, зліплених докупи. Рубі також познайомила мене зі своїми друзями, з цим барвистим боком інтернет-культури. Серед її друзів є Сніговий Леопард. Він гарний, але не хоче гратися з іншими дітками. Також вона дружить із зеленими ро́ботами - надзвичайно дружніми, але дуже неохайними. А ще вона дружить з пінгвіном Лінуксом. Він - і швець, і жнець, і на дуді грець, але з ним важкувато порозумітися. А ще є лис-ідеаліст та інші.
In Ruby's world, you learn technology through play. And, for instance, computers are really good at repeating stuff, so the way Ruby would teach loops goes like this. This is Ruby's favorite dance move, it goes, "Clap, clap, stomp, stomp clap, clap and jump." And you learn counter loops by repeating that four times. And you learn while loops by repeating that sequence while I'm standing on one leg. And you learn until loops by repeating that sequence until mom gets really mad. (Laughter) And most of all, you learn that there are no ready answers.
У світі Рубі знайомство з технікою відбувається через гру. Наприклад, комп’ютери дуже добре вміють повторювати, тому Рубі пояснюватиме цикли таким чином. Це улюблений танцювальний рух Рубі: "Хлоп, хлоп, туп, туп, хлоп, хлоп і стриб". Повторення цього руху чотири рази пояснює цикли з лічильником. Цикли з передумовою пояснюються тими самими рухами, але за умови, що ми стоїмо на одній нозі. А цикли з післяумовою ми пояснюємо, танцюючи доти, доки мама не розлютиться. (Сміх) І, найважливіше, тут пояснюється, що немає готових відеовідей.
When coming up with the curriculum for Ruby's world, I needed to really ask the kids how they see the world and what kind of questions they have and I would organize play testing sessions. I would start by showing the kids these four pictures. I would show them a picture of a car, a grocery store, a dog and a toilet. And I would ask, "Which one of these do you think is a computer?" And the kids would be very conservative and go, "None of these is a computer. I know what a computer is: it's that glowing box in front of which mom or dad spends way too much time." But then we would talk and we would discover that actually, a car is a computer, it has a navigation system inside of it. And a dog -- a dog might not be a computer, but it has a collar and the collar might have a computer inside of it. And grocery stores, they have so many different kinds of computers, like the cashier system and the burglar alarms. And kids, you know what? In Japan, toilets are computers and there's even hackers who hack them. (Laughter)
Готуючи навчальний план для світу Рубі, я мусила розпитувати дітей про те, як вони бачать світ, і якого ґатунку питання їх цікавлять, я проводила тестові ігрові заняття. Починала з того, що показувала дітям ці чотири малюнки, на яких було зображено автомобіль, крамницю, пса і туалет. І я запитувала: "Що з цього, на вашу думку, є комп’ютером?" Діти трималися консервативної позиції і відповідали: "Тут немає комп’ютера. Я знаю, що таке комп’ютер - це коробка, яка світиться, перед якою мама або тато проводять забагато часу". Але потім ми розмовляли і з'ясовували, що, насправді, автомобіль - це теж комп'ютер, бо у нього всередині є навігаційна система, а пес - він, може, і не комп'ютер, але у нього є нашийник, а в нашийнику може бути комп’ютер, а в магазинах є дуже багато різноманітних комп’ютерів, таких як касові апарати і сигналізації. І знаєте що діти? В Японії туалети - теж комп’ютери, і навіть є хакери, які їх зламують. (Сміх)
And we go further and I give them these little stickers with an on/off button on them. And I tell the kids, "Today you have this magic ability to make anything in this room into a computer." And again, the kids go, "Sounds really hard, I don't know the right answer for this." But I tell them, "Don't worry, your parents don't know the right answer, either. They've just started to hear about this thing called The Internet of Things. But you kids, you are going to be the ones who are really going to live up in a world where everything is a computer."
Ми йдемо далі, і я роздаю їм маленькі наліпки із зображенням вимикача. Я кажу дітям: "Сьогодні ви наділені чарами, які здатні перетворити будь-що в цій кімнаті на комп’ютер". І знову діти кажуть: "Це дуже складно. Я не знаю правильної відповіді". Але я кажу їм: "Не хвилюйтеся, ваші батьки теж не знають правильної відповіді. Вони лише зараз почали чути про цю річ, що називається "Інтернет речей". Але ви, діти, будете тими людьми, які справді житимуть у світі, де геть усе буде комп'ютером".
And then I had this little girl who came to me and took a bicycle lamp and she said, "This bicycle lamp, if it were a computer, it would change colors." And I said, "That's a really good idea, what else could it do?" And she thinks and she thinks, and she goes, "If this bicycle lamp were a computer, we could go on a biking trip with my father and we would sleep in a tent and this biking lamp could also be a movie projector." And that's the moment I'm looking for, the moment when the kid realizes that the world is definitely not ready yet, that a really awesome way of making the world more ready is by building technology and that each one of us can be a part of that change.
А потім до мене підійшла маленька дівчинка, взяла велоліхтарик і сказала: "Якби цей ліхтарик був комп’ютером, він би змінював кольори". Я відповіла: "Це дуже гарна ідея! А що ще він міг би робити?" І вона думала, думала і каже: "Якби велосипедний ліхтарик був комп’ютером, ми з татом могли б поїхати у веломандрівку, і ми б спали у наметі, і цей ліхтарик був би кінопроектором". І це та мить, яка є моєю метою. Мить, коли дитина усвідомлює, що світ, безперечно, ще не довершений, що можна зробити його більш довершеним, створюючи пристрої і технології, і що кожен з нас може бути частиною цих змін.
Final story, we also built a computer. And we got to know the bossy CPU and the helpful RAM and ROM that help it remember things. And after we've assembled our computer together, we also design an application for it. And my favorite story is this little boy, he's six years old and his favorite thing in the world is to be an astronaut. And the boy, he has these huge headphones on and he's completely immersed in his tiny paper computer because you see, he's built his own intergalactic planetary navigation application. And his father, the lone astronaut in the Martian orbit, is on the other side of the room and the boy's important mission is to bring the father safely back to earth. And these kids are going to have a profoundly different view of the world and the way we build it with technology.
І, на останок, ми також будували комп’ютер. Ми дізналися про самовладний CPU, корисні RAM і ROM, які допомагають йому запам’ятовувати речі. Після того, як ми зібрали комп’ютер докупи, ми також створюємо для нього програму. Та я найбільше люблю цю історію про шестирічного хлопчика, який мріє стати астронавтом. У нього на голові величезні навушники, і він повністю занурений у свій крихітний паперовий комп’ютер, бо, як ви бачите, він створив власну програму міжгалактичної планетарної навігації. Його тато - самотній астронавт на орбіті Марса, перебуває в іншому кінці кімнати, і важливе завдання хлопчика - безпечно повернути тата на Землю. Ці діти матимуть цілком інше бачення світу і того, як ми розбудовуємо світ за допомогою технологій.
Finally, the more approachable, the more inclusive, and the more diverse we make the world of technology, the more colorful and better the world will look like. So, imagine with me, for a moment, a world where the stories we tell about how things get made don't only include the twentysomething-year-old Silicon Valley boys, but also Kenyan schoolgirls and Norwegian librarians. Imagine a world where the little Ada Lovelaces of tomorrow, who live in a permanent reality of 1s and 0s, they grow up to be very optimistic and brave about technology. They embrace the powers and the opportunities and the limitations of the world. A world of technology that is wonderful, whimsical and a tiny bit weird.
І нарешті, що доступнішим, всеосяжнішим і різноманітнішим ми робимо світ технологій, то кращим і барвистішим ставатиме світ. Отже, на мить уявімо світ, ув якому історії, які ми розповідаємо про те, що речі створюють не лише жевжики з Кремнієвої Долини, але також кенійські школярки і норвезькі бібліотекарі. Уявімо світ, в якому маленькі Ади Лавлейс майбутнього, які живуть у реальності одиниць та нулів, виростають з дуже оптимістичним і сміливим ставленням до техніки. Вони скористаються нагодами, можливостями й обмеженнями цього світу. Світу дивовижних, химерних і трохи незрозумілих технологій.
When I was a girl, I wanted to be a storyteller. I loved make-believe worlds and my favorite thing to do was to wake up in the mornings in Moominvalley. In the afternoons, I would roam around the Tatooines. And in the evenings, I would go to sleep in Narnia. And programming turned out to be the perfect profession for me. I still create worlds. Instead of stories, I do them with code.
Коли я була маленькою, я хотіла бути казкаркою. Я обожнювала вигадувати слова і найбільше любила вранці прокидатися у Долині Мумі-тролів. По обіді я вешталася Татуїном, а вечорами лягала спати у Нарнії. І програмування виявилось для мене ідеальною роботою . Я все ще вигадую слова. Замість казок я пишу код.
Programming gives me this amazing power to build my whole little universe with its own rules and paradigms and practices. Create something out of nothing with the pure power of logic.
Програмування дає мені дивовижну силу, щоб творити мій маленький всесвіт зі своїми власними правилами, парадигмами і практиками. Створювати щось з нічого, лише чистою силою логіки.
Thank you.
Дякую.
(Applause)
(Оплески)