Friday, January 27, 2006

Recent events

Once again, it's been a long time since I last blogged. Seems like it always is. Anyway, here's the latest update on stuff I've been doing/am doing, as well as other stuff in which I'm mostly a passive component, so that it's being done to me, as it were.

First off, I finally received my Google Code Jam t-shirt! Whoopee! Wore it to college a few days ago, and received a bunch of 'New Pinches' in return. (NB: A 'new pinch' is a rather quaint custom which involves pinching someone who has recently acquired something new. As far as I know, it's limited to India, but my experience is limited...) Thought that was rather childish, but then we let children have their fun...

Second, I took part in the first round of Code4Bill, and cleared the first round(held last Saturday) without any major problems. Eight questions, six hours, out of which only two and a half were really required. Made me realize how much my problem solving ability has grown since I started TopCoder. The next round is tomorrow, and only three hours long, AFAIK.

Third, I've been reading Gödel, Escher, Bach all this while, and I can say this - it is absolutely PHENOMENAL! Excuse the caps - they're rather reminiscent of a stylistically-challenged friend of mine, but they're the only way to express the sheer superlativeness of this book. Extremely thought-provoking, beautifully structured, fascinating ideas - I could sing its praises all day, so I'd better shut up quickly. Perhaps I'll put up a review of it when I've finished. That won't be any time soon, since the book isn't exactly light reading - it takes a lot of thought to process(this I like), and I also like to keep an eye out for the weird recursive structures he's left all over the dialogues, so I often go back and forth searching for common features.

TopCoder seems to have suddenly increased the difficulty levels of their Div 1 250s, leaving a whole bunch of blues bouncing back and forth between divisions. I'm not one of them so far, but I haven't been having any great matches lately. Started up a new style of practice, based on the Coding Kata idea mentioned here. Hopefully this will work.

On the college front, we have the usual 4/7 week, so we don't suffer too much. At least not yet. In stark contrast to our previous semesters, we have two thoroughly bogus teachers, whom I shall not talk much about, having essentially given up on the 'Univ/College sucks' rant concept. Suffice it to say that one of them requires a translator to understand, and the other continually produces a never ending stream of WTFs. Each one also has some proficiency at the other's 'super power', so we often end with a bunch of WTFs delivered in poor excuses for spoken language...

In MU, it's often helpful to mentally decouple the subject from the person teaching it, as well as the inevitable exam, since you might end up mistargeting your hatred/annoyance/angst/general boredom. In this spirit, I shall now consider the subjects we have, while banishing all thoughts of the person teaching them from my mind. Not an easy task, given the urge to burst into laughter in two cases...

Robotics: Incorporates elements of Mechanics, and as those who know me will testify, anything with sensible mathematics in it makes me happy.

Multimedia Systems: I'm not generally a big fan of this sort of subject, since they often boil down to remembering all sorts of weird standards and specifications, which is almost always a complete waste of time. Still, we get to mess with Flash, Dreamweaver, Maya, and so forth, so it can't be all bad. Plus there might even be some algorithms in it, so it might actually be fun. At least I hope so.

System Security: This sounds absolutely fascinating, but I fear it will lack the pragmatism that's necessary for a real understanding of the subject. Plus there's always the risk of pointless classifications which are of no real use, except to give certain kinds of teachers some questions to ask without having to think too hard. However, we have some cryptography, and this makes me very happy. As a matter of fact, I have Stallings's book already open right now, and will probably consume a bit of it today.

Distributed Systems: This sounds pretty interesting too, but the prof teaching it is due to come back from leave only at the end of this month, so I really don't know much about what it's like. Time will tell, I suppose.

For those of you who might be interested in Junior and his family, I'm afraid that the story ended rather sadly. First Junior vanished, having ostensibly decided to leave home for good. A couple of days later, the crows filched Mrs. Pigeon's two eggs. She put on a few heart-rending scenes searching for the eggs, but my mom eventually got bugged and removed the flowerpot, ending the association of the Pigeon family with our kitchen windowsill.

Hopefully I'll have something new to blog about soon. For now, I intend to introduce myself to the very delicious bowl of chicken soup next to me. Tallyho and all that...

PS: Looks like my visitor counter finally crossed 2000! Not a huge achievement, but thanks are due to anyone who reads my frequently senseless rantings. I salute your masochism.

Tuesday, January 17, 2006


The very picture of maternal patience... Posted by Picasa

Mrs. Pigeon, the queen of her castle.... Posted by Picasa

Wednesday, January 11, 2006

Sibling rivalry?

It looks like Junior has two siblings on the way. His mom has wasted no time in producing two eggs to fill up the flowerpot again...

Says something weird about her, doesn't it? One kid leaves and she produces two more to take his place. Let's hope this isn't a geometric progression...

My sister has threatened violence unless I mention that her prelims have ended. Therefore, I hereby mention that her prelims have ended. She's also urging me to change something for the new year. I wonder if I can get me a new sister somewhere ;) ...

Back to the usual stuff...

Tuesday, January 10, 2006

Up, up and away!

Ladies and gentlemen, Junior has left the building. The little chap finally found his wings this morning. He hasn't been seen since.

His mother, on the other hand, shows no inclination of moving out of the maternity ward(read flowerpot). This is annoying my mom a bit, but she suspects that another egg is on the way. I'm pretty sure that's not the case, but we'll know soon enough. If it's not here in another week, Mrs. Pigeon is going to be evicted in absentia, so to speak...

I missed this morning's SRM because of Eid, but that was a blessing in disguise - some weird confusion resulted in everyone failing the div 1 250/div 2 500. Since the 250 is all I get in division 1 anyway, this would have messed things up royally for me.

There's some talk about the match not being rated, or perhaps leaving the 250 unrated or some such thing. Systests are done and practice rooms are up too, but no sign of ratings yet. I figure that one of the following is the case:
  1. The match won't be rated.
  2. The admins are trying to figure out how to tweak the rating formula or something.
Off to the practice rooms...

PS: Good luck, Junior - wherever you are.

Monday, January 09, 2006

Have Wings, Won't Fly

Why doesn't Junior learn to fly already?

If you don't know who Junior is, I'm too lazy to enlighten you. Go and read some of my older posts.

Junior's been jumping around for a few weeks now, but surprisingly, he hasn't made any real attempts to fly. Mom and sis have spotted him flapping his wings frantically a few times, but he hasn't actually managed to achieve lift-off yet. He's almost as big as his parents now, and there's a hell of a battle when they try and feed him, with lots of 'chirping and flapping of wings'.

Oh yeah - 50 brownie points to the first person to figure out the original phrase that the quoted text in the last sentence is based on.

In moments of idleness, I amuse myself by formulating increasingly dumb theories about why he hasn't learnt to fly yet. Subtracting out the bored humor and combining variations, I end up with the following possibilities:
  1. He's scared.
  2. His parents are over-protective, and are having trouble letting go.
  3. His parents are having trouble figuring out how to give him a demo from such an unconventional perch(the grill outside my kitchen window).
  4. His wings haven't matured to that point yet.
Since we're talking about pigeons, we can usually toss out (1) and (2) - I'm not sure their minds are that complex. That leaves us with (3) and (4), which make much more sense.

Hopefully he'll get his first flying lessons soon. That boy needs some wheels...er, wings - no wait, that's not right...*bails out just as the metaphor explodes into a million pieces*.


Read two more of the Vorkosigan books today - one short story and one whole book(Cetaganda) to be precise.

Feeling somewhat lethargic at the moment. Not really up to coding or reading Hofstadter's explanation of Godel's Incompleteness Theorem, even if it does involve Achilles and a tortoise...

Listening to Aerosmith - Dream On. Nice song. Recommended.

Sis has her Maths-II prelim tomorrow. This means insane torture for me - the kind that takes days to recover from.

In an almost poetic event, I was just interrupted to solve a problem. Sis is getting increasingly irritated.

And that's it. I'm too bored to think up a conclusion. Consider this to be one.

Tuesday, January 03, 2006

Reading like crazy

After the coding spree I mentioned in the last post, I seem to have switched gears and started an insane reading spree. Even by my standards, it's a bit of a record.

Here are the books I've been reading:
  1. The last three books of Isaac Asimov's Robot saga, namely The Naked Sun, The Robots of Dawn and Robots and Empire.
  2. One of Asimov's Empire series - Pebble in the Sky. I still have two more left - The Currents of Space and The Stars, Like Dust.
  3. Four books from Lois McMaster Bujold's Vorkosigan saga - Shards of Honor, Barrayar, The Warrior's Apprentice and The Vor Game.
And let's not forget Programming Ruby: The Pragmatic Programmer's Guide. I haven't read all of this, but enough to build up some skill in the language. It's absolutely wonderful - I can see why Ruby programmers are such an ardent lot...

I'm thinking of rereading Ray Kurzweil's The Age of Spiritual Machines. I loved it the first time I read it - always been a closet transhuman even before I knew what the term meant...

I'm stuck in section 3.2 at USACO. The first problem was fairly easy - minimum spanning trees, after all. The remaining three are still resisting my feeble attempts to solve them. I have an idea for one of them which I'll try out in a bit...

Junior Update: For those who came in late, Junior is the offspring of a certain female pigeon who took up residence outside my kitchen window a few weeks ago. He hatched a while back, and has been growing at a ferocious pace. He began to flap his wings a bit two days ago, but his parents don't seem very inclined to let him out of the nest, and defeat his efforts by the simple expedient of sitting on him(I kid you not). Maybe they're having trouble letting go of their only child, or they might be instinctively aware that it's too early, or some such thing...

I think I'll try out USACO now, and I've also had my eye on The Art of Java for a bit. The book contains, among other things, an implementation of a recursive descent parser. I've been thinking of reading up on it and then writing my own version, as a sort of guided exercise in good design. Maybe I'll take the Mentat approach this time, concentrating on the questions rather than the answers. Off I go...

PS: Happy New Year, world.