Jay Completed Python Intermediate I @ DaVinci Innovation Lab

Date:  June 10, 2018

For a P6 student, you can start to train them early to do proper presentation.

I am glad that Da Vinci Innovation Lab help me to train my kid to do this.


Jay has been working hard on this presentation.  He spent almost 3 weeks in preparing this.  From forming the ideas, writing his Power Point, to rehearsals.


He spent almost 2 months (5 hours each week) building the robot from scratch, writing the codes for it.

This is the version 2 robot.  The version 1 is a Sumo robot concept, but it does not work because basically Lego Mindstorms motor is not powerful enough to lift up another robot that has substantial weight.

So, he decided to abandon his Sumo robot, keep the lifting arms and changing it to a Cargo Collector robot.  Which is nice too.


In Da Vinci Innovation Lab, they integrated the Blocky visual programming into Python programming which interface with Lego Mindstorms EV3.

The kids using the blocky to drag and drop the objects and configure the objects to do whatever things they want the robot to do.  Of course, you need to write the logics too.

What I like about it, is the real python codes are shown just beside the visual blocky codes.

The kids soon found out that it is much easier to read the Pythons codes when you need to do the troubleshooting.  Instead of staring at the blocky blocks and wonder what went wrong with the codes.

I think this is useful.  Kids usually are exposed to visual programming at young age, and I think they might be afraid of doing text coding, such as Python.  But if they already get used to reading the codes, then, in future, they will know how to write the codes.

OK, since, this is a proper presentations, the students are the main audience.  And of course, parents of the students are standing behind.  So, we have real audience here.


Also, the presentation will be made to Video, and show it to the Hong Kong, Korea and China branch.


This one, I teach him one.  (must take the credit here, hahaha)

I told him, instead of very boringly showing all the codes, why don’t you convert these codes into flow charts and explain it in one slide so that every got an idea of what the robot is going to do?  And he listen, and produce the flowchart the next day.

And hey, P6 students learning how to draw mind map, flow charts, that is pretty advanced right?  I don’t think in School environment, the teachers can teach this on 1-to-1 basis.  Only in these enrichment classes you get to do so.


Because there are parents who are non-programmers around, so, Jay will have to use layman terms to explain his codes.


Sometimes, If you do a real demo, and it does not meet your expectation, then, the video demonstrations come into rescue.


The key and juice of a good presentation is to get the audience interest in what you are selling.  And judging from the focus from these students and parents, I think Jay has done pretty well here.  In getting attention…


Of course, he will have to share the experience in building this robot.  What works what doesn’t.


It is optional for kids to do the robot using LDD design.  But Jay take up the challenge and try to design the robot using Lego Designing tools.

This is 3D modeling.  Something like AutoCAD.  But it is Lego Bricks.


The trainers are happy.


This is a good big smile.  This is a sign of relief.  Indicating, it has come to the end.  All nervous cells has diminished.


After some questions answering, it is time to give that boy a certificates.

This certificates is quite precious.  It can be used in applying for DSA for some secondary schools.


Good job Jay!


May be 2-3 months later, we will come back and focus on Kay Kay.  He will be one of the youngest kid who completed Intermediate I Python course.  And he too, need to present.  but I think he will do a “kid’s style” presentation.


Here is the full length of the presentation.


Final thoughts.

I think learning programming is good for kids.

Visual programming such as Scratch, Blocky, Lego’s EV3 programming are good for young kids so that they know “Games are written by human, Games are written using programming language, Scratch/Blocky/Ev3 is a programming language.

However, as they grow older, they need to be aware that the REAL programming language is C, C++ etc.  And before you can learn the REAL programming, you can do the text coding using Python, Perls, which we call Interpreter programming language.  Because such language as Python are written very close to English forms, so to make it easier for students to learn.

So, if you can expose to kids Python as early as possible, it will be good.  As when they go into secondary school, the programming subject can be an easy and fun course for them to do.

Leave a Reply