Wednesday, August 31, 2005

Interesting statistic

61% of Americans don't utilise their vacation time fully because of their fear of being replaced while on vacation (from a post in a Joel on Software forum).

Quote of the day

From portable gensets, we are now moving in to the manufacture of large and mid-size gensets of 5KV and 10KV.
-- Mr P.V.R.Murhty, group finance director, Yash Birla Group

As my weary head hits the pillow tonight, just before I fall asleep, I'll think about this gem and how its infinite wisdom and pithiness have enriched my life and made me pause and think about all the problems and challenges being faced by the genset industry in India.

No prizes for guessing which crappy newspaper I found this in. I am not simply picking a statement from a news item and anointing it as quote of the day; said crappy newspaper does this every freaking day in the business section.

Sunday, August 28, 2005

You have to go for it

Luque made his debut for Newcastle against Man United today. In the middle of the first half, there was a cross from the right which he attempted to score from with a spectacular volley. If he had scored, it would no doubt have been a candidate for the goal of the season. He promptly got some stick from the commentators for not doing something more sensible, something with more percentage in it, like playing the ball back into the six-yard box and hoping for something to happen.

Every top-flight footballer dreams of being world class, of being a Zinedine Zidane. But how does he become one? Unless he tries things like these, and succeeds, he will not be considered world-class. Therefore, he has to go for it, irrespective of any self-doubts or what the pundits may say.

This may not seem like the best deal for the team. As in this case, the team might have benefited from a more conservative approach. But what if Luque had scored? Not only would the team have gained a goal, but it would also have gained a world-class footballer who believes in himself, who will go on to score more such spectacular goals. In itself a big plus, this also has the effect of galvanising the entire team to higher peaks of performance, knowing they have a star in their midst. Thus the missed goal is a risk well worth taking.

It takes a thief...

Cover versions usually don't appeal to me, because of their parasitic nature, but The Ataris' Boys of Summer is an exception. Ironically, listening to this song is the best way to come out of the blues caused by listening to the original number. Which just goes to show that lyrics mean diddly-squat -- it's the tune, the beat and/or the voice that hooks us.

Capitalism and communism

This is probably one of the most insightful things I have read in quite a while:
'I think that social relations - friendships and alliances - should be seen as horizontal relations between equals in contrast to the vertical hierarchy of power relations,' (Wilkinson) says. 'Friendship and hierarchy are opposite principles of social organization. In friendship one is talking about mutuality and reciprocity - your needs being my needs. Hierarchy is about power, coercion, and access to resources regardless of other people's needs . . It's strength and power that determine who gets what, and I think that's the fundamental reason why as inequality increases the social environment deteriorates.' We have much to learn, he says, from the 'vigilant sharing' of hunter-gatherer societies, where people 'don't compete for the essentials of life.'"

Saturday, August 27, 2005

.NET more secure than Java

Two things I learned from this paper:
  1. The byte code verification in Java is quite complicated (good thing I haven't attempted it in Vajra yet).

  2. It is also Godel-incomplete, in a kind of way.
I was actually under the impression that Java was more secure, so make that three things. The reason for this could be that I was subconsciously conflating .NET with the Windows OS.

Brand IIT: the people behind the image

Today's Hindu carries an article that talks about the IITs, their significance and suggestions to improve them. I have some (mostly negative) things to say about this article, but being an alumnus, my viewpoint may be considered biased as well as, well, inflammatory. I am going to wait for some time and, if I feel it is worthwhile, go ahead and speak my mind.

These are the times when the need for anonymity becomes apparent. Sometimes the best way to say things that may cause offence is to do so anonymously. As long as one is not spreading lies and innuendo, that is.

Friday, August 26, 2005

Chavez and Bush

First, about Chavez (from The Hindu):
(Chavez) never stops talking and he never stops working. He has time for everyone and never forgets a face. For several years he travelled incessantly around the country, to keep an eye on what was going on. This was not mere electioneering, for he would talk for hours to those who had hardly a vote among them. He exhausts his cadres, his secretaries, and his Ministers. I have travelled with him and them into the deepest corners of the country, and then, after a 16-hour day, he would call the grey-faced Cabinet together for an impromptu meeting to analyse what they had discovered and what measures they should take.
Now the fun part -- Maureen Dowd rips Bush a new one:
W. vacationed so hard in Texas that he got bushed. He needed a vacation from his vacation..."I'm kind of hangin' loose, as they say," he told reporters.

As the Financial Times noted, Mr Bush is acting positively French in his love of le loafing, with 339 days at his ranch since he took office -- nearly a year out of his five.
And finally, about the latest rationale for the Iraq war:
What twisted logic: with no WMD, no link to 9/11 and no democracy, now we have to keep killing people and have our kids killed because so many of our kids have been killed already?...Just because the final reason the President came up with for invading Iraq -- to create a democracy with freedom of religion and minority rights -- has been dashed, why stop relaxing? W. is determined to stay the course on bike trails all over the West.

Thursday, August 25, 2005

PHB-speak

I usually like the IBM "On demand" ads -- they are smart, savvy and really makes one sit up and take notice. But the one where a lady advises the farmer and the people in his supply chain takes the cake for unadulterated PHB-speak: "customised, integrated, real-time web portal"? Uggh.

Talk about coincidence. As I type this, the ad where the lost trucker who is being helped by an IBM helpdesk lady who is tracking his shipment through RFID played on TV. The best and the worst, side by side.

Tuesday, August 23, 2005

No Bloglines? No problem.

The latest casualty in my running battle with our sysadmins is Bloglines: it has been added to the proxy server's blacklist. Never mind that Bloglines can be used to read "productive," work-related blogs as well.

The good news is that Newsgator seems to have escaped this blacklisting (the proxy server probably blocks any URL that contains the string 'blog'). I have therefore dusted up my Newsgator account and have brought it in sync with my Bloglines subscriptions.

Though I prefer Bloglines over Newsgator, I am beginning to like 'Gator and am getting more and more comfortable with it (either that, or I am making a virtue out of a necessity. Take your pick).

Monday, August 22, 2005

Saturday, August 20, 2005

Vajra integrated with Classpath

Got Vajra to print a string using Classpath's SOP at last. But it's pretty unstable at the moment; things work only when all the debug flags are set; otherwise I get seg faults. Thus, as things stand, to see a simple "Hello, World!" (well, it's actually "Vajra has been integrated with Classpath!") I have to put up with about 17,000 lines of debug messages to stdout and ~170 megs of log statements dumped to the log file.

Self respect

I don't know who should be lined up against the wall and shot for this: the Zee folks or the HDFC guys. Probably both.

This is the reason for my anger: during commercial breaks in Zee Cafe, we are shown a still with a caption for an HDFC insurance plan for children. This is followed by a promo for either a) Friends that shows Ross cuddling his baby girl or b) the movie Crossroads with some mushy scenes involving Dan Aykroyd and Britney Spears. Next comes the actual HDFC ad.

Self respect my ass.

Update: HDFC are sponsoring the movie (not sure about Friends, though); the reason I missed this earlier is because I turn the mute on during commercial breaks. Still no excuse for the blatant appeal to emotion.

Pictures

I set up the Epson CX4500 scanner successfully in Linux. Still haven't figured out how to use it as a non-root user, though. I thought I would post some scanned pictures in the meantime:



This is the baby rat killer. Don't be fooled by the benign expression.

And here is her accomplice:

Thursday, August 18, 2005

Michael Rivero doesn't get it

Much as I admire Mike's work and the service he is performing, I have to take exception to his response to an article about defective software in, of all places, rense.com:
The problem is that software engineers are having to STOP work on the product software to run around in circles dealing with hackers, worm writers, virus writers, porno spammers. etc. It is the fault of these cyber-criminals that our software is far from perfect, yet costs more.
While there are plenty of reasons for software suckage, programmers lacking time on account of being too busy fighting hackers and spammers is definitely not one of them.

Wednesday, August 17, 2005

Out of sight, out of mind?

From a study published in Current Anthropology via George Monbiot:
The Piraha (a tribe found in the Brazilian Amazon), Everett reveals, possess "the most complex verbal morphology I am aware of [and] are some of the brightest, pleasantest, most fun-loving people that I know". Yet they have no numbers of any kind, no terms for quantification (such as all, each, every, most and some), no colour terms and no perfect tense. They appear to have borrowed their pronouns from another language, having previously possessed none. They have no "individual or collective memory of more than two generations past", no drawing or other art, no fiction and "no creation stories or myths".

All this, Everett believes, can be explained by a single characteristic: "Piraha culture constrains communication to non-abstract subjects which fall within the immediate experience of [the speaker]." What can be discussed, in other words, is what has been seen. When it can no longer be perceived, it ceases, in this realm at least, to exist. After struggling with one grammatical curiosity, he realised that the Piraha were "talking about liminality - situations in which an item goes in and out of the boundaries of their experience. [Their] excitement at seeing a canoe go around a river bend is hard to describe; they see this almost as travelling into another dimension".
Me think Piraha people plenty smart. Me think Piraha people really know how to live life. Not wasting any time clinging to ghosts of the past or worrying about the future. As Philip Kapleau says in his foreword to Zen Keys:
For what else is there but the pure act -- the lifting of the hammer, the washing of the dish, the movement of the hands on the typewriter, the pulling of the weed? Everything else -- thoughts of the past, fantasies about the future, judgments and evaluations concerning the work itself -- what are these but shadows and ghosts flickering about in our minds, preventing us from entering fully into life itself?

Movie Review: Be Cool

Chili Palmer (John Travolta) is a street-savvy man (thug?) with connections to Hollywood who wants to make it in the music business. His foray starts off with the murder of Tommy Athens (James Woods) by the Russian mafia, who are pissed off with him for refusing to pay them protection money. Chili teams up with Tommy's widow Edie (Uma Thurman), and together they try to produce an album with Linda Moon, a talented singer struggling to make it big. The only problem (two problems, actually) is that Moon is currently under contract with Nick Carr (Harvey Keitel), who isn't averse to taking out a contract on Palmer to hold on to Moon. To add to the fun, Chili and Edie also have to deal with a bunch of West Coast rapper thugs led by Sin LaSalle, a producer, who wants the money owed him by Tommy a.s.a.p., with vig, or else... BTW, did I mention that the Russian mafia is also interested in Chili, him being a witness to Tommy's murder?

Contrary to what some of the folks over at imdb.com say, it's a thoroughly enjoyable movie from the get go. Dabu (played by André 3000 of Outkast) is pretty hilarious as one of the rapper thugs, as are Raji (Vince Vaughn), a black man stuck in a white man's body, and Elliot Wilhem (The Rock), Raji's gay bodyguard with silver screen ambitions whose only claim to fame is his ability to lift one eyebrow cockily.

Four stars out of five.

Monday, August 15, 2005

How the mighty have fallen

Not to take anything away from England, but seeing the Aussies in the dressing room jump up in delight and celebrate when Brett Lee finally saw off Harmison's final delivery was pretty pathetic.

Opera + Privoxy = Firefox (almost)

My recent experiences with Firefox (1.0.6) have been less than satisfactory; the ForecastFox extension keeps saying that I do not have permissions for some file every time I start Firefox (this started happening after an upgrade of the extension). Firefox also doesn't seem to remember my passwords sometimes. I have switched to Opera for the time being. I was worried that I would miss the Adblock extension, but it turns out that Privoxy does a good job in blocking ads. Such a good job that even the banner ad in Opera is blocked (I am planning to allow Privoxy to display the ad once each session, just to ease my guilt).

I miss the other FF extensions, though - the Gmail/Bloglines notifiers, DictionarySearch and ForecastFox. Opera has a Feeds option that takes care of the notifiers; I can also use kweather for the forecast, which leaves only the dictionary thing.

We pay him for saying things like this?

That Kadirgamar's assassination was a "premeditated act of violence"? News flash for the PM: a) If somebody kills another person by shooting him, nobody would confuse it for a non-violent act b) unless the assassin was having a friendly conversation with Kadirgamar, and whipped out a gun and shot him over some sudden disagreement, it was definitely premeditated.

Sunday, August 14, 2005

Rhetoric and sophistry

I took a course called "The Theory and Practice of Rhetoric" in my senior year in college. This course was offered by the Humanities Department on an experimental basis; the ten or so of us who opted for this elective course were the first (and probably the last) bunch of students to do so. We started out with Aristotle's syllogisms, learned about the various logical fallacies and argument techniques and came up with our own bits of "well-reasoned" arguments (short speeches, a term paper and so on). All in all, a very enjoyable way to earn the required humanities credits.

Anyway, this course came to mind when I was dwelling on the number of poorly argued, emotional articles that I come across in the course of my reading (both online and print). One has to be very discerning and discriminating to really understand the issues involved and not be swayed by the emotions or the faulty logic employed by these articles. Once you get into the habit of not taking everything you read at face value and looking at things critically, it's pretty astonishing how much crap passes for news and informed comment (no, this is not a dig at Juan Cole -- I have a lot of respect for his views and read his blog practically every day) these days.

C++ FAQs

I recently bought a copy of C++ FAQs. I had read the online version about four or five years ago and found them quite useful, so I felt that it would be worthwhile getting hold of the print edition as well.

It's a good book, no doubt about it. But having read both Effective C++ and More Effective C++ in the interregnum sort of takes away the sheen from C++ FAQs. Scott Meyers' folksy and humorous style has a lot to do with this. The authors of FAQs do attempt some humour (I especially liked their answer to the question "Do customers ever change their requirements?"), but they are not in the same league as Myers.

Another slightly off-putting thing is the independent nature of each question. Since each FAQ can be read by itself, you feel slightly disconcerted to see identical (copy/paste?) wording in the answers to adjacent questions.

One section that deserves praise is the chapter on architecture and frameworks. The authors have done a great job in succinctly explaining, in less than ten pages or so, the role of architecture and the characteristics of a good framework.

Saturday, August 13, 2005

The Rude Pundit is no longer anonymous

He is Lee Papa, a professor of drama studies at an American university. I would have preferred it if he had stayed anonymous. Knowing that I can now put a face to his rudeness somehow lessens the effect of his posts. I'm also not sure whether he can maintain the level of brutal honesty in his posts without the cloak of anonymity.

Who's next, Xymphora?

Movie Review: Madagascar

Not a sucky movie, but nothing much to write home about either. Didn't like the blatant rip-off of Eddie Murphy's donkey character from Shrek and Shrek 2 (now, that was some movie, alright).

Some of the good parts (few as they were):
  1. The antics of the penguins and the chimp with the British accent

  2. The raccoon gang (especially the king and the sweet little baby one).
Yet another unproductive Saturday evening draws to a close (well, not totally unproductive: the English Premier League has kicked off today -- Villa and the Wanderers are tied at two apiece as I type this -- so that's something to cheer).

Now I'm really convinced

From an article in today's Hindu about how the revaluation of the Chinese yuan is leading to more foreign investment in other Asian countries' stock markets:
"If China has a currency that is going to appreciate, then your currency becomes more competitive relative to China and your exports should do better."
But just a little further down:
But there is another rationale. The higher yuan means that Asia's other currencies will also rise, so foreign investors who buy stocks denominated in these currencies stand to see a return even if the stock prices go nowhere.
Translation: "We are investing more because the currencies will become more competitive. We are also investing more because the currencies will become less competitive". Can't they at least be consistent in their rationalisations? Reminds me of Mandelbrot's comment a while ago.

Friday, August 12, 2005

Sloppy journalism

There is a story in yesterday's DC entitled "Is encryption legal in India?" that goes like this:
Is encryption legal in India? Well that's the impression one gets when you log on to any of the online auction sites. Any Indian citizen, unaware of the IT Act 2000 or the Wireless and Telegraph Act would be led to believe that it is, indeed, legal in India, without realising that he/she would be liable for imprisonment for up to five years.
Wait a minute, if encryption is illegal in India, am I breaking the law every time I log in to my bank's site using HTTPS? Reading on:
For instance, ebay.in, an online auction site has been, apparently, inducing (into participating) its buyers and sellers into breaking the law. Incidentally, eBay India had acquired bazzi.com [sic] in July 2004. It may be recalled that bazzi.com's [sic] CEO Avnish Bajaj is still facing charges in connection with circulation of the lewd MMS depicting two Delhi Public students in a sexual act.
The paragraph starts with "For instance", but does not substantiate the dramatic charge it made in the previous paragraph. Also, the reference to baazi.com has no relevance to the point being made.
While the Indian IT Act, 2000 allows absolutely no encryption, eBay.in, seemingly, tells its site visitors that 128 bit encryption is legal in India. Furthermore, eBay.in has been inviting its customers to fax their Credit Card details in order to pay sellers through PaisaPay (a gateway used for payment provided through leading banks like ICICI, HDFC, Citibank), that the web site claims comes to a "secure server" and only "authorised eBay employees have access to".
Why do I get the feeling that the story is, at least partly, a hatchet job on eBay.in? There is also no evidence (in the form of a quote from the web site) to back up the claim that eBay tells its visitors that 128 bit encryption is legal in India.
IT act experts point out that by asking customers to fax their credit card statement which contains other details like name, credit card number and billing address, these web sites are actually "aiding and abetting" credit card frauds.
At last, something I agree with. Never mind the fact that this is absolutely tangential to the story.
"Going by the present status," said informed sources, "The Central Government, so far, has not notified any security procedures under Section 16 of the IT Act for on-line electronic commerce, banking and financial transactions in India." Informed sources also point that the department of telecom, which consents to 40 bits [sic] encryption also seems to be overlooking (the) law.
So I am breaking the law when I check my bank balance online. Hmmm.
Cyber law expert Pawan Duggal said that, "Although the government has not made any effort to define encryption in the Indian IT Act, but technically it clearly says that it is not allowed."
Allowing that encryption is illegal in India and that the authorities do not enforce the law, the story could have made its point just as well (if not better) by leaving eBay.in out of it, or by using any site that uses SSL as an example.

Thursday, August 11, 2005

Iranian oil bourse

If there is one fact that still lends credence to an impending attack by America on Iran, this is it. I have linked to this article before, but it's worth a second read in light of the Iranian oil bourse.

Wednesday, August 10, 2005

OpenSuse.org is up

I am considering downloading Suse 9.3, but the size of the download makes me pause -- five 700 MB ISOs. At the current bandwidth rates, it would cost me something like Rs. 2000. But one difference now is that I have five independent ISO's to download, so it's not the all-or-nothing-proposition as used to be the case when there was just one huge DVD ISO to download. I also don't have a DVD writer, so there's not much I could have done with the ISO even if I had downloaded it successfully.

One alternative is to scout for folks here in India who ship these things for a few hundred rupees. I have a feeling 9.3 will become available shortly via this route (if it's not available already, that is).

Workaround (sort of)

I have come up with a workaround for my problem: I am going to retain object and Class as independent classes, but cast from one to the other on a case-by-case basis. I know I am throwing type correctness out the window, but I seem to have no other easily implementable solution. But I think things will be OK because the casting is going to happen in code that is in my control as VM implementer -- either in my implementation of JNI, or in the invocation of native methods by the VM (in particular, the way arguments are passed to these methods).

I have managed to take Vajra past the point of the previous failure, so I think this approach will work. But there is still a lot of work left to do to implement this strategy in all the required places.

Monday, August 08, 2005

Another gumption trap

It looks like I have hit a major roadblock in Vajra. The problem stems from my not having thought through fully how to handle class objects. I have two classes called object and Class, which model the respective Java constructs. Whenever I need a class object, I create a dummy object which has a Class object as its data member. I was able to manage things as long as I was aware of when I needed to access the class object and when I did not (e.g. invoking static methods vs instance methods). But I have at last run into a situation where I will not be able to make this distinction: places where the class object is used in a (for want of a better word) non-static scenario -- as, for example, happens in Classpath's Permissions.java:

perms.put(perm.getClass(), allPermission);

(which is incidentally where Vajra chokes right now).

The ideal solution is to inherit Class from object, as is done in JNI, but I think this will break too many things at this stage. Meanwhile, I am looking for a less painful solution...

Friday, August 05, 2005

What is consulting?

Here is a great post from Bruce Eckel on the difference between a real consulting firm and a "high-tech body shop". This post struck an immediate chord with me because I had just had an interesting conversation with a friend (via email) discussing the same thing.

Design Patterns

Design Patterns recently won an ACM award for its contribution to the field of programming languages. I guess this is an apt time for me to mention a recent epiphany I had (I seem to be having a lot of epiphanies lately. Note to self: go easy on the bhang).

Why do we ask for a user name *and* a password to authenticate a user? Can't we just accept a single unique token? The token can be mapped to a user behind the scenes. It can be made unique by generating it using user-specific information (e.g. 'What is your pet's mother's maiden name?'). Then it occurred to me: separation of the user name and the password provides an additional layer of abstraction; the user can change his password independently of his ID. Also, passwords need not be unique; only the combination of user name and password has to be unique. This provides for more flexibility,

*removes tongue from cheek*

Cartoon of the day

:-)

Tuesday, August 02, 2005

Epiphany

I couldn't download the Java Web Services Developer Pack installer at work today because our proxy server blocks all executable content. I wanted only two JAR files from JWSDP [*], so I decided to download the Unix version (a shell script) and see if I could hack it. I had managed to install Cygwin a while back, so I thought I would try to run the shell script from Cygwin and see what happened.

Long story short: after tweaking the script a bit, I managed to install JWSDP and extract the needed JAR files. What made this possible was that the Unix installer is actually a wrapper around the Java version of InstallShield, which will of course run on any Java environment.

This whole experience was an eye-opener for me: the way the operating system was circumvented by the two layers of abstraction -- Cygwin and the Java VM -- brought home the fact that our dependence on the OS is less than what we think it is; it also makes me wonder what might have been if Netscape's air supply had not been cut off and Java had really taken off as an alternative, equally strong platform for application development on the desktop.

[*] The Sun JSF implementation JARs. Actually, I could have gotten them from somewhere else, but that's another story.