Sugreeswarar temple – Tirupur

August 31, 2011

This temple is about  8 kilometers from Tirupur in a small village called Sarcar Periyapalayam (S.Periapalayam). This is an ASI maintained temple. The temple has a lot of open space The vimanas (sudhai) seems to be have been recently restored. Very few people visit the temple. It is maintained very well.  The main entrance is facing south. The main deity is Siva called Sugreeswarar (Sukreeswarar). Ambal is called Avudainayaki ( Aavudainayaki). As per thalapuranam Sugreeva worshipped here and hence the name Sugreeswarar.

Sugreeswarar - Entrance

The compound wall is tall and recently rebuilt. There is a big Arasamaram (fig tree) before the entrance providing a good ambiance. As we enter Vinkayar sannidhi is the first one. Next is Amman and Siva.

The main deity Sugreeswarar in the form of a linga is facing east. There are two entrances to this shrine facing south and east. Surprisingly only southern side has stone steps. The eastern side doesn’t have any original structure. It has only a recently built iron grilled steps. Since the shrine is about 4 feet above ground we can conclude that eastern entrance was not used by devotees in earlier time (sorry for the poor photography).

Soutern Entrance with regular steps

The garbhagraha is wide and well-lit so that we can have nice darshan. On the beams we can see images of Sugreeva and Airavatham doing pooja to the lord.

Airavatham and Sugreeva Worshipping

The Lord has two Nandis in front of him. As per thalapurana Nandi used become a live bull in the night and graze crops near the temple. An angry farmer cut off the ear during one night so that he can identify the bull later in the morning. None of the bulls in the village had cut off ears. But the villagers found the right ear of the nandi broken and blood oozing. The villager repented and removed the broken one and replaced with newer one. The older one was kept aside. However, to the surprise of the villagers, the next day original nandi was back in its position. The villagers decided to leave it in its place.

The Nandi nearer the lord is older and has damaged ear. Whatever may be purana, to me it appears they tried to replace the damaged one, but for some reason they could not remove older one and left it as it is.

Two Nandhis - The right ear damaged in the first

The other side of Nandis

On the outer walls of this shrine there a few beautifully carved images.. The designs on walls are simple and beautiful, especially the window with canopy . The interior of the canopy is carved like the interiors of a hut/tiled house.

The main shrine - view from back

Simple and nice designs

Dakshinamoorthi

Canopy

Design above Dakshinamoorthy

Peacock doing pooja

A closer look a canopy

An ornamental pillar

There are several inscriptions especially on the northern side. As a novice I feel they may belong to very later period – may be 17th or 18th century.

Inscriptions

A wall full of inscriptions

Inscriptions - Kannada or Telugu?

Many inscriptions are in a damaged condition. The layers are getting peeled off from the slabs. Was sand blasting done? If so will it be the cause for this? Experts please answer.

Inscriptions - peeling off

Inscriptions peeling off

Designs - peeling off

The stones are not black but slightly bright. When I went it was about 6pm. Under the evening sun the temple looked golden – an wonderful sight.

Golden glow - Temple in the evening sun

Unashamed self publicity - its me - in golden light?

Golden inscriptions?

The Ambal – Avudainayaki is very beautiful. Surprisingly the sannidhi is on the right side of the lord, which I am told is rare. Another surprise is Nandi in front of Amman also. This sannidhi seems to be later addition.

Ambal Sannidhi - flat roof

Ambal with nandi in front

There several old sculptures probably retrieved in and around the temple kept inside this sannidhi most likely by ASI. Clearly they should be very old. Most of them are damaged. However even in such condition they are beautiful especially Vishnu.

Old images

Ganesha

Vishnu?

There are several smaller shrines like Vayu Lingam, Kubera lingam, Durga, Surya, Kala Bairavar and Bhadrakali.

Bhadrakali

Surya

The thalavirutcham seems to be Vilva (There was no board, just my guess). The tree seems to be really very old.

Sthalavritcham? - Bilva/Vilva

On the whole it is a fantastic temple, plain,simple, least crowded and well maintained. Unfortunately or fortunately many people in Tirupur seems to be unaware of it. I have to thank Prof.V.P.Parthasarathy, HOD IT and Shri.Rajaraman Sysadmin of Angel College of Engg and Technology, Tiruppur for helping and accompanying me to have the darshan of the lord.

Few more photographs

View from East

Spacious and clean


An introduction to version control systems using git.

August 29, 2011

An introduction to version control systems using git.

This tutorial is born out of a session I took recently. The class
had mostly final year IT students under Anna University, Coimbatore.
They will be doing a project for the next few months. The session was
very basic and lasts less than 30 minutes. It is meant for students
who are totally new to the concept of version control and
collaborative development.

Aim: Introduce version control to students who have no prior
knowledge, in less than 30 minutes.

Prerequisites:

1.git should be installed

2.Familiarity with linux command line.

Version Control System ?

Projects are generally done as a team consisting of two or more
members. Based on role each member may add or modify a part of the
software. Keeping track of all the changes done and ultimately
producing a working version requires a lot of effort. Version Control
Systems help us in this task.

Version Control in simple terms means keeping track of the changes
done to file(s), with features like

  • Show Log of changes
  • Show differences
  • Facility to revert the changes
  • Allow multiple users to maintain their own repository with
    features to merge them.

Let us start

Create a project directory using mkdir command


                ram@eluvaram:~$ mkdir a1

Change to the directory


                ram@eluvaram:~$ cd a1

Initialize a git repository


        ram@eluvaram:~/a1$ git init
         Initialized empty Git repository in /home/ram/a1/.git/

Run ls to see files


        ram@eluvaram:~/a1$ ls -l
        total 0

No file is seen. Run ls with -a option to show hidden file


        ram@eluvaram:~/a1$ ls -la
        total 20
        drwxr-xr-x 3 ram ram 4096 Aug 21 16:53 .
        drwxr-xr-x 77 ram ram 12288 Aug 21 16:53 ..
        drwxr-xr-x 7 ram ram 4096 Aug 21 16:53 .git
        ram@eluvaram:~/a1$

From the above you can observe that git has created a directory
name .git.

Adding a file to git

Open an editor, create a file and save it in this directory. You
can use any editor. I will be using vi.


        ram@eluvaram:~/a1$ vi first.pl

The content of the file is (using cat command)


        ram@eluvaram:~/a1$ cat first.pl 
        print "Welcome to git\n";
        ram@eluvaram:~/a1$

To add this file i.e first.pl to git we should use git add command
like this


        ram@eluvaram:~/a1$ git add first.pl 

After running this command git starts keeping track of the file.

Checking status of the repository.

We can use git status to check status of our repository.


        ram@eluvaram:~/a1$ git status 
        # On branch master
        #
        # Initial commit
        #
        # Changes to be committed:
        # (use "git rm --cached ..." to unstage)
        #
        # new file: first.pl
        #

You can see from the above that git tells us that file first.pl is
a new file and not yet committed.

Committing a change

Commit means updating git repository with changes we have done.
While committing a message should be entered. To commit a change
issue git commit like this


        ram@eluvaram:~/a1$ git commit

The command will open an editor where commit messages can be typed like this


        # Please enter the commit message for your changes. Lines starting
        # with '#' will be ignored, and an empty message aborts the commit.
        # Explicit paths specified without -i nor -o; assuming --only paths...
        #
        # Committer: ram
        #
        # On branch master
        #
        # Initial commit
        #
        # Changes to be committed:
        # (use "git rm --cached ..." to unstage)
        #
        # new file: first.pl
        #
        ~

We can type the message and save. Once saved git displays
information about the commit.


        [master (root-commit) 6c7c12e] This is the first file I have committed to git
        Committer: ram
        Your name and email address were configured automatically based
        on your username and hostname. Please check that they are accurate.
       You can suppress this message by setting them explicitly:

git config –global user.name “Your Name”
git config –global user.email you@example.com

If the identity used for this commit is wrong, you can fix it with:

git commit –amend –author=’Your Name ‘

1 files changed, 1 insertions(+), 0 deletions(-)
create mode 100644 first.pl
ram@eluvaram:~/a1$


Now git status will display like this


        ram@eluvaram:~/a1$ git status

# On branch master

nothing to commit (working directory clean)


Modifying a tracked file and committing the changes.

In the previous section we added a new file. Now edit the file by
adding few lines. I have added two lines to the file. I have also
modified the first line as ‘Welcome to git – the Version
control System’. Now run git status


       ram@eluvaram:~/a1$ vi first.pl

       ram@eluvaram:~/a1$ git status
       # On branch master
       # Changed but not updated:
       # (use "git add ..." to update what will be committed)
       # (use "git checkout -- ..." to discard changes in working directory)
       #
       # modified: first.pl
       #
       no changes added to commit (use "git add" and/or "git commit -a")
       ram@eluvaram:~/a1$

As you can see git found out that first.pl has been modified.

To know what is the difference, we can use git diff.


        ram@eluvaram:~/a1$ git diff
        diff --git a/first.pl b/first.pl
        index 626893a..dba4b3b 100644
        --- a/first.pl
        +++ b/first.pl
        @@ -1 +1,3 @@
        -print "Welcome to git\n";
        +print "Welcome to git - the version control system\n";
        +print "Vanakkam \n";
        +print "Swagatham\n";

Now can commit the changes using git commit. As in previous
example git will open an editor for typing the commit message.


        ram@eluvaram:~/a1$ git commit first.pl
        # Please enter the commit message for your changes. Lines starting
        # with '#' will be ignored, and an empty message aborts the commit.
        # Explicit paths specified without -i nor -o; assuming --only paths...
        #
        # Committer: ram
        #
        # On branch master
        # Changes to be committed:
        # (use "git reset HEAD ..." to unstage)
        #
        # modified: first.pl
        #

        Committer: ram
        Your name and email address were configured automatically based
        on your username and hostname. Please check that they are accurate.
        You can suppress this message by setting them explicitly:

        git config --global user.name "Your Name"
        git config --global user.email you@example.com

        If the identity used for this commit is wrong, you can fix it with:

        git commit --amend --author='Your Name '

        1 files changed, 3 insertions(+), 1 deletions(-)

Keeping track of changes – git log

git log will give us all commits that have taken place.


        ram@eluvaram:~/a1$ git log
        commit 44ccd72b6dae0405a98610e9bfc0d1e7e9336d1d
        Author: ram
        Date:   Sun Aug 21 19:56:32 2011 +0530

Modified the first line, added two new lines

commit 6c7c12ed89f23fd8d9131648cc4fc4aad493e052
Author: ram <ram@eluvaram.(none)>
Date: Sun Aug 21 18:57:25 2011 +0530

This is the first file I have commited to git


COLLABORATIVE DEVELOPMENT

If another user joins the project the new user can clone this
repository and start addition/modification. This user can work in the
same system or on a remote system. For simplicity we can create a new
directory and use it.


        ram@eluvaram:~/a1$ cd ..
        ram@eluvaram:~$ mkdir a2
        ram@eluvaram:~$ cd a2

Copying project files from main repository can be done using git
clone. This will create a local copy of the repository.


        ram@eluvaram:~/a2$ git clone ../a1 
        Cloning into a1...
        done.
        ram@eluvaram:~/a2$

After this git will create a directory a1 under current directory
i.e a2. The new user can use the directory a2/a1 for further
development. You can check the contents by using ls command.


        ram@eluvaram:~/a2$ cd a1
        ram@eluvaram:~/a2/a1$ ls -la
        total 16
        drwxr-xr-x 3 ram ram 4096 Aug 28 09:31 .
        drwxr-xr-x 3 ram ram 4096 Aug 28 09:31 ..
        -rw-r--r-- 1 ram ram   97 Aug 28 09:31 first.pl
        drwxr-xr-x 8 ram ram 4096 Aug 28 09:31 .git
        ram@eluvaram:~/a2/a1$

As you can see above the file first.pl is copied in the new
directory.

Adding a new file in the cloned repository.

The cloned repository is an independent one. Hence, the adding,
committing etc., can be done just as in previous examples.

To learn let us create a new file second.pl in the a2/a1
repository. Use any editor and create the file. Use git-add and
git-commit . This time we will use -m flag to give the commit flag in
the command line itself.


        ram@eluvaram:~/a2/a1$ git add second.pl
        ram@eluvaram:~/a2/a1$ git commit -m 'This is my second file' second.pl
        [master 3673823] This is my second file
        Committer: ram
        Your name and email address were configured automatically based
        on your username and hostname. Please check that they are accurate.
        You can suppress this message by setting them explicitly:
        git config --global user.name "Your Name"
        git config --global user.email you@example.com

        If the identity used for this commit is wrong, you can fix it with:

        git commit --amend --author='Your Name '

        1 files changed, 1 insertions(+), 0 deletions(-)
        create mode 100644 second.pl
        ram@eluvaram:~/a2/a1$

Now using git-status we can check status of this repository.


        ram@eluvaram:~/a2/a1$ git status
        # On branch master
        # Your branch is ahead of 'origin/master' by 1 commit.
        #
        nothing to commit (working directory clean)
        ram@eluvaram:~/a2/a1$

Notice from the above that this new repository is ahead of
original one by 1 commit.

Changing an existing file

Now we will make changes to first.pl in this repository. Open the
file first.pl and add following line


        print "This is a line added from a2/a1 \n";

As usual commit changes.


        ram@eluvaram:~/a2/a1$ git commit -m 'changed first.pl' first.pl
        [master 77de400] changed first.pl
        Committer: ram
        Your name and email address were configured automatically based
        on your username and hostname. Please check that they are accurate.
        You can suppress this message by setting them explicitly:
        git config --global user.name "Your Name"
        git config --global user.email you@example.com

        If the identity used for this commit is wrong, you can fix it with:

        git commit --amend --author='Your Name '

        1 files changed, 1 insertions(+), 0 deletions(-)
        ram@eluvaram:~/a2/a1$

MERGING CHANGES

The important and interesting part of git is merging the changes
done by a1 and a2. Before doing let us just review the status of both
repository.

FILE/Details

Repository a1

Repository a2/a1

Comments

first.pl

Available and has only three
line

Available. Has four lines

Fourth line was added by a2

second.pl

Not available

Available.

Created exclusively in a2

Total number of files

1

2

Now let us update repository a1 with all the changes done by a2.
Pull operation can be used to get changes done by a2.

First change to a1 and run command git-pull.


        ram@eluvaram:~/a2/a1$ cd ~/a1
        ram@eluvaram:~/a1$ git pull ../a2/a1
        remote: Counting objects: 8, done.
        remote: Compressing objects: 100% (5/5), done.
        remote: Total 6 (delta 1), reused 0 (delta 0)
        Unpacking objects: 100% (6/6), done.
        From ../a2/a1
        * branch HEAD -> FETCH_HEAD
        Updating 44ccd72..77de400
        Fast-forward
        first.pl | 1 +
        second.pl | 1 +
        2 files changed, 2 insertions(+), 0 deletions(-)
        create mode 100644 second.pl
        ram@eluvaram:~/a1$

Now git pulls changes from a2 and merges with a1. As you can see
above 2 files were changed.

Now run ls -l and cat to check files and their contents


        ram@eluvaram:~/a1$ ls -l
        total 8
        -rw-r--r-- 1 ram ram 139 Aug 28 10:19 first.pl
        -rw-r--r-- 1 ram ram  42 Aug 28 10:19 second.pl
        ram@eluvaram:~/a1$ cat first.pl 
        print "Welcome to git - the version control system\n";
        print "Vanakkam \n";
        print "Swagatham\n";
        print "This isa line added from a2/a1\n";

        ram@eluvaram:~/a1$ cat second.pl 
        print "this is my second perl program\n";
        ram@eluvaram:~/a1$

In the present case there is no conflict between changes and hence
git committed them all without any message. When merger has conflict
– say same line modified by both – git will flag them and
let us resolve and then commit.

PDF Version of this document

Licence: This document is released under Creative Commons-By Attribution-Share alike


Chalukian Love in Stone – Part 3 – Aihole

August 14, 2011

முந்தய இரண்டு பதிவின் தொடர்ச்சியாக சாளுக்கிய கலையின்  அழகை  அய்ஹோலே எனும்  ஊரில் காண்க.

In continuation to the earlier post, the pictures from Aihole are posted.


Chalukian Love in Stone – Part 2 – Pattadakal

August 14, 2011

முந்தய பதிவின் தொடர்ச்சியாக சாளுக்கிய கலையின்  அழகை  பட்டடகல் எனும்  ஊரில் காண்க.

In continuation to the earlier post, the pictures from Pattadakal are posted.


Follow

Get every new post delivered to your Inbox.

Join 40 other followers