Monday, August 30, 2010

Twitter shuts down Basic Authentication

Twitter is going to shut down Basic Authentication Twitter API access tomorrow (August 31st).

Hereafter Twitter will support only the oAuth API access.

The switch to OAuth is a good thing, because of below reasons.

* don't have to worry about exposing the credentials for your users whether through a bug or other means (especially considering that a lot of people use the same password for multiple services);
* don't have to worry about the user changing their password — a user can change his or her password and the OAuth "connection" to your app will still work;
* don't have to worry about other applications masquerading as your application - only you can set the byline with your application name;
* will eventually have access to more APIs from Twitter that will only be available to "trusted" OAuth-enabled applications; and
* give the @twitterapi team more visibility into the network.

More Articles...
You can bookmark this blog for further reading, or you can subscribe to our blog feed.
Read more ...

Sunday, August 29, 2010

Google Map API - A Powerful and Free way to add value for your web applications.

Google Maps is getting more popular as it is helping people to know the places and to get directions easily. Google is adding lot of information and satellite images of many places in the world to make the Google Map more useful.

And, it helps them to get directions from mobile phone also.

Google is taking steps to promote Google places ( formerly Local business center) which lists verified business addresses with more details (e.g business hours, phone number, website).

Almost all websites are now showing their office locations/addresses using Google Map.

Google Maps provides a highly responsive, intuitive mapping interface with embedded, detailed street and aerial imagery data.

Map controls can be embedded to give users full control over map navigation and the display of street and imagery data.

And, Google allows the Users to freely use Google Maps in their services.

i-e A Real Estate website can integrate Google Map in their real estate search results. The result location can be displayed in the Google Map so that the users can understand more about the search results.

Lot of similar services are developed using Google Map. You can refer this blog to know various applications/services that are developed using Google Map API.

Google is providing this API freely in different formats such Javascript, Flash, Static Maps and webservices.

For using this Google Map API, we need to get API key from Google. You can get API key from here.

You need to specify your domain name for getting this API key. And, you should have Google Account.

Note that Google map API is free only when you are going to keep your web application freely accessible to everyone. Otherwise you need to go for Google map premier version.

Currently Google is not showing any advertisements in the Map. But it reserve the rights to show advertisements in future.

And, there is no limitation in page view of Google Map. But there is a limitation (2,500 geocode requests in a 24 hour period from one ip address) in making geocode requests.

Geocode requests are required to convert the physical Address into the latitude and longitude points which can be used for showing the marker in the Map.

If you want to show the Google Map in your web application you can start with using javascript implementation of Google Map API.

We have created some simple sample pages to show the use of Google Map API.

We can start with just showing simple map.

You need to include below javascript code inside head section of your web page.
<script src=" type="text/javascript"></script>

You have to replace the "apikey" with your actual Google map API key. (If you want to develop your web application from your local machine, even you can get Google map API key for "localhost" domain also. It will be very useful for doing development from your local machine)
And, below javascript function should be added.

GMap2 is the central class for creating Map inside the HTML container. (In this case div tag with "map" as id). This class is the version 2 class which is deprecated now. We need to use version 3.

setCenter() sets the map view to the given center. Optionally, also sets zoom level and map type. In this example "2" is the zoom level.

And, load function should be called from onLoad event of the body tag.

<body onLoad="load();" onunload="GUnload()">

And, Div tag should be specified at required location for showing the map.

<div id="map" style="height: 500px"></div><!--map Div-->

The next example is Google Map with one Marker.

Below piece of javascript code should be added to the load function.

var marker = new GMarker(new GLatLng(13.04, 80.17)); // chennai

GMarker marks a position on the map. It implements the GOverlay interface and thus is added to the map using the GMap2.addOverlay() method.

A marker object has a latlng, which is the geographical position where the marker is anchored on the map, and an icon. If the icon is not set in the constructor, the default icon G_DEFAULT_ICON is used.

After it is added to a map, the info window of that map can be opened through the marker. The marker object will fire mouse events and infowindow events.

The latitude "13.04" and longitude "80.17" point to Chennai. That's why Marker is showing Chennai in the sample map.

Next we will see how to change the color of the Marker using this example.

Below piece of javascript code should be added in the load() function to create marker with blue color.

var point =new GLatLng(13.04, 80.17);
var blueIcon = new GIcon(G_DEFAULT_ICON);
blueIcon.image =";
// Set up our GMarkerOptions object
markerOptions = { icon:blueIcon };

map.addOverlay(new GMarker(point, markerOptions));

The next example is for showing Markers with infowindow.

You will be seeing two markers on this map. You will be seeing different info window message when clicking on these markers.

It will be done by using below piece of javascript code.

var point = new GLatLng(43.65654,-79.90138);
var marker = createMarker(point,'<div style="width:240px">Some stuff to display in the First Info Window.<\/div>')

var point = new GLatLng(42.8487, -73.755);
var marker = createMarker(point,'Some stuff to display in the<br>Second Info Window')

function createMarker(point,html) {
var marker = new GMarker(point);
GEvent.addListener(marker, "click", function() {
return marker;

GEvent.addListener registers an event handler (e.g info window opening function) for a custom event (e.g click) on the source object(i-e marker).

openInfoWindowHtml opens the map info window over the icon of the marker. The content of the info window is given as a string that contains HTML text.

If you want to show the infowindow when doing mouseover itself instead of on clicking, you have to replace the "click" with "mouseover" when calling addListener().

Next example is about showing tooltip for the marker.

If you want to show tooltip for the marker you need to use below piece of code.

function createMarker(point,html) {

// === marker with tooltip ===
var marker = new GMarker(point, {title:"Tooltip"});
// ===========================
GEvent.addListener(marker, "click", function() {
return marker;

We may want to show labels for Markers immediately after loading the page. You can refer this sample map. It can be done using some third party function.

You can download such a thrid-party code from here.

And include it in the head section of your page.

And, below piece of the code should be included in the load() function.

// An ELabel with all optional parameters in use
var label = new ELabel(point, "samplename", "style2", new GSize(-40,0), 60 );

// An ELabel with no classname
var label = new ELabel(new GLatLng(43.82589,-79.10040), '<div style="background-color:#ccccff;border:2px solid black">Unitedstates<\/div>', null, new GSize(6,-30), 75);

Normally we will be requiring to show multiple markers based on several addresses.

i-e we need to get geocode corresponding to many addresses and show the them on the Map with details.

The below HTML code is used for specifying the addresses and the details need be displayed with Markers.

Below javascript code should be used to read the addresses from these hidden fields and display them on the Map.

<script type="text/javascript" src="elabel.js"></script><!--label script-->
<script type="text/javascript">
var map;
var geocoder;
var loopvar=0;

function initialize(){
if (GBrowserIsCompatible()) {
geocoder = new GClientGeocoder();
map = new GMap2(document.getElementById('map_canvas'));
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
//map.setCenter(new GLatLng(26.90099125,3.14216095), 0);
var multipoints="";
var no_of_contact=document.getElementById('noOfcontact').value;
for (var i = 0; i < no_of_contact; i ) {
var hidden_name="number_locations" i;
var addr=document.getElementById(hidden_name).value;

geocoder = new GClientGeocoder();

// Retrieve location information, pass it to addToMap()




function addToMap(response)

// Retrieve the object
place = response.Placemark[0];

// Retrieve the latitude and longitude
point = new GLatLng(place.Point.coordinates[1],

var phonenumber="num" loopvar;

var phonenumber=document.getElementById(phonenumber).value;
details=phonenumber "-" place.address
map.setCenter(new GLatLng(20.0, -10.0), 2);
loopvar ++;

function createmarker(point,details)

//create lable
var stuff = '<div style="padding: 0px 0px 8px 8px; background: url(images/point_bottom.png) no-repeat bottom left;"><div style="background-color:#0099FF; border-color:#0033FF; color:#FFFFFF; padding: 2px;"><b> ' details '<\/b><\/div><\/div>';

var label = new ELabel(point, stuff, null, null,65 ); // call the label

// Create a marker
var marker = new GMarker(point);
GEvent.addListener( marker, 'mouseover', function() {

return marker;


This code reads the addresses one by one using id of the hidden field.

GClientGeocoder class is used to communicate directly with Google servers to obtain geocodes for user specified addresses.

getLocations method of GClientGeocoder class performs a geocode, the conversion of a human-readable address into a latitude/longitude pair. getLocations() sends a request to the Google geocoding service, asking it to parse the given address and handle the response in the given callback.

As this method requires a call to a Google server, you must also pass a callback method (e.g addToMap())to handle the response. This response will contain a Status code, and if successful, one or more Placemark objects.

Note that addToMap is a callback method. So, we can not expect it to be called one by one within the "for" loop.

You can refer the sample map created using this code.

All these samples are based on javascript API. Similarly you can use Flash API also.

And, if you want you can use static maps also.

Do you have an interesting and useful idea/plan to create an web application using Google Map? And, don't know how to implement them?

We can help you to complete your web application cost effectively. You can contact me ( for outsourcing any web development project.

Recently our Team has successfully done a web application for tracking mobile phones on the Google map. Contact me if you want us to develop similar application for you.

You can get latest updates about Google Map from Goolge map official blog.

More Articles...
You can bookmark this blog for further reading, or you can subscribe to our blog feed.
Read more ...

Thursday, August 26, 2010

Feasibility of Online Voting for Political Elections in India

Today I got an email regarding a contest from

The email says below message.

All you have to do is blog about a technology that you wish existed, or improvements to a technology- it doesn't matter how crazy your idea is!

It looks like they are impressed with Google's contest.

Immediately after reading this message, I wanted to submit my yesterday's blog post about the need for the innovation in Solar Power Sector. Because, I believe there is great need for an innovation in improving the solar devices to make them more useful, and this will give more benefit to the entire world in different ways.

But, I couldn't submit this link as it was already submitted to the indivine.

So, I moved on to next demand. I would like to analyze about the feasibility of Online (Internet) voting for political elections in India.

We are seeing lot of voting systems (including this indiblogger contest) everywhere in internet.

Mostly all Social bookmarking sites (Digg and reddit) are promoting the links based on their vote count only.

I agree that these voting systems are completely different from actual voting in political elections.

But, still there is possibility for successfully running online voting for the elections. The success of online voting in Estonia adds some hope for any large scale implementation of online voting system.

I understand that it is vulnerable to hacker attacks, identity fraud and vote count manipulation.

But, we know that banks and payment processors gained the trust from people for their online transactions system. So, it is not that much difficult to make the online voting system free from hacker attacks and identity fraud.

I agree that computer and internet usage is not reached all people in India.

But, Electronic Voting System is successfully getting implemented in India. Even Election Commission has taken some steps for implementing internet connection in some sample booths for monitoring purpose.

So, the people who are not having access to computer/internet can use computer/internet in booths set up by the election commission. Election Commission should take care of user friendliness of the interface so that the first time computer user can also easily cast their vote online easily.

India's recent initiatives to give unique id number (UID) for each person in India will help to implement this online voting system.

This internet voting option may help to increase the voters turn out in elections. Thousands of people serving in the military and Indians living abroad can cast their vote using internet.

And, even we can include an option to cast vote from mobile phone also. Because in India number of mobile users are more comparing to internet users.

Lot of things should be discussed in detail if we are going to implement this Internet voting system.

  • Online voting system will allow the users to change their vote multiple times even when the final one is considered/taken.
  • Current rules won't allow the election campaign near the election booth. This rule will be violated if we allow internet voting system.
  • We need to decide the best way for voter identification in the online. ie- we need to decide whether we should have ID card and Card reader or just online registration is enough
  • We should have proper policies for Personal identification details while implementing this online voting system.

Still lot of things should be discussed. Obviously it will take siginicant time for implementing it in India even if it is feasible.

You can share your thoughts thro' the comments.

And, now it is your turn to vote for this below Poll.

You can join in LinkedIn discussion about this topic.

More Articles...
You can bookmark this blog for further reading, or you can subscribe to our blog feed.
Read more ...

Wednesday, August 25, 2010

Future of Solar Power?

Basically I am very much interested in Solar power which is clean and limitless energy source.

So, I published a Guest post about Solar power few months back.

When going thro' this Guest post, I had a question about future of the Solar Power.
And, I posted my question as "Will Solar Panels dominate the World in near future?" in LinkedIn Q&A.

Many people are giving their answer for this question.

I have extracted keypoints from their answers and listing them below.

  • Solar power system is very expensive now.

  • Due to economics reasons, technical limitations and resource constraints, using solar in large scale is difficult. So,solar will remain a limited source of electricity relative to coal, nuclear and hydroelectric power.

  • There is a possibility for launching giant solar collectors
    into space, with the energy beamed down into the grid.

  • Currently Solar products are good only in advertisements. But in reality, no solar company is giving enough details (price, expected daily output in specific location) about their products.

  • Due to the variety of conditions (weather, night, short daylight at higher lattitudes etc) they will always remain a useful but minority source of generation.

  • Solar power is suitable only for small devices eg. mobile devices

  • Need R&D to increase Energy Storage capacity & Installation-Maintainability.

  • Few years back, price of mobile phones got reduced only after large number of people started using mobile phones. Similarly price of solar devices will be reduced only when large number of people start using it.

  • This will be ideal for global warming problems and cleaner

  • Solar panel is not disposable.

  • Instead of talking much about solar energy people should start using it in small way. i-e we can use solar light in garden .It will be very useful in the nights

By going thro' these answers I understand that it is difficult to effectively utilize solar power in near future.

We know how big/powerful is solar power. And, we know how to get electricity from solar energy. But still we are not able to get the full benefit from Solar power.

The reason is, we are not having proper plan for making large scale use of solar devices. It seems India is taking some initiatives to create awareness about Solar power. Many people are saying that Government's plan for spreading Solar devices are not properly utilized.

I am just wondering why scientists are not doing enough R&D for enhancing solar devices, wherein solar devices are having great need and huge potential. Why they are giving preference to Space and Moon research than giving preference to enhance solar technology? You can share your thoughts thro' the comment.

Speech of Hermann Scheer explains the importance of utilizing Solar and other renewable energy.

He says

"Renewable energies are inexhaustible. They do not destroy the environment. They are available everywhere. They ensure peace. They enable independent developments and a fairer distribution of wealth possibilities. Their use facilitates solidarity with future generations. They secure the future of mankind. Their use must lead towards the replacement of the nuclear/fossil energy economy. Whether this replacement will be done in time - that is, in the first half of the 21st century - will be the answer to the question whether the industrial revolution was a unique chance for mankind to improve life conditions - or the start of its collective extermination. This replacement cannot be implemented without conflicts and we have to cope with them. We have to fight for the better alternative. It needs a grand design. This perspective is essential for overcoming the psychological disaster of having no alternative."

And he says People can bring this revolution without requiring help from the Industries .

He says "Solar energy is the energy of the people. To use this energy does not require big investments of only a few big corporations. It requires billions of investments by billions of people. They have the opportunity to switch from being a part of the problem to becoming a part of the global solution. That is globalization by the people"

I understand that bringing Solar in every day use everywhere is a challenging task. But still, personally I believe Solar power will be playing major role in energy sector very soon.

So, I am planning to create some kind of web applications (e.g calculating energy output for any Building) related to solar power. And, I am gathering more details about any existing applications. If you know any useful information about solar related web applications you can share it thro' the comments or you can send the details to me (

Updates on November 2010
I am happy to know that India and US are taking joint initiative to use Space Solar power.

More Articles...
You can bookmark this blog for further reading, or you can subscribe to our blog feed.
Read more ...

Monday, August 16, 2010

Updates about our website

One of our websites is down for few hours. It is mainly having our social bookmarking, Forum, News Reader, product sales, Quiz, Easy learning.

Our hosting company informed that they are working on to resolve the network issue which causes this down.

They mentioned that it will be resolved as soon as possible.

I will update you once I get any information from our hosting.

Our website is up and running now. Let me know if you still see any issue with our website.

Our hosting (bytehost) has mentioned that this outage was caused by a prologued persistent ddos attack of over 1000mb/s

More Articles...
You can bookmark this blog for further reading, or you can subscribe to our blog feed.
Read more ...

Sunday, August 15, 2010

Chance to become QTP expert. We are launching One-to-one online QTP Training program.

I am happy to announce about launching our online QTP training program.

People who bought my eBook about Software Testing and QTP Automation used to ask about QTP training from me or any other good QTP training program.

But, I hesitated to offer any QTP training as I am spending most of my time developing our company "QualityPoint Technologies".

Anyway, recently I have decided to spend some time for providing online QTP training also. I had taken this decision by hoping that this training program will give me an opportunity to understand the people's expectation/need in learning QTP. It will help me to enhance the eBook further to make it more useful.

Due to time constraint, I will provide this training to limited number of people only.

Basically, I would recommend self study over any training program. For your self-study, our eBook may help.
If you are still interested in getting training you can read further.

Find below the details about my QTP training program.

  • It will be one-to-one training session conducted thro' online using screen sharing tool

  • I (Rajamanickam Antonimuthu) will be the Trainer for this QTP training program. I will be available online around 7am (IST) to 10pm (IST) in all days. I believe it is suitable for giving training for everyone including persons in UK and USA.

  • The Trainees should have stable broadband connection and HeadPhone.

  • Training time will be 15-20 hours. Since it is one-to-one training this time can be split among different days (3-7 days) including weekends

  • Training includes teaching the concepts, creating samples, giving assignments and clarifying any questions.

  • Tips for becoming an expert in QTP Automation

Currently I am planning to charge around $250 USD as introductory offer. This introductory price is for first 3 persons only.
I will increase the price (around $360) based on the feedback/comments from these first 3 persons.

I am going to inform about my online training and the introductory offer to all the people who bought my QTP eBook and to all the people who were asking about training from me.
(For our eBook I had given introductory offer price as $5 USD for few days, the current price is $12)

So, if you want to use this introductory offer, register today by making the payment. Contact me at to know my paypal address for making payment. Before making the payment check with me to know whether the Introductory offer is still available or not.

You can make payment using below paypal button.

$250 Offer price

Course Content

Since it is one-to-one training, there is no predefined course content. It will be based on the need for the individual. Anyway find below the typical course content.

  • Need for Test Automation

  • Introduction to QTP

  • QTP IDE overview

  • Add-ins

  • Understanding Object Repository

  • Working with Expert view and Keyword view

  • Sample scripts

  • CheckPoints

  • RecoveryScenario

  • Understanding Action Iteration and Test Iteration

  • Basics of vbscript

  • Using DataSheet

  • Synchronization Points

  • Debugging Script

  • Driver Script

  • Automation Frameworks

  • Automation Object Model

  • Reporting results

  • Connecting Database

  • Sending email from script

  • About Descriptive programming

  • Best practices

  • Web Development knowledge required for automating website testing

  • Using QTP for Banking/Financial Domain

  • Question & Answers

If you are looking for inexpensive training, you can choose group training. I will let you know if I arrange any group training later. ( This group training will be made available only if group of people come together at specified time. I am not having enough time to arrange groups).

And if you want to get training in Software testing, write to me at

Updates on August 16

One person has already joined this training program using the Introductory offer. So, now the introductory offer available for 2 persons only.

Updates on September 19
I am getting many requests for inexpensive Group/Batch training, so I am planning to arrange such a training in 1 st or 2nd week of October. I will publish a blog post with more details soon.

Updates on September 20
I have announced about the Group Training for learning QTP.
Since I started the Group training, I will not be doing one-to-one training further.

More Articles...
You can bookmark this blog for further reading, or you can subscribe to our blog feed.
Read more ...

Thursday, August 12, 2010

Twitter as Marketing Tool

In LinkedIn, one person had asked about the ways to use Twitter as Marketing Tool.

I had written below ways as answer for his question. Let me know if anything else can be added in the list.

  • Tweet your product details and blog posts at reasonable frequency.

  • Have separate Twitter accounts for different kind of topics.

  • Follow people in your relevant area.

  • Retweet good tweets

  • Provide ReTweet buttons in your site and provide link for following you.

  • Display your Twitter updates in your website.

  • Search your product in Twitter and reply for the relevant tweets in the search results.

  • Use Twitterfeed to automatically send your blog posts if you don't have enough time to tweet manually.

  • Use Twitter Background designed for your specific needs.

  • Update the Twitter profile (Bio, profile photo) properly.

  • Mention your Twitter profile in your Email signatures.

  • Use some kind of Bookmarklet to tweet any interesting articles easily even without loading Twitter site.

  • Don't tweet frequently. Otherwise your tweets won't show in Twitter public search which is used by Google Real time Search.

  • Never send spam tweets.

More Articles...
You can bookmark this blog for further reading, or you can subscribe to our blog feed.
Read more ...

Thursday, August 5, 2010

Google AdSense will show advertisments based on your Search/browsing activity too

Everyone knows that Google AdSense is context sensitive ad serving system.

We know that Google AdSense will display the advertisements based on the keywords in the web page. For example if you are having a web page for explaining about the importance of the timesheet application then the AdSense will show the advertisements related to TimeSheet application.

Most of the AdSense optimizing tips will be concentrating on optimizing the keywords in the page and obviously explaining about ad placement.

Recently, I came to know that Google AdSense will effectively use the cookies to show advertisement based on your browsing history and Search history.

For example, if you search for "QTP ebook" and go thro' many QTP related websites and then browse a webpage which is not having any QTP related stuff, there is a possibility for QTP related ads getting displayed in that webpage.

It seems this type of ad serving is working based on DoubleClick DART cookie.

I am not sure whether many people are familiar with this fact.

If you are familiar, you can share any tips useful for optimizing the AdSense based on this fact. And, does anything can be done to improve effectiveness of AdWord campaign by using this fact?

More Articles...
You can bookmark this blog for further reading, or you can subscribe to our blog feed.
Read more ...

Search This Blog