Month: February 2012

Global Android Hackathon 2012 – Event Summary – GTUG Chennai

Hello readers,

Last weekend I have organised a Global Android Hackathon in Chennai at CollabNet.

Global … what?

The Global Android Dev Camp is a collection of events that takes place from February 17th to 19th, 2012. Android developers from all over the world come together at more than 30 locations and hack for 48 hours – nonstop!

Ah! okay, what happened that day?

Let me summarize the two days event happened here @ GTUG Chennai.

The event was held at CollabNet Software pvt. limited, Chennai. We had around 55 hackers gathered in training hall scaling from beginners to intermediate in Android development platform. Few already came as a team. The event started at 10.30AM IST.

Day 1 started with a self-intro to make everyone get to know each other and socialize. Following that, we had teams explaining their application prototype. They disclosed their project requirements and interested ones have volunteered to join their teams. We have finalized 13 teams working on 13 different apps.

Following that, we had Patrick, a Google Apps consultant from meghaITConsulting giving a lightning talk covering a glimpse about the hackathon event.

Next, we had Issac Wessley from Technogemsinc volunteering himself to give a talk on Android UI designing and the best practices to be followed with respect to layout and UI designing.

Post lunch, we had Santhosh from Samgha giving a glimpse about Android’s basics explaining the architecture and the best practices to be followed for beginners while coding.

Day 2 – Participants continued hacking throughout the day till 4PM. Then we had a Hangout with Googlers and the rest of Indian GTUGers who organised this DevCamp in their respective places. As we didn’t have much time, we saw a few demonstration from GTUG Bangalore.

Following that, One of the team members representing their team presented their application and demonstrated their application in their emulator.

Sriram from CollabNet and myself as juries, rated the applications based on 4 criteria (Innovation | project completion | originality | design). Out of 11 completed apps, we have picked the apps that scored the highest.

After announcing the winners, we had feedback and group photo session. We got an overall rating of 4.5/5 which is indeed the best score that I have ever thought. Few volunteers agreed to give a video feedback about the event, which will be posted soon.

Had one of the best weekends I have ever had.

Sounds great ! Do you have any clicks to share with ?

Here you go ..

Day 1 pics :

Day 2 pics :

Alright, can you chart down those 13 projects ?

The following are the final list of projects that has been showcased at the end of Hackathon.

Project Name

Members —- (Name | mail id)


Facebook Profile Live Wallpaper

prashenjeet biswas

Set a Live wallpaper from your facebook photos that changes randomly after certain time chosen by user.
Make a status update from the wallpaper itself.

missed call alert

Jaffer Sathik S
Manish Kumar K
Rajesh V
Nagaraj AB
Boovan pratab D

This application will work when we forget to take our mobile form home or anywhere, when you get a missed call after this application will trigger and generate a mail (who is called,with name if in your contact,which time) and will send that mail to which email id you provide to application


Abdur Rahman S.
Kapileshwaran V.
Abdullah S.A.K.
Mohammed Tabraiz Ali
Mohammed Aadil H.

AutoVaruma is an application to calculate Auto Fare’s in chennai.

Profile – O(GPS Track)

Mahalakshmi |
Jayanti Kumari

Changing the mobile profile when entering the office.

module 1: blocking camera
module 2 : GPS tracking and saving the track.

Profile – O (Corporate Mobile)


On login into any corporate, disable the camera in the smart phone that is being used. This is being used by the respective employees.


Rajendran M
Ramachandran L
Magesh C

Sending Encrypted SMS, that will be opened on the receiver side only if the IMEI number matches what the sender had intended to send to.



Karaoke app – The app will play karaoke tracks and the lyrics will be displayed according to the time. It lets the user to sing along with the song and the user can choose to record it if he wants.

Sorry I’m Travelling


Sorry I’m Travelling .. A handy app to send sms when travelling.


Arvind R.S.
Dillipkumar S.
Dinesh kumar T.S.
sampath kumar N

its an nice app to try and enjoy.

Pattern Match

Mukund M
Naveen M
Mohammed Shahin
Abhinandan R
Mukundan S

Its a simple pattern matching game which is a 2 player game. One player selects a particular pattern – either a password or the pattern (similar to android lock screen).The other player must find the pattern within the given time based on the given clues.

How about the event feedback?

We got an extremely satisfying feedback from the participants. Post the event, we had video feedback from attendees

Did you get any sponsor for this event ?

Ofcourse, yes. I thank CollabNet for sponsoring the Venue. Google for bearing food expenses and Symposiumz for popularizing the event online among students. I also thank one and all who were supportive to me behind the scene.

I had one of the best weekends I have ever had with a satisfaction of conducting a grand event successfully. I enjoyed every bit of it. I’m sure every participants have felt it useful.

The only thing I have missed is to update media about this event. I’m sure few of our apps would have got into the local newspapers.. like how an app in the Bangalore event has been featured here. Congrats to the team.

I wish to attend future GTUG events. How will I be notified ?

For future event updates, add yourself here

Google Groups

What is the difference between >> and 2> – Standard Input and Output Redirection explained

Off late I happen to get used to a lot of I/O redirection involved in coding and executing commands. Thus I thought summarizing them as a blog for my own reference.

The shell and many UNIX commands take their input from standard input (stdin), write output to standard output (stdout), and write error output to standard error (stderr). By default, standard input is connected to the terminal keyboard and standard output and error to the terminal screen.

The way of indicating an end-of-file on the default standard input, a terminal, is usually <Ctrl-d>.

Redirection of I/O, for example to a file, is accomplished by specifying the destination on the command line using a redirection metacharacter followed by the desired destination.

C Shell Family

Some of the forms of redirection for the C shell family are:

Character Action
> Redirect standard output
>& Redirect standard output and standard error
< Redirect standard input
>! Redirect standard output; overwrite file if it exists
>&! Redirect standard output and standard error; overwrite file if it exists
| Redirect standard output to another command (pipe)
>> Append standard output
>>& Append standard output and standard error

The form of a command with standard input and output redirection is:

% command -[options] [arguments] < input file > output file 

If you are using csh and do not have the noclobber variable set, using > and >& to redirect output will overwrite any existing file of that name. Setting noclobber prevents this. Using >! and >&!always forces the file to be overwritten. Use >> and >>& to append output to existing files.

Redirection may fail under some circumstances: 1) if you have the variable noclobber set and you attempt to redirect output to an existing file without forcing an overwrite, 2) if you redirect output to a file you don’t have write access to, and 3) if you redirect output to a directory.


% who > names
Redirect standard output to a file named names
% (pwd; ls -l) > out
Redirect output of both commands to a file named out
% pwd; ls -l > out
Redirect output of ls command only to a file named out

Input redirection can be useful, for example, if you have written a FORTRAN program which expects input from the terminal but you want it to read from a file. In the following example, myprog, which was written to read standard input and write standard output, is redirected to read myin and write myout:

% myprog < myin > myout

You can suppress redirected output and/or errors by sending it to the null device/dev/null. The example shows redirection of both output and errors:

% who >& /dev/null

To redirect standard error and output to different files, you can use grouping:

% (cat myfile > myout) >& myerror

Bourne Shell Family

The Bourne shell uses a different format for redirection which includes numbers. The numbers refer to the file descriptor numbers (0 standard input, 1 standard output, 2 standard error). For example, 2> redirects file descriptor 2, or standard error. &n is the syntax for redirecting to a specific open file. For example 2>&1 redirects 2 (standard error) to 1 (standard output); if 1 has been redirected to a file, 2 goes there too. Other file descriptor numbers are assigned sequentially to other open files, or can be explicitly referenced in the shell scripts. Some of the forms of redirection for the Bourne shell family are:

Character Action
> Redirect standard output
2> Redirect standard error
2>&1 Redirect standard error to standard output
< Redirect standard input
| Pipe standard output to another command
>> Append to standard output
2>&1| Pipe standard output and standard error to another command

Note that < and > assume standard input and output, respectively, as the default, so the numbers 0 and 1 can be left off. The form of a command with standard input and output redirection is:

$ command -[options] [arguments] < input file > output file 

Redirection may fail under some circumstances: 1) if you have the variable noclobber set and you attempt to redirect output to an existing file without forcing an overwrite, 2) if you redirect output to a file you don’t have write access to, and 3) if you redirect output to a directory.


$ who > names
Direct standard output to a file named names
$ (pwd; ls -l) > out
Direct output of both commands to a file named out
$ pwd; ls -l > out
Direct output of ls command only to a file named out

Input redirection can be useful if you have written a program which expects input from the terminal and you want to provide it from a file. In the following example, myprog, which was written to read standard input and write standard output, is redirected to read myin and write myout.

$ myprog < myin > myout

You can suppress redirected output and/or error by sending it to the null device/dev/null. The example shows redirection of standard error only:

$ who 2> /dev/null

To redirect standard error and output to different files (note that grouping is not necessary in Bourne shell):

$ cat myfile > myout 2> myerror


P.S. This works the same way in all operating system and is universal.

Courtesy :

History and Significance of Laughing Buddha explained..

Over the years, I have been seeing laughing Buddha in many places and I never cared of knowing it’s history. As I had a chance to know the history and significance behind it, I thought I would share with you what they mean as they all have different meanings.

Background information on the laughing Buddha

When westerners think of “Buddha,” usually they don’t visualize the Buddha of history, meditating or teaching. Instead, they visualize a fat, bald, jolly character called “The Laughing Buddha.” Where did he come from?

The celestial Buddha named Hotei or Pu-Tai is best known as the jolly Laughing Buddha. In China, he is known as the Loving or Friendly One. He is based on an eccentric Chinese Ch’an (Zen) monk who lived over 1,000 years ago and has become a significant part of Buddhist and Shinto culture. Because of this monk’s benevolent nature, he came to be regarded as an incarnation of the bodhisattva who will be Maitreya (the Future Buddha). His large protruding stomach and jolly smile have given him the common designation “Laughing Buddha.”

The Laughing Buddha’s image graces many temples, restaurants, and amulets, as he has become a deity of contentment and abundance. The image of Hotei is almost always seen carrying a cloth or linen sack (that which never empties) which is filled with many precious items, including rice plants (indicating wealth), candy for children, food, or the woes of the world. He is patron of the weak, poor and children.
Laughing Buddha statues depict a stout, smiling or laughing bald man in robes with a largely exposed pot belly stomach, which symbolizes happiness, good luck, and plenitude. Some sculpture has small children at his feet. Another item that is usually seen with the Laughing Buddha figure is a begging bowl to represent his Buddhist nature.

In some scenes the Laughing Buddha may be found sitting on a cart drawn by boys, or wielding a fan called an oogi (said to be a “wish giving” fan — in the distant past, this type of fan was used by the aristocracy to indicate to vassals that their requests would be granted). All of these images display Hotei as a wandering monk who goes around and takes the

sadness from people of this world.

According to legend, if you rub the Laughing Buddha’s great belly, it brings forth wealth, good luck, and prosperity. Hotei is also referred to as the patron saint of restaurateurs, fortune tellers and bartenders. When one overeats or over drinks, friends jokingly attribute it to the Laughing Buddha’s influence.

Laughing Buddha is a symbol of joy and wealth. Nowadays everyone, even who are not following the Buddhism and Taoism those are also started to feature the Happy Buddha in their homes and offices. This practice is even grown up in the western countries too. This article is a small try to know about the laughing buddha.
Over the years, the Smiling / Laughing / Fat Buddha has come to represent several beneficial attributes such as happiness, prosperity,contentment and joy. Consequently, people in East Asia such as China and Japan have placed the Fat Buddha statue in their homes and offices.

Tradition or Feng Shui

While Chinese and Japanese tradition merely associates the placement of the Fat Buddha in the home or office with prayers for prosperity and happiness, there is a school of thought known as Feng Shui that also focuses on the actual position of the placement and direction the Fat Buddha statue is facing.
In Feng Shui, the reason for buying and placing figurines or statues in the home is to correct a certain imbalance in your life. The placement of particular figurines in a certain part or direction of the house is meant to bring harmony and order into your life, letting you experience a more peaceful and prosperous life. The amount of benefit achieved by such placements depends on whether the rules of Feng Shui are being followed correctly.

Fundamentals of Feng Shui

Feng Shui (literally “Wind and Water” in Chinese), is all about balance and harmony between us and our environment. Just like the Yin and Yang energies, Feng Shui is about balance. Where there is light, there will always be darkness; where there is fire, there will always be water; and so forth.

Types of Laughing Buddha Statues

The following is a list of Smiling / Laughing / Happy / Fat Buddha statues. These Laughing Buddha statues have been attributed to provide their owners with beneficial effects such as happiness, prosperity, contentment and wealth. As such, many people have purchased various forms of these buddha statues to place in their homes or at their offices and businesses, hoping that they will receive some of these attributes too. You will find a number of these fat buddha statues being the centrepiece of many home decorations.

Buddha’s should never be placed on the floor as this is a sign of disrespect. All About Feng Shui recommends that you place your Buddha at least 4′ from the floor in an elevated position. Treat him with respect and he will reward you handsomely.

However, the location of placing the Laughing Buddha is important. It has to be placed at an height of some 30” approximate and should be facing the main door directly. The Laughing Buddha greets the energies that enter from the main gate and activates them manifold, and turns highly prosperous. If this location is not possible, the next best place to keep the Laughing Buddha is on a side table or a corner table, which is diagonally opposite to the main door and facing the door.

It is not advisable to keep the Laughing Buddha in a bedroom or in the dining room. This God of wealth is not worshipped or prayed to, but just displayed and its presences is purely symbolic and auspicious.

Linux File System Hierarchy

Do you need to know the file system hierarchy. You don’t have to search in Google to get familiarized with it. It’s there within your distro. Yes, Just type the following command to list the manual containing a detailed information about the file system hierarchy.

$ man hier

Playing around with fbcmd [HOWTO]

This post has been lying around my Drafts for about a month. While I was looking for ways to find mutual friends between two persons in Facebook, I realized that it is a painful job which involves a lot of playing around with Facebook API’s to get mutual friends listed. Whereas finding Mutual friends in Twitter is quite simple and so does with Identica too. You may find how to find them in this blog.

Let’s see how to achieve this..

1. Install fbcmd as per the blog post

2. Open your terminal and type the following to find mutual friendship between you and your friend

$ fbcmd mutual “<Enter_your_friend’s_full_name_within_quotes>”

For Example :

$ fbcmd mutual “vigneshwaran Raveendran”

NAME                     FRIEND_NAME

Vigneshwaran Raveendran  Kashi Vishwanath Revathy Ganesan

Karthikumar SK

Dhameswaran Natarajan

Mohindar Amarnath

Kamesh Jayachandran


Isn’t that awesome. The following are a few commands that I felt it interesting..

How to list [and optionally save] all your friend’s profile photos ?

$ fbcmd ppics =all /tmp/fbcmd/ppics/

How to list [and optionally save] all photos where friend(s) are tagged

$ fbcmd fpics

How to list any friends who are currently online

$ fbcmd fonline

How to export all your friend’s B’day date in csv format ?

$ fbcmd finfo birthday_date -csv

How to know your profile ID ?

$ fbcmd whoami

How to set your status update
$ fbcmd status “is excited to play with fbcmd”
What not? Start playing with this app
$ fbcmd help #is your friend..
With this application, you can even schedule for a list of status updates with the help of a cron job 🙂
for additional help, examples, parameter usage, flists, preference settings,
visit the FBCMD wiki at:

[HOWTO] Access facebook through command line interface (CLI)

A majority of linux users prefer sticking to their terminal rather than accessing through a GUI for most of their daily tasks. Have you ever wondered if there is any way to access facebook from terminal? The answer is Yes… Now, it’s possible to access facebook from terminal. fbcmd application gives you a command line interface for Facebook. It is surprisingly available for Windows OS as well.

Installation of this app in Linux is pretty simple.

Make sure you have php installed in your system. If not, install as follows

$ sudo apt-get install php5 php5-cli

To test your PHP environment, try typing at a command prompt:

php -r “echo phpversion();”

While you’re at it, make sure this outputs “1”.

php -r “echo ini_get(‘allow_url_fopen’);”

Download from the this link and Unzip the file

$ unzip

$ cd fbcmd

To finish the installation:

$ sudo php fbcmd_update.php sudo

$ php fbcmd_update.php install

type fbcmd to begin

$ fbcmd

Welcome to fbcmd! [version 1.0-beta5-dev1]

This application needs to be authorized to access your facebook account.

You are almost done! This application needs to be authorized to access your facebook account. This is a one time process.

Step 1: Allow basic (initial) access to your acount via this url, execute:

$ fbcmd go access


Step 2: Generate an offline authorization code, execute:

$ fbcmd go auth

Step 3: Obtain your authorization code (XXXXXX) and then execute:

$ fbcmd auth XXXXXX

Step 4: Most FBCMD commands require additional permissions. To grant default permissions, execute

$ fbcmd addperm

You are done !

To know the syntax , execute

$ fbcmd help

Start playing around with it and let me know your comments.

Don’t forget to visit the following post to continue reading this..