Author: rahul

  • USB Flash Drive With Write Protect Switch

    The first USB flash drive that I had owned, RiDATA 1 GB flash drive, had a hardware USB write protect switch. This was really cool as whenever I had to take a printout at some Internet cafe, I’d lock it and then only attach it to any computer. This way I was confident that even if the Internet Cafe’s computer was infected with some virus, it would by no means affect the flash drive (which I’d later be using on my computer). However, of late, manufactures seem to have stopped putting this hardware write protect switch on USB flash drives. Only a few of the flash drives now come with this option. The list of drives that have a write protect switch are being maintained at: http://www.fencepost.net/2010/03/usb-flash-drives-with-hardware-write-protection/ .

    I recently purchased Kanguru FlashBlu 2 8GB as this particular model had good reviews and also seemed to be reasonably priced. I had originally intended to buy the 16GB model but its price did not seem to be justified for a write protect switch. As soon as I get the flash drive, I plan to setup multiple LiveCDs for any time troubleshooting and installation :).

  • Creating Audio CD Image

    We all have heard of the ISO image format which is a very popular way of backing up data CDs & DVDs. A very easy way of creating an ISO image in linux is by using the dd or dcfldd command. Similarly, in Windows, applications such as Nero have an option to save a CD as an ISO image file. However, when it comes to audio CDs it is not possible to backup them as ISO image file as they have multiple tracks. Here are two ways to create an image of audio cd for archival purposes.

    1. Exact Audio Copy (EAC)
      Exact Audio Copy is a Windows CD Ripping application which has gained a lot of popularity for its almost perfect ripping mechanism of even scratched and damaged media. EAC can also be used to create an image of the audio CD for archival purposes. The image can either be uncompressed WAV file or a compressed file. Apart from this image file, a CUE sheet file is also created which stores information about the tracks. The best part is that EAC is free for personal use albeit not free software.
    2. cdrdao

      cdrdao is free software for authoring and ripping of CD-ROMs. The following command I believe will help in creating an almost exact copy of the audio CD.

      # cdrdao read-cd -v 2 --device /dev/cdrom1 --datafile audiocd.bin --read-raw audiocd.toc
      

      This is the same command used by Brasero when making a copy of an Audio CD.

    3. I have also come across a command “readom” which has a “–clone” argument that is used by k3b in its “Clone Copy” option for audio CDs. However, I’ve read in a lot of forums that this does not backup the audio CD in a reliable way. That is when the image is burnt back to another CD, it may not be playable by all audio CD players. However, I think this command may be useful to backup data CDs with sector errors.

  • Synovel CollabSuite Gets Deployed at IIIT-H

    After a long wait, Synovel CollabSuite has finally been deployed at IIIT-H, my graduation school. Since I’ve graduated, I wanted to do something significant for IIIT-H and I got this opportunity through my current company, Synovel Software Technologies. This has been the largest deployment of CollabSuite to date, with about 3750 user base and more than 1000 active users. We did face a few issues in the beginning but they have all been resolved now. And now there is one more thing which has been pending from my side for IIIT-H – the alumni portal. I hope I’ll be able to take out time for this soon enough and complete it.

  • Pidgin XEP-0136 Plugin

    XEP-0136 is an XMPP protocol extension used for storing and accessing message archives. Daniel Kraic has written a Pidgin plugin for accessing these archived messages. Below are the brief instructions for installing this plugin in Debian and using it. Generic installation instructions can be found in INSTALL file.

    Installation:

    • Download the plugin (https://github.com/danielkraic/Pidgin-XEP-0136-plugin/tags) and extract it.
      # unzip danielkraic-Pidgin-XEP-0136-plugin-v0.6-0-g74aea04.zip
      # cd danielkraic-Pidgin-XEP-0136-plugin-b22950b
      
    • Install build dependencies and Pidgin headers
      # apt-get install gcc
      # apt-get install pidgin-dev
      
    • Build the plugin.
      # make xep136_plugin.so
      
    • Copy the plugin.
      # mkdir ~/.purple/plugins/
      # cp xep136_plugin.so ~/.purple/plugins/
      
    • To enable the plugin, start Pidgin, go to Tools -> Preferences and enable XEP-0136 plugin.
    • Author Notes:

      You can access history by clicking the “HISTORY” button located at the bottom of Pidgin conversation window. Then “XEP136” window should appears. Next click the “SHOW” button on the right of “XEP-136” window to see list of conversation dates on the left. Select conversation date to see its content.

      It is assumed that you use XMPP server with XEP-0136 extrension support. Ejabberd IM server should works with “mod_archive_odbc” enabled as well as Prosody IM server with “archive” module enabled.

      Feel free to report bugs. Check for future updates at https://github.com/danielkraic/Pidgin-XEP-0136-plugin

      Screenshots:


  • Tekkeon TekCharge Mobile Power and Battery Charger Review

    TekCharge MP1550 is an awesome mobile charger. I had purchased it from Amazon and got it shipped with one of my friends. Few things which I think are really cool about this charger are:

    1. Charger supports 7 different connectors. Furthermore there is a USB port, which means that theoretically any portable device that could be charged via USB could be charged using this charger.
    2. Charger uses AA batteries as its power source. This means that you can use alkaline or rechargeable AA batteries for charging your mobile.
    3. Includes voltage regulator so it won’t harm your device or its battery
    4. Finally, this can also act as a battery charger to charge upto two pairs of rechargeable AA batteries. You can use the retractable input/output cable with the mini-USB adapter for charging the batteries.

    I would highly recommend this charger especially for people using smartphones as smartphones’ batteries tend to drain out pretty quickly.

  • My First Smartphone – Motorola Fire XT530

    At last, I get my first smartphone – Motorola Fire XT530 which is based on Android. And this was a gift from a very close buddy of mine – Srikanth. He wanted to gift me something for my marriage, and I put it off till my second anniversary as I wanted his gift to be something very memorable. And this has proved to be a really wonderful gift.

    I was inclined to buying an Android based smartphone ever since I’ve heard about Android. I looked at a lot of budget (Rs.8000 – Rs.14000) Android phones such as Dell XCD35, Samsung Galaxy Ace, HTC Wildfire, HTC Wildfire S and LG Optimus One. There was some shortcoming in all the models such as low battery life, small screen size (<=3.2 inch) or bad camera. I almost decided to go for Samsung Galaxy Ace when I came across Motorola Fire XT530. The Motorola Fire XT530 had everything I needed - decent battery (1540mAh), 3.5 inch capacitative touchscreen, 5 MP camera with LED flash and Android OS v2.3.4. This model has been recently launched in September. I have been using this phone for more than a month now and I am just loving it. At times, the response is slow, but it is quite acceptable. The only real drawback I feel in this phone is its limited internal memory of 157 MB. This pretty much limits the number of applications that we can install in phone memory. While most of the applications can be moved to SD card, unfortunately some of them cannot. Using Link2SD, it is possible to use the external storage device for extending internal memory.

    Below are some of the Android apps which I have installed from the market on my mobile and find to be pretty useful. You may want to glance through them as some of them may be useful to you as well.

    • 3G Watchdog – 3G Watchdog data counter monitors your Mobile Internet (4G/3G/Edge/GPRS) data usage
    • Adobe Reader – PDF Reader
    • Advanced Task Killer – ATK is often used to kill app and clean memory
    • Android Agenda Widget – Extremely customizable calendar widget of various sizes. It can also integrate with Astrid. Especially useful because of a bug in older android calendar versions in which all day events are not shown on that particular day in the upcoming events widget.
    • Alarm Clock Xtreme Free – Advanced features such as limit on the number of times you can snooze the alarm and solving math problems to dismiss the alarm ensure that you get up from bed no matter what
    • AndFTP – AndFTP is a FTP, FTPS, SCP, SFTP client which provides download, upload, synchronization and share features with resume support
    • Android India – Find Android apps for India in one great looking and powerful app
    • Android Terminal Emulator – Access your Android’s built-in Linux command line shell
    • AVG Antivirus – Antivirus for scanning download applications
    • App 2 SD Free – An extremely useful app which shows a list of applications that can be moved from phone memory to SD card so that phone memory can be freed
    • Astrid Tasks – Another awesome app for managing tasks and setting automated reminders. The Tasks widget further is very useful for displaying an overview of the pending tasks.
    • BookMyShow – App for booking movie tickets
    • Caldav-Sync – App for adding a remote caldav calendar which integrates with the native calendar
    • Cardav-Sync beta – CardDAV-Sync is a CardDAV client for Android to synchronize contacts
    • Clean Master – Clean Master is an all-in-one cleaner app on android for cleaning app cache , unused files, residual files, search history and uninstalling apps
    • ColorNote – Color Note is a simple notepad app. It gives you a quick and simple notepad editing experience when you write notes, memo, email, message, shopping list and to do list.
    • Comic Reader – You can read ~400 of the most famous comics including Dilbert, Xkcd, Abstruse Goose, Geek and Poke, Calvin and Hobbes, PhD Comics, Pickles, Garfield, Spiked Math and many more!
    • Comics – The largest digital comic library with over 20,000 comics available including over 600 for free. Publishers include Marvel Comics, DC Comics, Image, IDW, Archie & many more!
    • ConnectBot – SSH client
    • Contact Editor Pro – Useful for editing entries added via Carddav
    • Contact Owner – Display your contact information when the device is locked, allowing the finder to contact you
    • Contacts+ – Contacts+ is your everyday contacts & dialer app, powered with text messaging, WhatsApp, Facebook, Twitter and much more – all in one place.
    • ConvertPad – Unit Converter – ConvertPad Plus is a powerful and fully featured Unit converter, Currency converter and Calculator
    • Dictionary – Dictionary.com dictionary
    • DiskInfo – DiskInfo lists all partitions and all mount points on you device showing disk usage and very detailed partition information.
    • Documents To Go – View native Microsoft Word, Excel and PowerPoint files & attachments with Documents To Go Main App
    • Dolphin Browser HD – High-featured browser
    • ES File Explorer File Manager – ES File Explorer is a free, full-featured file and application manager.
    • Easy Battery Saver – Easy Battery Saver is a powerful yet easy to use power manager app specifically designed to extend battery life and optimize using habit.
    • Firefox Browser for Android – Firefox for Android is the free mobile web browser that puts the power of the open web in your hands.
    • Folder Organizer – Group items according to labels and create fully customizable folders and widgets
    • FolderSync – FolderSync is a application that enables simple sync to cloud based storage to and from local folders on the device memory card
    • Fackebook – Fackebook Android Client
    • Google Authenticator – Google Authenticator generates 2-step verification codes on your phone.
    • HDFC Bank MobileBanking – HDFC Bank MobileBanking gives you access to your account on your Android phone
    • ICICI Mobile Banking – iMobile – iMobile is ICICI Bank’s official mobile banking application
    • ICICI Bank i-safe – “i-Safe” mobile application allows you to generate OTP/URN on your mobile device instantly rather than receiving it through SMS
    • IMDb Movies & TV – IMDb mobile
    • K-9 Mail – Excellent IMAP client
    • KeePass2Android – Keepass2Android is an open source password manager application for Android. It reads and writes .kdbx-files, the database format used by the popular KeePass 2.x Password Safe
    • Kingsoft Office – Kingsoft Office is the only mobile Office with full-features FREE. Support for running on Android 2.1 and above system.
    • LinkedIn – LinkedIn Android Client
    • Magzter – Magzter caters to a global audience with a wide range of magazines, from entertainment to news.
    • MobileVOIP Cheap Calls – The MobileVOIP dialer lets you make cheap calls to national or international destinations.
    • MX Player – The best way to enjoy your movies.
    • my airtel – Introducing the my airtel app – your world of airtel on the go. Download the my airtel app to manage your airtel mobile, broadband & digital tv connections at work ,home or anywhere in between!
    • nexGTv Mobile TV – Mobile TV application with best of the Indian channels, Replay TV & Video on demand content.
    • Notification Toggle – Notification Toggle creates notifications in the Android status bar to let you quickly switch WiFi, Bluetooth, Silent mode, Screen rotation and Flight mode on and off or to adjust the screen brigthness (and many more…)
    • OpenDocument Reader – OpenDocument Reader, formerly known as OpenOffice Document Reader, allows you to read your ODF documents wherever you are.
    • OpenVPN Connect – OpenVPN Connect is the official full-featured Android VPN client
    • Opera Mini – Unlike ordinary web browsers, Opera Mini fetches all content through a proxy server that compresses and reformats web pages into a format more suitable for small screens.
    • Perfect World Clock – Perfect World Clock is the perfect tool for the frequent traveler or when working with people in different time zones.
    • Pulse – RSS/Feed reader
    • QuickPic – Advanced Image Viewer
    • Sipdroid – SIP client. Another popular SIP client is CSipSimple.
    • Skype – Skype client
    • SMS Scheduler – SMS Scheduler is a simple tool for automatic sms messages sending with chosen frequency.
    • Speedtest.net – Use Speedtest.net for easy, one-tap connection testing in under 30 seconds—accurate anywhere thanks to our global network.
    • SSHDroid – SSH Server
    • State Bank Freedom – Official State Bank Mobile Banking Application
    • TED – TED’s official Android app presents talks from some of the world’s most fascinating people
    • Tiny Flashlight + LED – Flashlight app for your device! Incredibly simple and yet very useful flashlight application. Will use your device’s camera LED / flash / screen as a torch.
    • TV Guide India – TV Guide India brings you schedules of over 150 TV channels that are aired in India.
    • Voice Recorder – This application is a handy voice recorder.
    • Watchdog Task Manager – Stop killing your apps randomly. Start monitoring them with Watchdog.
    • WHAT’S-ON-INDIA : TV Guide App – India’s Official TV Guide App, covers 500+ Indian TV Channels!
    • Widgetsoid – Very useful widget to display upto 10 customized toggles / shortcuts. Another similar free app is Power Toggles.
    • Wiki Encyclopedia – Wiki Encyclopedia gives you access to Wikipedia online encyclopedia, formatted for your Android mobile phone. Wikipedia Offline functionality allows you to save articles to your phone for later reading.
    • Xabber – Jabber/XMPP client

    Rooted phones are likely to find these applications very useful.

    • Link2SD – The external SD card can be used for storing applications thereby freeing your internal memory. See the Useful Links section below to know how this is a much better option compared to “Move to SD Card” feature that is native to android.
    • Titanium Backup – The most popular backup solution for rooted phones
    • OpenVPN Settings (along with OpenVPN installer, BusyBox Free and Tun.ko installer) – Useful if you need to connect to an OpenVPN server

    Useful Links:

    • http://theexasperatedman.blogspot.in/2012/06/motorola-fire-xt-xt530-xt531-all-in-one.html
    • http://www.link2sd.info/faq (especially see difference between “Move To SD Card (Native to Android)” and “Create (Symbolic) Link”)
    • http://me-and-my-motorola-fire-xt.blogspot.in/2012/04/how-to-factory-reset-your-motorola-fire.html
    • http://adq.livejournal.com/90889.html
  • Replacement Laptop Keys

    It may sometime happen that a key of our laptop breaks, or no longer works properly. Often the solution suggested for this is to have the entire laptop keyboard replaced. But this is not economical considering that laptop keyboards are pretty costly.

    I recently faced this issue when my wife’s Thinkpad Tab key was not working properly. I googled and came to know out that there are online companies who provide replacement keys for laptops. I chose to go with LaptopKey.com. I was able to easily locate the type of key that I wanted with the help of their Search feature and sample images that they provided. They had the option of shipping to India, and it took about 3 weeks for the key to be delivered. The package was intact. I replaced the faulty key with the help of their video tutorial, and now the Tab key works great.

    There are other such companies which provide replacement for laptop keys, and I think these are a good option when you have a couple of faulty keys.

  • Buliding Vim 7.3 RPM packages for 64-bit CentOS 5 / 6

    Vim 7.3 has one really useful built-in feature – Blowfish encryption. With Blowfish encryption, strong encryption of files is now possible using vim. Here is a short tutorial on how to build RPM packages for Vim 7.3 on 64-bit CentOS 5 and CentOS 6. I have built the packages as user ‘root’. However, it is generally not recommended to build packages as ‘root’. Instead, this should be done as a normal user. I have not tried this but if you are interested, you can look at the links in the References section.

    1. Install rpmbuild and some other tools.
      # yum install rpm-build redhat-rpm-config
      # yum install make gcc
      
    2. Download and install vim 7.3 SRPM.
      # wget "http://download.fedora.redhat.com/pub/fedora/linux/releases/15/Everything/source/SRPMS/vim-7.3.138-1.fc15.src.rpm"
      # mkdir -p /usr/src/redhat/ #(for CentOS 5 only)
      # rpm --nomd5 -ivh vim-7.3.138-1.fc15.src.rpm
      
    3. Install vim build dependencies
      # grep -i 'BuildRequires:' /usr/src/redhat/SPECS/vim.spec
      # yum install hunspell-devel python-devel ncurses-devel gettext perl-devel \
      perl-ExtUtils-Embed libacl-devel gpm-devel autoconf libselinux-devel ruby-devel ruby \
      desktop-file-utils gtk2-devel libSM-devel libXt-devel libXpm-devel
      

      For CentOS 5 only, upgrade autoconf and m4 packages, and remove build dependency on ‘perl-devel’.

      # wget "ftp://rpmfind.net/linux/sourceforge/h/project/hp/hphp/CentOS%205%2064bit/RPM/autoconf-2.63-3.noarch.rpm"
      # wget "ftp://rpmfind.net/linux/sourceforge/h/project/hp/hphp/CentOS%205%2064bit/RPM/m4-1.4.13-4.x86_64.rpm"
      # rpm -Uvh autoconf-2.63-3.noarch.rpm m4-1.4.13-4.x86_64.rpm
      
      # sed -i 's/ perl-devel//' /usr/src/redhat/SPECS/vim.spec
      

      Alternatively, for CentOS 6, you can install the build dependencies using “yum-builddep” command.

      # yum install yum-utils
      # yum-builddep --nogpgcheck vim-7.3.138-1.fc15.src.rpm
      
    4. Finally build vim rpms using rpmbuild.
      # rpmbuild -ba /usr/src/redhat/SPECS/vim.spec #(for CentOS 5)
      # rpmbuild -ba ~/rpmbuild/SPECS/vim.spec #(for CentOS 6)
      

      You should find the rpms in /usr/src/redhat/RPMS/x86_64/ (CentOS 5) or ~/rpmbuild/RPMS/x86_64/ (CentOS 6). Unfortunately while the build was successful in CentOS 5, it failed in CentOS 6.

    Vim plugin for transparent editing of gpg encrypted files

    Although Vim now offers Blowfish encryption, I highly recommend using Vim’s gnupg plugin. The reason being apart from providing strong encryption, this plugin also takes care of not creating swap files and not writing any information to .viminfo file. The easiest way to convert any text file to GPG symmetric encrypted file is by running the command:

    # gpg -ac passwords.txt
    

    This will create the file “passwords.txt.asc”. Once the gnupg plugin is installed, vim can be used to open and modify this file.

    References

    • http://wiki.centos.org/HowTos/SetupRpmBuildEnvironment
    • http://wiki.centos.org/HowTos/RebuildSRPM
    • http://download.fedora.redhat.com/pub/fedora/linux/releases/15/Everything/source/SRPMS/
    • http://rpmfind.net/linux/rpm2html/search.php?query=m4
    • http://rpmfind.net/linux/rpm2html/search.php?query=autoconf
    • http://awesometrousers.net/post/vim-with-gpg-file-encryption/
  • Diamond Books Publication Online Shopping Review

    This is a review of my online shopping experience with Diamond Books Publication (http://www.diamondbook.in/). Without doubt, ordering through your online portal is one of the worst sales experience I have ever had.

    I ordered a book “Learn English in 30 days through Telugu” using their online portal. After waiting for a couple of weeks, I called them up to find out the status, and the sales person Nikhil asked me to put him a mail. I did that, and when I did not receive any response, I again called them and reminded them. After a while, they called me back and informed me that they would be sending the book, but failed to do so. Eventually, after calling them 3 to 4 times and sending 3 to 4 emails, I got the book after more than a month. But the worst part is that after all the calls and e-mails, they sent me the wrong book. Instead of sending me “Learn English in 30 days through Telugu”, they sent me “Learn Telugu in 30 days through English”.

    I sent an e-mail informing them of their mistake but they did not even bother to respond. Ironically though, after a few weeks, they sent me a copy of their monthly magazine “Cricket today” (could this be another goof up? Sending a monthly magazine instead of the book I have asked for?)

    Anyway, there are two pieces of advice I have for my readers:

    1. Avoid Diamond Book Publication (http://www.diamondbook.in/). Their books might be good, but their online sales is pathetic. If you really need to buy some book of this publication, you could consider ordering it through other online book stores such as Flipkart.
    2. Always prefer to pay cash on delivery for online shopping, especially if the you are unsure of the service. That way, if the order is delayed unnecessarily or you do not receive the correct package, you can just refuse to pay the money.
  • Long Time, No See!

    It has been almost 9 months since I’ve posted my last post. Now, that’s a very very very long time. The longest time I’ve inactive on my blog. But now, I’m back! And hopefully, will not repeat this :p. So, here is what has been keeping me busy of late.

    March and April – Development of new release of Synovel Collabsuite. With this version, we are making the product open-source, and a long time dream of mine has come true. There are a ton of new features, which you can find in the company website. Currently, only the licence has been changed, but eventually we plan to move the entire project to sourceforge/launchpad, and get the community involved.

    May – My close friend and brother-in-law Vamsidhar Thummala, gets married. He is pursuing his Ph.D at Duke University. It was a hectic month. The wedding was great. Though traditional, it was done in an unconventional manner. Unlike Indian marriages, where hundreds of people come to the wedding, Vamsi invited only fifty to seventy of them, and therefore was able to spend time with all of them. And on the same day evening, there was the reception, again a reasonably small crowd. Veena and I helped with the arrangements of the reception.

    June – Preparation for GRE. Surprise! Surprise! Yes, I’m considering pursuing my masters. It is kind of late for my age, but like the old proverb goes – “There isn’t any barrier to study”. After being in the corporate field for quite a while, I felt like taking a break, and going back to academics. Added to that, the prospects of studying abroad is in itself an enriching experience. So, here I was, preparing for the exam, and finally gave it on June 30th. I scored a decent 1370 (790 Q + 580 V) with 4.5 in AWA. That was slightly more than what I had anticipated.

    July – My parents are constructing a new house. Unfortunately because of my busy schedule, I wasn’t able to help them much with the construction. With me being done with my exam, I started to help them with the construction activity, especially the electrical layout of the house. Most of my time during this month was spent on this.

    August – Towards the end of the previous month, unfortunately, my father-in-law, T. Venkata Krishna Reddy, passed away. He had some pain in the stomach, and so was admitted in the hospital. Within a few hours, he suffered a heart attack, and passed away. We all mourn his loss, but that is indeed a blessed death. Vamsi came immediately from US for a few days to perform the last rituals.

    September and October – Back to the MS application process – TOEFL, LORs, SOP and submitting applications. Within the next couple of days, I should be done with the first phase of the masters application process. Now, all I have to do is sit and wait. I have applied to only the top universities as I did not see a point in pursuing masters in a mediocre university at this stage of my life, and therefore keeping my fingers crossed. I intend to write a detailed blog on GRE & the application process for MS in US once I am done with everything.

    With me now being relatively free, I should be able to dedicate more time to my blog readers :).