logo

Call Us

USA: +1-703-652-8473

UK: +44-114-279-2798

UAE: +971-50-1887848



Archive for June, 2009

SEO Checklist

Wednesday, June 24th, 2009

While there is no doubt that good SEO consultants can help drive more traffic to your site, many small businesses cannot afford a good consultant.  But you don’t need to despair if you can’t afford an expensive SEO consultant.  If you are one of those DIY type business owners, this article will help you create a fairly decent search-engine optimized site.  Even if you plan to use a web design/development agency and not do it yourself, you can demand that they create a site that complies with basic SEO tenets.

Here is how to go about placing yourself on the right side of search engines:

  1. Keyword analysis – This should be done before you start building your site.  If you already have a site, you may have to tweak your content based on the results of this analysis.  Know what keywords are used by your customers to find you.  This may not be industry jargon words.  A good tool to start with is Google’s Keyword Tool.  You need to identify the keywords or phrases that have high volume but less competition.  Once you identify the keywords for a page, mention it a few times on that page.  Do not over-stuff your page with keywords.  Search engines penalize keyword stuffing.  Write naturally, but don’t forget to repeat your keywords a few times.
  2. Make sure every page on your site has a proper title tag, meta keywords and meta descriptions.  Again, there is no need to repeat your keywords too many times, but your keyword should be there on the title tag, as it’s the most important tag from a search-engine perspective.
  3. Search engine friendly URLs (SEF).  You need to have meaningfully named URLs that accurately describe the page content.  Example: www.example.com/camera/dslr/nikon/D5000 is better than www.example.com?product_id=123.  Carefully choose your URL names and structure.  Now, how do you create search-engine friendly URLs?  You can provide URL rewriting rules in .htaccess if you are using Apache; but it is cumbersome to manage.  Many content-management systems like Drupal and Wordpress support SEF, so if you are using these, you’ve got yourself covered.  Most web app development frameworks like Symfony also support SEF.
  4. Provide textual description for all non-text elements like images, audio and video.  For example, use alt tag with images.  This will help the search engine better understand your multi-media content.  This has the added benefit of making your site accessible.
  5. Search engine bots should be able to spider all your content even if the content resides in a database and are dynamically displayed.  For example, your products may be sitting in your product catalog table in a database, but should create a static looking page for each product.
  6. Make effective use of heading tags like h1 and h2 to showcase the relative importance of text.  Your important text should be text and not images.
  7. Use ordered lists for creating menus rather than using tables.
  8. The anchor text (hyperlink to another page) should contain keywords that describe the target page.  Instead of writing “Click here for D5000 details”, it’s better if you write “check out the D5000 digital SLR camera“.
  9. Avoid duplicate content issues.  If example.com, www.example.com and www.example.com/index.php all point to the same page, you should consider one of them as the primary URL.  If you designate www.example.com as your primary or canonical URL, then the other URLs should be permanently redirected to the canonical URL.  You can redirect by using the HTTP 301 code.  Also consider storing the session id or affiliate parameter in a cookie and then redirect the URL with parameters to the canonical version.
  10. Never copy-and-paste content from other sites.  You may be violating copyright laws and incurring duplicate content penalty. Likewise, if you are getting your content from a syndication service, check that the same content is not syndicated to other sites.  Do a Google search on your content and if you find that your content has been copied by someone else, file a DMCA request with Google.
  11. What if you have multiple top-level domains? Like example.com and example.net?  If you plan to have identical content on all these sites, do a permanent redirect to your primary domain.
  12. Multiple language versions of your site – I would say use a different sub-domain for each language.  Example: fr.example.com for French and de.example.com for German.  Using the same URL for different language versions is not a good idea.
  13. Block search engines from seeing admin panels, HTTPS content etc by using the robots exclusion protocol.  Password protect those pages you don’t want the outside world to see.
  14. How do you know if Google has indexed all your pages?  Search for site:example.com on Google.  It will return the number of pages indexed.
  15. Externalize CSS and Javascript.
  16. Follow XHTML 1.0 strict standard.
  17. Reduce the amount of code in your page, and maintain a good content-to-code ratio.
  18. Speed is important.  Your pages should load fast and should not timeout.
  19. Use microformats to describe your data.
  20. Last but not the least, build quality in-bound links.

Some of the above items need further explanation.  However, there is a wealth of information available in blogs and online articles.  So start digging and learn more on this interesting topic.

Bing Your Search!

Tuesday, June 23rd, 2009

The new avatar of Microsoft’s latest search engine, Bing, is here.  An updated version of  Microsoft’s former search engines, namely Live Search, Windows Live Search  and MSN Search, Bing.com went fully online on June 3, 2009.

Bing Features

Here’s a quick look at some features of Bing that could give other search engines such as Google and Yahoo a run for their money (although it would be a while before Google can be, if ever they are, outsmarted!).

Do note that some of these features are available in the United States version only. You can change your country settings using the toolbar at the top right hand side of the Bing site.

  • The background image changes daily.  They are mostly striking images of noteworthy places in the world. You can hover over the images to see interesting facts about them. (more…)

Sweet rewards from tweets

Monday, June 22nd, 2009

Twitter is growing by leaps and bounds each day as more and more users are realizing its use as a marketing tool. Twitter started out as a simple microblogging tool for users to stay in touch by answering about the question, What are you doing?. It is now being used widely by companies as a means of promoting their new products, sharing their news & views, posting job requirements and keeping in touch with customers.

Recently, the computer giant Dell, revealed in one of its blog posts that more than $2 million has been generated in revenue from @DellOutlet, one of its Twitter sites. Here is how Dell has been using Twitter.

Dell identified early that Twitter is an effective means of communicating with customers. Dell Outlet, the sales division of Dell started tweeting in 2007, using Twitter as a means to attract customers by extending exclusive offers, discounts, clearance events and new arrival information.

Users who follow Dell on Twitter receive messages when discounted products are available at the company’s Outlet Store. Those who are interested will immediately click to purchase the product or they might forward the information to their friends.

Dell has been able to compute the revenue generated by Twitter users by tracking the clicks that came from Twitter to its site, which resulted in sales. The figure $2 million is a relatively small amount for a company like Dell. However, it goes to show that small companies can also reap rewards by using Twitter as a marketing tool. Recognizing the benefits of using Twitter, Dell has created Dell.com/Twitter to allow customers to choose the most relevant Twitter account for them to follow.

Thus, Twitter as a sales/promotional tool is no doubt invaluable to small and large companies alike; given proof of the kind of revenue it helps to generate.

Twitter continues to gain popularity and expand its user base day by day as more and more corporate companies are diving in to make the most of it. However, Twitter has yet to come up with a business model which could generate revenue for Twitter too. It is speculated that they might introduce paid accounts or take a share in sales generated from Twitter.

As the long awaited business model takes its own time in materializing, Twitter users are quite happy tweeting their way to success.

Search3 – The ‘3-in-1’ Search Mode

Monday, June 22nd, 2009

We all know that there are a number of search engines on the Net but most of us invariably turn to Google to search for anything and everything we need. Although it often meets up to expectations, there have been times when even Google cannot seem to retrieve what we are looking for.

Here’s a new and useful search engine specially designed to solve this problem. Search3 has recently launched its beta search engine www.search3.com, This search engine allows you to search for an item in different search engines all at once. You can choose among Google, Yahoo, Bing, Twitter and Ebay for web search. For image search, you have Flickr as an additional choice.  The search results are displayed in a three-column format depending on your choice of search engines. The founders plan to add new search engines in the coming days to give users a wider variety of engines to choose from.

Currently, this search engine provides only web and image search. But more categories like health, real estate, etc. will be included shortly.  A mobile version and iPhone app for the service will also be rolled out soon.

With search3.com, users can now compare and decide for themselves which search engine gives them the best results. But the people who are really going to benefit from this tool are SEO professionals who now have a convenient means of comparing page ranking for their websites in different search engines.

Do read up more on search3.com features before you decide to integrate it into your web browser.

HTML 5.0 – A glance at new elements

Thursday, June 11th, 2009

WhatWG (Web Hypertext Application Technology Working Group) was formed in 2004 with focus on HTML and APIs for web applications.  Specification document for HTML 5.0 is in progress.  The document gets updated on a regular basis.  Check out the document at http://dev.w3.org/html5/spec/Overview.html.  Getting our head into the document is tedious and cannot be made to fit into one page.  So here we will glance over a few new elements to get a picture of how HTML 5.0 is going to be.

Div Element

Header, footer, nav, aside, article and section are new elements that will replace div.  The complexities of div have paved way for these elements.  Instead of having so many div tags inside the code, HTML 5 gives the capability to use separate element for each purpose.  During modifications, identifying a particular portion thus becomes easy. These two snapshots will give an idea of how the simplification is going to work.

Audio Video Elements

Recently, audio and video have mass migrated to Internet.  HTML 5 provides the ability to treat audio and video as web pages without the need for plug-ins to play them. That is, audio and video will be natively supported by the HTML 5 compliant browsers.  The debate on whether to use a standard format or to support all formats is still on.  These elements are expected to contain textual content for every video, audio brought in the web page.  Such a provision will enable information to be conveyed through non-supportive browsers.  Internet users with debilities will also have the accessibility to web content.  Here is a lookup.

<audio src=”Martinluther.mp3″>

<p>I am happy to join with you today in what will go down in history as the greatest demonstration for freedom in the history of our nation.</p>

…</audio>

Few More Elements

Time element will help browsers,  search engines and web crawlers identify time from web pages.  Images are brought through the figure element.  Captions of the image are always associated with the image.  This will allow the user agents to understand more about the image.  Dialog is a another new element and it comes up with 2 sub tags: dt, dd.  dt will indicate the speaker and dd will indicate the dialog.  Here is an example:

<dialog>

<dt>Fay</dt>

<dd>Jerry, could you show me how to hold the racket?</dd>

<dt>Jerry</dt>

<dd>Sure Fay, it’s just like shaking hands. Hold your hand out as though you were going to shake my hand… </dd>

<dt>Fay</dt>

<dd>Do you mean like this?</dd>

<dt>Jerry</dt>

<dd>Right, like that. Then put the racket in your hand, like this. </dd>

</dialog>

There is more in HTML 5.  Seeing by the way developers are contributing to its specification, we can sure expect fascinating behaviors in web pages soon. Most importantly, you can contribute too. Here’s how:

Subscribe to the WhatWG mailing list: http://www.whatwg.org/mailing-list

Participate in discussions: http://forums.whatwg.org/

Comment and post blogs: http://blog.whatwg.org/

Links to articles on HTML 5:

http://radar.oreilly.com/2009/05/google-bets-big-on-html-5.html

http://www.webmonkey.com/blog/How_HTML_5_Is_Already_Changing_the_Web

Collation in SQL

Thursday, June 11th, 2009

Collation defines how data is sorted and compared in SQL.  It is a set of rules that defines case-sensitivity, accent sensitivity, width-sensitivity etc.  The most common use of collation is in case-sensitive search using SQL query. Let’s see how it proves to be useful with case-sensitivity.

Normally, it is impossible to perform a case-sensitive search in SQL. For example, see the following queries:

SELECT * FROM myTable WHERE myCompany=’QBurst’

SELECT * FROM myTable WHERE myCompany=’qburst’

Both queries will produce the same result when they are executed.  But there are lots of cases where we want to differentiate the result based on search string case.

The necessity for this type of search has greatly increased,  so Microsoft introduced a feature known as “Collation”. With collation, we can redefine the search scenario at the database level (rewriting the default collation of SQL server set during its installation).  For the previous example, if we want to get results for “QBurst” only if we search with string “QBurst” and with no other case combination, we should write the query like:

SELECT * FROM myTable WHERE myCompany=’QBurst’ COLLATE SQL_Latin1_General_Cp437_CS_AS

Here the only thing you may not be familiar with will be “SQL_Latin1_General_Cp437_CS_AS “.  This string is called Collation Name.  Microsoft defines different combinations of collation names, with the combinations produced by using various supporting languages for accent-sensitivity and also with case-sensitive/case-insensitive options. You can have a detailed look on more collation names here:

http://msdn.microsoft.com/en-us/library/ms144250(SQL.90).aspx

http://msdn.microsoft.com/en-us/library/ms180175.aspx

The collation can also be applied in the parent levels such as when creating databases.  The statement, CREATE DATABASE myCollationDatabase COLLATE Latin1_General_Cp437_CS_AS”, makes the whole database arranged according to the collation specified.

The same can also be extended to applying different collations for different columns in a table. The code below shows an example:

CREATE TABLE myCollationTable

{

userName VARCHAR(20) COLLATE SQL_Latin1_General_Cp437_CI_AI,

userOccupation VARCHAR(30) COLLATE SQL_Latin1_General_Cp1_CI_AI,

userCompany VARCHAR(30) COLLATE SQL_Latin1_General_Cp1_CS_AS

}

Collation can be very efficient if used in a proper way. No major limitations have been reported yet for this feature. Now, you can try it for yourself.

Happy coding!

Google Wave – 1

Tuesday, June 9th, 2009

Why do we have to live with divides between different types of communication – email versus chat, or conversations versus documents?

Could a single communications model span all or most of the systems in use on the web today,  in one smooth continuum? How simple could we make it?

What if we tried designing a communications system that took advantage of computers’ current abilities, rather than imitating non-electronic forms?

Tough questions! These questions have paved way for Google Wave. Jens Rasmussen and Lars Rasmussen wrestled over these questions since 2004. These geeks were the inventors of Google Maps and now they are ready to unleash Google Wave into the Internet. Google Wave comes in 3 layers. The product, platform and the protocol. Here, we will discuss Google Wave as a product.

Google describes Wave as “Equal parts conversation and document”. It is the next generation of e-mail. A Wave contains a complete thread of message saved in a common server. When this Wave is shared with other users, they can also get into edit mode. The interesting feature is that when a person is editing the wave, others will be able to see the edit process almost letter by letter. So this means that all of them will be able to collaborate in a wave almost instantly. Waves come with a rich text editor and several other functions that will enable the users to work on text, images, videos, maps and many more. Whenever a change is made on a wave, all the collaborators are notified. The complete history is stored within the wave.

Here is a screenshot provided by Google that gives us a first look.


Waves can therefore serve as e-mail and chat. It will work similar to wikis. The next layer ‘platform’ provides various APIs enabling waves to become a place where a group of people can work together to prepare documents, plan events, hold discussions, play games, etc. We will discuss about them in the next section.

Drupal – An Overview

Monday, June 8th, 2009

Drupal is one of the most popular content management system (CMS) used in web development. It is also called content management framework for it enables developers to extend and implement custom content management solutions. Drupal is written in PHP with MySQL as backend.

With Drupal, it is possible to develop and manage blogs, websites, portals, forums, e-commerce sites, social networking sites and many more. A few examples of popular websites developed using Drupal are www.labs.sonyericsson.com, www.jacksonville.com, www.nysenate.gov.

CMS like Joomla, Plone, Wordpress are also existent in the market but the features available in the core Drupal and its extendibility makes Drupal stand in front of its competitors. SEO is better achieved through Drupal. It also provides a number of themes and modules to choose from. Integration of various technologies with Drupal extends its capability further. Apache Solr integration is a recent accomplishment. It is done through the Apache Solr Integration module.

Drupal administration has four main components. Content management enables to manage the website content. Site building controls look and feel of the site. Custom modules and themes help extend the ability of Drupal by not restricting to the available options in core module. Roles and permissions are created in the user management section for managing access rights to different users.

The Drupal presentation is available on Slideshare.

Apache Solr Integration with Drupal

Tuesday, June 2nd, 2009

Earlier, search did not have a high priority in the sites that were developed using Drupal. Analysis reveals that the slowness and lack of smartness of the search feature have made the users loose their trust on search. The integration of Drupal with Apache Solr is changing the entire scenario now. Here in this article, I am going to give you a snapshot of this revolution.

What is Solr?

Lucene as we know, is a search engine library for enabling text-based search and is written in Java. Solr is a search server developed based on Lucene. It is easy to install and configure and it comes with an HTTP-based administration interface. Documents are first indexed through XML over HTTP. Queries are sent through HTTP GET method and search results are received in XML.

What makes Solr stand in front?

  • Faceting
  • Spell checking
  • Highlighting
  • Caching
  • Replication
  • Open Source

There are two types of search mechanisms used by dominant search engines. Navigational search uses a hierarchy structure (taxonomy). This mechanism is used by Yahoo directory, DMOZ, etc. Google, Yahoo search and other popular search engines use direct search. Both these have their own benefits and drawbacks. Recently the direct method is gaining more recognition and is evident from the growth of Internet dominance by Google and Yahoo search engines.

Faceted search is a new mechanism and it combines both the above techniques. It allows users to navigate multi dimensionally with a pool of words. Here is an illustration that contrasts faceted searching with taxonomical searching.

Lets move on to the other features. Spell checking: With this feature, the user can get search results for a given query and also get spelling suggestions at the same time. This is similar to the ‘Did you mean’ in google. The SpellCheckComponent that forms a part of Solr is designed to provide this inline spell checking of queries.

Solr provides a set of highlighting utilities with which it highlights the location of the query terms in the text of the search results. Solr caches are associated with an Index Searcher. Any item in the cache will be valid and available for reuse as long as that Index Searcher is being used.  Solr cached objects will not expire after a certain period of time and the cached objects will be valid as long as the Index Searcher is valid.

Apache Solr Project

Apache Solr Search Integration is a module that integrates Drupal with a Solr server for searching. Solr can be used as a replacement for core content search that already comes with Drupal. The module comes with schema.xml and solrconfig.xml which requires configuration. This module makes all the features of Solr available in Drupal for the development of the new site. A few websites that have currently implemented Solr using this project are AOL, Drupal.org, Netflix, CNET, CitySearch and GameSpot.

Links for further study

http://lucene.apache.org/solr/

http://drupal.org/project/apachesolr

http://www.ibm.com/developerworks/java/library/j-solr1/#ibm-pcon

http://www.ibm.com/developerworks/java/library/j-solr2/#resources