A Magic Square Game for 7 year olds

A small magic square game, just a step beyond addition. Comments welcome.

Class 2 Computer Science Curriculum

I have a text book in front of me, seems to be specific to a school called Kensri in Hebbal, Bangalore, so not sure about other schools. On the cover, it says “Computer Technology”. This text book is best described as a user manual for MS Paint. Each page describes one of the icons and then puts out an exercise. I am yet to form an opinion on this book but a few things come to mind based on personal experience.

Just having a computer around seems to be enough to attract a 5+ year old to play with it. Paint is simple to use and provides immediate gratification, children seem to get hooked on and learn quickly, without being coaxed or coerced or taught. So then would a computer lab not be more productive by just putting children in front of Paint and letting them explore rather than have a user manual type text book. Presumably the book is just meant for structuring activity and most of the action still happens on a terminal. But still, one can’t help thinking that this is a retrograde step: while all of modern software and UI is aimed at overcoming the deficiencies of a linear, sequential, old style book by providing richer interactive and navigational experience, here one is taking a rich UI and converting it back to the same old linear, sequential, old style book.

Anyway, the cover also says “Theme 1″, I am waiting to see what else is in store, maybe a user manual for word, excel, powerpoint etc will follow in quick succession.

High School Computer Science Curriculum- Part 2

I am attempting to locate text books used in CBSE and ISC. In an excellent initiative, the NCERT (National center for education and research in teaching, India) has brought online its CBSE text books. Just to make my task difficult, the only text books that are missing are for Computer Science:-) One can read all other books in glorious PDF, indexed by chapter, and colors intact! So I am locating paper text books for computer science and maybe will get in touch with NCERT to demand that CS books also be put online.

The situation with ISC is far more complex. Since the choice of text books is left to the school, the quality of the course varies even more dramatically across schools, unlike in CBSE. Again, I am attempting to locate some text books for ISC. Will update soon.

Locating final examination question paper for CBSE has been a bit easier. Here are a few sample exam papers.

Wheras ISC papers are hard to get on line. The administrating body of ISC,  the CISCE (Council of Indian School Certificate Examinations) appears to be just that, a body for administering examinations, again, unlike the CBSE, which is concerned about education. The website of CISCE is very minimal in terms of information for students or teachers. However, the data for the number of students that appeared for the XII and X exams is available: 25,000 and 65,000, respectively. However, the year for which this data applies is not mentioned.

Unable to find a similar number for CBSE, though the site mentions that there are about 9000 affiliated schools. I need to get back to find numbers for CBSE/CISCE in comparison with the State school boards across India. This will allow us to focus our efforts  based on the maximum benefit for maximum number principle. For the moment, I will focus on CBSE.

It will be good to locate the text books used in Israel high schools that are following El-Gazer and Harel committee’s syllabus. I have not been able to locate any so far. Any pointers?

My idea was to start with the curriculum, the syllabus, the text books and the question papers as the basis for understanding the current state of computer science in high schools. Even a cursory look at the available material for CBSE, by all accounts the highest quality framework for high school education in India, wakes one up to the magnitude of the task ahead.

High School Computer Science Curriculum

Based on nothing more than gut feel, I have strongly recommended, to anyone who has made the mistake of asking for my opinion, against taking up computer science as a subject in higher secondary school (11th and 12th standard).

I am now taking up a scientific approach to evaluate the basis for my gut feeling. I am starting with the prescribed computer science syllabi for 11th and 12th standard in both CBSE and ISC, going back a bit to look at the 9th and 10th standard syllabi for anything relating to computing and IT in both the school systems. It is intresting to note that there is no notion of a curriculum. There is just a syllabus that is available.

There are a large number of students who take computer science as option in the higher secondary school systems of the State Boards, but I will leave the study of these for a later time or for others to explore.

The syllabus along with the text book determines the intended scope of the material. In CBSE, we have a single text book for each subject that is brought out by NCERT and hence we have the option of studying the effectiveness of the syllabus in conjunction with the text book. However, in both ICSE and ISC, the Council does not prescirbe a text book, but leaves it to the discretion of the schools to specify text books, thus making it harder to study the quality of the prescribed ISC/ICSE computer science content.

A meta question immediately comes up. What is the basis for evlauation of the school CS curriculum? What are we measuring against? Is there an ideal CS curriculum for schools? There is no information I could gather for the above syllabi: Who formulated these?  What are the qualifications of those that created the syllabi?  What is the curricular basis for the current contents?  Given the lack of such information, a global search for CS school curricula brought up the following:

A Model Curriculum for K-12 Computer Science: A final report of the ACM K-12 Curriculum task force committee.

Here at least I could get some idea of the syllabus, the basis for the syllabus and the identiy and qualifications of the authors. We could possibly study this and see if this is a good basis for our evaluation. A brief glance through the curriculum caused some red flags, especially with things like ‘keyboard with correct fingering’ as an expected proficiency for 5th graders. A more promising resource was referred to by the ACM report:

The Curriculum and Course Syllabi for a High-School program in Computer science, by J. El-Gazer and D. Harel, created for the Minsitry of Education in Israel in 1999 and since widely implemented in Israeli schools. I was very positively biased even before I looked at the report since I am a great admirer of Harel’s book, Algorthmics. A detailed reading of the report convinced me that this is an excellent basis for our purpose. Unlike the ACM effort which has fallen into the trap of technology, this curriculum clearly focuses on the science of computer science, and the quality and attention to detail shines through. So I declare as closed, my search for an objective standard for high-school curriculum.

And here is the report: Ministry of Education, Israel, High-School CS curriculum.

What a contrast this is to the CBSE syllabus linked above!

The authors realise that teaching such a curriculum requires teachers who have a good grasp of CS and some more. The following paper outlines their thoughts on this important issue.
What (else) should CS educators know?

This report has made the task of evaluating CBSE/ISC curriculum much easier. Unfortunately, most of it will have to be trashed:-(



				
				
			

The Power of Computer Simulation for Learning

We have all seen the moon and its phases many many times. Now imagine trying to figure out answers to questions like: What time does a full moon rise/set: mental imagery might just work here. On your way to work two hours after sunrise, you find the moon rising: what phase is the moon in? Gets a little harder. Next, if the moon is rising during sunset, where will it rise a week later!!!

Moon Phases Simulation

This beautifully done simulation allows you to answer these what-ifs with surprising ease. Just drag the moon around and use a little imagination. No amount of drawing on the blackboard can convey so much so fast.

Imagine also bringing in the fact that the moon’s plane of revolution around the earth and the earth’s plane of revolution around the sun are at a slight inclination to each other and so we don’t get an eclipse every month..

Visual Programming

Scratch from the MIT media lab is a neat workbench to create interactive movies via visual programming. You can create cartoons and associate a program with each cartoon. This program is not written but assembled form visual blocks (here is an example).

A Scratch Program

The program specifies how the cartoon moves around, how large it is, how it looks, what sounds and callouts it puts out etc. Loops allow this code to run forever and conditions allow variation over time/space (so you could say turn back on hitting the edge). You can even define your own variables, assign values, do numeric and boolean comparisons etc, so this is a full programming language represented visually.

Scratch is intended as a first (and friendly) introduction to programming. Children who have no idea what the blocks mean can try to fit them together (the block shapes ensure that if the blocks fit and there are no intervening voids then the program is valid) and see their effect on their cartoon. I will need to watch a few children take this on to see how well it works. But sounds like a great idea, good for building your own interactive games as well. I do wish though that the media labs folks had built it on the web as a flash/javascript program rather than use a client, it should be easy to just do this whole thing in flash.

Scratch does leave you wondering why all of professional programming should not move to this mode (easy to read programs, no typos etc, and a lot of pleasant colour, this is a tantalizing thought, maybe some day).

Teaching Subtraction

How do you teach a 7 year old to subtract? My attempt at learning flash and also understanding the psychology of a 7yr old. Tried to make it fun/colorful, relate to situations that are very familiar in daily life, provide some adrelanine rushes, some instant gratification via bells and whistles, and some non-trivial insight as well (for a 7yr old), general themes I would probably like to weave into all material here. Have beta-tested this with a couple of kids (the transitions might seem a bit slow but that is the speed at which 7 year olds read). The speed trial is a decent hit, the show me how is a bit too dense (any ideas how to make that better?). If your kids play with it, I would like to hear their comments.

Play Subtraction

Ack: The critter cartoons above are borrowed (I have lost track of the source though), all else is home-brewed.

Education in India: At CrossRoads

We have an interesting situation emerging in India. Lets take school education first. Hundreds of thousands of people take college entrance exams each year. This mad rush to get into good colleges has created tremendous amounts of pressure on middle and high schoolers. Cashing in on this demand is a whole industry of alternative teaching centres, tutorial classes and the like, all aimed at preparing students for these entrance exams. All in all, parents, teachers and society are conspiring to overengineer entire generations into exam-writers (and ironically, not into engineers, doctors, scientists as intended). The casualty in this entire process is creativity and loss of the bigger picture. Coming out of this factory, one doesn’t think of building aeroplanes, curing illnesses, or growing more food. One thinks of how to get marks in an exam.

What can we do to give the children who go through the assembly lines of this factory a view of the bigger picture, to inspire them to be creative, and to solve real problems. I am not suggesting that they work less hard , but merely that they devote their energies to something more real, more useful in the long run, and more fun. Before we take a stab at this, let’s look at college education and the picture that it paints. I am looking specifically at engineering colleges here, but I am sure a lot of this holds for other types of colleges as well.

Thousands of engineering colleges have sprung up in India in the recent past, catering to 400,000 or so students. most of these are in the private sector and charge substantial tuition fees. In a way these colleges do a great service, provide roof, walls, infrastructure and an environment for learning. they also ought to reduce the mad rush for colleges by providing more seats, thus alleviating pressure on schoolers. maybe this has happened but not to a very significant extent. Why? There are several indications that the quality of students coming out of all but a handful of colleges is poor (so the mad rush for that handful of colleges continues). For instance, based on campus interviews I have participated in, I can vouch for the fact that a very large fraction of the IT/CS graduates cannot write correct code for something as fundamental as sorting. Nasscom says that only a quarter of the graduates are employable. IT majors have to invest very heavily in training and talk of finishing schools etc to makeup for deficiencies in college education. Why is the quality so poor? Most colleges do not have the vision to invest in quality teachers in sufficient numbers (and interestingly this includes the premier iits and iisc as well where for the last 10 years, department sizes have increased by not more than an average of 1 person or so per year, if not actually decreased, while the overall engineering student strength in the country has more than doubled or tripled); the iits and iisc do have quality but not the bandwidth or the inclination to reach out to the 400,000 students out there. Given the economics in play, it is safe to assume that most engineering students in India are not going to be able to interact with quality faculty for several several years to come.

How do a relatively small number of quality researchers, industry practitioners and passionate educators reach out to 400,000 engineering students and possibly many more BSc, BA etc etc students? Conventional models (walled campuses) clearly won’t work. Correspondence courses and the likes that are available, too staid, not in pace with the times, not cool, not fun. We need new paradigms. Two recent developments put the Indian education system at crossroads.

The first key development is the large scale availability of jobs. The 4 IT majors between them will take on 70-100,000 employees this year. Every software company is looking for people. All indications are that this job growth will continue. Just look at Infosys’s revenue, the first billion took 15 years or more, and subsequent billions a couple of years or less. The second key development is the dramatic growth of the web in India. At the rate at which mobile phones have penetrated the Indian market, it is a matter of time before internet access becomes commonplace in smaller towns and villages.

Can one tap the growing economy and the pervasive growth of the web to reach out to the 200m or so Indians of school/college age. The House of Algorithms is born out of this vision. Hopefully, one day, any person seeking to learn how to build a plane or a search engine will not spend his time practicing how to integrate obscure functions in the slim hope of clearing a gruelling exam, but just log in into the House of Algorithms and get started. No entrance exams, no need for reservations, access to all, anytime, from anywhere.

Hello world!

We will start with pythagoras theorem:

\alpha^2+\beta^2 = \gamma^2

I also want to try some inline variables \alpha to see how this appears. We have to write some long sentences to see how they wrap.

Drawing a triangle

This is how we draw a triangle.

Let me now try to embed flash:

[flash  http://www.houseofalgorithms.org/gof/ramesh/flash/subtraction/myproject.swf]