Wednesday, December 19, 2007

Of overdue blogs, year-end updates, and NRI syndrome

So here I am, blogging again. As is usual, I shall preface the main body of the blog with some random remarks about why I haven't blogged for so long. Actually, scratch that - I was planning to explain why, but it's been so long that I can't really remember why I stopped blogging in the first place. So I'll refrain from boring everyone with some made-up excuse, and save myself the bother of having to think one up.

So I'm back home in Mumbai, albeit for a measly three weeks. Winter break is not very long, sadly. My mom desperately wants to fatten me up with home cooking (and of course I have no objection to this :P) but this doesn't give her much time. She has, however, enlisted everyone who sees me in a massive conspiracy that aimed at convincing me that I've lost weight, thus resulting in rather boring "He's become thinner, hasn't he?" lines from every second person I run into. Now what do you say to something like that? Ultimately, I decided to come clean and tell the truth - that this is all part of my sneaky plan to get fed tons of amazing home cooking.

I've come down with something a friend described as "NRI Syndrome". In a nutshell, I've lost my Mumbaikar immunity to the city's polluted air, and ever since we landed, my nose has been switching between running like a waterfall, or blocked so badly that it might as well be a rock stuck to my face. Nose drops are the only way out, sadly. I've never had to use them continuously for a week - two or three days is the outside limit - but this leaves me with no option. And now there's smog all over the place - when did that happen? It's like someone found out I left and gave them the all clear to take air pollution to the next level.

And when did the design of 2 rupee coins change? I saw one a few days ago and almost thought it was fake. It looks rather out of place among all the others, if you ask me.

Moving on, here's a quick semester recap: academically, it rocked once again. I passed the PhD qualifiers - first try, easy pass and all that. They don't tell you just how well you did, so all I know is that I had an 89 in Formal Languages and Automata Theory, and did 'extremely well', in Artificial Intelligence. No idea about Algorithms and Programming Languages, other than the fact that I did well enough to pass with ease. I'm one of 6 people who passed, out of a total of 12, which isn't too bad. Don't know how many of those 6 were on their first try - at least two weren't, as far as I know. In any event, that's one major milestone that's over with.

I've managed to get into the hallowed ranks of two-time ACM ICPC World Finalists again this year (our region is obviously way too easy), which works out very nicely for two reasons. First, because I've done almost as well as can reasonably be expected - two years of competition, two trips to Finals. Second, being a finalist twice renders you ineligible to compete again, which fits nicely into my plans, seeing as how I'll have more energy to devote to research once I find a nice dissertation topic, which I'll be looking into next semester. I've got several ideas buzzing around in my head, but nothing nearly concrete enough to nail down, and I think I need a bit more exposure to the prevailing zeitgeist. That means I'll probably be reading a bunch of papers throughout the next semester, which should be pretty stimulating. Of course I need to balance this with Finals training too, but I figure anyone in a PhD program needs to get as much mental training as possible.

This is also why I picked up a copy of God Created the Integers, which is a humongous collection (1200 pages, in really small print!) of the greatest mathematical works of all time - Euclid, Newton, Laplace, Boole, Gauss, Riemann, Godel, Turing...all the really big names, and edited by Hawking, with commentary. I was inspired by the way literary types often refer to 'the classics' - the works of the really great writers. These are the classics in my line of work - after all, it all boils down to mathematics in the end. It's not all that different from being a writer, I figure - you start by imitating the most amazing pieces of writing you can find, and then absorb whatever you like, eventually evolving it into your own style. This changes a bit for research, of course, you don't want to imitate, except in private for educational purposes, but I think it will be rewarding to try and follow the general reasoning of the really smart people who changed our understanding in fundamental ways.

Anyway, I'm going to go back to reading Euclid and Eudoxus now (old stuff, but still cool). Virtually a religious experience, I tell you...

PS: I'm planning to start blogging in earnest again. Hopefully the plan will survive contact with the next semester. Wish me luck! :)

Wednesday, June 20, 2007

In New York

I'll be in New York until Saturday evening for a little something Google has planned. Looks like going to the World Finals has its perks. mrgreen

Sunday, June 17, 2007

Random ramblings...

So I've had one of the most amazing holidays ever - and I squarely blame it for all the difficulty I'm experiencing in getting out of the vacation mood. mrgreen My parents and sister came over to the US, and we've basically been all over the place. Three days at Disney World, followed by Washington DC, New York, New Jersey, Niagara...and loads of shopping, of course. It was one hell of an experience, and certainly a vacation to remember.
biggrin

Since I'm not taking any classes this summer, I'm busy studying for the PhD qualifiers coming up at the end of Fall, as well as getting some practice done for the next ACM regionals (and World Finals, hopefully). Life is good.

I've recently been playing Jedi Knight 3: Jedi Academy to pass the time. Now I've always thought the lightsaber really is 'an elegant weapon for a more civilized age', and this game finally gave me the chance to be a Jedi. razz You won't believe the fun you can have deflecting blaster bolts back at your assailants and taking down a dozen opponents with a few well placed slashes and spins (or just pushing them off ledges with the Force). Ah, the carnage...very satisfying. wink

As anyone reading this might have figured, I have absolutely no issue with violence in video games (and besides, Jedi Academy doesn't even have blood - lightsabers cauterize as they cut, so limbs can get sliced off without any splatter rolleyes). Violence and aggression is an inescapable part of our simian ancestry, and modern society rarely has enough outlets for it. I strongly recommend violent video games as a prospective outlet.

There is an amazing sort of beauty to lightsaber combat, even though the games don't make it look that much like the movies. I'm particularly fond of what I term the 'samurai' lightsaber style, in which I basically wait for the enemy to attack, step slightly out of the way and then strike, timing it exactly to go through the opponent's guard. It took some time, but I'm now pretty good at dual saber combat. I've always had a thing for fighting styles that use two swords - Miyamoto Musashi himself did it with his Hyōhō Niten Ichi-ryū style, and it's just cool. With lightsabers, it gets cooler, because wielders tend to spin their sabers a lot, and it looks cooler when you're spinning two at once and ending with a double slash. mrgreen

Another thing I do is watch the incredible comedy of Eddie Izzard. It's a very different sort of comedy from what you normally see - it's a sort of Monty Python meets stream-of-consciousness monologuing, with a bit of mime and cool sound effects. This is one of my all-time favorites.

For the last couple of days, I've been watching videos from Beyond Belief 2006. I've only watched about 3 hours total, but these are some of the smartest and most insightful people around, and it's just incredible to listen to what they say, and often, how they say it. I'm slightly fascinated by the art of holding an audience spellbound, and I figure watching some examples of it will help - at least on a subconscious level. neutral

So far, the most interesting talk was by Neil De Grasse Tyson, who made some amazing points. What interested me (aside from the humor) was the novel angle from which he approached things. There was a little section of his talk called 'Naming Rights', and he used that to point out that things are usually named by the people who get there first - and those blokes are the ones who (at that point in time) have a sort of culture of excellence in that particular field.

For instance, a lot of the heavy elements in the periodic table have names associated with the United States - Americium, Californium, Berkelium - and all because they were discovered in the US at a time when there was a great deal of emphasis on that sort of thing among physicists in the US, and they got there first. The constellations have mostly Greek names, because they were the first to stick their myths in the patterns you could see in the sky. Two-thirds of the named stars have Arabic names, because the Arabs catalogued them during the Golden Age of Islam, among a gazillion other achievements. Life was good for them until about the 12th century, when a fellow called Al-Ghazali wrote a scathing critique called The Incoherence of the Philosophers, and effectively destroyed the Muslim world's one chance at a philosophical and spiritual Rennaissance.

It's rather sad to note that if the ethos of the time had encouraged skepticism, freethought and unfettered rational inquiry a bit more, we wouldn't be in the mess we're in right now. It took the other two Abrahamic religions half a millennium before they managed to start looking upon religion with a certain degree of irreverence, which is a very underrated achievement. Religion is fine, as long as it isn't taken too seriously, or interpreted literally.

I've always had issues with the more ridiculous aspects of religion - miracles, revelations, prophets, gods - the usual supernatural garbage that comes with all religions in some form or the other. I guess it's appealing to a basic flaw in human reasoning processes - and one which isn't all that benign. Tyson pointed out one sad effect of it when he showed several religious referents in the work of Ptolemy and Newton and Huygens. And without fail, whenever they would start praising something as the incomprehensible work of some creator(s) or what not, that's where they would stop discovering and creating. And then a century later, someone without 'God on the brain' would come along and take over from where they left off, and then God would vanish from that particular domain as well. Newton was able to figure out the motion of the planets, but he stopped at the question of why it was stable. This is where he invoked God, and that was it. God wasn't anywhere in planetary motion - that was understood. When people understood things, God would vanish from the picture.

It's almost terrifying how religiosity stopped the greatest genius in human history. It wasn't even an insoluble problem - Laplace came along and figured out that problem by inventing perturbation theory - something that should have been child's play for Newton, in view of what he did.

Divine explanations aren't really explanations - they're just a sort of agreement to stop thinking, wrapped up in flowery language, self-congratulation and a sort of righteous humility that is thoroughly misplaced, and rooted in insufferable arrogance.

"Right, we've understood all this, but here's a question that no one can figure out - and no one will ever figure out. Yayyyy, God."

If that isn't arrogance, I don't know what is. And on top of that, it usually accompanies mythologies that imply humans and Earth are somehow central to the universe, in terms of purpose and importance. Yeesh.

Anyway, I'm going to stop ranting now. Richard Dawkins is coming up next. biggrin

Monday, April 30, 2007

Hilarious Geek Song

This has got to be the coolest geek love song I've ever heard. Not only is it full of crazy jokes from topology and abstract algebra and the generally crazy overloaded terminology of mathematics, they sound pretty good too! mrgreen

I nearly fell out of my chair laughing, and found myself wondering what it sounds like to a non-geek. Despite all those amazing mathematical double entendres, I have a feeling that it'll make at least some sense to the mathematically ignorant.

So if you know someone who is unlikely to get any of this, have them take a look and leave me a comment to let me know if I'm right, or if it's more like trying to describe color to a blind person. And if you're one of those people, don't worry too much - it takes all types. cool

Thursday, April 26, 2007

Phew!

And so, ladies and gentlemen, my second semester of graduate school comes to an end. I'd say it went pretty well, all things considered.

It's been 3 months since I blogged. The amount of catching up stories I need to tell is insane, so I'm going to be shamelessly selective and just pick out anything that seems important.

Though now that I think about it, that isn't very different from what I normally do...mrgreen So anyway, let's say goodbye to the semester with a little look at what I did.

Formal Languages and Automata Theory - in many ways the most fun course I've ever had, primarily because the professor who teaches it is the most amazing expert on recursive function theory (among other things) I've ever had the privilege of knowing. Not only do I feel twice as smart in some ways, I'll never forget those hilarious jokes that he'd deliver every ten minutes. They certainly compensated for all the brain-addling he dished out.

Actually, I will forget those jokes. What I won't forget is that they were absolutely freaking hilarious. And there is one comic incident that I'll remember to my dying day. That's right, even when I'm creating my own universes and reveling in godlike splendor that amateurs like Yahweh could never imagine, I'll occasionally remember that crazy antic and my laughs will thunder through the cosmos. rolleyes

Machine Learning was pretty good - as a course I learned an amazing amount from it. The little project we had on constructing a Go AI using Temporal Difference Learning didn't go all that well - but it certainly seemed to be learning, which was all the professor cared about anyway.

I managed to come up with a fairly neat idea for my term paper on Natural Language Processing, though I'm not sure how good it is yet. Still, bad ideas are often the seeds of good ones. I'll shut up for now, because if something good comes out of it, I don't want to get scooped. wink

I guess the most useful thing that came out of it was the ability to read papers and not die halfway through the second page. When you have to read four of them a week and write reviews for each one, reading just one is a trivial task. And it helps that I can now read them critically too, though sometimes I can't turn on that particular mode of thought until I imagine firing up OpenOffice and starting the review...

Right, so what was the most interesting thing that happened? Without a doubt, it would probably be that amazing trip to Tokyo for the 2007 ACM ICPC World Finals. We didn't do too badly either - we're officially ranked 44th, but then so are all the other teams that solved 3 problems. We're actually second in that lot. In any event, we wound up surpassing UCF teams for the last few years, so our coaches are happy - and we got ranked rather than a mere Honorable Mention, so they're even happier. We even wound up getting interviewed by the student newspaper, and showed up on the university website for a bit. cool

As an interesting aside, Google has invited the ICPC finalists over to their New York office for a day, around the last week of June. They're going to show off in ways that only us geeks can do without looking like idiots (except to normal people, but then they're merely peasants whose opinions are unworthy of consideration anyway mrgreen).

Now for the really fun part: in just a few days, my family is going to be flying to the US for a month-long visit. They'll hit Orlando at the beginning of next week, and we'll have a whirlwind tour of Disney World for a couple of days before we head over to my uncle's place in Maryland. And then it'll just be a nice family holiday involving meeting relatives that I may or may not have met before, and all that sort of thing. Of course, as all hungry grad students know, these are merely incidental to the truly important things in life, such as getting to eat good old fashioned home cooking. And when your mom is the best cook in the world...biggrin

So any way you look at it, I'm all set.

Except for losing my yellow color on TopCoder. cry I guess I'll have to take it back by force in the next SRM. twisted

It'll be nice to get in some real hard training over summer. I'll be teaching myself loads of cool mathematics (you never know when it might save your life) and preparing for the Ph.D qualifiers next Fall. Putting that all together will mean a serious boost in my abilities. If all goes according to plan, I'll be a lean mean problem-solving machine by the next ACM Regional. cool

Well, that's it. I'm off to do whatever the hell I feel like, because I'm free as a bird! :D

I think I'll make me some soup at 1 AM. That would just about hit the spot. mrgreen

Friday, January 26, 2007

Yellow, at long last!

And so, after what seems like ages, I've finally made yellow on TopCoder. At the moment, I'm simultaneously at 1521 and on cloud nine. cool

I just checked out my TC profile, and it turns out that it's been exactly two years and 3 days since I registered there. Still, I had a bunch of semi-prolonged absences in the middle, so I've only done 51 matches so far. Not too shabby. mrgreen

I'm off to celebrate - with a pack of Pringles, which were the only celebratory victuals I could find. Bedtime directly after that - can't go around disrupting my schedule too much, you know.

All is well with the world, and so I exit, stage left.

Thursday, January 04, 2007

Shakespearean Insulter

"Away, you bottle-ale rascal, you filthy bung, away!"

From Henry IV, Part 2. Ol' William really knew how to shoot off his mouth in style. Here's to the greatest literary badass ever! mrgreen

Go here to enjoy Shakespeare's inimitable put-downs, as well as a bunch of automatically generated insults in his style.

At the half century mark!

Today was my 50th TopCoder SRM. The fates were with me (I suppose all those hours of practice also helped a little mrgreen) and I hit a new all-time rating high! I'm now at 1483 - just 17 points short of going yellow. cool

Can't stop practicing now - I'm in more danger than ever of a rating loss after that huge increase. If anything, I need to practice harder to be able to maintain my rating at this level. Still, it's nice to see that practice does pay off, even over the short two week period in this case.

Apparently the trick is to find exactly the right level of problems to practice on. Doing the ones you can crack instantly is a waste of time and a recipe for stagnation. Doing the ones that are so hard you'd never think of the answer is equally useless. Even if you read someone else's solution and look up explanations and what not, you won't gain the ability to make those observations and come up with those approaches on your own. It's like practicing weightlifting by trying to lift what an Olympic champion does, when you can barely manage the groceries. mrgreen

So the ones you want to do are just a little above your current level. Do enough of those, and you'll have boosted your skills enough to aim a little higher, and so forth.

There's an interesting lesson here - all the practice in the world will bring only minor results if it isn't tightly scoped to your skill level. Perhaps this is one of the major differences between the reds and the rest of us. There's obviously more to it, but I suspect this particular aspect is underrated.

How did I get this idea? At the beginning of my practice sessions, I noticed that I never solved the division 1 medium problems on my own. I always needed the editorial, or perhaps someone else's solution. There was no other way for me to get it.

Since there's been quite a bit of discussion on how the average level of difficulty is rising at TC, I began to wonder if old matches had the kind of problems I could do. So I moved back 130 matches to SRM 200, and tried it out. I was delightfully surprised when I found I could do most medium problems from around then. They took time to think through and figure out, but I could actually do them! If I had my present level of skill back in those days, I would probably have been rated mid-yellow.

This doesn't mean that you should completely neglect the really hard stuff. For the moment, the old mediums are sufficient for me, because once in a while a really devilish problem turns up and leaves me reeling. That's good. Keeps you humble, and teaches you a thing or two.

I only started this a few days ago, and I could almost feel the difference. I started coding and thinking much faster on the ad hoc problems that turn up in division 2 as 250s and 500s.

Okay, it was mostly the 500s. I'm already fast enough at div 2 250s that any speedup there is difficult to distinguish from normal statistical variations. My scores on the 500s have apparently risen about 30 points, though.

Our first Spring practice session for the World Finals is this Saturday. Perhaps we'll see some improvement there. Or not. neutral

The Spring semester starts again on Monday. As predicted, I'm going to need to be really organized if I intend to be productive. I'm taking Formal Languages and Automata Theory, Machine Learning and Natural Language Systems. Topped off with World Finals practice, that's one hell of a workload.

Should be fun.
mrgreen