Monday, February 07, 2005

Saw National Treasure yesterday. Pretty entertaining if you suspend your disbelief and go with the flow. I have only one nit to pick (assuming you let all the other monstrous nits go by): when Sean Bean and Co try to find out what 'Stowe' means, they go to Yahoo.com and type 'Stowe declaration of independence'! Haven't these guys heard of Google?

It could be just me, but I think there were some subtle barbs at the Bush administration as well (when Nicholas Cage reverently reads aloud a sentence from the Declaration of Independence about it being the responsibility of good men to act when they see something wrong happening, for example) .

Saturday, February 05, 2005

According to Gosling, Microsoft’s decision to support C and C++ in the common language runtime in .NET is one of the "biggest and most offensive mistakes that they could have made" because of these languages' inability to prevent things like arbitrary casting and so on.

Going by this argument, Java should never have had JNI. What prevents a native code call dumping all over your sweet and innocent Java objects?
While I agree with xymphora's sentiments in general, I do not think that the neocons (at least the younger ones) will end up in jail for their war crimes. In the 'Real' world (no pun intended), the rich and the powerful always manage to get away with whatever evil things they do. Being a citizen of a corrupt third-world developing country, this is borne out to me on a daily basis.
If Schopenhauer were alive today, he would have been instantly branded a male chauvinist. From his Essay on Women:
It is only man whose intellect is clouded by his sexual impulse that could give the name of the fair sex to that undersized, narrow-shouldered, broad-hipped, and short-legged race; for the whole beauty of the sex is bound up with this impulse. Instead of calling them beautiful there would be more warrant for describing women as the unesthetic sex. Neither for music, nor for poetry, nor for the fine arts, have they really and truly any sense of susceptibility; it is a mere mockery if they make a pretense of it in order to assist their endeavors to please.... They are incapable of taking a purely objective interest in anything.... The most distinguished intellects among the whole sex have never managed to produce a single achievement in the fine arts that is really genuine and original; or given to the world any work of permanent value in any sphere.
Here we are, happily traipsing along, making A-lists and wondering when our favourite porn portal will start an RSS feed, and this guys shoots down our core belief systems without a hint of remorse or mercy ;-)
I was flipping through the pages of a magazine called Better Photography when I came across a photograph that had been adjudged a winner in a competition conducted by that magazine. It depicted a crying man cradling a telephone receiver to his ear; nothing special about this photograph, except that when you look closer, you can catch a glimpse (through a window) of a woman hanging from the ceiling of an adjoining room. The man was probably calling the police.

Which of the following jerks deserves to have his balls set on fire?

1. The person who captured this moment on film
2. The person who decided to send this image to the competition
3. The person who adjudged it a winner

I am leaning towards persons 2 and 3, though I wouldn't mind a lit match stick being held under person 1's cojones for a minute.

Sunday, January 30, 2005

This is a great article about the realities of software development, in the form of advice to a newbie programmer. Excerpts:
Documentation: The true use of documentation is to bridge the inevitable gap between what the project is supposed to do and what it actually does. Politically written documentation bridges this gap by appearing to claim the former without actually denying the latter. On close examination, it will be found to say nothing at all.

Ass-covering: The chief difficulty is reaching a satisfactory compromise between ass-covering and not appearing too negative. If you know something is going to fail, make sure you point it out and have a record, but try to present it in a positive way. Say that it is a "major risk", rather than a certain failure. Try to request additional resources or time even when you know they will be denied.

Error messages and logfiles: As well as being later than you expect, the system will be less reliable than you expect. Make sure your debug and logfiles give you plenty of information. As with architecture, make sure that your error messages assign blame appropriately.

Overtime: ...better to do half an hour Monday to Thursday than two hours on Wednesday. It also sounds better to say: "I've worked late four nights this week." No-one will be keeping track that closely anyway.
Woe betide the PHB who gets the author of this article in his team ;-)
If you want to read Robert Fisk's latest article in The Independent's online edition, you will have to shell out £1; alternatively, you can read it at his web site for free. Talk about being on the horns of a dilemma...
Some 'heretical' thoughts: what's wrong if Iraq breaks up into three fragments (Sunni, Shia and Kurd), without any violence, something along the lines of the velvet revolution in Czechoslovakia? There wasn't a country called Iraq prior to 1918, anyway. On the positive side, the internal divisions tearing Iraq apart would disappear once and for all (assuming that these internal divisions are not a figment of the imagination).

Other considerations:
  1. This would play right into Israel's hands by permanently weakening one of its powerful enemies.

  2. Turkey would never allow this, as its own Kurdish minority would clamour vigorously to become a part of the new Kurdish state.

  3. The Americans would get to play their democracy-exporting games in three countries for the price of one.

It looks like the unsealed plastic containers are not just for overseas Iraqis; even the polling stations inside Iraq have them.

Saturday, January 29, 2005

An opinion poll recently conducted by the BBC found that 62% of the Indians polled felt that Bush's re-election was a positive thing for global security. Methinks this is the right-wing Hindutva chauvinism shining through...
Gumption trap update: Solved the problem, finally. I introduced a temporary global variable and pointed it to the offending object; adding a watch on this global variable helped me identify the exact line of code that caused the original object's value to change mysteriously. To my surprise, this was the creation of another unrelated object (although, to be fair, both objects were of the same class). Simply adding an empty constructor to that class' definition made the problem go away. From the look of things, I am probably missing some not-so-subtle point regarding constructors in C++...
In one of the Seinfeld episodes that featured gay men, any reference to homosexuality by Seinfeld or Jason Alexander would be followed by "...not that I think there's anything wrong with it, of course..." I was reminded of this when reading the last paragraph of this commentary:
It is also important to underline that only a small minority of American Jews support the Likud Party or its policies, and that a majority of Jewish Americans opposed the Iraq war. In short, the problematic nature of Feith's tenure at the Department of Defense must not be made an excuse for any kind of bigotry.
Latest addition to the monkeys-are-intelligent motif.

Friday, January 28, 2005

Man is a rational animal.
Socrates is a man.
Therefore Socrates is a rational animal.

Seems pretty straightforward, doesn't it? At least I thought so until I read this:
...the major premiss of this syllogism takes for granted precisely the point to be proved; for if Socrates is not rational (and no one questions that he is a man) it is not universally true that man is a rational animal.
Looks like nothing is as simple as it seems.
BBC is showing footage of overseas Iraqis voting in the elections. The first thing I noticed was that the ballot boxes did not have any seals on them; their lids were kept in place by some kind of plastic fasteners (the boxes themselves were some sort of plastic containers). Not that it is worthwhile rigging the overseas vote, minute as it is.
According to Seymour Hersh, dogs were not used simply to intimidate prisoners at Abu Ghraib, but were used to hurt them as well:
It was the Arab man leaning against bars, the prisoner naked, two dogs, two shepherds, remember, on each side of him. The New Yorker published it, a pretty large photograph. What we didn't publish was the sequence showed the dogs did bite the man -- pretty hard. A lot of blood.

Thursday, January 27, 2005

Today I learned that there is a company that offers to surgically implant artificial testicles in your neutered pets.

Tuesday, January 25, 2005

These images from a shootout in Iraq are sure to escalate the anti-American feelings even more, but I am taking the soldiers' side on this one. It's easy to second-guess the soldiers' actions sitting in the comfort of our homes. To be fair, they did try to get the car to stop by using hand signals and by firing warning shots. They also did the right thing in administering first aid to the injured children and taking them to the hospital (how difficult would it have been for them to continue pumping bullets into the car 'just to be sure'?).

The people who should be charged for this crime (if anybody should be charged at all) are not the soldiers; it's rather the people who sent them to Iraq in the first place.

As has already been mentioned elsewhere, the image of the little girl is bound to go down in history as one of the enduring images of the war and the suffering caused by it.
Two bright spots in an otherwise dull day (in fact, they had me rolling on the floor with laughter):
  1. The Rude Pundit's post about Bill O'Reilly (warning: not for the faint-hearted; explicit content)

  2. A contest advertised on the cover of a Harpic bottle called Pot Banaye Kismat Hot that depicts the prizes (car, refrigerator, washing machine) springing out of a toilet bowl (seriously, dudes, what were you thinking?)

Sunday, January 23, 2005

It looks like I have hit one of the gumption traps mentioned in ZMM in my work on Vajra. I don't know how to classify this trap, so I'll just state the problem. The value of a data member of one of the internal objects has gotten changed mysteriously, so to speak. The value is fine during the execution of one bytecode instruction, but gets screwed up somewhere down the line. Ideally, I would get a fix on this by setting a conditional breakpoint, but this is not possible in this case because I don't know how to refer to the object (it exists as a newly added member in a map).

To solve this problem and others of a similar nature, I need a mechanism to track the changes to the VM (the currently executing method and its frame identifier, the bytecode instruction, the pre- and post images of the operand stack, and so on). This requires quite a lot of grunt work (AOP would really come in handy here if I could apply it), which leads to another gumption trap -- boredom.