Sunday, December 25, 2005

Looking for the ideal mp3 player

Looks like I am on a roll today, third post in a single day ;-). Anyway, I am looking for a flash based mp3 player with the following features. The following are the must have features:
  • Flash based
  • Removable battery
  • 512MB+ capacity
  • USB 2.0
  • FM
  • FM and Voice Recording
The following are nice to have features:
  • Built-in Speaker
  • FM Transmitter
  • Expandable media
  • Color Display
I've been shopping around and narrowed it down to a few choices but can't decide between them. Before I post my choices, any recommendations off hand? Note that the iPod Nano is out of question because it lacks FM and removable battery.

My other favourite scripting language - Lua

Scripting languages like Tcl/Perl/Python/Python can be embedded into a big program written in a traditional language or like extended by writing glue code to existing libraries written in traditional languages. The latter is definitely much easier, especially with a generic tool like SWIG or a specific one like Pyrex. Most Python experts recommend extending rather than embedding.

However, there are times when embedding is more useful. Also, in many commercial settings, it's sometimes impossible to convince management to write the program in a high level language like python. It's far easier to sneak in, I mean embed ;-), a language into a big C/Java program or framework. A language ideally suited for this is lua, for several reasons. The winning points in personal opinion are (in no particular order):

  • Simple API for embedding.
  • Language is quite small.
  • Minimal external dependencies.
Of course, all embedding scenarios will also require extending because the embedded script needs to hook back into the embedding code.

Thursday, December 22, 2005

More on Ruby

I've spent some more time with ruby. I'm not decided yet whether I like it. Perl was my first very high level programming language (unless you count Bourne Shell) and I fell in love with Perl when I learnt it. Even though I've moved on to Python for most of my stuff, Ruby reminds me of some of the nicer aspects of Perl. There's no question that Ruby is definitely a bettern Perl than Perl, at least syntax wise (as far as performance is concerned, Perl is still king).

Ruby syntax quite different from mainstream programming languages like C++/Java/C# because of statement modifiers and all those weird characters. On the other hand, it's object oriented syntax (i.e class definitions etc) is more traditional. There are private and protected methods. However, instance variables are always private and require method accessors (though it's easy to define them). Python is quite different, there is no protection at all at class level. On the other hand, Ruby classes are always "open", so you can just add another public method to access class internals. You can happily add attributes to objects after they've been instantiated in both languages (though ruby syntax is a bit tricky).

Oh, by the way. I didn't like the online book "Programming Ruby" first edition by the Pragmatic Programmers. Personally, I also didn't like "Pragmatic Programmer" very much, I think The Practice of Programming is a much better and lesser hyped book, but I am digressing. Coming back to Ruby, I found Ruby in a Nutshell a better a read.

One aspect of Ruby that I found frustrating is that most existing documentation covers Ruby 1.6 and there doesn't seem to a good changelog between 1.6 and 1.8 or even what's the changelog from 1.8.x to 1.9. Python changelogs on the other hand are very comprehensive and readable. And finally, of the three languages (Perl, Python and Ruby) Python development appears to be moving forward the fastest. Perl 6 is horribly developed and Ruby 2.0 and Ruby VM also seem to be badly delayed. In contrast, python appears to be making steady progress. Even projects like Jython, IronPython and PyPy have a vitality that's lacking in Perl and Ruby development. However, I must admit that Parrot development appears to be picking up recently and at least one Ruby VM, YARV, appears to be moving along quite well.

Monday, December 19, 2005

Starting to learn ruby

I've now started learning ruby in earnest. Why, you may ask? Because it's out there ;-). I made two earlier attempts to start on ruby but didn't really get going. This time I am starting in earnest with the Programming Ruby (1st Edition) book which is conveniently available online. First impressions: Language looks clean - it's definitely more "pure" than Python.

The line noise Perl like syntax (@, @@, #{}) is a distraction, but I can live with it. No bytecode yet. Performance is a bit of a concern. Rite is horribly late (though not as bad as Perl's Parrot). More opinions after I dig in a bit.

Trying out Google Ads

I created a google AdSense account but never really activated it in my blog. I am activating it today to see how this thing works.

Tuesday, November 01, 2005

Excited about VMware Player

I guess this is old news (especially if you read Slashdot) but VMWare has released a runtime version of their VM software calld VMware Player as a free download. I have always been a fan of Virtual Machines and other emulators. QEMU has been my favourite so far with it's kqemu accelerator module. I frequently use it to test different Linux distros and Live CDs. I've also got Windows 2000 and Windows XP running under qemu at tolerable speeds. However VMware Player performance is quite amazing.

Another thing that makes VMware Player so interesting is that it runs very reliably on Microsoft Windows. If you are a reluctant Windows user (because of restrictions at work) or a Windows user wanting to try out Linux, get the VMware Player and download the Browser Applicance Virtual Machine. "Browser Appliance" is a working Ubuntu Linux image. Though it's an older version, it's a full fledged working installation, so you can install additional packages or even upgrade over the network. The VMware configuration file is a simple text file and can be tweaked to install your own OS if you desire but "Browser Appliance" is a great way to play with VMware Player before you try more advance things.

Tuesday, October 04, 2005

Word Verification turned on

Two comment spams turned up immediately after I made my last blog post. So I checked the comment preferences if there is a spam blocking option, and found an option for word verification. Nice job blogger :-). I'd like to preserve anonymous comments from real peope, so word verification has been immediately turned on for comments. I apologize for the small inconvenience.

Is Bangalore spoilt by "outsiders"?

I normally try to keep this blog mostly technical. But today there was a huge, and I mean huge, mail thread in an internal company mailing list that started with a absolutely horrifying post about somebody being abused at the Bangalore railway station. The forwarded mail looked too incredible to be true, but has been later confirmed that the person who originated the mail did undergo the experience. This blog is not about that mail; I am sure you'll be hearing about it through other channels. What this blog is about is the fact this mail thread degenerated into a big flame war between "locals" and "outsiders".

There appears to be a growing feeling among some Bangaloreans that their beautiful city has been destroyed by marauding invaders. Like all such sentiments, there is a germ of truth in this. Even I, an "outsider", miss the nice and quite city that I first came to about fourteen years back. The city has grown massively, the infrastructure is in shambles and commuting in the city is a nightmare. But is all this due to the massive immigrant population?

Well, the superficial answer is yes. The real answer is that successive Governments have spectacularly failed to address the inadequacies of Bangalore's infrastructure to address the massive immigrant population. Just look at the incredible delay in getting the International Airport project started. The immigrant population pays a lot of money in the form of taxes, probably more than the rest of Karnataka put together. However, this blog is not about the Goverments' failure either.

Several other people who complained about abusive treatment they have had with Auto drivers, Policemen etc just because they didn't know the local language. If that in itself is not appalling enough, certain "educated locals" in the list, actually had the gall to essentially say these people deserve what they get because they don't know the local language. One brilliant individual went one step further and commented that if you didn't like it you can "go back".

I am truly shocked. I do get a general feel of discontent among the general public because of the poor infrastructure, high prices, astronomical propery prices and rents. I can sympathize with them to some extent. But to have your own cubicle neighbours sport an attitude that you are an outsider who has come in and messed up Bangalore! That's a bit hard to digest.

By the way our internal list is not just employees of my company alone. There is a good cross section of people of people from various IT big names in Bangalore. May be I am making a big issue of some comments from a small but vocal bunch of idiots, but I am really so agitated that I had to make this blog. Now that it's out of my system, I can get back to my regular tech oriented blog ;-).

Spam in my blog

I got two spam comments in my blog. I'd like to think my blog is becoming very popular, but the reality is that one of my blogs mentions the word "loan" and both the spam comments talk about a loan. I hope this spam doesn't get bad enough for me to require registration for posting comments.

Speaking about popularity, it seems that at least some people actually read it. It helped catch the attention of at least two of my old friends. N Murali from my school days in Shri Nehru Vidyalaya, Coimbatore and Davi Gupta from my M.Tech days at IIT Kanpur.

So I'm going to make another sustained effort to keep my blog reasonably alive.

Wednesday, August 24, 2005

AMD Ad in Bangalore Times of India

Well, well. I just saw an for AMD 64-bit PCs in today's Times of India. May be some body was reading my blog ;-).

Sunday, August 21, 2005

Why is it so hard to buy AMD in Bangalore?

I am a big fan of AMD. I have a Athlon XP based system for my parents in my home town, Coimbatore. I have a Pentium 4 based Home PC that given by my company at my home in Bangalore. My company has a nice option of two desktops (one at office and one at home ) or one laptop. I don't like lugging around laptops, so I had opted for two desktops. Recently I have been considering buying my own laptop or switching to a laptop at office and building my own system at home. I decided to switch to a laptop at office and build my own AMD64 based desktop.

I am planning to assemble mine, so what I am going to say now is not a problem for me personally. However, I am very puzzled by the complete absense of advertisements for AMD based systems recently in Bangalore Times of India. I used to see frequent ads a few months back but recently I haven't seen a single one. LG started advertising AMD based LG MyPC but now you only see LG ads with a Intel Inside logo. Same story for HCL. I don't even see the occasionaly ads that I used to see for non-branded AMD based systems. Call me a conspiracy theorist, but is this Intel's literal monopoly marketing muscle at work? Why are there so many advertisements for Intel based systems when AMD based ones give much more value for money?

Next Bangalore Debian Developer's Conference

This year's event was somewhat low key. Prof Sadagopan has thrown a challenge to increase the number of Debian Developers in India from 2 to 20 by the next conference. The date for that has been already fixed as Aug 19th 2006. Looking at the enthusiasm of the people I met in yesterday's conference and the enthusiasm of the so many Linux enthusiasts that in BLUG that I haven't had a chance to meet, the target is certainly very much achievable.

Debian Developer's conference in Bangalore

Yesterday's first Debian Developer's conference went off very well. Many thanks to Prof. Sadagopan, S. Nagaran from HP and all the other organisers that worked in the background. The event did not have high visibility, so I was pleasantly surprised when about a hundred people turned up. You can read more about the event in Natarajan's Blog and Ramki's Blog.

The meet was a wonderful experience for me and I met a lot of interesting people. I have been wanting to meet the folks behind the fantastic IndLinux effort and I had the good opportunity to meet Ramakrishna Reddy. We happen to live pretty close to each other and I hope to attend their developer meet the coming week.

I met some very interesting GNU fans, I don't remember all the names. I do remember Alok. We were talking about GNU Emacs and emacs-multi-tty. I would've loved to chat some more, but unfortunately I had a train to catch to my home town. Speaking about my home town, I met some guys from PSG College of Technology, Coimbatore. I was happy to find some users of my tamil-gtk2im package :-).

They are a very enthusiastic bunch of people, and that's the thing I've been missing about these meetings. You meet so many so many like minded people at meet ups and it's a lot of fun. I think I've missed out a lot by not attending such meets, including the Bangalore Linux User's group meets that used to be regularly held a while back. The BLUG meet is back the coming weekend and I'll definitely try to attend this time.

Friday, August 12, 2005

Sending HTML mail through mutt

Why would you want to do such a crazy thing? Well, I like the ability to blog by just sending a mail through mutt and sometimes it's convenient to throw in a link or two. I tried various tricks, including setting a send-hook like this in my .muttrc like this:
send-hook '~t <blog_addr>'           'set content_type="text/html"' 
But nothing seems to work. I have to set the content-type manually by typing "^T" in the Compose menu :-(.

First Annual Bangalore Debian Developer Conference

The website isn't completely ready yet, so I thought I should post this on my blog.


First Annual Bangalore Debian Developer Conference

Saturday, August 20, 2005 2:30pm-6:30pm (Pre-announcement)

The first annual Bangalore Debian Developer Conference will be held at the

International Institute of Information Technology (IIIT,) Bangalore on Saturday, August 20, 2005 2:30pm-6:30pm. Debian and Free Software developers from Bangalore meet for a half-day interaction on Debian. The conference focus will be technical in nature. Being the first conference and with very few volunteers, we are organizing this conference as a low-key, techie conference. The main objective of this conference is to create a network and ecosystem for Debian Developers in Bangalore.

The target audience is: current or aspiring Debian developers, interested and sophisticated users of Debian GNU/Linux distribution from Bangalore. During the conference a few of attending developers will give talks about particular topics about or otherwise affiliated with Debian GNU/Linux.

Prof.S. Sadagopan, Director, IIIT-Bangalore has kindly agreed to inaugurate the conference.

The schedule will be published during the conference and isn't finalized yet. The broad topics will include discussions on potential development initiatives Debian developers could take up, sharing experience by Debian developers who have contributed and other experience sharing. This conference also aims at defining goals for the next one year among participants for Debian GNU/Linux based activities. The conference registration is free. However, interested participants are expected to be pre-registered. Please visit to register yourself for the conference. You can also register by sending mail to: Please visit the IIIT-B website for details of the venue and how to reach.


Acknowledgement: This year's Bangalore Debian Developer Conference is being organized in collaboration with and support from IIIT-Bangalore.

This posting was made by S. Nagarajan ( who's driving this effort to and I am posting this here to reach a wider audience.

As some of you may be aware there are only two Debian Developers in India. This is an abysmally low number, and I have to admit that I personally haven't done much to address this problem. I thank S. Nagarajan for taking this up and hope this mini conference helps to get more developers involved.

Has Perl 6 missed the boat?

I read that Dan Sugalski has left the Parrot project (Parrot is the VM for Perl 6). Perl was my first scripting language. I started with Perl 4. Till date Programming Perl First Edition by Larry Wall and Randal Schwartz happens to be one of my all time favorite technical books (the other one is Unix Programming Environment by Brian Kernighan and Rob Pike). I immediately fell in love with Perl and I still like it enough to occasionally program in it. I think some of the charm was lost in Perl 5. Though references and other features were a good thing, I think Perl became a tougher language for the newbie. CPAN is amazing, but writing a module, particularly an object oriented one in Perl was a bit like black magic.

By the time Perl 6 project started, I had found Python and more or less switched to it for most of my programming needs. Even though I missed the crispness of perl, and had trouble accepting whitespace significance in a programming language long after I stopped programming in Fortran, I learnt to appreciate Python's clean design. However, I still followed Perl development and used to read Larry Wall's Exegesis talks on Perl 6. IMHO Perl 6 changes the language too radically and it's simply taking too long to release. I am sure Perl 6 will be released sooner or later, but it's so different from Perl that I wonder if it will be really relevant. I think many people have or would have moved to Python or Ruby tired of waiting for Perl 6.

Mind you, I am not saying that Perl is dead. Far from it. C has managed to survive mostly unchanged for over 25 years. Perl is a wonderful language and I still believe every Unix programmer should learn the language. I am sure Perl would be in any good Unix programmer's toolbox for a long time to come. My only question is whether that'll be true for Perl 6? Or would people migrate to Ruby which is closer in spirit to Perl than Python.

In case you're wondering, I did spend some time with Ruby. I think it's a nice language, but I didn't find a compelling advantage over Python to switch. Python's evolution is very well managed and I believe Python has and will continue to borrow some of the nice features from Ruby.

Thursday, August 04, 2005

Evolution vs Thunderbird

Kumar Appaiah comments "If you are really bothered about resource-hungry Evolution, how can you prefer Thunderbird, which is, if anything, worse than Evolution when it comes to resources?". Well, that's not been my experience. Evolution starts other processes in the background (evolution-alarm and evolution-data-server) besides launching it's own copies of spamd if I turn on junk mail checking. Still, I decided to give it another try and configured three IMAP accounts and a usenet account (same as my thunderbird) and here's the resource usage

30984 rganesan  16   0  170m  79m  17m S    0.0 15.8   1:37.58 evolution
 8428 rganesan  16   0  223m  51m  22m S    0.0 10.2   1:36.69 mozilla-thunderbird

Even though the VM size comes up smaller, combined with the other background processes, evolution's VM size comes up much higher. Besides, I guess it doesn't really make sense comparing the VM size, it's the RSS which really matters. Evolution also shows up other quirks when talking to Myrealbox IMAP server. Myrealbox's IMAP server doesn't appear to be fully standards compliant but still Evolution's quirks are very strange. Some folders appear twice and the Sent folder doesn't show up at all. The second quirk is especially annoying and strange because when I try to subscribe folders the missing folder shows up as already subscribed. On my other E-mail account on Fastmail, Evolution does not appear to take into account the folder prefix that I give (I tried both INBOX and INBOX.). Any way, despite these issues, I am actually beginning to like the look and feel of Evolution. It's a really polished UI, I'll probably play around with it some more.

I switched to using IMAP because I wanted an account accessible from multiple machines (I don't like carrying a laptop). But IMAP has the added advantage that I can easily switch between mail clients as I please :-). Kumar also comments that he prefers mutt any day. I like mutt too and I use mutt for all my pop accounts (including gmail). However, mutt's IMAP support is not good enough for me because, first it doesn't cache and second working with multiple folders is not easy.

Calculating Loan EMIs

In addition to technology I am also interested in money (who isn't :-). I really like the financial calculator that comes with the Handspring line of PDAs. I couldn't find a singe Linux App that matched it's flexibility, so I wrote a spreadsheet which I hope captures it's essense. Here's the spreasheet and description.

Thursday, July 28, 2005

Request for Comment Posters

I occasionally get some comments on my blog despite my rather poor frequency in blogging. Thank you folks :-). Some times people ask a question and I have no way of responding because there is no E-mail address. If you want a direct answer do send a mail to rganesan at gmail dot com. Otherwise, I'll try to respond with another blog. At least, this does increase my blogging frequency ;-).

Aaditya comments if I have tried evolution. Yes, I have. It occupies too much screen real estate and consumes too much resources for my taste (just check the number of background processes it needs). However, I'd probably give it another shot because my office has already moved to Exchange and will probably move to Exchange calendaring pretty soon. I've checked that Evolution exchange connector does work as advertised.

I must say it's quite galling for a guy like me who runs a lean and mean desktop with fluxbox (earlier WindowMaker) and screen) inside a plain rxvt without background images to see so much bloat in modern GUI apps. I mean, I remember having a tough time reconciling with Emacs memory bloat. Oh well, I am getting old I guess.

Leena Dasnurkar wants to know which programming language I am using with SQLite and BerkeleyDB. For this particular test I was obviously using C because the internal Btree API of SQLite is not exposed through any scripting language. However, for my applications I use SQLite with Python. As to which is better, I am biased towards SQLite. Despite the extensive documentation, I find BerkeleyDB's APIs pretty painful to use if you want transaction support. The big advantage with using an SQL engine like SQLite and Python is that if you really need to scale bigger it's easier to migrate to PostgreSQL.

Wednesday, July 27, 2005

Testing E-mail posting again

E-mail posting was busted the last time I checked. If you see this in the blog, then it works :-).

Thursday, July 07, 2005

Back to Thunderbird

It's ages since I blogged but I thought I'd at least update that I have switched back to Thunderbird for mail. In fact I switched quite a while back. I got tired of Sylpheed blocking to fetch mails. Thunderbird continues to eat up memory like crazy ("top" output broken into two lines to fit blog column):
10428 rganesan  15   0  221m  48m  21m S  0.0  
9.7   1:28.20 mozilla-thunderbird
However, the resident size seems to keep relatively low (in fact lower than firefox), the UI is responsive and spam checking is pretty good.

Tuesday, April 12, 2005

Berkeley DB Btree vs SQLite Btree (contd 2)

In an earlier blog I mentioned that SQLite does much better than Berkeley DB for writes. When something is too good to be true, it probably is :-). So, when I investigated what's going on, I found that I had passed a wrong flag which disabled the SQLite journal file completely. With that fixed, it turns out that SQLite performs worse than BerkeleyDB for smaller transaction sizes but better than BerkeleyDB for larger transaction sizes.

In my test program (btree-test.c, sqlite-btree.h and btree.h), SQLite pulls ahead for a transaction size of 512 (512 * 128 = 64k bytes) on my ext3 partition. I assume it's the amount of data that's written inside a transaction rather than the transaction size that matters (I haven't verified this yet). Since SQLite database sizes are smaller than that of SQLite (approx 30% smaller in my tests, excluding the BerkeleyDB transaction log), I attribute SQLite's relative poor performance for smaller transactions to the design of the transaction log and the number of syncs to disk. These tests were with SQLite 3.1.6. I get similar results with SQLite 3.2.0.

Please try the programs above and let me know the results. Also let me know if I've goofed up with the code.

Thursday, March 31, 2005

Home DataOne is up :-)

The kind folks from BSNL turned up to install DataOne. Unfortunately, my phone line was dead. So they installed and configured (rather, I configured under their instruction) and left, promising that a line man will show up by 5pm. The line men showed up just after 5pm and found that the problem was with the line cord inside my house! I gave them the short cable connecting my phone to my cordless and they patched it up and said everything is fine (I have a vague suspicion that I was conned about the line cord being faulty, but may be it's unfair to the helpful guys, so I'll not go into that). DataOne seemed to be fine after that, but the diagnostics failed saying authentication failure. Turned that the user ID and password that they gave had a problem, that was soon fixed with a helpful call to the BSNL folks.

So here I am, grinning ear to ear with a 256kbps connection. If everything goes fine, I plan to upgrade to 384kpbs and eventually to 512kbps. By the way, the BSNL customer service is quite nice actually. You just need the right contacts ;-). The people who visited my home for the connection were uniformly courteous and helpful.

Wednesday, March 30, 2005

Home DSL is down again

BSNL DIAS is down. But this time I am happy ;-). I had applied for a BSNL DataOne ADSL connection because it offered higher bandwidths (256+ kbps) when compared to BSNL DIAS which was capped at 128 kbps. Yesterday the kind folks from BSNL dropped in (four of them in fact) to install DataOne but since my DIAS was not yet disconnected, they said they'll come back after DIAS gets disconnected. Today evening, I found the DIAS modem was not syncing, I also had a voice mail from BSNL which said my Data One connection has been enabled. So now you can understand my happiness ;-).

Monday, March 28, 2005

Berkeley DB Btree vs SQLite Btree (contd)

Preliminary data indicates that SQLite does slightly better for tmpfs databases for writes and much better for reads. On normal disks, sqlite seems to do a whole lot better for writes. I'll post the test program in a couple of days. I noticed that the SQLite Btree take up only one third the size of Berkeley DB Btree on disk. That may explain the performance difference because the test program is I/O bound. Please note that these results are very preliminary, I am still learning the APIs.

Speaking about APIs, Berkeley DB is obviously well documented. For SQLite I had to go by the (well) commented source and a test program. Berkeley DB's transaction based API is a pain to use. Despite the lack of documentation, I found the SQLite API much more cleaner and simpler to use. In my next blog I'll present some numbers and the test program.

Sunday, March 27, 2005

sqlite btree as alternative to BerkeleyDB

I am looking for an embedded, transactional B-Tree database alternative to BerkeleyDB. You ask me what's wrong with Berkeley DB. Well, there are no technical issues but the license is not free for commercial use. Unfortunately I couldn't find one :-(. db-1.85 doesn't fit the bill because it doesn't support transactions. Same problem with gdbm. db.* looked promising but that requires a schema definition.

I already knew about SQLite and remembered reading that it's B-Tree API could possibly be used independently. This was in the back of my mind for a long time, so I set to find out if that's the case. I found that the SQLite's B-Tree API provides a surprisingly clean and complete B-Tree interface with transaction support. There is a TCL based test suite (test3.c) that serves as a good example of how the API can be used.

I am writing a test program to excercise the API. I'll blog my progress.

Saturday, March 05, 2005

Didn't make it to the Championship Round

Today was the online round for Google India Code Jam. I didn't make it. I didn't really expect to make it, so I am not too disappointed. The competition is too good. In case you're curious, I came it at the 60th place; only the first 50 get through the next round. A majority of the participants were still in college. I wonder if I am none of the oldest participants around ;-).

Wednesday, March 02, 2005

E-mail posting troubles

If you're wondering about why my previous blog entry is repeated, blame it on the delay in processing my e-mail. I posted manually when my e-mail appeared to be silently discarded and two days later the post shows up. I hope this is only a temporary problem with blogger.

Tuesday, March 01, 2005

A long time since my last blog

I haven't blogged for a while now. I was practising for the Google India Code Jam and I had a bad shoulder pain (the doctor says muscle has gone into a spasm). Let's give a could shoulder to my shoulder (sorry, bad pun ;-). I had a fairly high opinion about my coding skills but the practise problems in the GICJ Arena and general Topcoder arena deflated my ego considerably :-(. May be I've rusted by 10+ years of coding in the industry, but it's more likely that I was never the coding guru that I was ;-).

Any way, I did participate in the evaluation round yesterday and managed to get a reasonably decent score. The server experienced lots of problems and the results are still not yet out. I think I'll make it to the next round, but I doubt I'll go much further. I was surprised at the amount of obvious cheating that went on in the contest.

Made it to the next round

The results were finally out this morning and happily I've made the cut :-). Actually since both my solutions passed the system test and I was placed sixth in the room, there was no doubt in qualifying. The next round is another story. I don't think I'll make it, but I'll give it a shot.

Monday, February 28, 2005

A long time since my last blog

I haven't blogged for a while now. I was practising for the Google India Code Jam and I had a bad shoulder pain (the doctor says muscle has gone into a spasm). Let's give a could shoulder to my shoulder (sorry, bad pun ;-). I had a fairly high opinion about my coding skills but the practise problems in the GICJ Arena and general Topcoder arena deflated my ego considerably :-(. May be I've rusted by 10+ years of coding in the industry, but it's more likely that I was never the coding guru that I was ;-).

Any way, I did participate in the evaluation round yesterday and managed to get a reasonably decent score. The server experienced lots of problems and the results are still not yet out. I think I'll make it to the next round, but I doubt I'll go much further. I was surprised at the amount of obvious cheating that went on in the contest.

Thursday, February 10, 2005

Home DSL finally up

To cut a long story short, Home DSL is finally up now. I managed to configure my Reliance India Mobile connection up yesterday. After initial hiccups, connecting using the wireless modem was a breeze. The connection is slower than my 128kpbs, but felt faster than dialup. I pay by the minute, but at least I had net access home.

Tuesday, February 08, 2005

Home DSL access down

I have a BSNL DIAS connection at home. 128kbps; it's not broadband by any stretch of imagination. Broaderband is more like it :-). I don't do heavy duty downloading and with VPN access to my office and a setup optimized for local editing and remote compiling, so it's not too bad. Plus having a stable and always-on connection is much better than dialup. That is, stable, until now. Unfortunately my phone line has conked off.

This is not something new. I occasionally run into problems and it usually gets automatically fixed in a day. This time the line is dead for more than four days. I was not in town last weekend, so I didn't follow up. The line man was supposed to be at my home at 3:00pm today. I took a break from office and stayed at home from 3:00 to 5:00pm but he didn't show up :-(. Not that I am surprised. Looks like I need to stay at home the whole day tomorrow, without net access. I read somewhere that Frustration is searching for your glasses without your glasses. I can add waiting at home for your DSL connection to be fixed without your DSL connection.

Speaking of DSL connections, the line probably went dead last Thursday. I noticed that the modem sync LED kept blinking. Usually it gets fixed overnight. It didn't happen this time. I noticed that the phone line was also down only on Friday evening. Shows how frequently I use the land line ;-). Then I had to leave town, so it's now five days since the line went dead :-(.

Problems with balsa too

Balsa's IMAP support seems very sketchy. The FAQ says Balsa cannot automatically discover IMAP folders. I tried adding a "IMAP folders" account instead of "regular" IMAP account with a folder name. I did get a list of folders but the UI just hung when I clicked on a folder. Looking at the strace it appears that balsa is downloading the entire folder without responding to the UI. Not good :-(. I am sticking to sylpheed-gtk2 for now.

Monday, February 07, 2005

Sticking to Sylpheed for now

Despite the blocking behavior, I am sticking to sylpheed for now. Memory usage is pretty low and it's very stable. There are some more quirks I've noticed. It seems to ask for the passwords of all my accounts every day even though it's been running round the clock. May be this is configurable.

An anonymous poster has commented if I've checked out balsa. I've checked it out before but wasn't too happy with it. I'll take another look and post my feedback soon.

Wednesday, February 02, 2005

Problems with sylpheed-gtk2

Sylpheed appears to be single threaded :-(. Downloading messages appears to block the UI. Clicking on a folder appears to make sylpheed rescan the folder, resulting in a delay before the summary shows up. Memory usage is pretty good compared to the other clients. I am going to stick with sylpheed for a while before giving evolution/thunderbird another shot.

Tuesday, February 01, 2005

Looking for a good GUI Imap Client

This one qualifies as the first rant in my blog :-). I have been hunting for a good imap client to manager four imap accounts (yeah, I know that's a lot). Unfortunately I can't find one. My setup is somewhat unique. One of these accounts happens to be on myrealbox and since that's kind of a experimental box for Novell, the server keeps going down. Their imap server is also pretty lame (searches don't work) and has some strange quirks. The second problem is tha two of my accounts (including the myrealbox one) get too much spam. Less than 5% of the mails to these accounts are valid mails. Rather than filtering them on a GUI client, I have setup imapfilter with spamassasin to spam filter my mails offline. This results in mails suddenly disappearing from my inbox. Looks like some clients have trouble with that. I'll revisit my spam filter story some other time. Lets focus first on the mail clients.

Thunderbird is nice, seems stable, but bloats to 200MB of memory usage with just two imap accounts. That's unacceptable, so that's out. kmail did better on the memory usage front but it's imap support is pretty buggy. kmail appears to have problems with both unreliable servers and disappearing mails. I have been using it for quite a while but the problems still exist with the latest version I tried (KDE 3.3.2). So I gave up on it and tried evolution. Evolution seems nice but seems to take up too much screen real estate and too much memory. It also seems to have a strange quirk, showing an unread mail in the folder window when none exists (Evolution 2.0.3). I've used sylpheed before but it's still gtk 1.0 and looks ugly as hell. I found that the gtk2 version is packaged for debian. I am trying it now and liking it so far. I'll see how it goes.

Before I finish this rant, I owe a apology for the authors of these mail clients. I understand that bugs don't get fixed unless some one reports them first. I really should be filing but reports about the issues I found. I haven't done that yet.

Monday, January 31, 2005

E-mail posting works :-)

Updating the blog through e-mail looked like a cool idea, but I couldn't get it working yesterday. Guess what? I was sending the mail to instead of! I tried again today and it didn't work either. Finally, I got it figured. You need to send the post from your registered e-mail address.

Sunday, January 30, 2005

What I am reading Now

I've started this crazy habit of reading two or three books at a time. Right now I am reading The Pragmatic Programmer. I am also reading The C++ Standard Library - A Tutorial and Reference through Safari Online. Finally I am reading a Tamil book, Akilan's "Vengaiyin Mainthan" (Son of a Tiger). I just finished reading The Broker by John Grisham. I'll comment on the other books later. "The Broker" was good reading. Not as good as his original series of lawyer books but much better than his offbeat "Painted House" or his other recent books.

Updated web pages

I setup my personal web page at Employees.Org. My debian page is at I remember setting up my first (internal) web page over ten years back when I joined as a post graduate at IIT Kanpur; man I feel really old :-(. Since then I used to keep simple, stark, mostly unmaintained internal web pages with some useful links. I never really published my web pages for public access through sites like geocities etc. Now that I am thinking of blogging, I thought a web site to go with it is nice.

Saturday, January 29, 2005

First Post

This is my first post. I've been on the "net" for over 10 years now - starting with email and usenet in 1993, but this is my first attempt at blogging. Let's see how it goes.