Friday, September 29, 2006

Death of a medical student



I am shocked at the recent death of a medical student at the All India Institute of Medical Sciences, New Delhi. Kamalla Raj Kiran was training to be a doctor at AIIMS, where he contracted a disease called "Dengue" and died in the same hospital where he was aspiring to be a doctor.

For those who don't know, Dengue is a viral disease spread by mosquitoes. Where there are no mosquitoes, there is no dengue (except by transfusion of infected blood). Dengue is a preventable disease.

This story essentially highlights the sad state of sanitation at the apex body of health in India. While AIIMS boasts of being the best medical training and research institute in the entire Asian continent, it has failed miserably at more steps than it has succeeded. It can be labeled only as an "irony" that the medical students are asked questions about transmission of Dengue in their professional examinations, but the sanitation authorities at the same place are blind to the answers. Such deaths could be prevented only if there is basic sanitation at AIIMS.

Interestingly, this is not the first time when AIIMS is spreading dengue. Is it about time AIIMS did something about itself?

Yes it is time! But given the current state of politics at AIIMS, where people worry more about themselves rather than the nation itself, I do not expect anything to be done. Especially not when I have seen many doctors committing suicides because of workplace harrassment - harrassments that were prevented from being released in the media or the public. In fact, AIIMS thinks that avian flu is more important than other diseases of national interest, perhaps driven only by the buzzword about avian flu in the west.

I urge the people to do something about such a basic necessity as improving sanitation at AIIMS. Will they do it?

The answer is: No.

They will do it only when they themselves catch Dengue. They will do it only when it benefits only them, and not everyone. Hard to digest? Look at the past.

Long live humanity! Long live health! Long live AIIMS!

Duh!


P.S.: Here's a first person account about this death: (an email from someone at AIIMS)

Today was a very tragic day for all of us. Do you know Kamalla Raj Kiran, currently he was in 7 th Sem... He got Dengue. I went to see him in the morning when B***** told me that platelets are going out of stock in our blood bank. He was taken to Casualty yday night where he deteriorated very rapidly and his disorientation was not taken care of in the casualty. There was a delay of few hours in getting his CT done. That too was done after he passed stools in bed that they suspected CNS involvement. When I went in the morning to C2 ICU, He was on ventilator and all the brain stem reflexes were gone.. I saw the CT... It was pretty bad...
He was brain dead. He is still being supported cardiovascularly in CT2 ICU. I don't know when they will declare him..
And some more students from BSc and MBBS are being admitted in the casualty and ward suspecting of Dengue..
Really bad times at AIIMS!


Update:
I publicized the news across medical schools in India, and also involved one of my friends who works for an Indian TV channel. Finally, media was interested, and the news was covered widely by TV channels in India and BBC 10 hours later. Here's a screenshot from BBC news site: (Click to enlarge)


Thursday, September 28, 2006

11 Rules of Blog Hygiene

How to make a good blog

  • Have a well-defined purpose
Your blog must serve a well-defined purpose, and declare it in the title of your blog. Nonspecific blogs do not attract visitors. A blog that is focused on a particular theme is appreciated more than a loosely-woven one. Many people write blogs as if they were their daily journals, and that is fine too. That is a purpose in itself, at least for the author.

  • Write descriptive headlines
When people reach your blog, they'll look at the headline first. The headline for your posts should be descriptive of the content. Otherwise it becomes confusing for the readers. For example, if you are writing about the visit of Gandhi to South Africa and how it changed his life, then the title could well be "Gandhi's visit to South Africa: How it changed his life".

  • Focus on quality
Having quality content on your blog will produce the urge to be read. Most people should be able to generate quality content by themselves, as long as they do enough research or brainstorming on the topic. Make sure to cover as many aspects of the topic as possible. For example, if you are blogging about your shopping experience in the grocery market today, you could describe what all you bought, what you left out, any interesting people you met/saw at the grocery store, any price changes since last time, and so on. The idea is to cover as much of the topic as possible.

Blogs with poor/no content in them are not liked by many. I saw a blog for the first time about 4 years back. It looked like a diary of random events from a real person's life. Many of the posts were one-liners, and it seemed that the author was focusing on quantity rather than quality. My fears were confirmed when I saw one of her posts - "Yay! It's my 200th post on my blog! Oh my God!"

  • Include pictures
A picture is worth a thousand words - it has been said, and rightly so. Pictures make our world colorful. Pictures attract attention. Picture want to be looked at. Whenever possible, try to post a picture on your blog entries. The picture must match the content of your post, and also the overall color scheme of the page if possible. For example, when blogging about my recent visit to a pig farm, it is an interesting (but often forgotten) idea to post those pictures I snapped at the pig farm. If you can't think of a picture to place in your blog, forget it then.

Also, try to include your own picture on the blog. It makes the blog lok a lot more personal.

  • Use consistent and relevant color schemes
There should be ample white space in the blog for easy readability, and a light background. If you keep your fancy pictures as the blog background, it's very difficult to read. Just take a look at any random profile at myspace.com and you see what I mean.

The color should reflect the nature of your content (e.g. a young girl's emotional blog may have a pink color, a technology blog may have a blue color), but there are no well-defined rules here. Most likely, you shall follow some preset schemes given by the blogging system, but you can always customize the template to suit your needs.

  • Place links and references
Whenever possible, try to include links to other sources of information about the content of your blog post. This ensures that the readers know you're open to others' ideas, and are ready to give your readers a broad point of view. You may consider linking not only blogs that support your point of view, but also pages that are opposite to your point of view. For example, if your blog is describing the capitalist economic practices, you might also want to give a link in the end to communist economy. If you have

  • Respect copyright
Stealing content is an extremely bad idea, because it doesn't benefit anyone. How would you feel if you discover that someone has copied your blog without your permission, and is getting applauded for the stolen content? If you must use content from others, make sure you post a link to their text rather than copying and pasting it altogether. After all, it is your blog, not theirs! If you must copy and paste content from other sites, make sure you have the author's permission, enclose the copied text within quotes, and always give a reference to the original website.

  • Organize and reorganize before hitting submit button
All the paragraphs in a blog should "flow" logically from top to bottom. However, not everyone can write all the paragraphs in a logical sequence in the first go. I can't do it myself. When I start writing the blog, first I tend to write the content that appeals to me, and then I write somethinng that doesn't appeal to me that much. This is quite natural, and happens with everyone. But when I start reading my own blog just before I post it, I discover that some paragraphs should be promoted to the top, whereas others serve better as footnotes. Also, when you rearrange your paragraphs, you may have to add connecting sentences to the end of previous paragraph or the beginning of next paragraph so the "flow of logic" stays smooth.

  • Correct mistakes
There's nothing wrong in making mistakes as long as you're willing to correct them, and learn from them. If someone points out an error in your blog (factual, grammatical, or otherwise), promptly correct it, and thank him/her. Most blogging systems have a spellchecker built into them (if you haven't noticed). It is a good idea to spellcheck your document before posting.

  • Track your visitors
You can track your visitors by Google analytics or a similar service. This will let you know which pages are more popular, and which ones are least so. Knowing this, you can improve upon your weak areas, and attract more traffic.

  • Invite feedback/comments
It is a bad idea to disable comments/feedback on your blog. Comments enable others to be part of your blog, and other people will tell you what they think about your blog. There are times when people email me directly because they want to differ with some of my ideas, and there are times when people share my ideas. Nonetheless, it is good to keep in touch with your readers, so enable comments now if you haven't done so already.

Wednesday, September 27, 2006

Reality Distortion Field


Reality Distortion Field (abbr: RDF) is a term first heard in the Star Trek series. This term referred to optimism being taken to great heights, so that mere mortals could do things way beyond their reach. But this term went almost unnoticed, unpopularized, until Budd Tribble used this term again. Budd Tribble was an MD, PhD working at Apple Computer as a manager of the development team. Being a trained physiologist, he noted Steve Jobs' ability in keeping his team highly motivated by an intriguing mixture of his charisma, charm, exaggeration and clever marketing.

Steve Jobs made his programmers believe that they could "just do it", and his team then put in enormous amounts of effort in their work, leading to heightened productivity and efficiency. The result was Apple Computer passing milestones of success, non-stop.

How to create Reality Distortion Field:
  1. Be optimistic yourself.
  2. Present small achievements as "breakthroughs", interesting developments as "turning points" and "huge leaps forward".
  3. Use your personality and charisma effectively for convincing others "you can do it"
  4. Be funny about your ideas.
  5. Be ready to bend the facts to fit the purpose at hand.
  6. Make others follow you, and then make them dream of success.

Notes:
  1. The effect of RDF is quite volatile. It stays only as long as the initiating force (Steve Jobs in this example) is around the subject, and withers off in his absence.
  2. RDF works effectively even when the subject knows about it.

Tuesday, September 26, 2006

How to synchronize firefox bookmarks over any number of computers

Note: This article was written about Google Browser Sync, a product that has been discontinued as of today. The same purpose can now be achieved by installing "Weave" add-on for Firefox.

I have been using the internet since 10 years now, and have noticed one thing. Time and again, I visit few sites that I like so much. I bookmark them, for easy return later. But then, I lose the bookmarks because I erased the hard disk, and never remembered to backup bookmarks. There have been times when I backed up bookmarks, but never cared to restore them. Things get more complicated given I want to use the same bookmarks at home and office.

Hmm... I wish there was a way I could store the bookmarks on an internet server, and my browser could synchronize it automatically from there.

Few people know that Google (yes, again!) has a easy solution to this. This service is called Google Browser Sync, and it works with Firefox only at the moment.

What it does: Automatically backs up your Firefox bookmarks, cookies, saved passwords, history, and last tabs/windows you opened... and then restores it when you use a different computer (or the same computer after you format your hard drive, for example).

How it works: Google simply backs up your browser information on its servers, and then restores it whenever required (e.g. if your browser crashes, your hard disk dies, or you simply switch off your home computer and move to office computer).

How to do it:
1. Requirements: Firefox and a Google account (e.g. a working gmail account).
2. First open Firefox, and download Google Browser Sync extension for Firefox from this page.
3. Exit firefox, and relaunch it.
4. Google Browser Sync will launch automatically, and ask you for your Google account and password. If you have a Gmail account, supply those username and password here. It'll also ask you to set a PIN number as additional measure of security.
5. Next, it will ask which all settings you need to synchronize. I selected everything except stored passwords.
6. Done!

Google Browser Sync will display as this:


To check this, exit firefox with 4-5 windows/tabs open. Now restart firefox (from some other computer if you can), and you'll be prompted to restore your last session. If you choose to restore it, Firefox will spring back to life exactly in the same condition as it was last time. This includes any sessions you may have logged in (cookies).

That was neat! Forget backing up bookmarks manually... Let Google do it for you!

If you don't want to use Google Browser Sync anymore, you can uninstall it. To do this, open firefox, click Tools --> Extensions. Now select Google Browser Sync extension from this list, and click on the Uninstall button.

Monday, September 25, 2006

Perhaps a very innocent question!

A picture is worth a 1000 words :

Sunday, September 24, 2006

How to change desktops on a macbook/pro by slapping it

Recently I saw an interesting video on youtube where the person was changing desktops on a macbook pro by slapping its screen edges.



That was cool... and I was on my way to do it. In the absence of any instructions on youtube, I asked my best friend for help. His name is Google.

Principle: Macbook and Macbook Pro has a sudden motion sensor that switches the hard disk off temporarily in case of a fall from height. VirtueDesktops takes input from this motion sensor, and then outputs it to changing desktops. Simple in principle. Simple to do if you follow the steps below.

I have done it, in three ways. I'm posting the easiest way here:

HOW TO CHANGE DESKTOPS ON A MACBOOK/PRO BY SLAPPING IT

1. Install VirtueDesktops from this page.
2. Run it from the applications folder in finder.
3. When it runs, open its preferences by clicking its icon on tray, and then selecting preferences.
4. In the Application tab, click the little checkmark against "Enable Motion Sensor switching".



5. Now start slapping the macbook/pro

It should work out of the box, but if it doesn't, you can logout and relogin to your account.

Tips:
  • We call this thing a "smackbook" :)
  • Sliding the motion sensor to right reduces sensivity (quite opposite of what is expected usually).
  • The "light sensor switching" works with a macbook pro only (not with regular macbooks). The reason is that the light sensors are present only in the macbook pro models (for controlling the backlit keyboard).
  • You could change the desktop switching effect to "cube" and it's the coolest thing!
  • When you type on the macbook/pro, the pressure on the keypboard may cause the desktops to change. This is extremely annoying, and in such an event you should reduce the sensitivity of motion sensor switching by sliding the arrow towards right.
  • If you want different wallpapers for different desktops, you can do so by opening the preferences of VirtueDesktops --> selecting the "Desktop Template" section from list on the left --> selecting the checkmark against "Use template for new desktops"--> clicking the little plus sign in the bottom of that screen --> selecting "image overlay"--> clicking the little "i" near the plus sign to set the image.
Let me know how it went!

Saturday, September 23, 2006

Google suggest: What is it, and how to use it.

Part 1: What is Google Suggest?

Google suggest looks like the usual google homepage only, but it tries to "guess" what you are typing, and autocompletes your entries based on the number of search results. A screenshot:



In this example, when I type "All India", google tries to suggest that the most popular search phrase beginning with "All India" is "All India Radio" with over 8 million results. Second in rank is "All India Institue of Medical Sciences" (which I was searching for) with about 1 million results.

Part 2: How to use it?

Change your browser homepage to this:
http://www.google.com/webhp?complete=1&hl=en
(If you use a language other than English, change the last two letters of this link to a language of your choice, e.g. replace en with hi for Hindi, de for German, fr for French etc. On testing, I found that suggest does not work with most non-English languages.

Note that when you typing something, Google automatically guesses what you want, and tries to fill up the search field with the top result. If you like the first phrase, simply press Enter / Return on your keyboard to search for that. If you like the other search phrases, you can use the arrow keys on the keyboard to select them, and then press enter to activate. You can also use a mouse for this if you like.

Tuesday, September 19, 2006

Concept: eBytes cybercafe

The following few paragraphs describe a cafetaria from a dream I had on 22nd July 2006, while I was still in jetlag after traveling from United States to India:

The name of this cafetaria is E-bytes. The logo looks like coffee-cup from sun's Java. There are no waiters who come to take the order. Every table is fitted with a computer with TFT screen and a mouse. Users are presented with a flash-based menu! Users simply point and click what they want, and even pay by their credit card right from their table. The orders are taken by the networked computer by the chef manager who is completely out of sight from the customers. The order is completed, and I get to see it.

I ordered 1GB RAM for myself. It's basically a rectangular wafer with golden yellow base and greenish toppings (maybe cilantro) - looks just like computer RAM. My petite friend gets 512 MB RAM which is a thinner version. We dip it in some kind of sauce and taste it - very tasty! And crisp! :)

Other things on menu:

Hard disk donuts: Comes in 80 GB and 160 GB sizes. This donut however doesn't have a hole in its center! You can order Sweet Seagate or Salty Samsung.

Hotmouse: A mouse-shaped hotdog. It's cordless. Children would like to have a corded Hotmouse that is also available on the house.

The dream ends... prematurely.

Will someone actually materialize this dream, some day? Or is it there already?

Ubuntu and Vista: Trends by Google

Google Trends is a unique service aimed at studying the trends in online google searches. It compares keywords you supply based on the volume of Google searches as well as volume of news reporting on the keywords. I saw the trend for ubuntu vs. vista, and the results are here.

Some comments:

1. Vista has shown dramatic ups and downs, whereas Ubuntu continues its steady rise. The tremulousness of vista graph may in part be due to the Microsoft vs. EU court rows, as well as the continued delays in shipping of vista. However, Ubuntu has continued to rise up, despite the fact it's a two year old baby.

2. Ubuntu has come up with four major releases in the last two years, whereas Windows has struggled to release Vista after about five years of effort. There could be several reasons Windows is lagging behind:

(i) Microsoft is trying to drag XP as long as it can. Thus, by releasing Vista late, it's buying time to develop the next release (Vienna).
(ii) Microsoft servers were hacked few years down the lane. So they are trying to patch up any security holes the hacker community may exploit.
(iii) Microsoft is trying to build "curiosity" among its users for Vista by delaying its release
There could be more reasons... but it appears that the delay will ultimately benefit Microsoft more than what earlier versions of windows did.

2. Somehow all the trends searches are from major cities in the Europe. In fact, more people are searching for Ubuntu rather than Vista in Norway, Finland and Spain. I think I can explain Finland by the fact that Linus Torvalds, the creator of Linux, hails from Finland.

3. The regionwise trends show that South Africa is the second most popular region for Ubuntu rather than Vista. I can explain this because Mark Shuttleworth, the creator of Canonical Foundation for Ubuntu, hails from South Africa. I have an african friend who says that South Africa is perhaps the most developed country in the entire Africa.

4. When it comes to Ubuntu, it appears that more searches are done on Ubuntu than it appearing in the news. This is very typical of any linux related news - many people are interested in it but somehow that doesn't make headline on any major news site (leaving out technical news agencies).

5. Despite whatever Ubuntu fans might say, I'd contend that Ubuntu is in no way a competitor to Vista... at least not in the first few months. I remember somewhat similar speculations were circulating when XP was in the coming... people used to post fervently in forums "Apple and Red Hat will kill XP" and things like that. But that did not happen. People are resistant to change - they're more likely to continue with doing whatever they are doing. And they're doing Windows. You know what I mean.

6.

eXpression

I coin new usage: eXpression

Definition: The process of externalizing ideas through online electronic media.

Components of eXpression:

  • Website
  • Blog
  • Forums/bulletin boards
  • Emails
  • Text chats
  • Voice/video chats
  • Social networking


Could well be another name for a cyber company! :)

Monday, September 18, 2006

What is bicycle-repair?

The process of installing Linux is quite boring, just as installing any other OS. Some of you, who keep awake and sit near the computer while it's installing Linux must have noticed that it installs thousands of packages. Have you noticed that it also installs "bicycle repair" as one of the packages?

Does this mean that you can repair your broken bicycle by hooking it up with your linux computer?

"Eh.. Comeon! You must be kidding!"

Well yeah. I am kidding.

When I saw this "bicycle repair" package for the first time, I was curious, so set out to know what exactly is this. And I found the answer.

Bicycle Repair Man is a refactoring utility for Python. Basically, it manipulates the code of a program without changing input or output. The aim is to make the code more readable for the programmer.

But still, I wish my computer could repair my bicycle for me! :)

How to synchronize time with NTP servers on an ubuntu machine

Update: Thanks to Ben Dodd for pointing this out, this blog post is now obsolete. NTP synchronization is now built into Ubuntu. Just install ntp using the command:
sudo apt-get install ntp
and you're done.



After the last two power failures in my area, I realized that the server loses its time after every hard restart. Its BIOS battery is totally exhausted. The time is now erroneous, systemwide! I remember Ubuntu includes a tool with which it can (and does, by default) synchronize time with its NTP servers. In my case, it isn't working well. So here's how I made it work:

1. First, make sure NTP is intstalled.

sudo apt-get install ntpdate

2. Then, run ntpdate, specifying an NTP server:

sudo ntpdate ntp.ubuntulinux.org

This should set the time correctly for that session. Note that superuser previleges are necessary to set the time, because setting time is really an "administrative task".

3. Now you shall want this to run this regularly, right? Since it's a server, I'd prefer to run it at startup. To do this, we shall add a little script to the startup.

First, open a terminal, and pass this command:

sudo nano /etc/init.d/ntpdate

In the blank file that comes up, copy and paste this:

#! /bin/sh
echo "Synchronizing system time with Ubuntu Servers..."
ntpdate ntp.ubuntu.com
echo "Setting hardware clock to updated time..."
hwclock --systohc

Note the last line: It resets the hardware time ("BIOS time") to the system time. Press Ctrl+O to write out this file, and Ctrl+X to quit nano. Now we shall make this little script executable. To do this,

sudo chmod 700 /etc/init.d/ntpdate

And finally, let's inform the system about this new startup script we just added:

sudo update-rc.d ntpdate defaults 90

And you're done.

To test this, you must restart your system, and keep a close watch on the messages being shown on the system. Alternatively, you could also read the system log files later (/var/log/syslog)

Sunday, September 17, 2006

Free "Parallels" for Mac OS X

I want to run Ubuntu virtual machine on OS X, but don't want to pay for Parallels Desktop. So I was searching for few alternatives, and stumbled across one such tool. This one is called "Q" (pronounced "kju"). I installed it, and was able to create an Ubuntu virtual machine effortlessly. Even easier than VMware Workstation.

So I now have Ubuntu running under Mac OS X, with the help of Q.



Then I also tried Ubuntu and Kanotix Live CDs in Q - Both of which worked flawlessly. I tried installing Windows 98 SE in Q just for the sake of experimenting, but it wouldn't boot from a bootable CD! Don't know why!

In a nutshell, If you want to run another OS on your Mac without rebooting, Q is a formidable candidate.

Identify this operating system



All these OS's running are real, there is no "background jpg" or something like that!

Ubuntu Server: CDROM problem

My server, a 1997 old desktop, has Ubuntu Server Edition running on it. I had inserted my Ubuntu CDROM in its drive, and kept it over there ever since. But now, I needed to take the CD out, for installing an Ubuntu virtual machine on my laptop.

Okay, so I sit in front of my server, and press the eject button of CDROM. Nothing happens. Did that again - nothing yet. I pressed the button really hard one more time. But the machine won't budge.

I thought that the old CDROM drive is dead for good.

But wait... I just remembered: I couldn't eject CDs by pressing the eject button on my previous linux laptop! What is going on here?

Lacking a GUI, I decide to do something from CLI (command line interface) to eject the CD. So I type this:

eject

and press enter.

Viola...!!!! The CD is out now! :)

Monday, September 11, 2006

MacBook Smart Sound Volume

I just discovered this. First, set the macbook volume to a level when you can barely hear it (about 50-60%). Now plug in a headphone jack in the headphone socket in the macbook, but don't wear it in your ears... just let it lie besides the macbook.

And now, increase the volume to maximum... you shall hear the sounds from the headphones, right? Yes you do. And then, remove the headphones from the macbook.

You would expect that the macbook will keep playing sound at maximum volume. But you're wrong.... MacBook remembers your sound volume settings for the macbook internal speakers and the headphones plugged in.

You discovered something!

And last, but not the least, plug the headhphones back into the macbook, and reduce the volume... so your eardrum stays safe the next time you wear them. :)

Monday, September 04, 2006

Empty iptables in Ubuntu default installation

Now that my site is famous (almost), I'm beginning to think about security. Actually I should have thought about it even before opening the site to the public. So here I am, sitting in front of my black box, thinking about security.

Googling around for some time revealed more details about a word I happened to know previously - "iptables". A quick check at my iptables configuration in default ubuntu installation revealed that I do not have any firewall rules set at all! Now, this makes me think twice about my server security. How then, no one was able to hack the site?

The answer is my router. It has an in-built firewall, which I had configured to allow only ports 80 (HTTP) and 22 (SSH). I would just have port 80 open, but I needed remote management. So I opened port 22 as well.

I'll find more details about server security, and post them here.

Sunday, September 03, 2006

The Digg Effect on my site

My site was posted by someone at Digg.com recently, and experienced a heavy traffic. It survived the onslaught, but was crawling painfully. It could have done better if
  • I was informed before posting at digg.com
  • I had faster internet connection (currently 64kBps upload DSL)

Apache and Ubuntu survived the onslaught, and the site remains up. I had set up a mirror earlier... and it proved handy in these times.

Thank you all for digging/undigging the story!