When and how to start coding with kids
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 131 | |
Author | ||
Contributors | ||
License | CC Attribution - NonCommercial - ShareAlike 3.0 Unported: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this | |
Identifiers | 10.5446/69518 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
EuroPython 20246 / 131
1
10
12
13
16
19
22
33
48
51
54
56
70
71
84
92
93
95
99
107
111
117
123
00:00
Design of experimentsProcess (computing)Virtual machineCorrelation and dependenceComputerCodeLogicAxiom of choiceCuboidProgramming languageAlgebraic closureCodeKognitionswissenschaftSheaf (mathematics)LogicWeb pageVideo gameInheritance (object-oriented programming)Independence (probability theory)Computer programResultantRepository (publishing)Focus (optics)AlgorithmSpeech synthesisPattern recognitionProjective planeOcean currentLatent heatVirtual machineDegree (graph theory)Formal languageMedical imagingMultiplication signMereologyCore dumpSocial classFreewareHand fanError messageComplex (psychology)Image resolutionRange (statistics)WebsiteSlide ruleSoftware developerEntropiecodierungComputing platformPresentation of a groupMusical ensembleProcess (computing)Computer programmingWordMachine learningOnline helpRoboticsMobile appUniverse (mathematics)IterationElectric generatorComputer animation
06:45
Error messageFunction (mathematics)GUI widgetRead-only memoryHand fanIntrusion detection systemAssembly languageIntegrated development environmentAverageSurvival analysisProcess (computing)Greatest elementCognitionPhysical systemGraphische ProgrammierungComputer programmingAlgorithmRobotSheaf (mathematics)Category of beingLatent heatGraphische ProgrammierungSlide ruleComputer programmingSoftware developerPhysical systemEndliche ModelltheorieNeuroinformatikAlgorithmCognitionCodeFunctional (mathematics)Process (computing)MereologySupercomputerSphereWikiIntegrated development environmentPosition operatorDependent and independent variablesTerm (mathematics)CASE <Informatik>Interactive televisionMathematicsMedical imagingUniverse (mathematics)Connected spaceVideo gameAreaMessage passingReflexive spaceCapability Maturity ModelRegulator geneAverageMachine visionSurvival analysisFormal languageSpeciesGreatest elementInheritance (object-oriented programming)RoboticsRange (statistics)Self-organizationFrequencyDifferent (Kate Ryan album)Regular graphEstimatorComputer animation
13:30
Computer programmingGraphische ProgrammierungAlgorithmRobotSoftware developerRead-only memoryPlanningFunction (mathematics)Formal languageNewton's law of universal gravitationAlgorithmic information theoryDecision support systemData managementAlgorithmBitRight angleMedical imagingMereologyType theoryResultantRoboticsSlide ruleRange (statistics)Different (Kate Ryan album)Formal languageRoutingCodeDemo (music)Software developerDistanceGroup actionComputer programmingPhysical computingBasis <Mathematik>Semiconductor memoryCoordinate systemProgramming languageFunctional (mathematics)Graphische ProgrammierungPlanningTask (computing)Block (periodic table)Programmer (hardware)Rule of inferenceSet (mathematics)EntropiecodierungStability theoryComputer animation
18:58
Ultraviolet photoelectron spectroscopyRobotComputer programComputerRow (database)Block (periodic table)First-order logicRevision controlSuccessive over-relaxationFreewareVisual systemInterface (computing)Network topologyCoding theoryCommercial Orbital Transportation ServicesBasis <Mathematik>Text editorBlock (periodic table)Graphische ProgrammierungProgrammschleifeExpressionEntropiecodierungVariable (mathematics)Projective planeDampingComputer programmingForm (programming)NeuroinformatikComputing platformRoboticsFormal languageText editorComputer hardwareGame controllerPersonal identification numberLevel (video gaming)BitGame theoryDigitizingVideo gameLimit (category theory)Visualization (computer graphics)Revision controlGroup actionInterface (computing)outputAndroid (robot)FreewareCodeLogicMusical ensembleElectronic visual displaySlide ruleDemo (music)Basis <Mathematik>Interactive televisionFocus (optics)Internet der DingePhysical computingMachine learningSet (mathematics)Different (Kate Ryan album)Integrated development environmentSoftware development kitFunction (mathematics)Fiber bundleMobile appComputer animation
24:26
Basis <Mathematik>Coding theoryVisual systemFreewareBlock (periodic table)Ordinary differential equationJava appletSubsetFormal languageComputer programmingGraphische ProgrammierungEntire functionSheaf (mathematics)Letterpress printingFormal languagePoisson-KlammerMultiplication signCodeComplex (psychology)Web 2.0Real numberComputer programmingLimit (category theory)EntropiecodierungDifferent (Kate Ryan album)Game theoryStudent's t-testBitPay televisionPlanningSubsetProgramming languageLevel (video gaming)ProgrammschleifeComputer animation
27:08
Computer configurationSocial classCodeFreewareVisual systemCoding theoryWebsiteOracleEntropiecodierungOpen setAvatar (2009 film)Computer programmingMachine visionHTTP cookieVideo gameTrailMultiplication signRoboticsTouchscreenEntropiecodierungReal numberSocial classProgrammschleifeBasis <Mathematik>Semiconductor memoryMultiplicationInformation overloadSoftware testingProcess (computing)Formal languageExpert systemFamilyProjective planeInformationComputer programmingCASE <Informatik>Machine visionWordMereologyInformation retrievalGame theoryLevel (video gaming)Different (Kate Ryan album)CodeConfidence intervalIndependence (probability theory)Computing platformGradientSlide ruleSheaf (mathematics)1 (number)Event horizonUniverse (mathematics)Group actionMessage passingConnected spaceElement (mathematics)Materialization (paranormal)Web-DesignerVariety (linguistics)Programming languageFreewareComputer animationSource code
35:56
Remote Access ServiceEvolutionarily stable strategyOptical disc driveSet (mathematics)Total S.A.Finite-state machineTheory of everythingMultiplication signQuicksortChemical equationSource codeEndliche ModelltheorieComputer programmingOpen sourceMoment (mathematics)Game theoryGraphical user interfaceProgrammschleifeBlogAxiom of choiceTouchscreenLimit (category theory)CASE <Informatik>FamilyFormal languageProjective planeInheritance (object-oriented programming)MereologyNeuroinformatikHand fanEntropiecodierungWeb 2.0BitInternetworkingFrequencyControl flowWhiteboardServer (computing)WebsiteTetraederMusical ensembleProper mapSlide ruleData managementProgramming languageCodeComputer virusNumbering schemeLecture/ConferenceMeeting/Interview
Transcript: English(auto-generated)
00:03
I work as a machine learning engineer in a German company called Innovex, where I switch from project to project. Currently I'm working in the speech recognition team at Babbel. They have a language learning app, which some of you might know. But I've worked on lots of other projects.
00:22
I also enjoy working on personal projects and usually share those with the community either on GitHub or my personal web page. And there are two very popular repositories which might be interesting for you as well. One is called Machine Learning Basics, which implements fundamental machine learning
00:41
algorithms in plain Python, so really with a focus on understanding the logic behind the algorithms rather than implementing them very efficiently. And the other one is My Magical Universe, which introduces awesome Python features like generators, iterators, decorators and so on, using the world of magic.
01:01
I'm a huge Harry Potter fan. Yeah, so maybe most interesting for today, why am I interested in this topic, coding with kids? First of all, I had no coding opportunities on my own in my own childhood. My parents had nothing to do with coding, neither did my friends.
01:22
I had no coding classes in school, and I really want this to be different for the children that are growing up now and also for my own children. Then I love learning and teaching. I've been part of a German initiative called Kaimer Schule, which roughly translates into AI goes to school, where we teach or give free classes on AI in German schools.
01:44
Then I've always been fascinated by how the brain works and the brain is at the core of all of our learning. We will talk about the brain and its development also in this talk. So, I studied cognitive science in my undergraduate degree and I've always been fascinated by this topic.
02:01
And last but not least, I love kids. This is actually the only image of a real child you will see in this presentation. This is my son, Theodore, when he was still very young and he fell asleep in the morning a second time. That never happened like any other time, but that morning he fell asleep and I could get some coding work done
02:22
sitting next to him, which was really nice. And all the other images you will see were created with DALY3. Okay, going on to the talk itself. First of all, a short overview. We will, of course, I will give a motivation for the topic.
02:40
Then we will look into brain development. Then I will give for specific age ranges, ideas or recommendations of when and how to start with coding. We will look at concrete or specific robots, devices, programming languages and platforms that you can use to get started at specific age ranges.
03:03
And in the end, I will share some tips and tricks on how children learn and how you can support them in their learning. And of course, there will be enough time for doing a Q&A in the end. Okay, let's start with the motivation. So, why do we want our kids to learn how to code in the first place?
03:23
Learning to program isn't just about learning a skill for a job. It's rather that with coding you can create anything that you can imagine. You can create stories, art, animation, music, websites and lots more. So, it enables us to create things that we like and even have fun doing it. Of course, there are obvious advantages like improved career opportunities,
03:44
but most importantly, children acquire lots of skills when they learn how to code. And I selected a few of them as an example on the following slides. First of all, we have logical thinking. So, coding helps children develop logical thinking skills
04:02
by breaking down a complex problem into smaller, more manageable parts. So, in the end, they learn to not only solve a problem but also to explain why and how they solved it that way, which is an essential skill in everyday life because it helps us to make more structured decisions and help us solve problems in a more efficient way.
04:25
Another example would be problem solving. When kids are writing their code, they are also forced to solve errors that come up with their programs, what we call debugging as developers. So, they develop problem-solving skills by understanding how to analyze, debug and troubleshoot their code.
04:43
And this is also a very useful everyday life situation, career choice. As a skill, as an example, so coding has to do a lot with creativity.
05:00
It helps children develop their creativity by allowing them to express themselves and their interests through code, which also encourages them to think outside the box and come up with their own unique solutions to problems. So, in other words, it creates room for innovation. And the last skill I selected as an example is perseverance.
05:23
So, we all know that coding is challenging and not every solution is simple or straightforward. And perseverance describes the ability to keep moving towards a goal even when the path to it is difficult. And I think this is one of the most valuable skills you can acquire in general in life
05:40
and especially with regard to learning new things. And we want our children to learn to try again and be willing to try again when they fail with doing something. And as a parent or tutor or friend of a child with the right encouragement and by celebrating both wins and failures, you can make them stronger, we can make them stronger.
06:03
Specifically, it has been proven effective to praise effort independent of the results. So, say something like, wow, you tried really hard to solve this problem and you did not give up, that's fantastic. Rather than saying, you are so clever or you are so intelligent and this comes so easy to you.
06:24
Okay, this was just to give you an idea of what skills children acquire when they learn how to code. Maybe as a little closure for this topic or this section is coding for everyone. So, should all children learn how to code?
06:41
I would say yes, but not for the sake of becoming future computer programmers because we do not know how programming will look like in the future. It has changed rapidly in the past years and will continue to change with new tools coming up like GitHub co-pilot and large language models. So, it's more about that we know
07:02
or we have a reasonable amount of certainty that the computational thinking skills that children gain through learning how to code will remain relevant and in high demand and very useful for any career. Going on to the next section, brain development. Don't worry, this is not going to be a neuroscience lecture.
07:23
But as I mentioned, the brain is fundamental to all of our learning and our cognitive development. And if you want to understand when your child is able to do certain things, you have to understand how its brain develops, at least roughly. So, if you don't know,
07:41
the brain is the most complex part of our body. It controls lots of functions like thought, emotion, but also bodily functions. It's just this amazing supercomputer we have. You can break it down into different hemispheres and those can be broken down even further
08:01
into different sections which specialize in different functions. So, you have different parts of the brain and hence different functions that mature at different ages. And therefore, children can do certain things at certain ages, but others only later. A very important term when thinking about the brain
08:21
is neuroplasticity. So, in some species, the brain is already mature at birth, but this is not the case for the human brain. It matures over many, many years. And this means that as the brain develops, it can be influenced by our interactions with the environment. This is especially true during early years
08:42
when the brain is growing most rapidly. So, there it shows way more plasticity than during later years, especially up to the ages of three or four where it is like the brain is most reactive to environmental influences. This holds both for positive influences like responsive caregiving, appropriate stimulation
09:03
that you have diverse learning experiences but also negative experiences. So, we as parents, caregivers, friends, or just people that are close to a child, we lay the foundation for the rest of their lives what comes easy to them
09:22
and regarding learning and their cognitive development. So, this is really a huge change that we can make. Let's go now through the different ages and see how a child develops. I created these images to look somewhat similar to me as a baby.
09:41
So, you could follow the journey of Annalena in an alternative universe where she starts coding from a very, very young age. But of course, you can also exchange this for any other child that you know. Let's start with birth. At birth, our brain has already about 100 billion neurons
10:02
with an average of 2,500 synaptic connections per neuron. I think this is just mind-blowing even though this is only 25% of adult size. So, oh yeah, maybe if you don't know, synapses are the connections between neurons. So, if you have two neurons
10:21
and they want to pass along signals, this is done via a synapse. So, it's basically the pathway along which neurons pass on signals. Nearborns, when they are born, have only basic reflexes for survival like rooting, sucking, grasping, but no directed interactions with their environment.
10:44
So, no coding right after birth. But I guess this also holds for the first roughly four years of life. So, in this age range, the brain develops from the bottom up. This means that primitive areas of the brain
11:00
like the brain stem already developed during gestation and in the early months after birth. Then you have motor reflexes and sensory abilities like hearing and vision that are fairly well developed at birth and undergo rapid maturation during the first six months of life. You have the limbic system which is associated with emotional processing
11:22
and emotional regulation and the cortical areas that are associated with cognitive and executive functions that develop later over the first three years. And then you even have areas that mature over much longer periods like synapses in the neocortex
11:42
which controls higher cognitive functions that develop throughout the years of middle childhood and only attain their final organization in late adolescence. So, a lot is going on in the first four years of life brain wise and also throughout childhood.
12:01
By the age of four, the brain grows to 80% of adult size but kids still do not have any cognitive functions that are really needed to understand principles or computational thinking algorithms. It's just way too early for that. But this changes roughly when they reach the age of four. This is of course very child specific.
12:23
So, these are only estimates on regular development. Okay, so let's go over to the age ranges where we can actually start coding with kids. Yeah, these are just sources if you're interested in where all the facts come from
12:40
the neuroscience background. Yeah, you can just click through the slides. They should be uploaded on the talk page. Okay, going on to the next section when and how to start coding. Yeah, an overview first. When we start with coding, we can divide the different possibilities
13:01
into roughly four categories. One is algorithmic thinking, then child-friendly robots, visual programming and textual programming. We will look at all of them and you can use them one after the other. So, you can start at an early age with algorithmic thinking and child-friendly robots at around four years of age.
13:22
You would go on to visual programming at around six and textual programming around ages nine or ten. Let's start with age four to six. Maybe just as a side note, I already mentioned that each child develops differently.
13:41
So, make sure to observe the child and understand how the different skills are developed. Don't just go on with visual programming at the age of six. If your child is not ready, then it will be rather frustrating and not be very fun for the kid. Okay, age four.
14:01
And at this age, we can start with basic algorithmic thinking without using any coding whatsoever. So, for example, or maybe, yeah, we know that an algorithm is just a set of rules that describes how to solve a problem or how to perform a task. And you can teach this to a child very easily by using examples like,
14:22
which steps would you follow to guide a lost puppy home? And then with exercises like this, the child can understand step-by-step thinking and the principle behind an algorithm, namely that you have a complex problem and you break it down into smaller, more manageable parts and individual steps.
14:41
And this enhances their ability to think sequentially and logically. Further, by the age of about four, a child is likely to have the motor skills and perceptual abilities to begin to interact with simple toys that introduce the very basics of coding. And these are child-friendly robots which are a good tool to get started.
15:03
On the image here on the right, you see the BeeBot, which we will also look at in a bit more detail on the next slides. You can see it's a very simple robot with buttons on top. Going on to the age of six to nine,
15:20
as your child gets older and reaches the age of six, they become more used to using technology and also their hand-eye coordination improves. And we have the prefrontal cortex, which is like the CEO of our brain. It undergoes a big growth spirit between five and eight, which results in vast improvements
15:41
in working memory, planning, selective attention and inhibition. So, all very valuable skills for coding. So, six years is a good age to try out tools for visual programming. And also here, we will look into specific examples in the next slides. And then we have the age of nine and above.
16:03
So, around the age of nine or ten, children's language abilities are well developed and also their typing skills, which are fundamental for textual programming, are often sufficient for them to start using those text-based languages. And at this age, the prefrontal cortex matures
16:21
and development stabilizes. So, executive functions like planning, organizing, thinking abstractly become more fully developed, which are, again, a very important basis for learning how to use textual programming languages. So, this should give you now
16:41
a rough idea of the different age ranges and how the brain develops and at which age range you can do which programming or kind of programming or get started. And now I want to give you concrete devices that you can use to start coding with your child. And of course,
17:01
these are all only examples. There are so, so many devices, tools, ideas out there if you start looking. I listed even more at the end of the slides, which you can check out. Maybe you know some more that you can let me know about. But yeah, this is just very few examples of what you can do.
17:21
Let's start with robots and devices, starting with the earliest age around the age of four. On the left, again, you can see the BeeBot. It's a programmable floor robot designed for children from ages four to seven. It can go to the front, to the back, right and left.
17:41
And it can, I think, remember up to 130 commands. So, you can program it to walk along a specific route. And then you press play and the robot just starts to move. And you will see a demo on the next slide. But first, on the right are cubelets.
18:02
They can be used to introduce physical computing to children. So, it's just these physical blocks that you can snap together. And the blocks perform different actions. So, you can create very unique robots that move or light up depending on their surrounding, like the distance from your hand.
18:23
And what is nice about cubelets is that you can use them later on as well by programming them with MakeCode, which is a visual programming language. So, this is a demo of a BeeBot.
18:55
To give you an idea, and I also have a demo of cubelets.
19:14
And as you already saw, I always listed the prices of the different devices because they vary a lot.
19:21
Cubelets, for example, are really fun, but also very expensive. Just one block is around 50 euros. And you need more blocks than that to really create nice robots. Yeah, so you will find the prices of all the things on the slides as well. Now, then next up is the Microbit.
19:42
It's rather a device, a small programmable device with an LED display, buttons and sensors. It can be used to create games, animations, interactive projects and much more. It is recommended starting at the age of eight and it can be programmed using MakeCode, a visual programming language developed by Microsoft.
20:01
And it's quite cheap. The startup bundle is about 20 euros. Then we have Zoomie, which is a tiny buildable self-driving car kit starting at the age of 10 because it is more complex. You can teach it about, like you can even apply principles of machine learning
20:22
by teaching it about its environment using different kinds of data sets. So it's a really powerful tool. It can be programmed using Python or Blockly. It is quite expensive. We have used Zoomie robots in workshops with kids at InnoVEX where I work before
20:40
and it's always lots of fun, not only for the kids but also for the adults. But of course, it's quite an investment to buy a robot like this. And as a last example, I chose the Raspberry Pi, which is not a robot but a very cheap computer, mini computer that runs Linux. But it also provides a set of general purpose
21:03
input-output pins, which allows you to control electronic components for physical computing and explore the Internet of Things. You can use it to learn programming skills, build hardware projects, do home automation, lots of other things. It is only meant for older kids
21:21
starting at 11 or older because you really need to be able to do textual programming for using a Raspberry Pi. And yeah, if you think about it as a computer, it's quite a cheap device. Okay, let's go on with visual programming.
21:42
If you do not know what visual programming is, in visual programming, you have an editor with puzzle pieces or blocks of code, which represent concepts like variables, logical expressions, loops, and so on. And you can plug these blocks together to form a program. So, the user can code
22:01
without having to worry about syntax or the intimidation of using the command line. The first example here is Scratch Junior, which is for very young children already starting at the age of five. It's a simplified version of Scratch, which is one of the most popular visual coding languages.
22:22
Scratch Junior is free. It runs as an app on Android or iOS, and it has very simple blocks that do not contain any text, but just actions like moving forward, backward, turning around. And by plugging these blocks together, you can make the characters in the story move around.
22:43
Then we have Scratch, which was developed by the Scratch Foundation at MIT. It's a free coding community and visual coding interface for kids, and they can create digital stories, games, animations. It's really focused on bringing your projects to life with graphics, sounds, music, and so on.
23:03
And it puts a focus on sharing projects with other children on the Scratch platform. It's meant for kids starting at the age of eight. It says up to 16 on their website, but I know still adults that use it, so I don't think there is an age limit.
23:22
And it's available in lots of languages and you can play around and build really fantastic and cool projects with it. And then there is Blockly. Blockly is also free and has a block-based editor. As you can see here,
23:41
the Blockly editor can represent not only Python code, but also JavaScript, PHP, Lua, or Dart. And you have these interlocking blocks, but also the text form of the code, which you can export directly and use in an editor. It is recommended for kids starting at the age of 10
24:02
because it's a bit more low level, like you can create custom blocks. It's not as kids friendly, I would say, as Scratch to get started with, but more powerful. And it's actually the basis for most of the other visual programming languages. So Scratch is based on Blockly, MakeCode is based on Blockly.
24:22
And I think I mentioned that it was developed by Google. Oh yeah, sorry. And this already concludes the section on visual programming examples. There are also other languages like MakeCode, which I haven't added in detail because of time limitations. But yeah, just check them out
24:41
and see which works best for you. Now, if you want to get started with textual programming, there are also lots of different possibilities. One which I want to present is Code Combat. It's game-based coding. So students learn real Python, JavaScript, or any of the languages listed here
25:01
by playing a game from beginning to end. It is officially, they say you can start at the age of seven. I find this a bit early because it's text-based coding. And I think I would rather start later, ages nine or 10. But they apparently have kids that start that young.
25:22
You do need a subscription plan. So you can use self-paced learning, you can use guided learning with teacher lessons, but you have to pay to use it. However, if your kid is really into gaming, and this might be a very useful tool
25:41
to get them started or hooked up with coding. And yeah, the screenshot is pretty small, but you can see that there is a very, yeah, it becomes more extensive later on in the game. You do have a character that moves through a kind of kingdom.
26:01
Completely different example would be heady. Heady is a gradual programming language. So the idea of a gradual programming language is that when you learn a programming language from the very beginning, it can be overwhelming because you have to learn concepts like loops. You have to learn syntax like quotation marks around brackets at the same time.
26:22
And this is different in heady. So in heady, concepts are first introduced with little syntax and then refined. So each level adds new concepts and syntactic complexity. It is free, it is web-based, and starting at the age of 10, which is the recommended age for textual programming.
26:42
And in the end, kids learn syntactically valid Python, a subset only, not entire Python programming language. But in the beginning, for example, they would learn to print something by just typing print and the text they want to print. They wouldn't have to worry about brackets, quotation marks, or anything like that.
27:02
This is only introduced later, which mimics the way in which we learn a language. And if you're looking for more traditional programming languages for your child to progress onto, you can best do that with age 12 and beyond.
27:21
Recommended would be Python and the languages that the world byte BEP is based on, like HTML, CSS, JavaScript. And there are so many free courses online, for example, from the Raspberry Pi Foundation, also from Udemy. So just start looking and you will definitely find something that works for you.
27:41
Then there are lots of other things, online and on-site classes. For example, there are things like Tinker, a full platform with lots of different coding classes. Similar are Code Wizard and Code.org. Code.org also contains teaching materials if you want to learn how to teach coding.
28:02
And I have two German offers, but I know that similar things exist in other countries. For example, the Heka School, which offers online and on-site classes for children starting at 11, where you do not need prior knowledge and they have courses on web development and Python itself.
28:20
So game development, lots of different things. And then there is also IT for Kids in Germany, which teaches coding in schools, especially in very young age ranges, grades three to six. So if you maybe want to volunteer yourself, you can also look for something like this in your country.
28:42
More ideas would be to check out local events like the Girls' Day, Devoxx for Kids. There is the Global Code Week and often companies offer workshops or things for kids to participate in and learn about coding for free. This also holds for universities where you live and companies.
29:03
And then if your child likes to code with their friends or rather wants to do it in a group, there are coding clubs like Coda Dojo or the Code Club. And yeah, now you will find lots of more robots devices and ideas at the end of the slide deck,
29:21
but you can go and check them out later on. So last section before we go on to the Q&A is how children learn. I took a lot of time to learn about how to learn best in the past years. And lots of these principles also apply to children.
29:40
So I want to share the most important ones. First, regarding the setup. No matter at what age you introduce children to coding, one key element is empowering them to create things that are relevant to them. So they should be allowed to follow their own interests if it's gaming or I don't know art, whatever,
30:01
because above else coding should be a fun activity for kids. So we should make learning entertaining. Then children benefit from having a variety of learning experiences. So for example, do not just sit in front of a screen, but you can also use real life situations to explain concepts like loops.
30:23
Like if you're baking, say, while we prepare the cookie better, we can already preheat the oven. I don't know, like come up with your own examples to make something more everyday life related. And then also very important,
30:40
don't be afraid to switch tracks if your child is not enjoying their work. If you feel like something isn't working, talk to your child, try a different approach. It can take a while to find what works best for you. Then learning sessions. First, a big principle is so-called spaced learning.
31:01
So it is better to distribute learning sessions over time. A single long session is usually less effective than multiple shorter lessons, even if it feels weird in the beginning. Having multiple shorter sessions helps to transfer knowledge to our long-term memory and it prevents cognitive fatigue,
31:20
which is, especially in young children, can be a big problem with learning. So, oh yeah, sorry, this is what I just mentioned. And the second principle would be active recall testing, which means that you shouldn't let them just learn and read something, but ask questions to encourage the active retrieval
31:42
of learned information. This helps the brain to strengthen the learned, to just strengthen the memory. So you can ask them about what they learned, let them explain concepts to you and so on. And then regarding the question of how long learning sessions should be,
32:01
there is no one-size-fits-all answer. We know that attention spans increase with age, so it is important that you observe your child to see if it's still focused and enthusiastic about continuing the session and then decide on a case-by-case basis if you rather keep on going or take a break and continue later on.
32:25
And then how can you support them while they are learning? Really important is be patient. Use words of encouragement to keep them going if they are struggling. This goes hand in hand with encouraging them to try new things. So keep praising your child for trying new things,
32:41
even if they fail. If you want to learn and improve, you have to be brave and embrace challenges, embrace puzzles, difficulties, and just learn that failing is part of learning and is not something that is bad, but actually good because it makes you improve.
33:01
Learn together with your child and show interest. Let them be the experts sometimes. Explain that they've explained something to you. Maybe make learning a family time. You sit down together. You improve your coding skills. They improve their coding skills. Try to find ways to really interact with your children.
33:22
And you should show an interest like when they have a certain project, even if it's not something you are into. It doesn't matter. Let them explain what they're doing, what they are learning. Really engage with them to learn more about the project they are working on.
33:41
So now up is Q&A. I have, I think, three questions prepared because I'm asked about them a lot and then we can use the remaining time for your questions. First of all, should children get started in their native language? I always would say yes. Having access to projects in our native languages
34:02
helps us to foster our confidence and independence. So we become more engaged with the learning process. And of course, we are then also focused on learning one thing, namely coding, and not two things at the same time, a language and coding. Then what if my kid doesn't enjoy coding?
34:22
I think I hinted already that you should not force them to do it. So you should make sure to find an approach that works for you and your child and makes learning fun. So maybe a guided course is what they need or gaming or yeah, just try out different things. You might also just take a break
34:42
and try to get at a later stage. We know that children have different passions or interests at different ages. And if nothing works, then in the end, that's also fine. Not all kids have to like or learn coding. You can also teach computational thinking through other things. And last is about learning disabilities.
35:02
So what if your child has a learning disability like ADHD? There are different tools. There is no one comprehensive resource that lists all of them. So you would have to look into a specific learning disability. But there are offers for the different learning disabilities.
35:23
For example, there is Microsoft Code Jumper, which introduces kids who are blind or low vision to programming. And yeah, also other resources. And now that was it from my side. Thank you so much for listening. Yeah, I'm a bit sad that I cannot be with you to talk about this further.
35:42
But feel free even after the talk to send me a message on Discord or connect on LinkedIn if you're interested in this topic. I really would love to talk to all of you about this. And now I'm curious to hear your questions.
36:03
Yeah, thank you so much Anna for your talk. It was really amazing. And I think people have already started lining up. So you could just go to the nearest microphone and I think we have another five, six minutes for questions. Hello, thank you. How short are the short sessions? What do you recommend?
36:21
Especially for the ages? Yeah, I think that really depends on the age. I do not have specific numbers. Like if you are four years of age, I would not really make it sessions. So not that the kid thinks now is learning time, but try to find a time that works well.
36:43
I know from my own son that sometimes he's really focused and open to doing things. And sometimes he just wants to run around. So at a very early age, I would be very flexible and be open to just stopping after a few minutes. Or if they have really fun, maybe with the BeBot
37:01
and programming it, then you can do it longer. And if they become more focused, maybe also in kindergarten, they learn to sit down and focus on things or go to school. Then you can start with more proper learning sessions. For adults, the recommended time is 25 minutes.
37:20
That's it. So 25 minutes, it's called the Pomodoro Technique, is the period your brain can focus fully before it needs a break. So it should not be longer than that. Of course, be flexible. If you are fully focused, then maybe add some time. But this would be like the upper limit, I would say,
37:42
even for older kids. Thank you. Hello. I have an interesting question, actually. I'm curious about, you mentioned that children should start preferably to learn coding in their own language. But in my case, we are multilingual families.
38:02
What would be the advice here? For example, my son speaks three languages. At the moment, he's mixing them. What would be the best approach here? First of all, maybe I would ask your child, I'm not sure how old they are,
38:21
but what they prefer. If they have a preference to do it, that's also something you can change later on. But if they speak English or they learn English, and it's also the language they learn at school, this is, of course, easiest for them, because then they do not have to switch later on. Most programming languages are in English. Like if you learn Python, then all the coding,
38:43
the for loops, everything that is text is English. So if you have the choice, I would go for English. But if your child has less difficulties in another language, which is more natural to them, then go for that. Thank you very much.
39:01
It's weird, because I can only see your backside when you ask questions. Yeah, so that would be better, actually. So thank you very much for your talk. I enjoyed it a lot. I'm just worried about the one thing about the screen time. So how to secure the balance by age.
39:21
Thanks. Yeah, that's always a huge discussion. I will add a part on this later on. I want to write up all this in a blog post anyway. But yeah, screen time is a big discussion. So first of all, I'm a big fan of not limiting screen time by saying you have one hour, that's it. And just shut down the computer after that.
39:41
But rather try to balance it by maximizing activities that are away from the screen. So finding times or hobbies that make them go outside automatically. Then it's, I think, always good to model the right behavior as a parent.
40:06
So if they use the screen to just, I don't know, fool around, it's different to sitting down and doing a project. So it's really important to distinguish what they are doing and what they're using the screen time for.
40:21
And yeah, I'm not feeling comfortable giving concrete advice because I know that it depends also so much on the child and what they are doing, what they are passionate about. I know that I always had set screen times and it made me just spend the time chatting with my friends
40:41
rather than exploring what is out there on the internet, which was very different for my young brother who could spend as much time on the web as he wanted. And he got into coding much earlier by just being able to explore what was out there. So I find this a really hard question. So I do not have a proper answer,
41:01
but I promise that once I write this up as a blog post, I will dive into it a bit deeper. Okay, thank you very much. And oh yeah, maybe one thing, there are a few screen-free offers. So there are coding games like board games you can play. And this would also be something that you can do as a family activity,
41:21
that you teach them coding by not being in front of a computer, but yeah, like using a board game, for example. Okay, great. Makes sense. Thanks. So I think we have time for like one more question.
41:40
If anyone has anything to ask. Okay, I hope you can see me. Yes, I can see you. Hi. So as a greedy parent, I want my kids to learn both music and programming. What's your advice for time management for this case? Oh, actually there are a few offers
42:01
that are about learning coding with music. And they are also listed in the slide deck. So this is something that you could check out. So you could combine both things. Yeah, maybe I would go with that, that you try to not have two big separate topics, but teach coding through music,
42:21
if that's something they learn anyway. Thank you. Yeah, so my kids are 13 and nine, and they are both sort of really into programming and talented, I would say. But they more like want to just tie it to gaming,
42:40
like manage a gaming server, that's fine. Build some website for their gaming server, like things like that, but just like strictly into gaming. Do you have any tips like to get them into more broad interest because they are not really doing programming, they are more into gaming, you know, more gaming time and so. Yeah, first of all, I think that's fantastic. At least you found something now
43:01
that they are interested in and that they like. Maybe you can use one of the guided courses. I know that some exist that start with gaming and then try to move them to different topics and more like general principles, rather than having to come up with your own approach. So maybe I would try doing that,
43:21
that they have a more guided fashion. Yeah, we had Blender course for one of them. That was a success sort of, but then it's a 3D graphic environment. Oh, cool. Cool, I didn't know that. How is that called? Blender, it's an open source 3D modeling program,
43:41
popular. Blender, okay. Thank you, I will look that up. No, it's not Microsoft, it's open source. It used to be, it was a Dutch company long ago, I think, I think so. Okay. It went bankrupt and got open source. Okay. Well, it's not any kid or learning oriented, it's just a professional tool,
44:01
but they have courses even for kids in some cases, or teenagers, teenagers maybe. Cool. I think, yeah, that's it. Thank you so much, Anna, for your session. It was really amazing. Thank you. Enjoy the rest of the conference.