Report on FOSS@School, FOSSMeet@NITC 2008
Report on FOSS@School, FOSSMeet@NITC 2008
I was at NIT (REC) Calicut the last few days to conduct a workshop (FOSS@School) for high school students (and a few teachers) as part of the FOSS Meet. The idea was to show some fun stuff to the kids and get them interested in computing and technology in general. It was also a chance for me to test out my small cat-and-mouse framework in Python called PyNeko. I started out by demonstrating how Python can be used as a simple calculator to evaluate arithmetic expressions, showed how simple `commands' like `up', `down' etc can be used to move Neko round the screen and then introduced the `def' keyword so that kids can teach Neko new tricks. One fellow got obsessed with the idea of Neko "chasing" the mouse. He was experimenting with something and getting an error - I thought it might be a syntax error because of improper indentation - imagine my surprise when I saw a `maximum recursion depth exceeded' message on the screen! I had only told them how to define simple functions with `def' and this fellow came up with a recursive call all on his own to implement the `chase the mouse' function - of course, he didn't know how to terminate the call properly and so it ate up all the stack! A few minutes into the class, one fellow stood up and asked me to show him the "source code" of Neko! My way of answering questions like `why do we need to put a : after the first line of a function definition' was to say that programming languages, like natural languages, have their own rules - one kid put it in his own words - `just like Richard Stallman invented GNU, you too can invent your own language - in that language, you can choose whatever rules you like'! There was no need to tell them how to compose new functions out of older ones - one fellow was defining a string of functions - right2 (which called `right' twice), right3 (which called `right2' and then `right'), right4, right5 and so on ... Another one had written functions right8, down8, left8 and up8 and wanted to combine them in another function so that he can make Neko circle the board. The girls wanted to make Neko dance - left, right, left, right! I mixed my `Neko' class with presentation of videos downloaded from Youtube - videos of the humanoid robot Asimo, the "big robo dog" from Boston Dynamics, robots playing soccer and skating on ice! The idea was to demonstrate that computers are used not just to show stuff on the screen but also to interact with and control objects in the real world. I wanted this to form the background of my introduction to Phoenix. Unfortunately, I didn't get too much time to cover Phoenix - I did a blinking LED demo and explained how the digital output pins of the device can be made to go high or low depending on the value of the bits of the number which you passed to the write_outputs function. The problem was that none of them knew binary arithmetic - there was just enough time for a "crash course" on counting in binary - and that was sufficient for many of them. One girl stood up and asked how we can make all the four digital output pins go high - it didn't take too long for another fellow to shout `write 15' as the answer! A few of my students from Jyothi Engineering college demonstrated a line following robot which they had built - a tenth standard student wanted the schematics so that he can try doing it on his own - his teacher told me that this fellow used to win prizes at the state level in science exhibition/project contests! I had a big bag full of electronics stuff with me - there was a Pentium MMX processor which I handed over to the kids so that they can get a "feel" of the computer's `brain'. I showed them a video of the Intel fab where these processors are manufactured and told them why it (the processor) is incredibly complex. Somebody asked a question about multi-core processors and one high school teacher asked what prevents you from manufacturing a *single* processor which is as fast as two CPU's combined. As I was struggling to give an answer to this, a student got up and asked a question about hyper-threading!! In between my classes, the students had a chance to attend two other presentations - one on KDE educational software by Pavithran of NRCFOSS (with Malayalam translation by Praveen) and another one on 3D modelling with Blender by Santhosh. Santhosh also demonstrated his Malayalam text to speech translation software which the kids found to be very interesting! Towards the end of the class, many students wanted to know from where they can "get" Neko and Python. Maybe, I can take this as a sign that I was able to motivate atleast a few of them. But the problem that remains is - such once-in-a-year classes are not going to matter much - what we need to do is to follow-up effectively. Ok ... that was all about FOSS@School - as I was with the kids all the time on both days (5th and 6th), I was not able to attend any other talks - with the exception of those by Kiruba, Deepak, Aanjhan and Pavithran (and a bit of Sujith's talk as well as the Paul Frields video conference). Deepak is a lecturer in Electronics at NIT and a great FOSS enthusiast - I came to know him personally through my classmate Murali (who is in the CS dept). He gave a talk on Octave and Maxima - two tools for doing math on GNU/Linux. Aanjhan talked about Free Software tools for electronics enthusiasts - he mentioned, among others, tools like Qucs (circuit simulation), GNUSim8085 (8085 simulator) and gEDA. GNUSim8085 is a project in which Aanjhan is very much involved in - his goal is to convert it into a general processor simulator. It's a great project for beginners to get involved in. There was a good team from GEC Trichur to participate in the event - Anish came down from Mumbai and Sujith from Bangalore. Anish has promised that he will give a talk at FOSSMeet 2009 on "Linux kernel internals" ;-) My congratulations to the FOSSMeet team for organising this wonderful event - I am sure they will come up with something even better next year! And, there has to be a more vigorous effort to get the NIT students involved in FOSS - because: Also: read reports by Kishore, Hiran and Aanjhan
Wed Apr 9 05:24:25 2008
Nice going! It was really good to read about how school children took to FOSS and their enthusiasm to do things on their own. Congratulations, Pramode! And also Kishore, Hiran, Aanjhan and others!
Wed Apr 9 06:02:56 2008
"Anish has promised that he will give a talk at FOSSMeet 2009 on “Linux kernel internals” ;-) " -- I am sorry I dont remember saying anything like this.. enthina sir ee pavathine veruthe kurishinmel ketunne ?? :(
Wed Apr 9 07:12:30 2008
Anish: You have a very poor memory ;-) Anyway - your talk is IN for FOSSMeet 2009!
Wed Apr 9 07:37:20 2008
hello. it is so nice and inspiring to know the foss at school workshop. I am aware that kids now a days have become more alert to technology and are curious about things but this seams to be one of those extra ordinary things. may be I will give a talk on accessibility of gnome desktop and one on firefox accessibility next year. happy hacking.
Wed Apr 9 20:47:43 2008
I miss the event :(
Thu Apr 10 02:02:26 2008
I was stunned to see the enthusiasm among the school students and the amount of curiosity they have. I think you have targetted the ideal people for FOSS. I was there for sometime and I could see the energy, the excitement. We should tap this! Great going. Foss@School was the biggest success of FOSSMeet@NITC 2008.
Sat Apr 12 11:59:35 2008
myself being one of the delegates who attended the 3-day conference, it feels nice to see that someone has summed up the events in brief.nice goin mate!! keep doin this.
Sat Apr 12 15:36:41 2008
Thanks to all of you for the encouraging words - hope to meet you all at FOSSMeet 2009!