Monday, April 6, 2015

Acquia Certified Developer

I am a proud Acquia Certified Developer (Drupal) from today! :)

Friday, December 30, 2011

2011 & Me!!

It’s been quite a long time, since I have posted something in my blog. So I have decided to scribble few things in this borrowed space from Google, to end this year. There is no big fan following for my writing, so no worries even if I make grammatical mistakes, unnecessary punctuations or discuss worthless topics.


Like everyone in this densely populated, extremely polluted and massively corrupted country, I relocated to the Silicon Valley of India nothing for a single reason, Food. Once Chennai knocked me out badly, survival became a tough job for me near the end of 2010. Bangalore helped for survival and a decent comeback. It’s not required I have to stick with what is written as the title of this blog! No one questioned why movies are named irrelevant to the content shown.


I became the most loved to most hated individual. I learnt it is not required to mention why we hate someone? Never imagined about how future will be, while living this moment. May be people don’t like this attitude and definitely it’s a tough decision to think about a guy who is having no money. Finally, what is true is "Truth won’t die, but can be killed."


New Company, new people, new environment almost everything settled when New Year begin for me. I approached this year with my own philosophy, "Hard work decides what you deserve". But nothing great is achieved now.


Every day I have to travel one and a half an hour to reach office from my shared house. Red painted overpaid Volvo buses are offering not only luxury but also showed me how people live in a High-tech city. From multi branded wardrobes, glittering shoes, imported gadgets, multi-lingual conversations to mechanical life style, worried faces etc. Volvo is my teacher, guide, companion, park and everything.

I want to make a rough calculation of how many kilometers I have travelled (to and fro) this year.

Shared house to office: 40 Km per day * 15 days per month* 12 months = 7200 Km
Bangalore to Chennai: 360 Km * 3 times per month * 12 months = 12960 Km
Bangalore to Kodaikanal: 750 Km * 1 time = 750 Km
Approximately, I have travelled 20910 Km this year!


Travel pushed me to read. Books I have read Shall we tell the president?, 2 States, Bad luck & Trouble (still in progress),The Alchemist and Revolution 2020. Good to have few collections in my hand and mind.


Mid 2011 presented me unforgettable people and unforgettable moments. I feel happy for that. But I couldn’t relocate my mother along with me, for which I should scold myself as 'Stupid'.

Hope the New Year 2012 will bring more surprises. I still believe, Truth alone triumphs!

Thanks to God.

Wednesday, April 28, 2010

Drupal Interview questions PHP, MySQL, Javascript and CSS

This is the list of interview questions asked to me in various interviews I have attended so far, answers will be updated soon.

PHP & MySQL questions:

  1. Mysql & mysqli difference

  2. Second highest salary

  3. Breadcumb handling

  4. Diff JSON & XML. Which will be best? Reason for that?

  5. Which is the best one for RIA?

  6. Calling pages from other server

  7. How you find Version of Drupal?

  8. serialize and unserialize in php?

  9. echo and print difference

  10. exif? usage?

  11. sort, asort, ksort? usage?

  12. require, require_once & include?

  13. how many ways PHP session ID can be retrieved?

  14. persistent cookies?

  15. How to eliminate PHPSESSID= in URL?

  16. php oop pass by value or reference?

  17. @fopen()

  18. Php HEREDOC

  19. myd, myi, frm?

  20. single command to import .csv file into DB

  21. find date difference?

  22. optimizing mysql queries

  23. mysql_fetch_row(), mysql_fetch_object(), mysql_fetch_array()


  1. Tell me about your company.

  2. Summarize your work experience.


  1. What are the necessary files for creating a new module?

  2. What will happen when there is no tpl files inside your custom themes folder?

  3. How you set an subdomain sites with your existing drupal installation?

  4. Use of AHAHA module?

  5. Have you every worked with any properitory drupal products like Acquia?

  6. What you know that Drupal template engines?

  7. Views? Views 2?

  8. MySQL replication

  9. How you do Drupal Performance tuning?

  10. memcached?

  11. Why we use jQuery?

Client-side language interview questions:

  1. It's a simple list of client-side language interview questions.


  1. What's the difference between display: none and visibility: hidden?

  2. What are the ways we can include stylesheets in a HTML file?

  3. List the possible Values of 'Position' property. Which one is the default value?

  4. What is the use of '!important'?

  5. Tell the priority level of external, inline & internal stylesheets.

  6. Can we use a class name more than once in a HTML file?

  7. Which one will have the higher priority, ID or CLASS?

  8. What is the purpose of 'Block'?

  9. How do we override a class property in css?

JS :

  1. On page load, i want to hide a

    tag. How to do that?

  2. What is the syntax for addListener?

  3. What is a Lightbox?


  1. List the attributes of anchor tag.

Wednesday, December 23, 2009

svn: PROPFIND request failed on 403 forbidden error - Tortoise SVN

At instances when we try to update our source code from CMD prompt or PUTTY using the following command in Tortoise SVN,

# svn update
# svn up

We may come across the following error

svn: PROPFIND request failed on '/svn/repos/yourfolder'
svn: PROPFIND of '/svn/repos/yourfolder': 403 Forbidden (

The solution for this error is:

svn update --username your_user_name

'your_user_name' is your SVN user name

Once you type this command it ask your password
Authentication realm:
Authorization Realm Password for 'your_user_name':

After this type your password. This will resolve this problem and your source code will get updated.

If not please try some other procedures.

Sunday, December 13, 2009

The URI you submitted has disallowed characters. Code Igniter

While deploying your Code Igniter application in the production server, you may come across with the following error message.

The URI you submitted has disallowed characters.

The problem can be solved with one of the following:

  1. mod_rewrite problem: The mod_rewrite might be the problem for this. Get help form your hosting provider to enable mod_rewrite. In my case, our hosting provider is The server environment is FastCGI. They informed us that by default the mod_rewrite will be enabled. In order to use in your application, we need to add
    RewriteBase URL-path
    in our .htaccess file.

    RewriteEngine on
    # If your application is in the home directory
    RewriteBase /
    #Followed by your application specific rules

    In case of deploying in a sub-directories the .htaccess file should have

    RewriteEngine on
    # If your application is in the sub-directory
    RewriteBase /myfolder

  2. The $config['permitted_uri_chars'] configuration variable problem. To resolve this check this url.

Tuesday, November 10, 2009

Paa The movie

Amitabhji - One of the versatile and finest actors of Indian cinema. He always amaze people with his experimental acting. I was shocked by his new look in the upcoming movie 'Paa'(to be released on December).

Surprising to see real father & son combo in a son-father relation in reel world. Amitabhji constantly rocks Indian cinema with his stunning performances. I wish him all the best for 'Paa'.

Will the senior actors of Tamil cinema ready for an experimentation like Amitabhji?

Monday, October 12, 2009

Its PEAR's turn to kick my PUT (BUTT) :)

We had a peculiar requirement, in which all the API requests should be sent using PUT method. I never heard of this 'PUT' HTTP method before.

By the way here is my development environment details:

Framework : Code Igniter (PHP)

After vigorous goggling, we found that JQUERY (AJAX) can send HTTP requests by PUT method. Here is the sample link.
Cross-domain issue: There came the 'Cross-domain' issue in Mozilla Firefox when I tried to send HTTP requests to our API. IE 6 will not have this problem. But fixing this cross-domain issue in Mozilla Firefox 3.0 is not as simple as in Firefox 2.x. Changing configuration in pref.js file didn't helped me.

I realized that this not a easy task as i thought.

What about REST? Yaa!! REST can send requests to send HTTP requests in PUT method. We started trying things in a new direction.

Will REST help us????

The fact is even though there are wonderful PHP libraries to send HTTP requests in PUT method, the API provided to us rejected everything. WTF!

Here is the PHP REST servers and clients :
REST PHP class client
REST PHP class server

Again we started our search for the solution. My Tech Lead - Palani gave me the idea of sending the requests in PUT using ROR (Ruby on Rails), this will help us to check whether the API is really accepting PUT method?

I consulted with our ROR team and they gave me a new buzz word 'mechanize' gem.
Here is the code which i used
require "rubygems"
require "mechanize"
require "net/https"
agent =
agent.keep_alive = false # true causes TypeError
agent.put("", {"param1" => "0"}, :headers => {"Content-Length" => 50})

Our cute API rejected that too! "What the hell you want me to do?". I shouted.

Again we started our search for the solution. Suddenly I came across PEAR HTTP REQUEST.

HTTP REQUEST is a PHP PEAR package to perform HTTP requests. This package supports all the four HTTP methods to send requests (GET, POST, PUT, DELETE).

This looked promising! I was overjoyed.

At the very next moment, downloaded and integrated it in Code Igniter with the help of this wonderful posting, PEAR integration.

Hurray!! We completed the coding

$req3 = $this->pearloader->load('HTTP', 'Request');
$params = 'state=0';
$url = '';
$response3 = $req3->getResponseBody();
echo $response3;
echo '

Wait...wait man. We have a twist in the tale. :(

Yes, this code worked charmingly in WINDOWS. But in Linux!!! This thrown the following error..

"Fatal error: Call to undefined method HTTP_Request::setBody() in"

For god's sake, What I did to this LINUX?, I wondered!

Finally, I fixed the issue by changing the line




The funniest thing is, Request.php documentation says, "addRawPostData() is deprecated since 1.3.0, method setBody() should be used instead"


This code worked fine in LINUX also. My problem was solved. Now we can send HTTP Requests in PUT method using PEAR package.


Thanks for reading