Archive for August, 2011

Classroom interruptions and why we hate it!

August 31, 2011

Geoffrey Pullum at Linuga Franca (via Language Log):

I hate cellphone interruptions more than almost any lecture-interrupting event not involving gunplay. Our students seem not to realize (though our colleagues surely should) that explaining complex material to an assembly of strangers within a time limit is stressful. It’s harder than those who have never done it would think. Trying to get back on track after being blindsided by a disturbance can cost you as much as a minute—perhaps 3 to 5 percent of the time you have for a conference paper (and 2 percent even in a 50-minute class).

If you’re a little too frank (“What the hell is wrong with you morons—your phones are so smart yet you’re all so dumb”) you risk losing audience goodwill. Yet you don’t want to just tolerate it (“Umm … let’s see now, where was I?”). I remember seeing Stephen Jay Gould at Stanford pleading with his audience to stop popping flashbulbs in his face (they had been sternly warned not to). It seemed weak. Step down from the podium and smash his camera, I thought.

Take a look!

Sentence of the day

August 30, 2011

Every generation gets the self-help guru that it deserves.

From here; via Abi.

State or stateless?

August 30, 2011

Andre Beteille’s piece is a must-read; here is one interesting view point from the essay:

Gandhi is acknowledged as the architect of India’s independence, and Ambedkar as the architect of its republican Constitution. No two leaders of a single country could have differed more on the valuations they placed on the State and on society. Gandhi viewed the State with mistrust and placed his hopes on the regenerative powers inherent in society. Ambedkar, on the other hand, was mistrustful of Indian society as he had experienced it, and placed his hopes on the constitutional State for the regeneration of the nation. It is hard to tell how he would have judged the disorder set in motion today by popular movements in the name of civil society. Indians have learnt to pay lip service to Ambedkar as the leader of the Dalits. But he was much more than that. He was above all the architect of the constitutional order which cannot be safeguarded if the State is kept under constant attack by every section of an expanding and discontented middle class.

Take a look!

Academic publishing

August 30, 2011

Recently, I learnt that in the food services industry in Mumbai, the profits (declared in the income tax returns) is typically of the order of 30-40% of the turnover. Apparently, academic publishing is no different; the profit margins are about 40%. John Hawks points to a piece which gives this information, and also tells that the solution is not in complaining about the industry but to come up with alternatives!

Could somebody please let Amazon take charge of this? They have a system that maintains content at varying levels of pay/free, recognizes its users across multiple devices, and presents text material in an easy-to-read format. Every research author can publish to the e-book format as easily as an export from a word processor. Let’s suppose that editors charged for the service of managing peer review, at levels that vary with the prestige that they have earned. Some editors would charge a fee that enabled them to pay reviewers, some would be paid or subsidized by universities. Then authors could choose to pay for a prestigious editor, and recoup that cost by grants or charging per-access, again, possibly subsidized by libraries.

The solution to the collective action problem isn’t complaining about the journals, it’s providing a solution that works better.

A nice piece.

Technology, courage and fun

August 29, 2011

The basic personal start-up mechanism for research has to be curiosity. I find myself curious about how something works, or I observe something strange and begin to explore it. Because I am fond of symmetry, when I observe some simple symmetry, I am almost inexorably drawn into exploring it. For example, one day Don Oestreicher, who was then a graduate student, and I noticed that the number of random wires expected to cross the midsection of an N terminal printed circuit board is N/4 independent of whether the wires connect two or three terminals on the board. This comes about because although the probability of crossing is higher for wires connecting three terminals, 3/4 rather than 1/2, the number of wires is correspondingly reduced from N/2 to N/3. This simple observation led us to explore other wiring patterns, gather some data from real printed circuit boards, and eventually to publish a paper [4] called How Big Should a Printed Circuit Board Be? Follow your curiosity.

Beauty provides another form of personal encouragement for me. Some of the products of research are just pretty, although mathematicians prefer to use the word “elegant.” The simplicity of E=MC2, the elegance of information theory, and the power of an undecidability proof are examples. I got interested in asynchronous circuits by discovering a very simple form of first in first out (FIFO) storage that has rather complete symmetry [1,8]. It simply amazes me that my simple and symmetric circuit can “know” which way to pass data forward. The beauty itself piques my curiosity and flatters my pride.

Simplicity is to be valued in research results. Many students ask, “How long should my thesis be?” It would be better for them to ask, “How short can it be?” The best work is always simply expressed. If you find something simple to explore, do not turn it aside as trivial, especially if it appears to be new. In a very real sense, research is a form of play in which ideas are our toys and our objective is the creation of new castles from the old building block set. The courage to do research comes in part from our attraction to the simplicity and beauty of our creations.

I, for one, am and will always remain a practicing technologist. When denied my minimum daily adult dose of technology, I get grouchy. I believe that technology is fun, especially when computers are involved, a sort of grand game or puzzle with ever so neat parts to fit together. I have turned down several lucrative administrative jobs because they would deny me that fun. If the technology you do isn’t fun for you, you may wish to seek other employment. Without the fun, none of us would go on.

I tried to capture the spirit of research as a game in my paper about our walking robot [2]. Unfortunately, the editors removed from my paper all of the personal comments, the little poem about the robot by Claude Shannon, the pranks and jokes, and in short, the fun. The only fun they left was the title: Footprints in the Asphalt. All too often, technical reports are dull third person descriptions of something far away and impersonal. Technology is not far away and impersonal. It’s here, it’s intensely personal, and it’s great fun.

That is the last section of Ivan Sutherland’s Technology and Courage, a must-read piece. Link via Relevant History.

The Finnish lesson

August 28, 2011

Via Abi: Why are Finland’s schools successful? The short answer: a strong public school system. But the long answer in the piece is worth every minute of your time that you spend reading it.

Mukul Kesavan takes sides

August 28, 2011

Mukul Kesavan begins by telling why he likes Team Anna’s protest; and in the last four paragraphs does a U turn to tell why he has decided to change sides:

I tried hard, therefore, to empathize with Team Anna. But it didn’t last. N. Ram of The Hindu, in the course of a televized discussion, urged critics of the jan lok pal bill to ignore the angularities and eccentricities of individuals in Team Anna the better to appreciate the social significance of the movement. This is easier said than done because it’s harder to read social forces than it is to react to human faces.

So when Anna pointed to the scar on his forehead (which he attributed to hostile Pakistani fire) and declared that he was now engaged in fighting home-grown thieves and then called them traitors for good measure, I was appalled in a shabby-genteel way by the crassness of his rhetoric. But Anna, at least, had an excuse: the Congress’s minions had called him names too. To watch the likes of Arindam Chaudhuri and Om Puri bluster and splutter their way through diatribes about the political class, was to learn that this movement was without intelligence or discrimination.

The clincher, though, was a performance by Kiran Bedi, a member, along with Kejriwal and Prashant Bhushan, of Anna’s core group. Arvind Kejriwal is the political strategist, Prashant Bhushan is the in-house legal mind; it isn’t clear to the outsider what Kiran Bedi brings to the inner circle. Annoyed by Parliament’s failure to begin a debate on the lok pal bill on Friday, she began to slag off Parliament in particular and members of parliament in general. They were lazy, callous and unworthy of respect. Even as she was speaking, she spotted an MP in Ramlila Maidan and began heckling him publicly.

In the end, it wasn’t what she said as much as the way she said it that torpedoed the reluctant admiration I had built up for Team Anna’s campaign. Kiran Bedi, pioneering policewoman, pranced around the stage trying to parody the uselessness of MPs. The wisdom of doing this aside, it was the grotesqueness of the performance that was striking. She borrowed a scarf, draped it like dupatta over her own head and launched herself into a little skit, looking for all the world like a talentless schoolgirl bidding for attention. In the end, I turned against the jan lok pal crusade not on ideological grounds, but aesthetic ones. Anna was a star, but his repertory company, it turned out, was full of amateurs and bit players auditioning for lead roles, small people dwarfed by a giant stage.

A must-read piece.


August 28, 2011

After Scala, it is Go that Bruce Eckel is excited about; along the way, he also tells about some general philosophy about developing programming languages and learning them:

I’ve been intrigued by the Go language since I first encountered it about 6 months ago. There are some great online lectures that you can find here.

Go solves a number of problems that C++ and Java didn’t. Unlike C++, Go has a garbage collector which eliminates a large class of memory-leak issues. Go has a much cleaner syntax than either language, eliminating a great deal of programmer overhead when writing and reading code. Indeed, based on syntax alone I personally classify Go, along with Scala, as a next-generation language because they respect the needs of the programmer; they serve the programmer rather than telling what hoops must be jumped through.

But one of the biggest issues solved by Go is parallel programming. Go has built-in support for Communicating Sequential Processes (CSP). You can start any function f() as a separate process by saying go f(), and then communicate with that process using channels (which safely transport messages back and forth). It’s worth noting that Go was initially designed to create servers (not web servers per se, just general-purpose servers as we’ll explore in this article) and has expanded to a general-purpose systems language; it creates natively-compiled executables and tends to be more closely aligned to the hardware — thus “goroutines” tend to be tied to the processors/cores of a single machine. Scala, in contrast, seems to be aiming for distributed multiprocessing systems, especially when you look at the direction that Akka is going (the rumor is that Akka will eventually be folded into Scala).

My interest here is to make the case for hybrid programming. I distinguish hybrid from polyglot programming; the latter means that the programmer has learned and benefits from knowing multiple languages (this is essential, I believe, as it allows you to see solutions in multiple ways rather than being restricted to the lens of a single language). When I say hybrid programming, I mean that a single application is crafted using multiple languages.

In my experience, all languages do some things well but have blind spots. When you use those languages, you can move very quickly when utilizing their “power regions” but the project slows way down and becomes expensive when you encounter the problem areas. Why not use multiple languages and let each one work to its strength?

Coming from a background in C/C++, I find Go to be a real breath of fresh air. At this point, I think it would be a far better choice than C++ for doing systems programming because it will be much more productive and it solves problems that would be notably more difficult in C++. This is not to say that I think C++ was a mistake — on the contrary, I think it was inevitable. At the time, we were deeply mired in the C mindset, slightly above assembly language and convinced that any language construct that generated significant code or overhead was impractical. Things like garbage collection or language support for parallelism were downright ridiculous and no one took them seriously. C++ took the first baby steps necessary to drag us into this larger world, and Stroustrup made the right choices in making C++ comprehensible to the C programmer, and able to compile C. We needed that at the time.

We’ve had many lessons since then. Things like garbage collection and exception handling and virtual machines, which used to be crazy talk, are now accepted without question. The complexity of C++, and the resulting impact on productivity, is no longer justified. All the hoops that the C++ programmer had to jump through in order to use a C-compatible language make no sense anymore — they’re just a waste of time and effort. Now, Go makes much more sense for the class of problems that C++ was originally intended to solve.

Sandwiched between these sections is example codes with explanations as to making a hybrid program of python and Go, which, more programming oriented among you might enjoy!

Ram Guha on Anna

August 27, 2011


Some television channels claim that Anna Hazare represents the overwhelming bulk of Indians. Print, cyberspace and soundings on the street suggest a more complicated picture. Liberals worry about the dangers to policy reform contained in street agitations led by men whose perfervid rhetoric undermines constitutional democracy. Dalits and backward castes see this as a reprise of the anti-Mandal agitation, led and directed by suvarna activists.

To these political reservations may be added the caution of the empirical sociologist. The population of the Delhi metropolitan area is in excess of 10 million; yet at their height, the crowds in the Ramlila Maidan have never exceeded 50,000. In May 1998, 400,000 residents of Calcutta marched in protest against the Pokhran blasts. No one then said that ‘India stands against Nuclear Bombs’. Now, however, as television cameras endlessly show the same scenes at the same place, we are told that ‘India is for Anna’.

This said, it would be unwise to dismiss the resonance or social impact of the campaign led by Anna Hazare. It comes on the back of a series of scandals promoted by the present United Progressive Alliance government — Commonwealth Games, 2G, Adarsh, et al. The media coverage of these scandals, over the past year and more, has led to a sense of disgust against this government in particular, and (what is more worrying) against the idea of government in general. It is this moment, this mood, this anger and this sense of betrayal, that Anna Hazare has ridden on. Hence the transformation of a previously obscure man from rural Maharashtra into a figure of — even if fleetingly — national importance.

The success of Anna Hazare is explained in large part by the character of those he opposes. He appears to be everything the prime minister and his ministers are not — courageous, independent-minded, willing to stake his life for a principle. In an otherwise sceptical piece — which, among other things, calls Anna Hazare a “moral tyrant” presiding over a “comical anti-corruption opera”— the columnist C.P. Surendran writes that “a party that can’t argue its case against a retired army truck driver whose only strength really is a kind of stolid integrity and a talent for skipping meals doesn’t deserve to be in power”. These two strengths — honesty and the willingness to eschew food, and by extension, the material life altogether — shine in comparison with the dishonest and grasping men on the other side.

Large swathes of the middle class have thus embraced Anna Hazare out of disgust with Manmohan Singh’s government. That said, one must caution against an excessive identification with Anna Hazare. Hazare is a good man, perhaps even a saintly man. But his understanding remains that of a village patriarch.

Read the whole piece!

HowTo: craft syllabus

August 27, 2011

John Hawks has some pointers!