*** MOVED ***

NOTE: I have merged the contents of this blog with my web-site. I will not be updating this blog any more.


Havoc in Bangalore

The past week was terrible for people in Bangalore. Almost every day of the week, the weather would follow the same pattern - it would get very hot during the day and then the evening would arrive with very strong winds, heavy rain and lots of lightning and thunder. Apart from the usual flooding of roads as well as the houses of some unfortunate folks and consequent traffic snarls, this time many more (at least 150, by most estimates) than the usual number of trees were uprooted. Most of these were Gulmohar (Royal Poinciana) trees that line many of Bangalore's roads and that look beautiful when in bloom. These trees seem to have awfully shallow roots for their size and they fell over electric wires, telephone wires, cable TV wires, vehicles, houses, etc.

So we have had intermittent power, noisy telephone lines, now you see it, now you don't cable TV, no internet connectivity, etc. in our house. Many people were much worse off. I hope this week would bring better weather.

As if this was not enough, the software engineers of Bangalore now have their lives made even worse by robbers. In the last few months, quite a few techies have been increasingly becoming the targets of robbers and muggers who perceive them to be "soft targets" with loads of money and offering little by way of resistance. In the last month alone, two people from my office were mugged in two separate incidents in the vicinity of our building in the night. Call centre and BPO workers have also been hit similarly. To make matters worse, the police commisioner thinks Bangalore has actually become safer in the last few years and quotes some questionable statistics to prove his point. We have already given up on our government which seems more eager to cling on to power by appeasing its coalition partners than bother to develop the state and the city.

(Originally posted on Advogato.)


Sort Your Environment Variables for Win32

It seems that the CreateProcess() Win32 API expects the explicitly-passed environment variables, if any, to be in alphabetically sorted order. It is documented in passing in the API description, but you have to really look out for it to notice it. Without doing this, you might find that the spawned process is not able to retrieve some of the environment variables you are passing to it. This also seems to affect programs spawned using Runtime.exec() in Java, so even if you do not work on Windows yourself, you might want to keep this in mind for your hapless users.

Thanks to Saju for the explanation and to Rahul for bringing it to my attention.

(Originally posted on Advogato.)


"How to Solve it"

I found this classic book on problem-solving by G. Polya to be worthy of every praise that has been heaped on it by generations of budding mathematicians and programmers. It requires a bit of perseverance and suspension of cynicism to fully benefit from this book. As with most self-help books (if I may use the term), the basic approach and the given heuristics are rather simple and "obvious", but the real benefit for the reader lies in appreciating their significance and in applying them consistently to solving problems. Very highly recommended.

(Originally posted on Advogato.)


"Technology and Courage"

"Technology and Courage" (PDF) by Ivan Sutherland. (Thanks Prakash!)

(Originally posted on Advogato.)


Some kind soul has helped the Harmony mailing list be available on Gmane as the newsgroup "gmane.comp.java.harmony.devel". Thank you!

As was also observed by someone else, I find it rather amusing, and sad, that several years of effort on GCJ, Kaffe and Classpath did not seem to generate as much buzz as a single announcement of an intention by the ASF to create a J2SE 5 implementation.

(Originally posted on Advogato.)



(Disclaimer: I am an alumnus [B.Tech.] of IIT Kanpur with Computer Science as my major, so read the following rant with this fact in mind and your preferred measure of salt.)
I feel that in the last few years the Indian government, irrespective of the party that comes to power, seems hell-bent on killing these awesome engineering institutions which have a largely justified and well-earned reputation worldwide. They started by almost doubling the number of available seats in some departments, notably Computer Science, then by increasing the number of institutes branded "IIT" (from the original 5 to a current target of 11 in total) and finally by making the entrance exams (JEE) much easier for students to crack!

In the short term, they will be able to boast of a much larger number of IIT graduates but will they be able to ensure the quality as well? Are they not killing by dilution the very brand that they wish to exploit? Sheesh!

(Originally posted on Advogato.)

Harmony: Quo Vadis?

The announcement of the Harmony project which aims to create a Free reimplementation of J2SE 5 under the umbrella of the Apache Software Foundation (ASF) seems weird to a lot of people (including yours truly). The initial FAQ does not help much either.

My personal opinion is that if you need Free (as in liberty) Java you have either Kaffe or GCJ depending on whether you prefer the traditional Java execution model or ahead-of-time compilation, respectively, not to mention many other VMs. Both depend on GNU Classpath to provide an implementation of the humongous and unwieldy "core" Java runtime class libraries. Without any elaboration, the "All of these efforts provide a diversity of solutions, which is healthy, but barriers exist which prevent these efforts from reaching a greater potential" from the announcement seems hollow and a serious case of the NIH syndrome.

Lastly, Java isn't even that great a language or has a great runtime that so many talented hackers should be wasting their time on it. Isn't there anyone who can come up with a good general purpose programming language with a good and minimal standard runtime environment and a Free language and runtime specification? I am talking of an imperative language with the ability to easily do OO-programming but where OO is not sickeningly mandated.

(Originally posted on Advogato.)


Worm Bites Hard

Once again, my Hotmail account is being hammered really hard by a burst of spam almost all of it containing the payload for the WORM_SOBER.S worm! Unlike Gmail, Hotmail doesn't show me the IP address from where the message was received unless there is an explicit "X-Originating-IP" header, so I can't trace it to its origins. The irritating thing is that Hotmail already knows that the payload is a worm and thus refuses to let me download the attachment. Why can't they give me an option to tell them to delete such mails immediately upon receipt?

The rate of incoming junk is far higher than previous such bursts and I have to constantly keep cleaning my mailbox. Interestingly, some of the forged sender addresses indicate that someone reading the GCC list has been infected hard - I can't imagine how else the worm would have got hold of the email addresses of such a disproportionately large number of GCC hackers as well as so many CS-related sites.

(Originally posted on Advogato.)


R.I.P. JumpDrive Secure (16 Sep 2003 - 2 May 2005)

After over 1.5 years of continuous service, my JumpDrive Secure 256MB USB drive has gone dead after I dropped it on hard floor in a moment of unpardonable carelessness yesterday. It was a good buy and it was tremendously useful. On Lexar's site for the JumpDrive Secure, there are incredible testimonials of this drive having survived various ordeals, including being washed with a person's laundry, and emerging unscathed. Alas, no such luck for me!

I even tried to pry it open and see if there was an obviously loose component anywhere that I could set right, but it's literally a couple of chips soldered onto a small PCB connected to a USB plug. As with almost all purely electronic devices, I cannot do anything here. This is rather unlike mechanical or simple electrical devices where I usually can figure out the problem and sometimes rectify the problem.

(Originally posted on Advogato.)


libtool and libjava Build Times

rth did a few experiments on the libjava build times in the current GCC mainline and found that libtool alone took 2/3 of the total build time for libjava! Very interesting.

(Originally posted on Advogato.)