 Fy frithgwrdd, wrth gwrs, rwy'n dechreu i'n gweithredu'r ysdîr i eu bodi gydweithiadau a'r gweithredu, ac mae'n ymwaid gyda cyfnodol yn gweithio cael ymddiel iawn o g advice. Fod eich gydweithio sefydliadau, antheraposyn, eraill, ac ymwhech. Mae'n gweithredu â aeth. shelters, dy lle, ymwhech, dinarn, rydyn a'r program. A rwy'n ddweud hynny, yr edrych yn y proses sydd wedi'u gweld i'r ysgrifennu ac yn ymdweud o'r ffwllys i'r llach o'r ystod. A rydyn ni'n dechrau i'r ysgrifennu gyda'r amser o'r cymdeithasol o'r cymdeithasol o'r cymdeithasol. Felly, rydyn ni'n ddweud ystod o'r ysgrifennu a'r cymdeithio'r cymdeithasol o'r cymdeithasol o'r cymdeithio o'r cymdeithio'r cymdeithio i ddim yn ymdweithio cymdeithio i'r ffwllysau llach o'r cymdeithio ac rydyn ni'n ddweud sy'n ddweud drws i'n ddweud yr ysgrifennu a'r ysgrifennu i'w ddim yn ddweud i y prosesio hynny. Felly, rydyn ni'n dechrau ymdweithio i ddweud o'r cymdeithasol o'r cymdeithasol o'r llach o'r ysgrifennu i'r ysgrifennu a'r amser o'r ysgrifennu i ddweud o'r cymdeithio Ieithi gyd bydd eich wybod o'r llwyddon cyffredinol yn gweithio'r sgwrdd hefyd, ac'r llwyffydd ddefnyddiaeth yn cael ei anodd gyfweld i gael i ddweud wahanol ysgrifennwyd yn cyntafol o'r grwp sydd yma ym 7 oed 11 oed yn 12 oed yn 13 oed, a'r 18 oed yn oed, ac mae'r 110 oed yn ôl. I would be teaching this newly introduced subject to school students not only in this particular school but it's a newly introduced subject in the nation and also a newly introduced subject to the world. A number of people had resigned even before starting the job and I was under no illusion that the job would be arduous, frustrating, backbreaking, political with heavy red tape. However I am of the belief that problems are important to solve and they should not be insurmountable. So the challenges of teaching computer science and computer programming are very well acknowledged. In The Economist there has been an article which has said, the subject is so young that teachers and curriculum designers have little pedagogical research to guide them. And Sardier Nadel, the CEO of Microsoft recently said in an interview, the fact that most curricula in schools still don't recognize computer science like they do maths or physics is just crazy. Now as mentioned we should not think of these challenges as insurmountable. We are after all dealing with computers and technology which is one of the world's most dominant and powerful forces in the current era. And also the world's positive disruptive force, technological force, it completely overturning centuries old thinking and approaches in the way we tackle problems in the scientific, artistic, commercial worlds and replacing them with radical, innovative and more successful approaches. So in turn I thought we can think of the teacher of computer programming as another positive disruptive force and approach such a venture in the spirit of an entrepreneur with a mindset of freedom and independence which is to be welcomed and follow in the footsteps of our heroes. So an entrepreneur he requires a business plan with a vision and a mission objectives, methodology, unique selling points or USPs and an outcome so we too can mimic that model. So let us look at what we have under each blurb. Vision and mission. What vision should we adopt as an educator? What vision should we transmit to the young people and the students of the next generation? We need a vision which everyone can buy into and I believe we are privileged in this subject to formulate a lofty vision and how many other subjects can say the same. So the vision is to create the next generation of Bill Gates, Steve Jobs and Elon Musk. Now we shall see later how this vision appeals tremendously to young people and it's not just boys, it's girls as well in equal measure. Let us look at the unique selling points or USPs, our sales and marketing angle. Now we have to take note of the fact that this subject of computer programming is competing against other more established disciplines with long and time honoured traditions such as mathematics, Latin, history. We must also be mindful of the fact that there are a number of stakeholders in this, the educators, the parents, the children. So the key element here is to generate USPs which persuade all stakeholder groups and surprisingly enough their interests can actually be compete against one another. I'm going to leave you to guess which group is the most enthusiastic and embraces this the most. So the first USP is that computers are ubiquitous and prevalent in most if not all sectors of our modern society. Applications involve medical research, weather forecasting, robotic surgery, space exploration and in UK we had the astronaut Tim Peake going to speak, e-commerce, scientific research such as the experiments carried out in CERN where the world wide web comes from and it was Tim Berners-Lee from the UK who developed that and that appeals tremendously to our young people, especially in the UK, driverless cars etc etc. So computer science is now regarded as one of the leading disciplines of the 21st century and many of our children were surprised at this. And indeed if computers hadn't been invented science may have ground to complete halt in the second half of the 20th century say some. So as a consequence of this coding or computer programming is now regarded as many by an essential skill for any aspiring ambitious self-respecting young person in an aspiring nation and it has been dubbed the fourth R along with reading, writing, arithmetic and computer programming. And in recognition of this new status and huge significance of computer programming governments worldwide have launched initiatives to have it taught in schools starting from the beginning of the school career in kindergarten through to junior school all the way through to secondary school and the regions in red are where the intention is that computer programming is taught from kindergarten through to junior school to secondary school and we can see that the nations include all continents America, Asia, Europe etc. So this USP appeals to the educational community. Now the second USP is the major role that technology plays in the world economy. The market capitalisation of the Fang stocks, Facebook, Amazon, Apple, Netflix, Alphabet is bigger than the economy of some countries. Indeed if it was a nation it would be the fifth richest nation in the world and it would be eligible for entry into the G20. The Fang stocks are in red. Now this was devised to be appealing to the parents and guardians who can then be most relieved to hear that their offspring are studying a subject which decent organisations will be waiting eagerly for their offspring services. But when I showed it to the children they all gasped in absolute delight and glee that they were actually studying something of such value and enormity. And the third USP is the financial rewards for studying it and it should be noted that the top 100 richest people in the world a substantial proportion of them are involved with computers. 20%, probably 1 in 5. And when we look at the 10 richest people in the world substantially more are involved in technology and we have Jeff Bezos of Amazon, Bill Gates of Microsoft, Mark Zuckerberg of Facebook, Larry Ellison of Oracle. And this really did capture the imagination of the young people because they thought they can also join this club and boys and girls as well. So how do we approach the teaching of it? Well, as a first port of call we can look at the national curriculum. Now most nations in the world have a national curriculum or something equivalent to it. In the UK we have a national curriculum for every subject. This is a document detailing what should be taught in every subject and computer science also has a national curriculum. But after reading the document and re-reading it and re-reading it and a great deal of soul searching it was decided that the UK national curriculum in this subject although laudable in its intentions with very few design for it. Faults and process faults would be used as a one of a number of guides. So the national curriculum will act as one of many guides but not be taken as the definitive authority on the teaching of the subject in schools. What about resources such as textbooks? Well a decision was made to equip all students with a textbook and exercise book as note was taken of the fact that most serious academic subjects have both textbooks and exercise books associated with them. Now it might surprise people to know it's not uncommon to operate in this subject at the school level without textbook and exercise book. And this has not been unnoticed by the students who comment on this informally. Now unfortunately no appropriate textbooks were available for the subjects year groups 7 to 9 that's 11 to 14. So worksheets, a website and a YouTube channel which I've entitled Lil Anonymous were all constructed to develop the resource space to be used by the students. So I've constructed a YouTube channel entitled Lil Anonymous which currently contains over 70 videos for these high school children who want to learn about computer science and computer programming. Containing 12 videos in total about Python programming so far and I have discovered that my university lecture of friends are also using them too. There's a website and YouTube video and 65 subscribers so far. You are welcome to subscribe. So how should we start teaching school children computer programming? Let us now be more specific. How should we perhaps pitch the lessons to year 7 students, those aged 11 and 12, those at the start of their secondary school career? In particular should we be teaching these drag and drop languages such as Scratch as a first teaching language? To find answers to these questions a study was made of what the young students learn in other subjects at this age and note was taken of the fact that it's not unusual for these students to in maths solve simultaneous equations. In English to analyse poetry such as Radaw of Kiplins if a highly esteemed poem and English literature they study plays such as Midsummer Night's Dream which is by William Shakespeare and in geography they are being asked to write essays at the moment on the advantages and disadvantages of Brexit. So from this information we or I surmise that young people at this age are comfortable with being able to manipulate symbols and deal with sophisticated text and therefore concluded they should be able to cope well with a textual programming language perhaps such as Python such as the first programming language. So a decision was made to choose Python as their first programming language and the decision was made on the basis because I wanted to teach a programming language which is in demand by the employers of today out of the dozen choices. And at the time of writing Python was the most widely used teaching language worldwide in schools and universities. It's also the most widely used commercial language used by the likes of Google and the children really like this. And there is a plethora of resources and many books being written on the subject which means that the language is a strong support network and has a huge quite a strong infrastructure. And the language itself is under rapid development with new libraries being released into the public domain at a regular pace. So and a Google search that's in yellow revealed a respectable number of hits and Amazon search revealed a respectable number of hits although admittedly there may be more hits for other programming languages still respectable though. And a recent article in The Economist revealed that the number of people searching for Python in Google is going up at a tremendous pace more than any other language. So we could say that there is more growing interest in the programming language than any other but perhaps the most glowing endorsement of all is the number of Google searches for Python outstripped. Those for international model and TV star Kim Kerr should do what more could one want. So how should we introduce it? What about this teaching approach? Now a decision was made to employ a bottom up approach to teach computer programming as opposed to a top down approach. The dust justification for the bottom up approach that it's a tried and tested successful and traditional method used in the teaching of computer programming to adults. Foreign languages and mathematics have also been taught in this manner traditionally. Now a bottom up approach is when concepts and ideas are learnt first and these are then used to solve problems. A top down approach is when a student is presented with a problem and then he or she tries to work out how to solve it. However there was some trepidation as whether the UK students would be accepting of this bottom up approach as the modern trend in UK schools is to employ top down approaches while studying subjects. And so it was felt in order for this bottom up approach to work we would need explicit buy in from the students as they are relatively unaccustomed to it. Therefore we'd have to provide an explanation and this would have to be provided prior to any teaching. So the explanation went like this. Computer programming languages they have an inbuilt grammar they can be thought of as analogous to human languages such as English, French, Chinese, Polish, German, Italian. And just like we communicate with each other in human programming languages we communicate with the computer in computer programming languages which there are many and we are going to be using Python. Then an explanation was provided that just like you have essays they are analogous to programs, we have paragraphs they are analogous to functions, we have sentences they are analogous to statements and we have words they are analogous to keywords. And we would be taking a keyword at a time and learning about its uses and its definitions and then we would be building up to write programs. Now this bottom up teacher led approach to teaching computer programming appealed tremendously to the younger generation of students and their parents. And the idea is that the basics are strong so that the school children can become not only confident but competent and happy to tackle any given programming problem. So it's teaching by strengthening the fundamentals. I was quite often asked by the students are you fluent in Python just like they ask are you fluent in French. And in parents evening parent after parent was saying how much their children were enjoying the subject and how much they in fact loved the subject. And I felt a huge sense of delight because now we were competing with music and history and Latin and all the other subjects and I think actually I think we were ahead of them but I didn't tell anyone that until now. So let's have a look at some example programs written on a whiteboard by some year 7 students. These are children aged 11. These are written by Therese. So she's got 4J in range 1 to 11, print J, prints the first 10 numbers. It took them about 5 minutes to master the concept of a for loop. And this was on mass. Next one for Jane range 1 to 101, 2, print J, print in the first 100 odd numbers. And they squealed in glee when they saw these numbers coming out. And then here we have a nested for loop, a loop within a loop for program 3. And the children were quite comfortable with this concept also when it had been explained. Again, you know, beforehand I had thought of it as a very advanced concept but after they sort of understood it like that I thought and they said to me what's the big deal about. I thought yes maybe there is a big deal here. This is from Jerome aged 12 and he has written programs using functions. And so we explained the concept of a function and how it can return a variable and displayed it or showed them an example program adding two numbers. They subsequently wrote programs to multiply numbers, divide numbers and they played around with the concept of functions as well. And again it didn't take them very much time to actually master this. Here this is their examination and this is Harry aged 12. And you can see here he has, you know, he's quite comfortable with the concept of div and mod. He's quite comfortable with sort of terminology such as iterative statement, etc. Here we have Charles aged 11 and he has written a program there to find the circumference of a circle. And then he has written a program there to generate the first five square numbers. And he can do this by hand quite comfortably. And here we have Mei Ling here and she has provided definitions in an exam of algorithm and decomposition. So she's written here an algorithm is a set of logical steps to solve a problem in a finite amount of time. And I think it's quite good that Mei and her classmates understand the importance of solving a problem in a finite amount of time. And here we have Boris here aged 12. And again Boris in his examinations being given a program and he's been asked to identify input statements, iteration statements, assignment statements and data types which he can do quite accurately as well. And you know remember Boris is about 11 or 12 when people are 15 or 16 now in the GCSE exams. There are similar types of questions but they can answer them at 11 or 12 I think if they are taught. And finally not least Kate who is also aged 11 and she's been given a function and she's been asked to dissect the various facets of the function which she has done accurately as well. Now they were asked a question. It's very important what their motivation is so they were asked an exam question. Computer science is said to be the most important, one of the most important subjects that a young person needs to learn about. Why do you think it's important to study the subject? This was asked for 11 and 12 year olds. Now their reaction afterwards was goody I like writing essays and I think for three marks they did write essays. So what did they write? Let's just have a look at some. So here we have Therese aged 11 and she wrote the technological advances of the modern age have been spectacular from simple things like Apple watches to the more advanced artificial intelligence robots. With these changes come a great responsibility for us as the future generation to understand this science so that we can continue to innovate and create. We must understand the inner workings of machines and to question everything around us in order to build on the foundations that our elders have laid down for us. When I was younger I used to believe that robots would somehow rule the world in some sense I believe that because if we can build a chess playing AI robot who knows what else humankind can come up with we must continue this legacy of computer science. More and more companies are beginning to use technology in place of humans and although this closes up some jobs it opens up many more. They need people to understand to look after check this technology in case something goes wrong. We can be those people the future is us the young people we can make a difference the future starts now. Let's go on to Boris age 12. I think it is vital to study computer science as we are growing up technology is expanding and is becoming an essential part of our everyday lives. Nearly all of the famous and successful billionaires have made their fortune from making programs which have become used everywhere. So now we have to have a chance to become as rich and as successful as them. So here we have Boris age 12 a precocious intelligent ambitious Boris. So a casual observer on reading this said to me the problem is that the ambitions aspirations and vision of these space age young students far outweighs and outstrips those of their career guides and that's my father Joy Devnandi. So what inferences did I make from this or we can make. Well year 7 they found computer programming easier than year 8 who found it easier than year 9 who found it easier than year 10 who found it easier than year 11 and the message is to start properly from the beginning is better. Point 2 points need to be explained properly students are happier with this student led or other teacher led approach rather than a student led or independent learning at this early stage. And they have told me this many times and terminology should be introduced along the way and it should be pegged on to examples and operational definitions. There is a crying need for decent textbooks and resources fit for purpose and of course the best students are the ones who are motivated to do well. Now quickly moving on afterwards I moved on to another institution this institution took children from 2 to 18 so I was now exposed to even smaller or younger children. So I was exposed to children age 9 and 10 which are who are in year 5. And I thought well we thought well rather than starting them off on coding and there was red tape around introducing them to coding because many people thought they were too young perhaps then we could introduce to them about the actual history of computing. So what we did was to introduce them to the figures like Alan Turing, Steve Jobs, Ada Loveless, Grace Hooper and Bill Gates and we did like history lessons and then they wrote in word documents they did research and wrote up sort of projects about these people which they also incidentally presented for 5 or 10 minutes as well. And as far as the institution is concerned they are learning word and they are doing ICT as far as I am concerned they are learning about computer science. So it kills two birds in one stone. Now this is Matt age 9 here and he did his research on Alan Turing. He was absolutely enthralled by Alan Turing and so were the rest of the people in his class as well. And we introduced them to the Turing test and they thought it was the most wonderful thing ever. What was quite interesting was a few months before I had introduced it to 17 and 18 year olds and they ticked it off on their syllabus but to a 9 and 10 year old it was the most wonderful thing ever and they couldn't stop talking about it. Now the other thing about this school was that I was on break and lunch time duty so I got to know these children in the computer lab very informally as well and they expressed their love of all things computing to me all the time. So we had a little girl come in Shona at lunch times at times to learn more some Python programming. So I showed her a 4 statement which generated the 12 times table and she said oh this is a great way to learn your times tables but I know mine up to 12 let me write one which will teach me how to write my 13 times table. So she did this and then she looked at the screen and she held out her hand and said I love this I love this and it was you know for them they appreciate it with their hearts and their minds it's quite something to see. Then we have Tom aged 12 who was in year 8. Now Tom told me he does his own personal projects in his time what do you do I said he said I do C sharp and unity what kind of things do you do he said I said I do artificial intelligence so I said can you send me a few lines of code. I said so he sent me 10 lines of code and these are the 10 lines of codes and you can see for a full size pages there. So Tom sat in the middle of the classroom doing his own work what's the others did other work and I sat him deliberately in the middle of the classroom so others could see aspire to be like Tom and indeed they were really trying their best. To be like him. And then he talked to me about artificial intelligence and he said he wanted to give a talk on it. I said fine so he gave me an outline of the you know the office talk and that's his handwriting there which is very nice and you can see what he's put in his outline. Machine learning visual path finding AI in infant caring AI and finding diseases and cures etc he knew a lot. It took him about five weeks to prepare his talk he stood up he spoke for 10 minutes I was trying to get him off probably like you're doing with me because I thought he's taking up far too much of my lesson. And then there were about five minutes of Q&A and then I said to the other children in future we will have more talks and more of you can give talks like this and they all nodded they all want to give a talk which is brilliant. And then we have Bob here and Bob said to me one day he hadn't done his homework and I said why haven't you done your homework. He said I'm very tired you know I'm really very busy I've got a job and I'm in a team of 30 doing development. And I've had a promotion I'm trying to learn Java and C sharp and Python at the same time and here is Bob's email to us. He's asking the school to load on Java so that he can practice his Java at school at lunch times and breaks. And he tells us that he's always been fascinated by programming and it's an amazing opportunity to encourage coding at school. He also wanted to be my marketing manager for my YouTube channel. And here Bob towards the end of term he wrote me this little note here and he said oh all of year 8 enjoy your lessons. I definitely do I'm developing my skills in Python learning the basics of C sharp have become interested in pursuing computer science for GCSE and you've inspired us to start coding in Java and download multiple IDE spanning 14 coding languages. So you know they know a lot I thought. So further conclusions I thought year 5 are actually better than year 6 who are better than 7 8 9 10 11. I think there are two curriculums there's the official curriculum and there's the unofficial curriculum which is student led and the unofficial curriculum appears to be more sophisticated. And a substantial proportion of what is taught probably at age 15 16 17 can be brought down 10 years or so. And so the idea is to maybe front load the subject and they're much keener at that age as well when they're younger. So I guess as a child would say grown ups watch out. And I leave you with a thought I can conclude my speech here with special reference to education which is general global and eternal from an event almost 100 years ago. The great Austrian theoretical physicist Paul Erenfest was trying to establish the city of Leiden in the Netherlands as a center of theoretical physics and watching his great efforts. His great friend Albert Einstein described Paul Erenfest as the best teacher in our profession and one passionately preoccupied with the development and destiny of men especially his students. And it struck me and I'm going to ask you does this observation by Einstein on the teachers preoccupation about students development carry any relevant message to our age. The teachers of the modern age when student development sometimes considered fake and machine learning intelligence and artificial intelligence are poised to take over our educational activities. So thank you for your time and any questions are welcome. Thank you for the talk. It was really interesting. I just wondered what your opinion was you can mention comparing computer science to maths English and I suppose science more broadly as a kind of foundational subject. But I wonder what your opinion is with respect to and somewhat encompassed in the few people you show at the end in terms of machine learning and what have you in that it occurs to me that unlike the other pillars of education computer science is a subject which changes year on year or if you're a front end developer week to week. So and that has ramifications on say you talked about lack of textbooks. Well who wants to write a textbook when they're only going to get a year of you know money essentially from it. So I wonder what your opinion is on that with respect to how you teach it given that it's so fast fast paced. Well I mean it is fast paced but the fundamentals you know the fundamentals have been the same for decades really. So sorry. Yeah for if the fundamentals are you know have been the same for decades. So you can you know first of all you teach the fundamentals which take a few years to teach and then you can move in step with what the current fashion is of the day or the impending fashions are you know predicted fashions of the day. I mean really what they lack I think is they need a good fundamental base in order to be able to pick up whatever they need to pick up in the future. OK thank you. Other questions. Hello. Did you use Jupiter or any other tools and how was the acceptance by the students. No I've I've only used Python idle so far and that's because well I mean you know first of all we just want them to master the fundamentals and Python idle is is fine. But you know I do want to go on to other sophisticated ideas as well. But also there is a matter of administration as well. So we have to take that into account but in due course I do want to go on to those you know to the other ideas and Jupiter and everything. Yes I've I've taught Python to some groups of small children not to like seven years old to eleven years old and I thought one of the barriers was keyboard proficiency. And I was wondering if you had some some ideas about how to motivate them to to practice or to or if there's tool like that that can motivate them. From the 7 to 11 year olds. Yeah OK I mean I kind of I found that OK I don't know about the 7 to 11 year olds. But when I was teaching the to be honest I found that the younger that they are. Say I taught the 11 year olds in earnest the more motivated they were to actually practice. I wasn't persuading them to practice as such. They were practicing on their own because their general knowledge about the subject is now getting is quite good. And they're reading about it and their parents give them say raspberry pies for Christmas and things. And so you know and also if one friend practices then another friend also wants to practice. So I didn't find the problem is with the younger children. I'm finding the problem with the older children the 15 and 16 year olds. Thank you. I just have a comment because you thought that when teaching the younger children you were teaching them the rather history of computer science to young my daughter when she was eight or nine years old at school learned how to encode movements of some items to create a building create a structure or something. And children in this age were quite good in this and it was a pretty good way to teach them imperative thinking required later in programming. So even in this age we can teach children quite practical things that can be used later in teaching them computer science. I mean I actually totally agree with you and I have I guess I have experimented with children outside of school that age. And you know to teach them sort of Python little Python programs and addition subtraction and they actually quite well. It's not I thought they were too young. It's the establishment is quite orthodox in its thinking. There are no further questions. So I just want to know how the subjects in schools in UK are affected by the parents opinions. I actually am here from New York and they have this PTA and they are very influence influencing in what the school actually teaches. Of course it depends on different. It depends on where the schools are I suppose and what the school is. Parents are really getting on the bandwagon. They want their children to be taught the subject and they want their children to be taught well. And in quite a few places they are putting a lot of pressure on the schools that their children are not just taught but they are taught well because sometimes it's a new subject. So parental influence is becoming greater and for the better. Any further questions? Then let's give our speaker one big round of applause.