Offline Programming

I have been thinking about teaching some beginner programming to some high-school age kids, for a while now. My main objective is to inculcate some interest in the subject in these kids, and also to hopefully teach them how computers actually work. I am interested to do this as a social contribution (i.e. gratis) and was thinking of starting a class at my temple. However, the obvious problem is that they do not have computers there.

I know that Computer Science can always be taught without computers. In fact, that is the method that I would prescribe for most CS university courses. Teaching CS without using computers will ensure that the students actually learn CS and not how to become computer programmers. However, going down the theoretical CS path would be very boring to a bunch of high-school/pre-teen kids.

So, I thought that I would ask some experts on ideas on how to proceed in teaching programming, without any computers.

I got many replies and some of them have proven to be very interesting. Most would rely on group activities and paper/pen approaches. This should have occurred to me ages ago. Turing could prescribe a working computer by using nothing but a paper/pen. Some of these ideas took that a step further and actually suggested I take a Knuth approach and design my own simple computer and programming language.

I think that is probably a good way to start.

I will design a very basic theoretical computer – with about 8 instructions – and teach the kids the basics of programming by performing small group activities on it. As a start, I will teach them to count in binary and explain the basic workings of a computer – memory, processor, input/output. For simple activities, I may get them to write simple programmes for this basic computer.

Then the group activities may involve programming their friends to perform tasks, have mock battles, or even play a simple game like checkers. I may have to adapt this depending on the age group of the kids.

Sweet!

PS: Another useful site that some suggested was Computer Science Unplugged, which has a bunch of work sheet activities that can be completed by kids. This may be useful for me to adapt into my teaching material.

Scholarship Merits

Our government has announced that from 2010, a new scholarship category will be created – one that is entirely based on merit only. While some people may hail this as a solution to our annual public scholarship problems, I feel that this is just a stop-gap solution. I have been really fond of using this phrase recently: “this does not solve the problem but merely postpones the inevitable”.

I would like to categorically state that this measure does not solve the ‘lack of transparency’ problem with scholarship allocations at all. All it will do, is further complicate the problem. The problem that people had with the present system was the lack of transparency. As a result, the people only saw what they chose to see. The solution should have been to adopt more transparency. However, the government’s proposed solution does not address the problem at all.

As a temporary measure, it may placate the public for a while. Unless the greater issue of transparency is addressed, you will still hear grouses from the ground that the scholarship selection process is unfair. Let me work through a simple example.

By definition, let us say that the top 1% of our students are considered the crem de la crem of the batch. This number would easily come up to several thousand students each year, much more than there are scholarships available. And by limiting the exams to only 10 subjects only, looking at recent numbers, you can be quite sure that each and every one of these students will have A1s in all these 10 subjects.

Hence, the situation becomes a subjective one, once again. In a subjective situation, some students who were left behind, will obviously bitch and cry about the whole situation. In fact, the students will probably cry about the situation regardless, as long as they view that they have been treated unfairly. And as long as there is a screen (even a semi-opaque one) between the students and the selection process, someone will feel that they have been mis-treated.

What I don’t get is why the scholarship process has to be so opaque. Every Malaysian understands that the government needs to act within the bounds of our Constitution (Article 153 in particular). Some transparency would go a long way into buying a lot of good will. In the larger scheme of things, maybe our new PM is thinking of calling for a new mandate some time in 2010 and this is going to factor into it.

PS: I still like my web 2.0 idea of solving the problem – Why not let the kids decide among themselves, who deserves the scholarships? Set up a website where the kids can all make their scholarship applications. Then, list out some basic features, such as their results, activities and what nots. Nothing that can be made to identify an individual directly. Then, let the kids and other Malaysians vote on whom they think deserve a scholarship. The top 1000 or something, gets offered a scholarship.

Groupware Servers

I wanted to try out some groupware servers recently. Although these systems are designed for use in an organisational environment, there are advantages in using a groupware system at home. In my particular case, it saves me the trouble of backing up important personal data such as calendar, tasks, notes, contacts etc. I would be able to store and access it in a single convenient and central location. Thanks to the powers of virtualisation, I was able to easily play with a number of popular open source solutions to see which one was easiest to use.

I created a number of new virtual servers and installed three popular open source groupware solutions – citadel, egroupware and kolab – one in each. They are all easy enough to integrate with Kontact, my personal information management software of choice. Of the three, the easiest to install, setup and use was Citadel. Citadel is an all-in-one groupware and email solution. It is entirely integrated. Therefore, I did not have to set up a database, imap, pop3, smtp and web servers separately. Another advantage of using Citadel is that it can be accessed in a number of different ways – through a web browser, a telnet terminal and also through email (imap).

With a groupware server, my email, calendar, tasks and contacts are now all stored on the server. This can now be accessed anywhere in the world. I can access them at home on my laptop computer and also access it through a text/web interface through the Internet. In fact, Citadel can be used to retrieve RSS feeds and also email from other servers. I am sure that there are other features that I have yet to discover about it.

Slumdog Millionaire

The DVD has been out for quite some time in Malaysia and I had actually bought it about a month ago. Unfortunately, I have not had the opportunity to actually watch it until today. Personally, I think that it was an extremely good movie and deserving of every award that it had won last year. I do not really know how to classify the film though. While the main theme is an undying romantic love story, the romance barely took up 10 minutes of the entire film.

Regardless, it was the highlight of my week – extremely inspirational.

Iran's Cyber War

According to initial reports, at the end of the election day in Iran, the communications black-out in Iran began. Citizens reported problems with using mobile networks and the Internet. Externally, people outside of Iran detected massive re-routing of the networks that connect Iran to the rest of the Internet. All these indicate that there is a communication outage happening in Iran. This has later been confirmed by further analysis. However, Iran hasn’t been disconnected from the Internet. It has merely been routed through specific paths in order for traffic to be better monitored and controlled.

All this control began to make sense once you factor in that various social networking sites have been blocked in Iran during the run-up to the elections such as YouTube, Facebook and Twitter. Control is much easier to maintain if the Internet is forced to go through specific information pipes on the Internet. You know that the cyber war reached new heights when the US State Department steps in and asks Twitter to defer their regular network maintenance in order to prevent outages in Iran.

So, the Iranian government tried to put a lock on information getting out. Unfortunately, governments are never very good at blocking the Internet.

See, our crazy-ass god-father of the open-source movement has painted a big target on his back by being the front-man for ‘NedaNet‘ (named after the lady who died in the previous video), a network of proxy servers to allow Iranians to gain access to the rest of the Internet. He has asked for others to sign up voluntarily. I was curious and checked out the configuration settings that he had provided. This got me laughing.

It seems that the Iranian government is happy with blocking a number of different sites and services. But god forbid that they block online games. Goodness knows that the country will be thrown into turmoil if the people were cut off from games. Seriously, the way in which the Internet traffic is currently getting out of Iran is by piggy-backing on gaming services. Let me say that again. Iran is blocking a lot of traffic, but not gaming traffic. In fact, researchers have confirmed that WoW and Xbox traffic is not being blocked at all.

From the configuration file given, other games that are on the free-access list are the likes of Heretic 2, Hexen 2, Baldur’s Gate, Asheron’s Call, Anarchy Online. Users have been advised to select other services as the Iranian government cuts off these games one by one. In fact, it also lists out the IP blocks owned by the Iranian government in order to block those out too. Hilarious!

Seriously man. Who knew that playing a game of Warcraft could actually help contribute to fighting Internet censorship.

Undead Authors

I just read about this thing, where the dead have helped co-author an academic paper. Yes, the dead was listed as a co-author to a paper. It was just a reaction to the XKCD comic on the right – where crazy mathematicians got dead mathematicians to sign off on their paper.

By the way, there’s no need to wait until the end times to write papers with dead mathematicians. One example of this is the paper “Higher algebraic K-theory of schemes and of derived categories” by R. W. Thomason and Thomas Trobaugh, which Thomason wrote with his deceased friend Trobaugh after Trobaugh appeared to him in a dream:

“The first author must state that his coauthor and close friend, Tom Trobaugh, quite intelligent, singularly original, and inordinately generous, killed himself consequent to endogenous depression. Ninety-four days later, in my dream, Tom’s simulacrum remarked, ‘The direct limit characterization of perfect complexes shows that they extend, just as one extends a coherent sheaf.’ Awaking with a start, I knew this idea had to be wrong, since some perfect complexes have a non-vanishing K_0 obstruction to extension. I had worked on this problem for 3 years, and saw this approach to be hopeless. But Tom’s simulacrum had been so insistent, I knew he wouldn’t let me sleep undisturbed until I had worked out the argument and could point to the gap. This work quickly led to the key results of this paper. To Tom, I could have explained why he must be listed as a coauthor.”

That’s just fun! Simulacrums rule! (Now, if only Megan Fox’s simulacrum would pay me a visit!)

Iran's War

I saw a video clip on Youtube today, a very graphic video clip – of a young lady dying on the streets. According to the stories, she was shot by the Basij, a volunteer paramilitary force in Iran. While the rest of us may not realise it yet, Iran is at the brink of civil war.

She fell to the ground with her eyes locked on to the camera. Forever the sceptic, I had actually thought that this might have been staged. Then, came the blood, dark and thick. Oozing out uncontrollably from her orifices. They flowed and pooled onto the ground around her, bathing her face in an eerie stream of red. There was just too much of it to pass off as spit and non of the convulsions that accompany regurgitation. That’s when it struck me. This is real. Her final moments on this earth captured, and forever immortalised, on the Internet.

It kind of disturbed me. I just needed to get it out of my system.

DISCLAIMER: GRAPHIC VIOLENCE. NSFW