WEBVTT

00:00:24.925 --> 00:00:27.233
<v Ingo>Yeah i'm here now on the.

00:00:27.893 --> 00:00:31.273
<v Pascal>Open source summit and with me is pascal.

00:00:31.273 --> 00:00:32.543
<v Ingo>Van damme and.

00:00:32.543 --> 00:00:39.513
<v Pascal>You invented something or created something called turtle growth and for me,

00:00:40.073 --> 00:00:45.093
<v Pascal>or all the people who never heard turtle growth what what is it.

00:00:45.093 --> 00:00:46.823
<v Ingo>What can i create with turtle.

00:00:46.823 --> 00:00:50.373
<v Pascal>Growth okay well it actually is it's a development environment in this case

00:00:50.373 --> 00:00:55.528
<v Pascal>for children to learn in this case how to program in this case in a way,

00:00:56.137 --> 00:01:00.203
<v Pascal>that is really native to them and that kind of stuff actually yeah in the program

00:01:00.203 --> 00:01:02.790
<v Pascal>it's called turtle growth it's doing something with turtles

00:01:03.213 --> 00:01:07.623
<v Pascal>so actually in this case it's an implementation of the logo program language

00:01:07.623 --> 00:01:11.873
<v Pascal>and the program language logo of course didn't invent it myself but it's actually

00:01:11.873 --> 00:01:14.855
<v Pascal>there from the early early 60s and that kind of stuff

00:01:15.279 --> 00:01:19.003
<v Pascal>actually there were some really great minds actually there both on the computer

00:01:19.003 --> 00:01:22.733
<v Pascal>science level as well as on the pedagogic level like for example in this case

00:01:22.733 --> 00:01:24.157
<v Pascal>a great PRJ and that kind of stuff

00:01:24.528 --> 00:01:28.723
<v Pascal>and they acted for the cake what's actually the best way in this case to have

00:01:28.723 --> 00:01:32.453
<v Pascal>kids learn and that kind of stuff and he actually found out that kids actually

00:01:32.453 --> 00:01:35.291
<v Pascal>learn the best when he actually able in this case to look at their peers

00:01:35.645 --> 00:01:39.183
<v Pascal>and see what they do and actually they can make things together and actually

00:01:39.183 --> 00:01:41.694
<v Pascal>build that way it's called it constructionism

00:01:42.129 --> 00:01:45.013
<v Pascal>and actually the guys actually there were three people in this case building

00:01:45.013 --> 00:01:49.123
<v Pascal>and developing the language logo and they actually said okay we also need to

00:01:49.123 --> 00:01:53.093
<v Pascal>have this one in this case underlying or language and that kind of stuff so

00:01:53.093 --> 00:01:54.639
<v Pascal>what it actually is you have a turtle.

00:01:55.086 --> 00:01:58.627
<v Pascal>And you can give that turtle actually all kind of commands. And you can first

00:01:58.627 --> 00:02:01.378
<v Pascal>do it nicely imperative in that kind. You just say to the turtle,

00:02:01.750 --> 00:02:05.558
<v Pascal>go forward, turn to the right, turn to the left, and that kind of stuff.

00:02:05.744 --> 00:02:08.547
<v Pascal>And later on, you can actually teach the turtle really to do things.

00:02:08.547 --> 00:02:13.894
<v Pascal>For example, draw a square, draw a triangle, draw a spiral, and that kind of stuff.

00:02:14.196 --> 00:02:17.538
<v Pascal>And the nice thing is actually in our environment, in the Turtle Grove environment,

00:02:17.880 --> 00:02:21.099
<v Pascal>kids can actually see what the other kids actually are creating.

00:02:21.360 --> 00:02:24.334
<v Pascal>And even, for example, in the true open source sense, actually,

00:02:24.641 --> 00:02:27.847
<v Pascal>they can for example share their code with the other kids in that kind and that

00:02:27.847 --> 00:02:32.647
<v Pascal>way they can actually in this case build together and that kind of stuff really construction,

00:02:33.773 --> 00:02:40.427
<v Pascal>okay but when i was young we learned pascal why not pascal is is there.

00:02:40.807 --> 00:02:43.084
<v Ingo>I don't know or nowadays scratch why.

00:02:43.206 --> 00:02:46.567
<v Pascal>Yeah yeah that's actually quite nice because actually pascal is a great language

00:02:46.987 --> 00:02:53.087
<v Pascal>it's in the name uh yeah and actually in my case actually also you learned ucsd

00:02:53.087 --> 00:02:55.027
<v Pascal>pascal before I actually learned another language.

00:02:55.447 --> 00:02:57.937
<v Pascal>And in my case, I actually learned Logo actually because it was,

00:02:57.937 --> 00:03:02.027
<v Pascal>in this case, mandatory when I actually was, in this case, at the high school and that kind of stuff.

00:03:03.107 --> 00:03:06.027
<v Pascal>Well, of course, Pascal is a nice language. Python is a nice language.

00:03:06.387 --> 00:03:09.187
<v Pascal>The nice thing is you're actually mentioning Scratch, and Scratch is actually

00:03:09.187 --> 00:03:11.487
<v Pascal>a derivative in this case with Logo and that kind of stuff.

00:03:11.487 --> 00:03:11.982
<v Ingo>Oh, okay.

00:03:12.872 --> 00:03:16.894
<v Pascal>Why in this case logo and i go quite simple it is something that,

00:03:17.374 --> 00:03:21.284
<v Pascal>really helps kids in this case also for example they can actually in this case

00:03:21.284 --> 00:03:25.154
<v Pascal>mimic the program language with their own body and that kind of stuff now what

00:03:25.154 --> 00:03:28.864
<v Pascal>you for example can do and it was in this case also in the presentation that

00:03:28.864 --> 00:03:30.354
<v Pascal>you just witnessed and that kind of stuff,

00:03:30.874 --> 00:03:34.424
<v Pascal>a colleague of mine he's actually doing stuff in this case for open source africa

00:03:34.424 --> 00:03:37.954
<v Pascal>and we have a lot of schools there these schools cannot afford themselves in

00:03:37.954 --> 00:03:42.034
<v Pascal>this case computers and that kind of stuff we actually have a game mate and

00:03:42.034 --> 00:03:44.714
<v Pascal>some physical gaming where actually one of the students for example,

00:03:45.274 --> 00:03:49.364
<v Pascal>plays the turtle and that kind of stuff while other students or the teacher

00:03:49.364 --> 00:03:52.914
<v Pascal>for example can command him to do things for example and also that way in this

00:03:52.914 --> 00:03:55.134
<v Pascal>case learn programming it's actually a little bit more,

00:03:55.634 --> 00:03:59.434
<v Pascal>you can reflect the program language in your body and if the turtle actually

00:03:59.434 --> 00:04:04.044
<v Pascal>says forwards for example 100 hey you actually said for example 10 step forwards

00:04:04.044 --> 00:04:06.782
<v Pascal>and that kind of stuff the turtle for example is being commanded

00:04:07.147 --> 00:04:11.304
<v Pascal>draw to the right 90 degrees you draw to the right 90 degrees and from From

00:04:11.304 --> 00:04:13.392
<v Pascal>that on, you do the next steps and that kind of stuff.

00:04:13.770 --> 00:04:16.544
<v Pascal>If you're looking at a program language like Pascal, it's, of course,

00:04:16.544 --> 00:04:18.814
<v Pascal>really nice. It's an imperative language, et cetera.

00:04:19.220 --> 00:04:23.171
<v Pascal>But that's way bigger abstraction than actually the turtle is.

00:04:23.843 --> 00:04:26.916
<v Ingo>But i think when i was in school we.

00:04:27.496 --> 00:04:28.866
<v Pascal>Did learn it with pascal.

00:04:28.866 --> 00:04:32.126
<v Ingo>And there was a thing called nikki the robot.

00:04:32.126 --> 00:04:33.183
<v Pascal>I mean it's.

00:04:33.601 --> 00:04:34.926
<v Ingo>The same thing i think.

00:04:34.926 --> 00:04:39.786
<v Pascal>Yeah you have in definitely in in some program languages like python and and

00:04:39.786 --> 00:04:45.376
<v Pascal>definitely also go etc uh you have these these total libraries etc so they're definitely there etc,

00:04:46.156 --> 00:04:49.216
<v Pascal>but this is completely in this case here you don't need to know in this case

00:04:49.216 --> 00:04:53.136
<v Pascal>another language you don't need to import libraries and that kind It's just

00:04:53.136 --> 00:04:56.270
<v Pascal>there, you just log in and that kind of stuff, and you can play with it.

00:04:57.210 --> 00:05:03.003
<v Ingo>But nowadays kids have something like Scratch or Minecraft for instance.

00:05:03.259 --> 00:05:05.576
<v Ingo>So why do we need Turtle Grove?

00:05:06.236 --> 00:05:07.676
<v Pascal>Good question. Of course Scratch

00:05:07.676 --> 00:05:10.856
<v Pascal>in this case is nice with all kinds of icons and that kind of stuff.

00:05:11.356 --> 00:05:16.036
<v Pascal>Even one of my youngest kids actually was on Lego Mindstorms where you also have these icons.

00:05:16.759 --> 00:05:19.656
<v Pascal>Also, by the way, they're derivative in this case of Logo etc.

00:05:20.488 --> 00:05:25.557
<v Pascal>This is, for me, what I see, this is a nice, in this case, mix between both worlds.

00:05:25.937 --> 00:05:30.977
<v Pascal>You do not have, like with Python and Pascal, that you need to read or actually

00:05:30.977 --> 00:05:34.239
<v Pascal>write a lot of prose actually to do something with even, for example,

00:05:34.662 --> 00:05:36.944
<v Pascal>English that you are barely, in this case, managing.

00:05:37.350 --> 00:05:41.007
<v Pascal>And you do not have the other, actually, let's say, part where actually the

00:05:41.007 --> 00:05:44.417
<v Pascal>other side where you actually, in this case, have just icons actually that you

00:05:44.417 --> 00:05:45.757
<v Pascal>are piecing together, etc.

00:05:46.295 --> 00:05:49.617
<v Pascal>So it's a little bit more of the old world and a little bit of the new world.

00:05:49.617 --> 00:05:54.597
<v Pascal>And it's easy accessible and that kind of stuff it lives really in the yeah

00:05:54.597 --> 00:05:58.347
<v Pascal>let's say that the mind and the fantasy of kids and that kind of stuff.

00:05:59.257 --> 00:06:01.727
<v Ingo>Yeah so you need to type more than for instance in.

00:06:01.727 --> 00:06:05.947
<v Pascal>Scratch yeah yeah definitely it's uh yeah more in this case nicely typing less

00:06:05.947 --> 00:06:12.037
<v Pascal>in this case with the mouse and that kind of stuff so okay why is open source for.

00:06:12.717 --> 00:06:13.497
<v Ingo>For instance for.

00:06:13.997 --> 00:06:15.397
<v Pascal>Turtle growth so.

00:06:15.877 --> 00:06:16.877
<v Ingo>Important what do you.

00:06:16.877 --> 00:06:22.137
<v Pascal>Think it's important to actually have this available for as much children actually as possible.

00:06:22.617 --> 00:06:26.757
<v Pascal>So the main reason actually why, actually there are a lot of reasons actually

00:06:26.757 --> 00:06:29.405
<v Pascal>why I developed in that kind of stuff. One was actually quite simple.

00:06:29.974 --> 00:06:33.947
<v Pascal>My youngest actually, I had to homeschool him for two years in that kind of

00:06:33.947 --> 00:06:35.495
<v Pascal>stuff. He asked in this case to,

00:06:35.988 --> 00:06:38.757
<v Pascal>Yeah, teach them how to program and that kind of stuff. And I needed to have

00:06:38.757 --> 00:06:43.057
<v Pascal>something that really, in this case, would fit in this world and that kind of stuff.

00:06:43.417 --> 00:06:47.937
<v Pascal>And the other part is we have these projects, in this case, in Africa and that

00:06:47.937 --> 00:06:51.057
<v Pascal>kind of stuff, where also kids would like to program that kind of stuff.

00:06:51.057 --> 00:06:54.317
<v Pascal>We actually had, in this case, also in this conference, one of our colleagues

00:06:54.317 --> 00:06:57.437
<v Pascal>from Africa actually came to us. And my colleague actually does a lot,

00:06:57.437 --> 00:06:59.347
<v Pascal>in this case, of trainings there.

00:06:59.377 --> 00:07:03.597
<v Pascal>And he really was happy and grateful for him. but he said okay and what i regret

00:07:03.597 --> 00:07:09.226
<v Pascal>is that i only actually came in contact with computer science when i actually was 23 24

00:07:09.435 --> 00:07:12.337
<v Pascal>what i would like to have in this case that i could actually have this early

00:07:12.337 --> 00:07:15.344
<v Pascal>and that kind of stuff for my kids and the kids to come and that kind of stuff

00:07:15.669 --> 00:07:19.177
<v Pascal>that would be great and actually making it open source making it available so

00:07:19.177 --> 00:07:21.497
<v Pascal>everyone would like it you can actually host it locally,

00:07:21.977 --> 00:07:25.507
<v Pascal>you can host it in this case and use our hosted services and that kind of all

00:07:25.507 --> 00:07:29.135
<v Pascal>these things are possible it's just it's from the community and for the community.

00:07:29.954 --> 00:07:32.020
<v Ingo>And you also made a point that that it.

00:07:32.363 --> 00:07:35.377
<v Pascal>It's trying to teach kids.

00:07:35.677 --> 00:07:40.017
<v Ingo>How open source works right so they learn how how to do open.

00:07:40.017 --> 00:07:44.407
<v Pascal>Source exactly how to do open source and so the action is can create a program

00:07:44.407 --> 00:07:48.517
<v Pascal>and if for example then of course they are the first one to decide whether or

00:07:48.517 --> 00:07:51.487
<v Pascal>not we would like to do that but if they would like to share their code for

00:07:51.487 --> 00:07:54.037
<v Pascal>example with other kids they can actually push a button,

00:07:54.657 --> 00:07:57.157
<v Pascal>and the other kids if you could actually see on the screen and actually what

00:07:57.157 --> 00:08:00.007
<v Pascal>he's doing is so kind of like that i would like to improve on that i would like

00:08:00.007 --> 00:08:04.737
<v Pascal>to get with you then he actually can copy it within his in this case work workshop.

00:08:05.592 --> 00:08:07.827
<v Ingo>But i can also download my code and.

00:08:07.954 --> 00:08:11.447
<v Pascal>Yeah you can download it save it if you would like to yeah but we're even playing

00:08:11.447 --> 00:08:16.097
<v Pascal>in this case with doing some github in this case for kids github or something.

00:08:18.117 --> 00:08:22.219
<v Ingo>Okay so you run this turtle.

00:08:23.117 --> 00:08:23.747
<v Pascal>For everyone.

00:08:23.747 --> 00:08:25.247
<v Ingo>For the whole world, right?

00:08:25.247 --> 00:08:25.637
<v Pascal>Yeah.

00:08:26.433 --> 00:08:29.347
<v Ingo>But I could also self-host it.

00:08:29.347 --> 00:08:32.577
<v Pascal>You could also self-host it. We are actually already some people actually asking,

00:08:32.577 --> 00:08:35.205
<v Pascal>can we actually host it, for example, for our schools specifically?

00:08:35.677 --> 00:08:38.087
<v Pascal>Because we would like to have, in this case, of course, a little bit of control

00:08:38.087 --> 00:08:39.517
<v Pascal>and that kind of all is possible.

00:08:39.517 --> 00:08:39.907
<v Ingo>Mm-hmm.

00:08:40.447 --> 00:08:42.273
<v Ingo>Your version is on kubernetes.

00:08:42.598 --> 00:08:46.747
<v Pascal>A in a container and we can run over potman if you'd like to if you'd like to

00:08:46.747 --> 00:08:50.817
<v Pascal>have it run in this case a more highly available orchestrated it runs on kubernetes

00:08:50.817 --> 00:08:52.961
<v Pascal>etc it runs on very small hardware,

00:08:53.506 --> 00:08:56.673
<v Pascal>we have it run in this case on raspberry pi force and that kind of stuff yeah

00:08:56.969 --> 00:09:03.587
<v Pascal>so it's easy to to self-host yeah for and then to get people kids together on

00:09:03.587 --> 00:09:06.657
<v Pascal>this platform that they can yeah teach.

00:09:07.077 --> 00:09:09.137
<v Ingo>Other people or teachers teach.

00:09:10.417 --> 00:09:18.137
<v Pascal>Themselves or among themselves yes but should i self-host it or do you do you say okay there's plenty,

00:09:18.917 --> 00:09:23.117
<v Pascal>yeah it depends on just this what you want i can fully understand that again

00:09:23.457 --> 00:09:28.162
<v Pascal>that the let's say open internet world is a scary world definitely also for kids and that kind of,

00:09:28.707 --> 00:09:31.907
<v Pascal>stuff so you actually have it just in your closed environment in this case at

00:09:31.907 --> 00:09:34.117
<v Pascal>school for example so that's a good thing you,

00:09:35.017 --> 00:09:39.037
<v Pascal>can check everything and that kind of stuff if for example here like in africa

00:09:39.037 --> 00:09:42.817
<v Pascal>for example yeah quite simple you may be happy actually if kids have something,

00:09:43.317 --> 00:09:46.987
<v Pascal>like a tablet and that kind most times they don't even have that and that kind

00:09:46.987 --> 00:09:50.689
<v Pascal>of stuff so actually can you make use in this case of the yeah the hosted one.

00:09:51.747 --> 00:09:54.242
<v Ingo>What's next for Turtle Grove? What are your next plans?

00:09:54.387 --> 00:09:57.752
<v Pascal>Next plan is actually to actually improve on the language itself,

00:09:57.752 --> 00:10:01.231
<v Pascal>because actually still missing some stuff to be fully local compatible. There's one.

00:10:01.794 --> 00:10:05.142
<v Pascal>Of course, I also would like to improve in this case about that whole constructionism.

00:10:05.142 --> 00:10:10.292
<v Pascal>So we actually have now a shared campus where actually kids can actually work

00:10:10.292 --> 00:10:11.450
<v Pascal>together on and that kind of stuff.

00:10:11.851 --> 00:10:14.242
<v Pascal>And I actually would like to actually enhance that experience.

00:10:14.372 --> 00:10:18.022
<v Pascal>We're actually looking at some puzzles that we can do where actually some turtles

00:10:18.022 --> 00:10:19.222
<v Pascal>can actually can hide themselves.

00:10:19.222 --> 00:10:22.752
<v Pascal>And then programmatically you can find out where they actually are doing some

00:10:22.752 --> 00:10:26.212
<v Pascal>turtle ballet for example that you do not control one turtle but actually multiple

00:10:26.212 --> 00:10:28.072
<v Pascal>of that kind of stuff that kind of stuff.

00:10:28.072 --> 00:10:36.932
<v Ingo>So if i am a parent or a teacher and and like to use total growth where do i start.

00:10:37.338 --> 00:10:39.822
<v Pascal>Now okay if you would like to try it out it's the first thing you have to go

00:10:39.822 --> 00:10:42.712
<v Pascal>to turtlegrowth.net and that kind of stuff just in this case create yourself

00:10:42.712 --> 00:10:46.112
<v Pascal>a room log in and that kind of stuff play a little bit with it and etc,

00:10:46.832 --> 00:10:51.932
<v Pascal>we do have extensive courseware it's almost over 195 in this case pages okay

00:10:51.932 --> 00:10:56.492
<v Pascal>uh the environment itself is actually in six languages in that kind of swedish

00:10:56.492 --> 00:10:59.055
<v Pascal>english french spanish and german

00:10:59.496 --> 00:11:04.502
<v Pascal>and dutch of course and actually we're also trying to work with and of course

00:11:04.502 --> 00:11:08.452
<v Pascal>nowadays in this case with ai that isn't that difficult actually to pull the

00:11:08.452 --> 00:11:10.912
<v Pascal>whole in this case english in this case courseware,

00:11:11.472 --> 00:11:14.702
<v Pascal>through the translator and actually have that also in this case in these languages

00:11:14.702 --> 00:11:18.212
<v Pascal>and actually all to add more languages to it but still.

00:11:18.212 --> 00:11:23.262
<v Ingo>In the ai world we we need to teach our kids to become a programmer or at.

00:11:23.262 --> 00:11:28.112
<v Pascal>Least yeah no definitely the whole idea still might change in three years but

00:11:28.432 --> 00:11:30.260
<v Pascal>for now quite simple with ai,

00:11:30.783 --> 00:11:34.530
<v Pascal>You need to be the one commanding AI, because actually that's the same thing

00:11:34.530 --> 00:11:35.739
<v Pascal>you're commanding the turtle.

00:11:36.667 --> 00:11:39.020
<v Pascal>You're commanding the AI. So much difference there isn't.

00:11:41.280 --> 00:11:44.490
<v Pascal>The turtle will do what you say it to do, not what you want it to do.

00:11:44.490 --> 00:11:45.820
<v Pascal>That's the same thing with AI.

00:11:46.440 --> 00:11:47.940
<v Ingo>But it's still deterministic.

00:11:48.240 --> 00:11:51.412
<v Pascal>Yeah, exactly. It's more deterministic than AI, definitely.

00:11:52.460 --> 00:12:00.830
<v Ingo>Okay, so with the course material available, you showed some PDFs where a kid can go step up.

00:12:00.830 --> 00:12:04.010
<v Pascal>By step step by step there's even also in the environment actually there's an

00:12:04.010 --> 00:12:05.270
<v Pascal>online tutorial and that kind

00:12:05.270 --> 00:12:08.895
<v Pascal>of stuff it's actually in this case also checking if the kid actually does

00:12:09.301 --> 00:12:12.570
<v Pascal>what it says it will actually in this case when he finds out that it's not quite

00:12:12.570 --> 00:12:15.483
<v Pascal>there for example it actually gives some hints and that kind of stuff and actually

00:12:15.820 --> 00:12:19.591
<v Pascal>with all the let's say samples and inspirations and that kind of stuff it can

00:12:19.748 --> 00:12:23.324
<v Pascal>copy it back in this case to its work place and that kind of stuff so.

00:12:23.766 --> 00:12:30.173
<v Ingo>When i find a bug or like to help how do i reach you or what should i do.

00:12:30.504 --> 00:12:33.310
<v Pascal>Yeah, we are the Mastodon account. You can also find us, of course,

00:12:33.310 --> 00:12:34.520
<v Pascal>on LinkedIn and that kind of stuff.

00:12:35.060 --> 00:12:37.920
<v Pascal>On GitHub, in this case, definitely in this case, all the, let's say,

00:12:37.920 --> 00:12:39.741
<v Pascal>material in that kind of PDFs and that kind of stuff.

00:12:40.112 --> 00:12:44.185
<v Pascal>We're currently in the process of, because we're actually having our own, in this case, GitLab.

00:12:44.585 --> 00:12:48.190
<v Pascal>And we're still finding out in this case, because we're not super happy in this

00:12:48.190 --> 00:12:51.116
<v Pascal>case with GitHub and that kind of stuff. We might go to CodeBag, for example.

00:12:51.337 --> 00:12:53.943
<v Pascal>We're deciding on that one and actually, you know, we'll push the whole code

00:12:54.256 --> 00:12:55.632
<v Pascal>repository also to that.

00:12:56.114 --> 00:13:01.650
<v Ingo>And is there a special i don't know feature or something you would say at the

00:13:01.650 --> 00:13:03.498
<v Ingo>moment you need help with.

00:13:03.990 --> 00:13:08.220
<v Pascal>Uh definitely in this case with more people in this case we need more trainers

00:13:08.220 --> 00:13:10.088
<v Pascal>so train the trainers that that's a good point,

00:13:10.585 --> 00:13:14.300
<v Pascal>again people actually translating the work that we cannot do automatically or

00:13:14.300 --> 00:13:17.870
<v Pascal>definitely yeah if i prefer i would like to have human translators because they

00:13:17.870 --> 00:13:22.101
<v Pascal>also can use more git-like language and that kind of stuff that's also what we did with the Dutch and,

00:13:22.980 --> 00:13:25.520
<v Pascal>the English and the German were actually there ourselves, etc.

00:13:27.647 --> 00:13:33.460
<v Ingo>Okay. Thanks a lot. Cool project, Pascal, that you told us what Turtle Grove is, what it does.

00:13:33.860 --> 00:13:41.098
<v Ingo>And I wish you the best of luck for that many, many people learn programming with Turtle Grove.

00:13:41.098 --> 00:13:42.575
<v Pascal>Thank you very much for having me.

