Monday, August 07, 2006

Sorry for the long break

I apologize for not blogging for a long while now. It appears that some crazy people are actually interested in what I write ;-). So I've resolved to start again :-). What's new? Well, in the last 6 months, I've assembled a dual core AMD 3800+ system for home use with the help of a Colleage at work. As with all tech stuff, the price of the processor has dropped drastically before I figured out something useful to do with the system.

Intel's new Core 2 Duo processors now appear to the best processors on earth. I am a big fan of AMD, but this time Intel seems to have a winner. For multi-core systems, AMD still appears to have the edge because of their better interconnect technology. AMD's new DDR2 based AM2 platform doesn't seem to be a significant upgrade. I am still hoping AMD will manage to pull a rabbit out of it's hat :-). In addition to better performance at lower power consumption (as if that's not enough!), another nice thing about Core 2 Duo systems is hardware support for virtualization with Intel's VT technology.

Speaking of Virtualization, VMWare Server is now free. This means I no longer have to build VMWare virtual disks using qemu-img. VMWare Server is really good, but I failed to configure booting from my existing Windows installation inside Linux (or vice-versa). Vice-versa (I mean existing Linux inside Windows) sort of works but I have to put in some funny hacks. I have a SATA drive, WindowsXP seems to think of it as a IDE drive despite installing the proper SATA drivers. The upshot of this is that, when Linux boots inside VMWare, the disk appears as hda, whereas when booting natively, the SATA drive appears as sda. I'll keep playing around with this.

Monday, January 09, 2006

Reading websites with horrible fonts

My company provides access to Safari. Safari default fonts are not very readable with Firefox with Linux. I could opt to override all fonts in Firefox settings but this is not very desirable. Instead I just "disable styles" (Ctrl-Shift-S) using the Webdeveloper extension. I find that this simple trick makes many sites much more readable. Now if only I could figure out how to disable styles for only specific sites, life would be heaven :-).

Site Feed

A colleague of mine was asking how to configure blog feeds from blogspot. It's not mentioned by default anywhere in the blog. Luckily, I did remember configuring some settings regarding site feeds. So I've now provided the blog feed URL in the blog title.

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>@blogger.com'           '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 http://www.iiitb.ac.in/debconf/register.html to register yourself for the conference. You can also register by sending mail to: debconf-bangalore@iiitb.ac.in. 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 (snagrajn@yahoo.com) who's driving this effort to DebianIndia@yahoogroups.com 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.