Boboto interviews Linda Liukas a Finnish computer programmer, children's writer and programming instructor. In 2014, her book Hello Ruby, Adventures in coding for children raised $380,000 on Kickstarter becoming the platform's most highly funded children's book.
Boboto: Hi Linda, it is truly an honor that you've accepted our interview, Boboto has known you through your book "Hello Ruby" (now available in Italian) and your amazing talk at TED. We would like to introduce you to our audience but we think it's better to do yourself, we will only briefly describe you as a programmer, narrator and illustrator.
Tell us about yourself, what you do for a living and what is the ambition that combines these three things you do, that apparently seem different?
Linda: My name is Linda. I'm a children's book author, illustrator and programmer. I think the thing with us humans is that we are not binary - we are not like computers, ones or zeroes, on or off, we can be many things at the same time. We contain multitudes. My work is about combining education, creativity and technology. It's a profession I never anticipated having say 10 years ago, but now in hindsight it's easy to connect the dots and see that this is exactly what I am supposed to be doing. That being said I have no idea where my career will take me in next 10 years, but I feel very fortunate that I found early on the intersection of things I want to be working on and feel no rush.
B: You've approached the world of programming when you were a kid, you were 13 years old and you had a strong desire to demonstrate to Al Gore your admiration for his ideals and his personality. You have decided to create a web page, but around the year 2000, social media like Facebook, Tumblr or similar didn't exist yet, and then, without giving up on your goal, you've decided to learn programming.
Tell us what you did and where the 13 years old stubborn girl that you were started?
L: I was 13 and madly in love with Al Gore, the then vice-president of US. I had all this teenage girl passion and energy and wanted to make a website for him in Finnish. At the time there was no Tumblr or Facebook, so the only way for me to express all my feelings was by learning HTML and CSS. This has probably influenced my later programming career: for me, coding has always been about creativity, expression and practical application.
Internet has really been my education: it's very DNA is in sharing and the colorful, wild and serendipitous fabric is profoundly human. I learned programming by Googling. A lot of the instructions on how to build things were already online back in the early 2000s (and nowadays you can learn almost anything with Khan Academy and other MOOCs). Everything was driven by my own interest: I started with HTML and CSS, but soon ran into the problem of wanting to create a photo gallery without having to manually resize all the photos. So I discovered PHP and learned things very organically, driven by my own curiosity.
B: At TED you talked about how the vision of computer science should properly change: complex, mysterious. And how parents should convey to their children a different point of view of this world. What was your parents thoughts and behavior about your passion, which was unusual for a 14 year old girl?
L: My parents have always supported me in many different ways. They never pushed me to have a career in technology, but helped me discover my own interest and joys.
When I was a small girl, my dad bought home a laptop computer. This was the beginning of 1990s and computers were insanely expensive. And this was his work laptop with important work files. But my dad told me and my siblings there isn't anything you can't do with a computer that is not reversible. This was by the way the time before Dropbox, or automatic backup systems, so that was kind of a bold claim. As a result I probably destroyed Windows a few times, but also learned how to fix things and developed this fearless attitude towards computers that has really been the basis for everything I do.
All my books are dedicated to my mom, since she is the bedrock and the true north in whatever I do. She is my first point of critique and keeps reminds me of the magic of childhood when I turn too technical.
B: Do you believe that perhaps the task of changing this vision of computer science, often seen as boring and lonely, should also be a concern of all educators and teachers that every day spend time with children, both within and outside schools?
L: Individual teachers are the key between students and programming. Students have the right to learn about computers, computing and the world of code. Primary school teaches us biology, even though not everyone will become a biologists. In the same vain not everyone will become a coder, but everyone has the right to be exposed to programming.
When I first started writing this book I knew almost nothing about pedagogy. I enjoyed programming, but mixed Piaget to Papert, didn't recognise computational thinking from constructivism. I just had a strong sense of the kind of world I'd like to create. For me, computing was magical, charming and imaginative - but the materials teaching it often dull and uninspiring.
I think too often we think that learning programming means sitting in front of a computer or giving away play, outdoors, social experiences etc. Playing in the woods was a huge part of my own childhood and I wouldn't take it away from future generations. But I think we humans can be many things at the same time, we are not binary like computers. And this means the kids might play in the woods, but also wonder what would it mean if all trees had sensors in them? Or maybe learn to model your treehouse in a CAD program?
Computational thinking concepts are more fascinating when we understand their presence all around us. Inspired by Montessori, I've practiced making computer science concrete, specific and understandable to the child. A computer can take a thousand forms.
B: In Finland schools, programming is taught from primary school. Could you explain how?
L: We've been teaching programming as a part of the core curriculum since fall 2016. Programming education in primary school is mainly teaching computational thinking: being able to decompose a problem, give clear commands to a computer and think sequentially. The problem, as in almost every country, is the lack of teachers, curriculum and pedagogical experience when teaching the whole age group.
I think the most important choice we made was NOT to make programming into its own subject (like in UK), but implemented it across the curriculum. This means kids grow up using programming as one more tool of problem-solving and self-expression alongside paper, ruler, pens and movement. Programming is taught in math, biology, arts & crafts, even physical education.
Schools are one of the most effective ways to democratise a skill and that's why I think it's wise to introduce programming for kids at an early age. Students have the right to learn about how the world is being shaped through technology. Primary school teaches us biology, even though not everyone will become a biologists. In the same vain not everyone will become a coder, but everyone has the right to be exposed to programming.
I think every country is unique and the more I've worked with different countries (the book has been translated into 20+ languages) the more I realize there is no panacea for education. I' often asked how would I implement coding in a given country and I think it boils down to having those difficult discussions of how we want our kids to be educated, what kind of citizens come out of the education funnell. I used to be very frustrated at how slow the change is in education, but now I'm glad that it's a system that doesn't change too easily. It's important that different stakeholders get to voice their opinions and understanding is formed through communications.
This being said, a few higlights for me:
I love how rigorous and bold the computing curriculum in UK is. They are a nation with a long legacy in computing (Ada Lovelace, Alan Turing, Tim Berners-Lee, RasberryPi..) and I'm excited they are sharing so much of what they are learning with the rest of the world. Australia has a really fascinating, creative computing curriculum, which includes a lot of multi-disciplinary elements.
US just came out with a Computer Science from Kindergarten to 12th grade framework that outlines in a very lucid and clear way all the different aspects of computing, networks and societal aspects we ought to be teaching. Any country could benefit from reading this.
In South Korea I've been very impressed by the teacher community and the creative and fun content they are creating around computing.
B: Could you tell us how, if it was the case, useful was learning programming in your career and life path as a young girl?
L: Well, I wouldn't work in this profession unless I learned programming. That being said, especially the idea of persistency (I never write a program right at the first go!) has been highly valuable for me. I don't think I would have learned to draw without first having learned programming. What seemed like a daunting, huge task was made much more manageable by first breaking it into smaller pieces: if I first learn to draw a circle, I can move to more advanced things..
B: What software you came across, did you find it difficult? What are today, the programming software that you'd recommend to beginners and why?
L: Such a huge part of our daily lives is spent in front of a screen. I believe there's a lot of value in parents and children exploring and interacting offline. That's why Hello Ruby is aimed for 5-7 year olds, kids who don't necessarily read/write yet. And there's a wealth of knowledge about computers and computing concepts we can teach to the little ones before even opening the terminal: like abstract thinking, decomposing a problem or organising sequences of actions.
I always imagined a parent (be it a mom or dad) reading the book to their kid and exploring the world of technology together. I believe stories stick with us for a long time and even as adults we tend to reflect back to the lessons we learned as kids (I certainly am still influenced by Moomins, Calvin and Hobbes and Mathilda). Hello Ruby is my attempt at giving this early experience in computers and computing culture.
I usually recommend resources like Scratch or code.org after Hello Ruby. Especially with younger kids, it's important to choose a language that minimises the frustration of syntax mistakes (when you accidentally forget a semicolon or mistype something) and choose a language where they can focus on expressing themselves. But the same applies for adults - I don't think I could ever be a C# programmer, my brain just doesn't think in that way. Ruby was the first programming language I felt powerful with, that really suited my way of structuring problems. We often forget, that programming is by no means mechanical, one-way solutions to problems, but a very creative, often almost artistic process.
B: You said: If coding is the new language, it is necessary to teach poetry, not grammar. Could you explain what you have meant by "programming poetry"?
L: Programming again is such a young field, that it's still finding its voice and we just need to encourage many different people to look for it. For me, stories have been the key. I believe stories are the most formative force of our childhood. The stories we read growing up affect the way we perceive the world as we grow up. For some reason narratives haven't been used as part of technology education, even though a lot of research suggests that stories are the best way to understand new concepts, especially in childhood but also when adults. So for me it was a natural fit. When I started drawing Ruby's adventures, I began to see stories and characters everywhere in the technology world.
When I talk about poetry of coding I think of the ways we learn natural languages. I didn't learn English by only conjugating English verbs or practicing different nouns. I learned English by speaking, writing, expressing. And even though programming languages are not natural languages, I think we should be aware of offering many different pedagogical pathways to this discipline to make sure we attract a diverse crowd of people.
Another way of looking at the poetry idea is to think of the word Digital Native. It's almost like we assume kids would learn Italian by virtue of just being surrounded by it all day long, listening and discussing in the language. No. We still go to much trouble to teach kids their native language by having them read literature (classic and contemporaries), write prose and poetry, learn rhetoric and so on. Same applies to technology: our kids might be surrounded by it, but it's still up to us adults to guide and direct them.
B: Your book "Hello Ruby", now available in Italian by Erickson, does not explain how to learn Coding or teach specific programming languages, but introduces the basics of computational thinking that every little future programmer will need.
Nowadays it seems like there is no clear definition of computational thinking, give us your definition and why it is so important for children to develop it from a young age?
L: I don't think everyone will be a coder, but the ability to speak and structure your thinking in a way a computer understands it will be one of the core future skills whatever your field. Game designers, biologists, data analysts... there are not that many professions that wouldn't benefit from programming skills. Programming languages will come and go, but technology will stay. Computational Thinking is a useful approximation for this, but as I'm not a scientist or a researcher, I'll leave the definitions to the people who think about this all day long. I really liked
B: The term "coding" is different from "programming" they are often used interchangeably, do you think is the right thing to do?
L: I use them interchangeably. I know there's probably a difference, but for me I could just as well use "giving instructions to a computer" to cover both.
B: What you believe are the intelligence, which children use more in the computer programming process and thus encourage the development of computational thinking?
L: Decomposition is a logical thinking. Like Ruby says, "Even the biggest problems in the world are just tiny problems stuck together". Every programmer starts by breaking down the problem in hand. Creativity and collaboration. Even though the instructions a programmer gives to a computer need to e exact, in the right sequence and carefully named programming is also highly creative. Try with your friend to instruct each other on how to brush your teeth and see how many different ways there are to give the commands!
Debugging and persistency. Learning to program is all about learning to overcome mistakes. Even the best programmers forget a semicolon from time to time and need to go back and find the mistake. This is called debugging.
B: We know that you are an admirer of Loris Malaguzzi and its "100 languages" of children, Boboto is an active supporter of Montessori pedagogy, to which the Malaguzzi philosophy is nearby. We find that the logical sequence that we find in actions made for the correct use of a structured material, is the same that we find in the activity of computer programming. Furthermore the various models of robotics (Lego WeDo, Cubetto, Bee-bot etc.) have characteristics that allow the interaction in first person of the child and the manual experience are self-corrective, considering then the important concept of error control in structured Montessori materials, giving the child an opportunity to create and experiment alone and stimulating different senses, like the touch, the sound and the view.
Can you also take give your interpretation that can bind this wolrd of tecnology, apparently so cold, creativity and art which characterizes the Malaguzzi thought?
L: From "Reggio children" I learned to love the idea of a hundred languages. The core idea of Reggio is that a child has hundreds of ways of expressing themselves: with clay and gestures, paint and rubber stamps. However in schools we often limit the children to only writing and reading. Reggio educators treat a computer as just one more material to learn alongside paper, ruler, pens and movement. One of the hundred.
"The computer is like a foreigner, and if you want to talk to it, you have to speak its language. Yes, but the computer has to understand how we talk, too, and it has to do what we want it to do."
Children from Diana Preschool,
Hundred Languages of the Child
One of the aspects I enjoyed in Reggio Emilia was the open-ended nature of projects that can take all sorts of twists and turns. Many of my own favourite exercise start with kids posing questions that interest them like "What kind of a computer would a dolphin doctor need?", "What is the worlds most dangerous animal?" or " What if my paper computer could print candy?". Throughout the process of exploring and experimenting they learn about abstraction, collaboration, media literacy, and develop a plethora of powerful ideas I would never have anticipate. That's why most of the exercises include discussion points and very few of them have right or wrong answers. I think it's important to give kids permission to trust themselves and allow for many right answers to a question.
I've always loved the idea of programming as the Lego block of language. You basically create something out of nothing: build ever more complicated worlds and structures without the need for physical components. Most children feel somewhat powerless in their lives. Someone else comes up with the rules. Not in programming - you're the king of your own universe.
I definitely wish to see programming become one tool in a big box of self expression - along with crayons and blocks of wood and prisms and pipettes. This way we'll have a more colorful, exciting computing culture.
B: Thank you Linda for your availability and kindness. Hope to see you in Italy!