 Good afternoon, I am not a programmer, if you can think me as an odd man here, I am a physics teacher, but I love to try and experiment with different things, which can make teaching learning process in my class little more interesting to my students. How many of you are science students here, I was talking about basic science, physics, chemistry, math, bio, so when you are in your high school days, higher secondary days, which was the most difficult subject you had or which subject you felt was most difficult and most boring and most dull, physics, that is the general understanding about that subject. Now let us understand the reason behind this, maybe the real problem is with teachers like us, how do we teach physics, consider a body and then we write so many equations, let there be a force constant force acting on the body, let the body be accelerate and have this much velocity, in teacher's conceptual model body may be somewhere here and student will be searching it somewhere else, so conveying the real conceptual model is a real difficult thing. What would you prefer, having a boring physics class at 2.30 in the afternoon or having a two hours session in your favorite cinema theater, watching your favorite movie, what would you prefer, one hour boring physics session or a two hours or three hours Hindi movie or English movie, movie definitely right and if we decide to have a small exam or test, after one hour physics class and after that two hours movie session, where do you think your performance will be better, where after the movie right, if I ask you any question you will be able to answer all those questions, you will be able to narrate entire story from the beginning till the end right, but if we decide to have a test after the physics class, what will be our performance there, okay the question that I want you to focus at is, why it is so difficult to understand things in a science class and why it is so very easy and interesting in a cinema theater, maybe if we can understand that we can implement those things here in a classroom and make this learning activity interesting as well, and what could be the real difference, what could be the real difference in a movie and theory class in school, here, yeah cinema is a story okay and there is no story here abstract, yeah visual, more visual okay, so if we yeah if we but why that fun is missing from learning something, maybe one of the reason is that in a movie or in a cinema, we are able to relate ourselves with whatever is happening there, you don't find that is totally strange, you find that that is our own world, but in a physics class everything is not related to our real life, maybe if we start in the beginning like we teach kinematics, we teach Newton's laws of motion, we derive so many things okay, we start from initial velocity and then finally derive Newton's second law of motion that is force equals mass into acceleration, but when we go home in the end where do we use these equations, do we find any use of these equations in our real life and the answer is no, and this brain is a brilliant machine, brain is a brilliant design, if our brain feels that something is useless, it will not store that garbage here, then you will have to override it, then you will have to pseudo it right, bahad, bahad, bahad, mug up and then your brain will be able to remember those things, what kind of things you remember from your childhood days, what kind of things you remember very easily, very interesting things something which is which is happy, which is very happiest thing, something which is very extremely sad and painful, all such things we remember, we remember all important things and what are all important things, the things which our brain feels that are really important those are automatically stored, but that doesn't happen here in a science class, we fail to relate ourselves with what we study in a scientific science class room, so what I did is I tried some experiments since last 2-3 years, I got opportunity to be here for Python Singapore last year and since then I started exploring use of Python in my own classroom, let's look at some of the basic problems in a science classroom, the biggest problem everywhere is passive learning, we learn scientific concepts without having, is it the column here, okay, let's ignore that, so where I was, okay, we learn so many scientific concepts without having basic understanding of mathematics, trigonometry, calculus and that's why these subjects are really very difficult, we study so many concepts which are very difficult to see in real life, for example we teach AC and DC alternating current and direct current, but if I really ask you what exactly is the difference between AC and DC, what happens in that wire, what happens in a conductor when AC is flowing through it or when DC is flowing through it, students are not able to understand that, in fact teachers are not able to explain it properly, so real learning is missing and what is the end result, because of these problems of theory theory and only theory, mug up, reproduce and get good marks in the exam, no scope for learning by doing, no scope for learning by exploring and experimenting, what is the end result, students think that science is very boring, dull, difficult subject, science is something which is only for smart students and we end up with people or students whose imaginations are unmoved by Saturn's beautiful rings, people who take gravitation for granted and don't feel it as if it is something amazing, so I have always wished if I could take my entire lab to the classroom and demonstrate each and everything to the students, before I begin to teach any concept try and show them what it is and then go to the technical details, then go to the technically boring mathematical equations and that would be real fun, present them with a better visual models using some simulation techniques, so that they can understand this in a better way and this problem is partially solved by python and my pocket science lab which is powered by python, it's a small computer interface, maybe little later I'll show you what exactly it is, so python could help me to take my lab to the classroom and demonstrate so many things in a classroom, but the question is why python, now if you think from my side for a physics teacher, generally very rarely you'll find a person who can code, a science teacher who can also code, so for people without having any programming background python is the easiest choice, because it is very simple to understand, you need not worry about so many technical details, it has inbuilt libraries for everything that you want to do, you need to know just what exactly you want to have, so it's very simple yet powerful and it has special features for scientific computing, handling vectors, matrices, performing Fourier transforms, making graphs and creating 3D visuals, so I consider python has a potential to change the way we teach and the way we learn, equations in physics and math, they always look very dull and boring and if you fail to understand the beauty behind those equations, you can't appreciate these kind of concepts, let's take for example, what do you understand by this equation, function of x equals sin of 3x, I think from the point of view of a higher secondary student, so for him it is just math and he will have to just behurt it, mug it up, but if you could understand what exactly that x does there, what is the role that sin plays there, if you can plot a real time graph for this, then it will be little interesting, in the second equation I have just added one more x there before sin, x into sin of 3x, so that's actually the damping factor, so in theory we just write the equations and we explain, and this actually doesn't help, how about writing a very simple python code and plotting these real graphs, for example here, if I use the first function y equals sin 3x, you will get a simple sin wave, give opportunity to children to play with these numbers, instead of sin, ask them to try with cos, ask them to try with tan and get the results and see how these functions look like, see how these equations look like, the second equation when we add just extra x there, you have a different kind of curve, so students can actually appreciate how these things are working here, and python code is not that difficult, it's really very easy, let me just run that, it's actually a 3, 4 line code and you get a beautiful graph, there is a very small simple function working for this, you need not be a programmer, even in one day you will be able to do all these things, that plot x comma y and show, that just gives you that graph, there is one more example maybe let's try, let's add that damping factor there and this is the result, so very simple python codes and things work, children can play with these things, they can understand the real mathematics behind it, and they will also get interested in coding, because with two lines of code they are able to do some magic, not only graphs, in fact python can be used to create 3D visual graphics and make things more interesting, one more story, almost everywhere in higher level mathematics we use exponential equations e raise to something, power of e and that is very complicated to understand, so how about just using a small code and plotting a graph for this, maybe you can see, this is the result, the same equation y sin x and exponential factor is there and that gives a damping sine wave, so this is how one can make things little more interesting and for simple dynamics, while studying collisions, while studying oscillations of springs, damping, one can use a very simple code and create 3D visuals and make the class little more interesting, for small kids you need not worry about the code, just show them the simulations and they will be interested, they will be inspired to learn something from computing also, let's see if this code works, about 10 line code and we have a very interesting visual of bouncing ball, then you can introduce concepts of elasticity, concepts of coefficient of restitution, if coefficient of restitution is exactly one, ball will bounce back to the same level and if there is energy loss, then its height will go on decreasing and it will be damping, maybe in the end I will show you some real experiments also, not only virtual things, okay, so this is what I was talking about, XPISE is a Python powered pocket science lab, this small little kit which I am using here, this has a potential to replace many equipments in a physics lab, typically in a science lab what do we need, we need a digital storage oscilloscope, we need a function generator which can generate a sine wave, a square wave, we need amplifiers, we need power supplies, we need digital counters, we need emitter, voltmeter, right, so we need all those devices and we do experiments only in the laboratory of school and these kind of instruments are not accessible to students to try and explore at home, so with that objective of providing very low cost and affordable personal laboratory to students, we came up with this project, XPISE, it's from nuclear science center New Delhi, it's an open source software and hardware framework, even circuit schematics and everything is open, so it's a computer interface that can convert your laptop or your PC or your mobile phone into a full-fledged physics electronics lab and with very small locally available components you can do hundreds of experiments, there is a built-in sine generator, we have an oscilloscope and it's USB powered, recently one student has developed android app so you can actually interface it with your mobile phone and it has really become a pocket science lab, let me just flash these things, 12-bit resolution, we have ready-made Python GOS for about 50 new experiments, okay let's talk about some some amazing experiments that can be done using Python, maybe before that I will show you a very simple experiment to demonstrate the power of this device let's use the ready-made GUI for that so it will give us a clear idea about what this device is, okay this is the main user interface for pocket science lab, it's a full-fledged digital storage oscilloscope, you have all the functionalities which are there in a very costly device, okay so you can see one one signal coming up there, I have just connected one small wire to one channel of this device, right there is no power supply connected to that channel but still we are getting some signal, let me just change the time base setting of this so that we can have more waves in the screen, right and I'll just hold this wire in my hand, can you see something happening there, right the amplitude of the signal is increased and that is AC voltage that we are getting, right now just to increase the curiosity of students we can ask questions from where we are getting this electricity, I have not connected anything there, it's just a piece of wire and that is giving voltage and that voltage is being measured and plotted here in real time we are actually able to use a very small python code and take about 100 readings in a second, 400 readings in a second and plot it in real time that's the power of python so what exactly is happening here, the moment I touch this wire my body is acting like an antenna and all these electricity cables which are here they are radiating electricity, right and we are actually getting this electricity, now if you know what is the frequency of AC in Singapore, we'll be able to find that it should be 50 years, right, okay I'll just drag this channel to fit and here you'll get that frequency, maybe if I hold it it will give us a steady reading, can you see it's 49.9 or 50 hertz, right, so a very simple python code is running behind this, so the idea is give opportunity to students to do something on their own, have real interaction with the concepts, with the things which are happening and that way learning can be made fun, another experiment of couple pendula, right, if you just want to have a real proprietary closed setup for this it's very costly and this can be made with just just two small DC motors and a homemade pendulum, okay again, okay understanding concepts of phase, one phase AC, two phase AC, three phase AC that is very complicated for students and also for teachers, but with this we can easily show when the waves are in phase, when they go out of phase by plotting them in real time, you can study concepts of resonance like this we did so many experiments using this python powered pocket science lab, we used ultrasonic position sensors, so when you're teaching motion graph like velocity time graph, acceleration time graph, position time graph, instead of just showing them on the board, how about having a moving vehicle detecting its position, measuring its velocity and plotting that in real time, so you can just use one ultrasonic sensor, fetch the data using this pocket science lab and plot it in real time, you can plot VT graph, acceleration time graph and also position time graph, this is one more experiment we just did it with linear air track, you can get those graphs, you can also plot Lisa just figures which has a very complicated math behind it, but just take python code and how many things to add, so when I was trying this with with sine waves, I just use sine waves which are available here from this function generator and plotted those Lisa just figures, one of my student just thought why only use sine waves, let's try with square waves and one day he tried square waves which are available here, okay and you could get these beautiful patterns, right, again a two line code, fetch the data using capture function which are which is available for x, y's and plot it, so you can you can have beautiful patterns which can be generated just by changing frequencies of two orthogonal waves, one more thing that can be demonstrated, we have a sine wave generator here, I'll just connect this sine wave to one channel, I'll fetch the data and plot it in real time, you can see the code is very very simple, right, you can just import the python library for this device and just one function capture, plot and show, maybe let's do that, because the control is with different device, yeah, disturb it, okay, so what I have done here is, I have connected one wire from a source of sine wave, from a sine wave generator to the channel, right and the device is reading the data and plotting it in real time, one can just, one can just click on channel one and fit the data and measure the frequency, okay maybe for last two three minutes I'll show one more very interesting experiment, like we study interference of sound, when two sound waves travel together, they superpose and if there is a frequency difference between them, we get beats, right, amplitude of sound increases, decreases, increases, decreases, that is that is interference of sound called phenomenon of beats, something like sound of ambulance, right, with increases and decreases, that is very difficult to demonstrate, because the maximum number of beats that human ear can detect is 10, if it is more than 20, 30 then we will not be able to see the difference, right, but here because we have a power of measuring data, recording data for a time interval of few microseconds, it's very easy to do it, one can do it with a readymade code or we can use a readymade GUI for this, okay there is a readymade GUI available, everything is written in python, you see interference of sound somewhere, yeah it's here, okay a very simple experiment, so what I'll do is I'll drive these piezo buzzers, there are two piezo buzzers here, they are connected to a source of square wave generator, square wave and there is inbuilt mic here, so what mic will do, it will convert sound wave into electrical signal and that we can plot on the screen, okay before we do this, let's test this buzzers, right, just a second, right in a different way, yeah I just made a mistake because to just demonstrate the previous case, I have actually connected the sine wave there, so that was giving me the output of sine wave, now let's connect output of mic here and run that program, okay let's test this, okay it's a sound of about three thousand five, let's bring it close to the mic, almost constant, amplitude is almost constant, okay let's try the other one also, a small difference in their frequency about five hundred hertz, one is three thousand five hundred and the other is three thousand six hundred, you can see the data that can be adjusted, so about hundred hertz is the difference and because difference in frequencies is hundred hertz, that amplitude should change hundred times in a second, let's see what happens, can actually see the formation of, in phase they get added up, amplitude increases, when the waves are out of phase, one coming like this and the other coming like this, crest falling on the trough, they destroy each other, so amplitude decreases and because the frequencies are constant, they go in phase and out of phase periodically and result is this pattern, okay maybe two more slides and then I'll conclude, okay so in what I have tried to demonstrate is physics can be made interesting if we could show real things happening in the real world instead of just demonstrating everything on board using chalk and top method and it will be very interesting to give opportunity to children to learn everything by themselves and have a concept of flipped classroom, like a classwork should become homework and homework should become classwork, students should do everything at home on their own and only for doubts they should come to the teacher, so when that flipped thing works I think we'll be having a real understanding of the concepts and python definitely has that potential to change the way we teach and the way we learn as I said earlier, okay thank you for your patient listening, if you have any question, yeah it was amazing, let me share you one simple story, I was teaching, I was having some sessions to high school students, not my students directly and they were from Marathi and Kannada medium not English, so they have a unique difficulty in India, up to 10th standard they learn everything in their own language and when they go to 11th standard in science everything is in English, so first problem is understanding English and second problem is understanding science, so it's extremely difficult for them, so what I did I use this device and I could demonstrate some experiments without using any kind of technical word, so I did not tell them that I am actually teaching them electromagnetic induction as I said let's just have fun, we used a small DC motor and a neodymium magnet and some pickup coils, right and we could take the data and plot it here on the screen and I just gave those kids to those students for a week and after that we had interaction, children played with that apparatus and then I started asking them questions, okay what happens, okay if you if you increase the speed of the rotating magnet they said that wave amplitude of the wave increases, then I asked them okay if you bring that coil pickup coil very close to the magnet what happens, take it away from the magnet what happens, okay when you turn the coil like this what happens and they were ready with all the answers, only thing that I had to do was introduce them with the technical terms, right they were ready with their understanding of fundamental laws in electricity, Faraday's laws like rate of change of magnetic flux that induces the voltage, so that actually gives them real kind of experience and they need not have to mug up, they will have to just get familiar with the technical terms and then things will be easy No, it actually works with average group of students, okay more talented one students they actually ignore these things they feel that we don't need any extra support we can do everything on their own, right but those average students which are little little you can say low in the exams, okay for them they found it very interesting You just have a lot of difficulties like the oscilloscope graph whatever actually what we have even if they do the experiment themselves they measure the graph, get the data and actually no idea what it is That's why I told you, you know That's the real difficulty, so in fact we can just we always start with teaching them what a graph says, right you need to talk to the graphs first if you want to understand anything in physics you need to understand those graphs, right and that is the real difficulty almost everywhere in fact I also feel that if you give some data students will in fact have a problem in taking scale on the different axis Any other question? Okay I'll conclude and thank you very much