Sunday, 8 March 2009

An Ode to OpenSource

-Akshay Ranganath

Last week, in our office, we were working on building an application that needed some graphs and charting capability. Lots of options came up, from Flash, to Silverlight, CSS, AJAX and so on. However, when the timelines got clearer, we had to look for something that was fast and already doing most of the work..

The way we went about deciding on the solution and building a small prototype was a reveleation on how entrenched open source has become – and how we have started to take it for granted. Here's the story..

Graphing

The primary requirement was generating graphs. We had options like JfreeChart, CSS based charts, some RUI components like Flash and Silverlight.

Java based tools were too heavy for us. We wanted something to plugin with Apache web server. We did not need another app server – even though they may be free. This effectively rendered most options out – and we did not have time to explore option of changing technology from LAMP stack to Java/J2EE based stack.

Enter Google Charts – Its a free HTTP API. You just send data to be charted in a pre-defined format and the Google server returns you a nice graph as a PNG image. Just embed it and behold – your site has ability to draw charts! No excel, no complicated libraries. What's more – you canconfigure many things:

  1. type of graph – bar, pie, line
  2. colors for graph
  3. scales – especially for line charts to appear nice
  4. title for graph, legends and so on
and all for free. Development time for graphs – reduced to 0!

UI
Next question was how to provide a rich UI for generating these graphs. There were lots of answers like writing our own XhttpRequest to using Yahoo UI, Jquery and so on.

Finally, we settled on Jquery. It is simple, easy and very light. Compared to Yahoo UI's MNs of size, this entire library is just one file and provides ability for:
  1. DOM manipulation
  2. AJAX calls
  3. Simple effects like hide, display, etc.
Again – cost is zero and development is 0!

Environment
Next was the question of environment. Server we'd already decided was Apache. So again, cost is zero.. (Well, I was getting good at suggestion these zero cost solutions :-)

IDE
Next came the decision of what to use as IDE. Although we could have done a bit of R&D on this, we simply chose Eclipse since the installers were already available.

Test Environment
Since we were learning Jquery and testing it, we wanted a brower that could point out any Javascript errors and in an easy to debug manner. We also wanted to do a multi browser test – just to ensure that it worked correctly. So, we got hold of Firefox and Google Chrome. Both have a very helpful JS debugger (Firebug in Firefox is every developer's dream come true!) Safari too is free so we just got hold of that too..

So finally..
The result of all these solutions was that we managed to get a small protoype taking user input, sending data to Google, getting the chart and displaying it. This entire application took just about 4 hours of development time – most of which was spent in installation of software! It was amazing that so much could be accomplished with just a plug and start model. We did not have to invest time or money in getting any of the actual functionality to work – we just focused on the business problem of getting the right data for graphing. Everything else was just open sourced!

I was amazed at how we could achieve this all – and never give it a thought. So, I just wanted to say a big “Thank you” to all the people who took pains in developing such helpful software and publish it out so that the entire world could use it for their needs.

OSS rocks!

PS: We tested our application on Ubuntu and this blog was written on OpenOffice – something I totally forgot while writing the blog.. amazing isn't it how you get used to the OS being non-Windows and OpenOffice just makes you feel so much at for MS Office users (at least for most part!)

Wednesday, 28 January 2009

Ubuntu & Chrome - Dual Attack on Microsoft?

-Akshay Ranganath

Today, I was just going through some of the popular news items on Digg and found some interesting articles.

Microsoft which has been the leader in desktop OS and the browser market (despite alternatives) is now suddenly in the midst of a dual modal attack. Until now, the competition to MS was more ideological - GNU movement that defined what is *free* but failed to provide any alternative that anyone could use.

However, with Google Chrome and Ubuntu OS, the stranglehold of MS is reducing - or so says most of the sites. Here's some interesting facts that I found:

Ubuntu

An article in NYTimes talks about Mark Shuttleworth, the founder of Canonical, the maker of the Ubuntu OS. Citing on its usage, philosophy and business model, the article says:

More than 10 million people are estimated to run Ubuntu today, and they represent a threat to Microsoft’s hegemony in developed countries and perhaps even more so in those regions catching up to the technology revolution.

The technology research firm IDC estimates that 11 percent of American businesses have systems based on Ubuntu. That said, many of the largest Ubuntu customers have cropped up in Europe, where Microsoft’s dominance has endured intense regulatory and political scrutiny.

Canonical also receives revenue from companies like Dell that ship computers with Ubuntu and work with it on software engineering projects like adding Linux-based features to laptops. All told, Canonical’s annual revenue is creeping toward $30 million, Mr. Shuttleworth said. That figure won’t worry Microsoft.

But Mr. Shuttleworth contends that $30 million a year is self-sustaining revenue, just what he needs to finance regular Ubuntu updates. And a free operating system that pays for itself, he says, could change how people view and use the software they touch everyday.

The company’s model centers on outpacing Microsoft on both price and features aimed at new markets.

Google Chrome
In a separate article on the blazingly fast development cycles of Google Chrome, an article in InternetNews.com says, "Google first released Chrome in September of 2008 and has issued 18 releases spanning both its dev and stable channels."

To top it, Google has quickly upgraded the WebKT toolkit used in rendering by the browser. But, a more serious dent to Microsoft is the creation of a Google HTTP Stack. This HTTP stack totally bypasses the Windows based WinHTTP rendering the browser mode cross-platform. Google is slowly making the browser more and more independent of the underlying platform..

Compare this with a single note on what Microsoft has been doing lately (from NYTimes ):

Microsoft had an estimated 10,000 people working on Vista, its newest desktop operating system, for five years. The result of this multibillion-dollar investment has been a product late to market and widely panned.

References

http://www.nytimes.com/2009/01/11/business/11ubuntu.html

http://www.internetnews.com/dev-news/article.php/3795366/Latest+Chrome+a+Step+Closer+to+Linux+Mac.htm

Google Chrome is now off beta

-Akshay Ranganath

As per the Google Blog dated 11th Dec, Google Chrome is now off beta.

Frankly though, I am so used to FF that Google Chrome never really registered with me. I did use it more as a fancy thing for a few days and then sort of forgot. How was it with you guys? Any ardent fans of Chrome out there?

One thing that is not clear is if users will need to reinstall the new code or if the browser automatically updates itself. I did not see anything happening to my browser at home. If Google does not support such an automated update it would be a pity since people have sort of come to expect such updates now.

As an aside, Adobe has released Adobe AIR, that lets rich internet applications (RIA) to run outside the browser.
Read more at: http://www.adobe.com/products/air/

Sun released an alternative to Flash/Flex and Silverlight called JavaFX. Read more at: http://www.sun.com/software/javafx/ . Here's a nice post that does an analysis of this new product. Sun being so late into the RIA game, the feeling is that it may not be of any use at all!

Updated after reading the comments…

Writing on the post and responding to comments, I just realized.. We has so many sites that are not cross browser compatible. If there were enough people who are not getting utilized, this could be a wonderful project to take up. It would give us an ability to:


1. Understand the complexity of cross browser support. In our project, we could estimate for anything but this one aspect. Cross browser is such a horrible beast to tame and help is relatively tough to find. Unless you've faced it and solved it, there is no help. And unfortunately, most times, there is no logic in the solution


2. Showcasing capability: By making our own sites cross browser would be a great show case to any client if they ask for our credentials in supporting multiple browsers.

Any team out there interested in this initiative :-)??

PiWik v/s Google Analytics

-Akshay Ranganath

For a particular need, I had done a comparison of Piwik versus Google Analytics as a web analytics tool. Thought of sharing the same.

Points considered in evaluation

  1. Cost / TCO
  2. Development or customization time
  3. Features needed (traffic reports v/s commerce metrics)
  4. Ease of integration to other marketing products
  5. Maturity of Analytics implemenation


Advantages of Piwik

  1. All collected data within organization - if privacy is biggest concern or if extra analysis of data necessary, this helps. Assumption is that the organization has the ability to handle the scale of data loads coming in via the analytics tools.
    GA would be a SaaS model and hence, all data is hosted on Google's data centers.
  2. Open source and hence reports can be customized. Customization though would need maturity in both understanding the reporting needs in advance as well as development team's cabapility to handle PHP based tools
    GA offers only limited customization in terms. But, it does offer a lot of minor tweaks in the name of filters but completely new reports based on user's needs may not be possible.
  3. API support for pulling in data: PiWik supports exporting reporting information. This could be used for displaying something like "Top 10 picks" etc.
    GA currently does not have this feature and data export is not possible.



Disadvantages of PiWik

  1. UI is not that great. If organization wants jazzy reporting, this is not the product.
    Commerce reporting is minimal: Piwik is good for basic reports like No of visitors, referring URLs,
  2. Search engine, Search words, etc. However, it does not appear to be strong on commerce reporting. So if the client expects a lot of reports on conversion from visitor to a customer, funnel analysis / drop out rate in a multi step buying process, this tool may not be that good.
    GA on other hand has a good set of comemerce variables. The drop out and funnel analysis via Filters is proven and has been used successfully. (It too suffers from minimal customization and this where commercial products come in)
  3. Integration with external tools is minimal. GA on account of being a Google product easily integrates with Ad-Sense and Ad-words. So for an end-to-end marketing campaign (Email marketing, search engine marketing) GA offers a good tracking. In Piwik, this does not seem to be the case. Of course it can be customized but, will clients wait for development when both products are free?
  4. On technical front- Piwik needs PHP/MySQL and a server with enough disk space. This involves an investment. Compared to absolutely free storage on GA, this is still expensive<>
  5. Reporting interval used to be fixed in old version of this product. So, reporting for any customized interval (which is available in GA) may not be available in Piwik. Also, GA offers comparison reports for two time intervals which is completely missing in Piwik.
  6. Availability of support in implementatation: Pikwik assumes that you know analytics and need only a tool. It does not offer any documentation on what is analytics and what to measure.
    GA on other hand offers lots of documentation and most importantly, paid consultants are available who can actually design the implementation strategy using the tool. For Pikwik, all you get is only the PHP based support on making the code to work - nothing on how to use the product itself.

Google updates Google Analytics solution

-Akshay Ranganath

Google recenty announce bundling of more Enterprise class features into its Analytics package (See Google Analytics blog at http://feeds.feedburner.com/~r/blogspot/tRaA/~3/428822828/more-enterprise-class-features-added-to.html)

In short, the new features added were:

  1. User Interface refresh.
  2. AdSense now integrated into GA.
  3. Advanced visualizations: Motion Charts!
  4. Custom Reports!
  5. Advanced Segmentation!!
  6. The Google Analytics API.
  7. Automatic importing of AdWords cost data into Urchin.

Of this, 6th and 7th are in private beta meaning you get it only if Google invites you to use :-(

Avinash Kaushik has written a nice post on what it means and how to use it here (http://feeds.feedburner.com/~r/OccamsRazorByAvinash/~3/428799691/google-analytics-releases-advanced-segmentation.html)

Commenting on the new features, CMS watch wrote a report on the shortcomings of the enhancements:

  • Unlike most enterprise-ready analytics tools, Google’s analytics offering lacks an ability to query against raw data, limiting in-depth analysis into segmentation behavior.
  • No API exists to support the import or export of data for third-party e-marketing package and enterprise data integration.
  • Support comes only from consulting partners, which lack the ability to make modifications on the Google back-end. And with little documentation, license-holders have come to rely on bloggers for assistance.

And it even mentioned one good thing:

businesses have come to effectively employ Google Analytics as a supplement to more robust offerings. It is especially helpful for AdWords performance metrics and campaign tuning.

(Source: http://www.cmswire.com/cms/web-content/google-analytics-shoots-for-enterprise-falls-short-001298.php)

Being stuck in project, I've not had time to see what the new features look like - planning to check it out over the weekend.

Gut feel though - Google is still catching up with the likes of Omniture. GA is still quite less customizable and the flexibiity offered in terms of user defined variable and metrics is tough to use.

Marketing campaign analysis & tracking via Google Analytics

In the world of web analytics, one of the fundamental pillars of understanding the site behaviour is through segmentation whose “is to allow your marketing/sales program to focus on the subset of prospects” (1). One of the methods of segmenting the visitors to a web site is via campaigns. It is defined in as:
A specific, defined series of activities used in marketing a new or changed product or service, or in using new marketing channels and methods (2).

To test the effectivness (and to learn) campaigns, I experimented on my personal blog. The plan was simple. I wanted to check if the readers of my blogs who come from various sources behave any differently if the reader is a friend of mine. Albeit a non-brainer thing to verify, it was an interesting thing to see how different my friends behave as target audience as compared to normal readers. So here goes the steps for setting up the campaign and the results.

Setting up the campaign
The first step in designing a campaign is to identify the goal. In my case it was to see if sending out emails whenever I publish a blog was a successful method for attracting better quality audience. A better quality audience in my case is audience who spend more time on the site and visit the site more than once.

Based on the goal, the metrics that I needed to start tracking were Visits, Absolute Unique Visits, Repeat Visits, Time on site, Pages per visit and Bounce rates. I also needed to separate visitors whom I was targeting via emails from the rest of the audience.

To segment the audience, I set up a campaign which is basically appending some special parameters at the end of URLs that can be used for tracking the visitors. To help build correct URLs for Google Analytics, Google offers a URL Builder (3) that gives a URL based on parameters that you want.

If you look at the screen, it has 4 parameters. They are:

1.Campaign source – where are the audience coming from – in case there are multiple sources
2.Campaign medium – how did they reach the site.
3.Campaign term – To see which of the multiple terms resulted the audience reaching your site. In my case there was none since it was not based on search at all.
4.Campaign content – What type of content led to audience reaching the site. It could be a text based ad on Google, a banner, a flash, etc. This can be used to identify effectiveness of multiple content types, if applicable.
5.Campaign name – A name to identify your segment of visitors

Based on this, I set of the campaign for my blog. Screen shows the campaign I setup to track visitors from this blog.
http://rakshay.blogspot.com/?utm_source=ch1&utm_medium=ch1blogs&utm_term=none&utm_content=blog&utm_campaign=collegues

Viewing the campaign
Once having setup the campaign, it was time to wait for people to start 'converting'. After sending out email about a new blog that I had written, I waited for about a month. To see the results of campaigns, go to Traffic Sources -> Campaigns.

Here you can see the results for your campaign (reported based on the 5th parameter provided above). The report can be analysed in various dimensions like the landing pages and the comparison of traffic against the entire site.

If you look at the image below, the reports very clearly show that the campaign has been a great success for the parameters that I'd defined. The average time, repeat visits and page per visit is much better than average site.

The following screen shows the performance of the various landing pages under the campaign:


The best part – since i'd sent the mail to a limited audience I can exactly calculate the marketing metric of conversion:
No of people targeted (n1) = 26
No of people converted (n2) = 13
Conversion rate = (n2) / (n1) %
= (13) / 26
= 50%
Well, considering that the average conversion from a marketing capmaign on search PPC is around 2%, the 50% I've got is nothing short of a jack-pot :-)


References:
1.Segmentation: http://www.businessplans.org/Segment.html
2.Campaign: http://www.entrepreneur.com/encyclopedia/term/82444.html
3.Google Analytics URL Builder: http://www.google.com/support/analytics/bin/answer.py?hl=en&answer=55578

The reference site for the article is my personal blog where I'd written about the funny aspects of the traditional indian arranged marriages. The URLs sent for the campaign were:

  1. Arranged Marriage Blues - Part 1: Entrapment!
  2. Arranged Marriage Blues - Part 2: The Rejection
  3. Arranged Marriage Blues - Part 3: First Meeting
  4. Arranged Marraige Blues - Part 4: Arranged Travel

Do send me your feedback on my other blog too - if you get some free time to have a look:-)

Google Chrome - A Quick Review

-Akshay Ranganath

Today, Google is launching it's new browser called "Google Chrome" as a beta in more than 100 countries. This is to be an open source browser, taking a lot from the communities of Firefox and Apple. Reasoning on the lauch, the official Google Blog says,

"We search, chat, email and collaborate in a browser. And in our spare time, we shop, bank, read news and keep in touch with friends — all using a browser. Because we spend so much time online, we began seriously thinking about what kind of browser could exist if we started from scratch and built on the best elements out there."

All this sounds correct - and good. However, but, underneath, the browser seems to be yet another appetite for Google's hunger for data. Consider this, until now, Google could track you if you were on Google Search, Blogger, Mail or one of its innumerable products. With the browser, you just don't have to be on their site. All you need is use their browser - and over a period of time, start collecting anonymous information on the browsing habits of users and fine tune the ads. Better ads, better money.

I know it is a bit paranoid that privacy may not be invaded but, if Google chose to, would it be not possible to gain this advantage?

Microsoft though should now be feeling a bit jittery - with the dominance on OS being questioned (Vista fiasco) and online document sharing sites impacting the Office dominance, the latest launch from Google must really be scaring them off!

What do you feel?

Updated on 04/09 after actually used Chrome for about 4 hours..

Why another browser?
One question on everyone's mind seems to be "Why another browser?" and "Why should Google bother about it?" Well, the answer seems to be buried in many blogs and reviews. But two things emerge:

1. Competition with MS

At a superficial level, Google wants to keep Microsoft on its toes. IE is still the market leader with more than 70% market share. Despite Firefox being popular, 13% is still a small user base. Google wants to thow its weight and push more users to the browser platform and 'disintermediate' users from the shackles of not just IE but from the clutch of Windows itself. After all when the browser can open sites like applications, users start to lose the differentiator between what's online and what's offline. So Google Documents can take over Microsoft Office and be quite nifty on any platform.

2. Switching to cloud computing

At a more depth though, Google wants to turbo charge the adoption of the cloud. As this article says:

To Google, the browser has become a weak link in the cloud system - the needle's eye through which the outputs of the company's massive data centers usually have to pass to reach the user - and as a result the browser has to be rethought, revamped, retooled, modernized. Google can't wait for Microsoft or Apple or the Mozilla Foundation to make the changes .. so Google is jump-starting the process with Chrome." Continuing on this line the author says that winning the browser war is not the strategy - it is jump starting the user adoption to a 'cloud' based mode that is the real driver behind this innovation.


A small benchmark test

Yesterday, I used the browser for almost 4 hours and came away quite impressed. Since the browser claimed to have a Javascript engine that is separe (aka Virtual machine), I loaded sites that are AJAX/JS heavy like http://g.ho.st (a web operating system) to see what happened. Firefox handled ok, IE crawled while Chrome simple dazzled. Then, I tried some (illegal) mp3 songs download. This was simply incredible. Not sure how they did it, songs of about 7 MB that would have take 2-3 minutes got downloaded in about half a minute! I am still trying to figure out if the network was somehow so good yesterday (although I dount it..)

Relief for developers

If you've executed a project where the client demands multi-browser support, I'm sure you know how hard it is to achieve. With functionality, you can somehow wrench a logic but with the browsers, it is a totally illogical and irrational trial and error that can take eons to complete.

Luckily, Chrome is based on the Apple's WebKit fore rendering the pages. So, hopefully, us developers will not be hit too hard and won't have to design one more CSS hack set for one more browser.. Yippie!

Should I use a Third party or a First party cookie

-Akshay Ranganath

In this artilce, I'd like to point out the difference between the third and first party cookies and the relative merits / demerits of both. Its based on the article by Avinash Kaushik's blog and the book "Web Analytics Demystified" by Eric Peterson. This is an important cnsideration that you should take care before starting an analytics implementation. It could determine the quality of results that you get and any privacy related headaches that may come up.

The Basics
In the world of Web Analytics, many things related to site usage is measured (generally) via cookies. According to Wikipedia a cookie is "are parcels of text sent by a server to a web client (usually a browser) and then sent back unchanged by the client each time it accesses that server". Cookies are generally of two types:

1. First party cookies
: These are the cookies that are set within the domain of the site being accessed. So, if I am using http://www.cognizant.com, a first party cookie would always be within the domain of 'cognizant.com'.

2. Third party cookies
: These are the cookies that can be set with any domain. So when accessing Cognizant, if it used Omniture for tracking would have a third party cookie set in the domain of '207.net. So in effect, a third party is a cookie that is set by a third party.

Problem with third party cookies
Generally, third party cookies are rejected by browsers (based on security settings of the browser) and most of the anti-spyware sofware.

Hence, some of the metrics that rely on cookies will be corrupt. For example, visitor measurement us dependent on the cookies. If the browsers reject them, then this metric cannot be relied upon. Note that the problem of cookie rejection is an issue with both first and third party cookies.

Another issue with the third party cookie is the visbility across domains. For example, if DoubleClick sets a cookie on http://siteno1.com would be visible even on http://siteno2.com. Such cookies are necessary for tracking ad-clicks and conversions. This is a legitimate use but, it is possible for some malacious site to set the cookie from one site and track the sites visited by the person using the browser. To avoid such problems, anti-spyware softwares strip web requests off the third party cookies.

Solution
The solution for implementing web analytics solution hence is to use rely on first party cookies. Google Analytics by default uses first party cookies. Omniture however defaults to third party cookies. You need to talk to your consultant and ensure that they switch to first party cookies and avoid getting corrupt reports.

Saturday, 28 June 2008

Short guide to using Web Analytics Solution Profiler (WASP)

Today, I was just looking at something and stumbled a nifty tool call W.A.S.P. Its a plugin for Firefox and stands for Web Analytics Solution Profiler. Freely downloadable from http://wasp.immeria.net, this tool can give you the metrics being collected from your site - and the actual analytics tool being used on that site.

For someone using tools like Google Analytics (GA) this is a big boon. This is because tools like GA did not have any type of debugger. So, if you implemented a solution, you had to wait until the next day to see if whatever you did was right. Unlike Omniture, there was not 'debugger' tool where you could instantaneously see what you was the information being collected and passed for the report generation. With W.A.S.P. all this could change...

Installing WASP
Intaling the tool is just like any other plugin install on Firefox. Just go to the website http://wasp.immeria.net and choose the tool. It gets installed as a plugin on your browser and simply restart the browser to get the tool working.

Using WASP
Once the tool is installed and active (which it is by default), it automatically starts collecting information about the websites you visit. So if you open a page which has analytics code on it, it automatically displays a notice at the bottom. For example, in the screen shown, the site is using Google Analytics. If you want to examine the details, double clicking on it will open the plugin with the details of the site (shown as the left panel in the screen).

The left panel that opens up will display all the parameters being passed to the analytics tool. This itself would be of tremendous help in debugging the implementations. What is still better is the way the variables have been explained in simple language. To use this, just choose some variable and it will display the name of the variable, the value and a short explanation about what information this variable is collecting. For example, in the screen attached, it shows that the variable 'utmdt' is collecting the value from 'Document.Title'. This I feel would help immensely for beginners. You don't have to refer too many documents. All you need to do would be implement analytics code, use the tool and start tweaking the solution.



Conclusion
The tool is nifty to use, easy to understand and install - and light. It can help in getting quick result in detecting what values you are capturing and verifying if it is correct. Of course, the caveat applies that you are using a tagging based solution. If you are using a log analyzer, the issues of debugging still remain. For a tag based solution, this is a great tool for both development teams and analytic consultants.

Sunday, 16 March 2008

phpMyVisites: A Short Review

-Akshay Ranganath


Lately, we've been conducting a lot of tools evaluation for a new client. One of the things that we were looking was to see if any Web Analytics tool could help us in readily getting the reports for our client. Here's a short synopsis of our reporting needs and a mapping to phpMyVisites.

Reporting needs of client

Our client wanted to gather some information on the usage pattern for their intranet site. They wanted to know roughly how many people were accessing the site and the machine configuration of the users. In summary, the main needs were:

  • What are the most heavily accessed pages?
  • What is the total no of people who visit the site?
  • What is the Browser, OS and Flash version on the machines from which the users
    are accessing?
  • Trigger emails of the reports at set periods
  • Make the reports available to be displayed elsewhere

Constraints

The main constraint we had was: No data for reporting should go out of the client network. The information being gathered was on an intranet and hence, client wanted nothing to be sent to external vendors. This ruled out the primary vendors like Google Analytics, Omniture.

The second constraint was on cost. Since the reports needed were quick and dirty, there was no outlay to spend too much (or nothing) on the tool to be used.

The third constraint was the ability to tag. Since most of the products being used within their intranet was PHP / Java based, they were confident that a small change to footer or header of all pages was no issue.

Our Solution

Based on the issue, we suggested phpMyVisites. This is a small and nifty tool that provides various statistics. The main features are:

  • Tagging based solution. So, no need to rely on Log files.
  • Page view and Visit statistics. This would provide information on the load and
    the quality of visitors.
  • Top entry and exit pages
  • New v/s returning visitors
  • RSS feed for the reports
  • PDF exporting capability
  • Emailing ability for the reports.
  • "Heat Maps" - a new feature that showed the places on the screen where most users were clicking.

Implementation steps

The solution is very easy to install and implement. It needs PHP, Apache and MySQL. After that, just unzip, create a database, invoke the extracted package as a Web Application - and just follow the screen. The setup takes about 10-20 minutes. Reports can be generated in under 30 minutes. For our test, we did the following:

  • Installing the tool on a Red Hat EL4 server
  • Setting up tracking on PhpMyAdmin tool
  • Tracking the blog software, Pebble

Pain points

The main pain area is its need for graphics library. For the graphical reporting to work, this tool needs PHP-GD2 libraries. As per documentation of PHP, this is bundled with PHP4.3 onwards. Despite having this version, we could not find the module.

Repeated install failed and the debugging has takes us more than a day. While trying to get it working within the constraints of company's intranet, getting any updates or dependencies resolved is time consuming. Hence, it would be better to try the install at home environment and then work in office.

Conclusion

The tool is a nifty piece of reporting that start telling you about your visitors and their browser information in under an hour. Just make sure that this is what the client wants. It is basic in its reporting as well as graphics capability. No Ajax and no Google Analytics like fancy reports and charts. But, for a reporting need, it gets the job done - and fast.

Project status

Currently, we have proposed the tool but, waiting to see if the client accepts the same. If it were purely upto me, I'd have this tool as a starting point on analytics but, switch to something more powerful in due course of time.

References

Saturday, 26 January 2008

Help please: Which Linux distro is best for mom and dad?

-Akshay Ranganath


My Problem

Well, as usual, my desktop running Windows XP got infected by virus and died yesterday (Apparantly, AVG did not help). I was about to re-install XP on it when it dawned on me that ever since I'd installed XP, I was having trouble with the machine.

You see, my machine is an old Pentium, 555 Mhz with 192MB RAM. It takes eons to run XP and crashes with Windows defender, anti-virus, auto-updaters and a host of other software that my parents never knew existed. Everytime I am not at home or at onsite, the machine would end up getting infected. My parents who were trying to dip their feet quite hesitantly into the shores of internet would be then frightened. They'd believe that it was them to blame for the crash.. and totally give up using the computer. Hence, the thought, why not install Linux on the desktop and help them?

My problem though is that I am not sure which distribution to use. Before embarking on that let me give you the skill level of my parents

Parents skill level

Basically, both mom and dad have almost never used computers. The only keyboard they were happy to use was the remote for TV - that too to change channel and reduce volume. Now-a-days though, Mom has learnt to send SMS. Dad manages to read the missed call on the Call registry of mobile. Apart from this, the skill level on computers includes ability to switch on, switch off the computer, type on notepad and sometimes managing to send an email (if the email URL is bookmarked). With the childrental (as in parental) guidance, they can chat.

Requirements from OS

Knowing the fear of computers that parents have, important things for the OS are:

  • should be easy to use with a UI similar to XP - at least, the menu should be on left-bottom with On/Off feature being easily identifiable
  • a browser (guess Firefox is the best - i could always use an IE skin to make it look similar to what they know)
  • small program for creating documents (well, this is more of an overkill, but it is definitely something they could learn)
  • a chat program to integrate with GTalk - if I am not in India, I could (just about could) make them use the chat software to talk to them

That's about the requirements from the OS. With this in mind, I want your help in identifying a good disto to use.

Potential options

Ubuntu: I have used Ubuntu but, felt that it needs a bit more of CPU and RAM to work properly. Also, the GNOME interface is a very HUGE learning curve for parents. So it is a definite no-no!

Fedora: Again, it is quite resource intensive and would probably not work on my desktop. Although, I've not used it a lot, from the look and feel, I could configure KDE - again, will it work on my machine?

Help from Internet: I did read this article but, the guy's parents seem to be quite familiar with computers and manged to migrate to a (unnamed) Linux system. Not sure if it'd work in my case!

I also took the Linux Distribution Chooser but - the quiz seems to believe that the person installing the OS is the end-user. Since this is not the case, the results were not all that helpful.

I also read the article Choosing Desktop Linux Distro but, I'd like a second opinion…

Help Please!

And so, I am writing this blog - could you the readers of the blog help me out with this dilemma - what distro would work for my situation? Please let me know which of the one would serve the purpose. Thanks!

Note:

I'd originally put this post on our internal corporate blog. From some really helpful FLOSS enthusiasts, I got the following comments:

..try out Zenwalk Linux distro ( www.zenwalk.org ). It is pretty light-weight and doesn't need a high configuration at all..

PCLinuxOS ( download it..its worth it) or Dream Linux ( should be available with jan LFY issue) ..A new kid is alinux( peanut linux formerly). screenshots at http://alinux.org/linux-screenshots.html

Did you give Xubuntu a shot? I haven't ... but it is supposed to be pretty low on resource requirement, atleast lower than Ubuntu

"Linux Mint 4 " Is the OS which works Out of the box with Gui Better than Xp and Vista,It will have all Proprietary Codecs Installed and Most common Drivers Installed By Default. It's Built with Ubuntu as a base and Some Good Packages Like Mint-Install , Mint-Update which make Automatic updating simpler than Xp / Vista.

I heard of Something Called Puppy Linux For Low end Desktops , try to google for it for its features, and Also Vector Linux Specially made for low end pentium processors and ram

Well, in the lowest memory max usability area, Damn Small Linux is the best. Its all of 50 MB but contains browser, text editors, music players, etc.

..http://featherlinux.berlios.de/applications.htm

i suggest PClinuxOS. simple, does the job and fits well. Even vectorlinux is a better choice for your parents. there are others like linuxMCE, MEPIS if you want to try. If you want to have large application base, go with traditional (G)ubuntu or CentOS.

Thanks for the great suggestions guys! Looking at the help, I had tried PuppyLinux (review follows). Xubuntu would not boot - and when it did (just 2 times), it did not detect my mouse - so I could do nothing much. I keep getting the error - "Unable to load system description tables" and then some out of memory error. After the second error, the comuter just hangs and does not boot at all.

Short Review of PuppyLinux

PuppyLinux seems to be a really light-weight and useful distribution for really old machines. The total download size was just about 98 MB. At about 1/7th of a CD's limit, this was impressive. I did not actually install t - but, I did try from the LiveCD boot. Here's my opinion on the distro:

Pros of PuppyLinux
1. Amazingly small size
2. Comes nicely with a pre-packaged browser and email client by SeaMonkey. Never knew that it was a derivative of Mozilla - so, it was quite impressive.
3. Default install comes with AbiWord, an excel-type program, calculator, themes, wallpapers..
4. Four different games!!! (How on earth did these guys fit all of this in???)
5. Two different X managers - Xorg and Xvesa. Xvesa works like a breeze and makes your old machine feel like it is the top-of-line latest one!

Cons
1. UI is not exactly elegant. At times, feels more like UI for kids...Especially, the icon of a small pup for the 'Start' button
2. Mouse detection seemed to work only during even numbered booting - on 1st, 3rd and 5th time, it failed to detect
3. Distro says it has ability to save session information to make LiveCD boot faster - but, the save feature failed on all times.
4. Not sure of the continued support for project - it looks more like an effort by one person. (my gut feel, not verified thoroughly)

My Verdict
I'd recommend it for some really old system which desperately needs very small and robust OS. For my needs though, it would not exactly suit mainly because of the non-elegant look-and feel.

Thursday, 17 January 2008

Tutorial: Analyzing trends through Web Analytics

-Akshay Ranganath

After a long break from the field of analytics, I am back to it! I was just waiting for the data to be collected on my blog to take this further.

In this article, I'll try and explain the importance of trends and how you can derive valuable actionable (and curious) data from the metrics. The way the article is written is how the thought process went on in my mind. So, it's not like a tutorial but a pointer on "how to think analytics"!

Methodology

All the data for this blog has been take from my personal blog titled Life Unraveled. The blog has been in existence for since 2004. The analytics tool that has been used is Google Web Analytics.

Questions addressed

The trends addressed are for the following two main metrics:

  1. Visitors who arrived from Referring Sites (1)
  2. Visitors arriving through an organic search (2)

Two time periods were used for comparison:

  • Period 1: November 1st to December 15th
  • Period 2: December 16th to January 15th

I know the two periods are not the same - but, I realized that only after I'd collated the metrics! So, please bear with me. Ideally, the periods should be of equal duration.

Following is the results from the data collected. Please see the attached excel sheet for the collection of complete data.

Referring Sites

Referring sites mainly have been Orkut and Blogger. So the comparison is for the three:

Metric Overall
Orkut
Blogger
Visits 36 (8) 16 (4) 9 (1)
Pages/visit 2.39 (1.12) 1.79 (1) 2.78 (1)
Avg Time on site 5 m 11 s (7 s) 2 m 39 s (0) 8m 59 s (0)
% New visits 47.22 (75) 68.75 (75) 0 (0)
Bounce rate 66.67 (87.5) 68.75(100) 77.78 (100)

Overall, this category has shown a four-fold increase in the number of visit and about 2 times improvement in the length of stay on site. The loyalty too has increased with fewer and fewer people 'bouncing-off' the site. All of this is good. The questions to answer here are:

1. Blogger has given me 9 visits with an average time of 9 minutes on the site - these guys are really interested in my site. But, who are they? And how did my blog feature on the blogger's site? If I can crack this, I'll be able to increase the volume and my audience.

2. Orkut has started to perform well. The feature of adding the blog RSS feed to the Orkut profile has proved to be a success. Yet, considering that I have almost 100+ contacts and I am still getting just 16 visits from Orkut (with about 10 new visitors), it is not so good. Somehow, the positioning of the feed URLs does not seem to be very prominent or visitors to Orkut are just interested in scrapping me and nothing else. I need to do more marketing of my blog on Orkut - after all these are the people who know me well - and technically should be on my blog for a longer duration of time!

Search Engine Referrers

Search engine and google are synonymous and this was true on my blog too. For the entire period of Nov 1st to Jan 15th, just one query had come from AOL - and this was the one I had tried! All of the visitors who entered the blog through search had used Google.The metrics for users entering from Google looked like this:

Metric 1st Nov - 15th Dec
16th Dec - 1st Jan
Visits 50 169
Pages/visit 1.28 1.45
Avg Time on site 0m 26 s 1 m 50 s
% New Visits 94 93.49
Bounce Rate 90 79.88

The overall number of keywords too had increased from 43 to 133. My blog had suddenly been noticed by Google. The best part is the combination of 'time on site' and 'bounce rate' combination. It shows that a visitor once having landed on the blog spent an average of 2 minutes (at least gave me a chance!) instead of simply moving away - as was happening in the previous time frame. The obvious question was - What were the keywords that were sending so many people to the site and how were they performing?

The search keys and the performance is attached as the excel sheet. If you look at it, I've classified it as the top 10 search keywords. The top 10 have been split into two groups:

  • top keywords by visits and
  • top keywords by average time on site

The reason for this classification was to gain a better perspective over the performance of the search terms. Just because more people land on my site by entering a particular keyword does not tell me much. But, patterns of key words where people entered a particular search key - and stayed on my site for a long time: these are the type of audience that I need to chase. Others, I need to improve.

Search Keyword analysis

The results for the search keywords are here in the excel sheet.

Analysis for period Nov 1st to Dec 15th

From the keyword analysis for the first period, (Nov 1st to Dec 15th), two things stand out:

  1. The term chankya neeti has performed very well - it has brought in 4 visits. On an average, these visitors have been on the blog for about 5 minutes. This implies they liked the search result and read the blog.
  2. By the 4 term, the average time on site drops to 0. This implies people were not happy with the results and they left almost immediately after hitting the site. Most of these search has been for the quotes on the book By the river Piedra, I sat down and wept. Somehow, the blog is not displaying the expected result.

Analysis for period Dec 16th to Jan 15th

Comparing this with the next period, there is a drastic change:

  1. The total no of search keys have increased from 43 to 143. Almost 30 of the key terms have given me an audience who have spent at least a minute on the blog - a drastic improvement!
  2. The most successful key (high visits + longer time) have now changed. Now they are for the quotes from the book The Zahir , etc.
  3. Comparing keys sending most visits v/s keys that lead to longer time on site, it is revealing that top quality key-terms have been one-off. Rather than the blog appearing consistently for a particular key, people are discovering the blog by chance. This is a good way to identify keys for Search Engine Optimization.

Some of the improvements that I could think of were these:

  1. People search 'alchemist' were disappointed. They did see the quotes from the book - but it is not organized. Hence, they left the blog.
  2. Top quality results have been for those blogs where the title and the URL are meaningful. For example, the book review blog for Social Intelligence has the title Book Review: Social Intelligence and the URL as http://rakshay.blogspot.com/2007/12/book-review-social-intelligence.html. By being consistent it has got a good quality audience

The above metrics then implied that my blog had started to get a better attention from Google - since searches were more often throwing up my blog. Yet, some of the keywords were not leafing audience who liked the site. This implied either that the content was confusing google or it was not optimized for the right kind of keywords. So, now, I have to read through the blogs, check the title and URLs and optimize the blog so that it starts to gain a better performance.

Conclusion

The pattern analysis for two time-period for just a personal blog threw up a huge list of questions and some startling results. Imagine how it could unlock the areas for improvement if this had been a commercial grade high-visibility web site!

Just before I sign off - I found that there were 9 visits from a same person in Tech Mahindra reading all the blogs regarding matrimonial.. hmm. i wonder who this was? And - one person from Millington, NJ searching for my name on google had landed and remained for almost 10 seconds on my blog! Any clues who these people were?? :-)

Glossary:

Referring Sites: The web site where a link to the current blog was placed. Users clicked on this hyper link and arrived at my blog

Organic Search: Process of entering a search keyword and arriving at a site by clicking on one of the search results. This is used to compare against the paid search.

Reference site for analytics

Life Unraveled - http://rakshay.blogspot.com

Web Analytics results(excel sheet) - http://rakshay.googlepages.com/webanalytics.xls

Article: Lessons on corporate blogging

-Akshay Ranganath

In his article, Lessons from Corporate Blogging , Nicholas Carr, the author of the controversial paper, 'Does IT Matter ' puts in his thoughts over corporate blogging. Here's what he has to says:

  1. Set some sensible and hygienic ground rules - don't be too stifling but, at the same time, don't allow anything and everything on the corporate blog
  2. Remember that a blogger can create a huge audience - and the blog is associated with the blogger. Not the corporate. So when the blogger moves, the blog moves. The corporate could have some potential repercussions.
  3. Align the blog with the business strategy. Don't blog for blogging sake. Dell being a 'direct-to-customer' leverages listenting to its customer through the blogs.
  4. When getting started, try with a narrowly focused blog - and then open the flood-gates. Apple successful did this.

Check out the complete article at BusinessWeek.

Reference:
Lessons in Corporate Blogging . What your company can learn about keeping an online journal from the likes of Dell, Microsoft, and Apple

What my guts tells me about future of media?

-Akshay Ranganath

There was a wonderful article on how where the Media as a space is headed. This is an article by a VC about how he sees his kids use the new media and what he can derive from their usage.

In short, he feels:

  1. DVDs will be big mainly for the TV shows - it delivers more bang for bucks than movies.
  2. Movies are cool in theatres - still
  3. Books are still read - the old way. Reading online is still not a comfortable idea. Surprisingly magazines are a huge hit and they should be growing more..
  4. Radio and Newspapers are not so important anymore. Sure people use them a bit - but, they are not the primary source for entertainment and news respectively.
  5. Social Networking is big, games on all kinds of devices are big and teens have no problems to seamless switch between devices.

The tile of my post is a paraphrase of the article.From the Indian experience, here's what I feel will be happening in India:

  1. DVDs are now getting big - mainly due to Laptops, DVD players and most importantly, Moser Baer's chape DVDs. Considering tickets in Bangalore now cost anywhere from Rs 200 to Rs 500, its a big burden on the family. Maybe it's affoardable for a Double Income No Kids (DINK) family, but, for others its a no-brainer decision to go for DVD. Considering that we are now getting DVDs of latest movies (I got "Jab We Met" DVD just 2-3 months after the release) it is going to be a big business for movie makers.
  2. Books are still read - if in doubt just check the pirated books available on the foot paths!
  3. Games are in and so is FM radio. Yes - we are a bit late in catching up with the personal entertainment field - but, lately, Mobile devices have turned into personal music systems. Just see the people plugged into music in any of the BMTC buses.. iPod though is still rare. Unless you are a Cognizant employee, you'll probably not be sporting one :-)
  4. Adoption of email and internet is growing - but driven by different factors as compared to West. From the way my parents use internet for surfing matrimony sites and contacting prospects, I beilive the older generation is adopting technology more for fulfilling the traditional filial responsibilities rather than for simply staying in touch. Similarly, they are still not too comfortable with FM radio - preferring the "K" soaps on Telly, Breaking News on NDTV, et. al and newspaper for all opinions. Considering the profliage of news channels and coupled with never ending analysis, they are simply digging their own grave by driving away people who want to get a general feel of happenings - fast.
  5. Orkut is the best Social Media site. Facebook is a fab. LinkedIn is gaining ground. Recruiters are now targeting prospects via Orkut. This could act as a big turn off if the trend continues.
  6. Mobile phone usage which was a big fab is now turning into more of a utility - and hence, the Average Revnue Per Subscriber (ARPU) could reduce. So, Mobile phone companies will push features like collaboration gaming, song downloads, etc more.

Well, these are my thoughts at the beginning of the new year. Do let me hear your thoughts.

Reference:
What My Kids Tell Me About The Future of Media - http://avc.blogs.com/a_vc/2008/01/what-my-kids-te.html

Monday, 24 December 2007

A Resounding accolade to Open-ness!

-Akshay Ranganath

In the hard-headed economically oriented and prestigious magazine, The Economist, Open Source has come in for a lot of praise. Read the article on predictions for the year 2008 with regards to adoption of Linux based machines by enterprises. Sample this: Asus Eee comes at a nifty price of just $ 400 - pre-loaded with Open Source tools along with Linux as the OS.

Compare this to a $ 1,000 PC that comes with Business editions of Windows Vista with added costs for procuring Microsoft Office, Exchange et al. and the money seems significant. The article concludes saying:

"Pundits agree: neither Microsoft nor Apple can compete at the new price points being plumbed by companies looking to cut costs. With open-source software maturing fast, Linux, OpenOffice, Firefox, MySQL, Evolution, Pidgin and some 23,000 other Linux applications available for free seem more than ready to fill that gap. By some reckonings, Linux fans will soon outnumber Macintosh addicts. Linus Torvalds should be rightly proud."

Amen from FLOSS!

Reference:

Three fealess predictions - http://economist.com/daily/columns/techview/displaystory.cfm?story_id=10410912

Saturday, 8 December 2007

Malacious help on Linux - and how to avoid it!

Today, I read this intriguing article on dangerous or malacious code on Ubuntu. The article was quite an revealeation in terms of how someone can ensure that your life with Linux is destroyed!

The post talks about some really malacious commands that were provided as solution to questions on various Ubuntu formums. They were cleaverly disguised as simple steps for solviing dialy computing issue while the ulterrior motive was to simple make life miserable for the poor hapless soul using the forum to seek solutions. The post makes you aware of the danger of seeking online help from unknown entities. Although the help on forms are not as bad as getting infected by virus, it dows play upon one main problem - the issue of trust.

Linux/Unix traditionally has been developed from communities and an open forums. Since no formal service agreements generally exist, help is often sought and obtained from communities. If the some malacious users of the very same communities turn against the users then, it does tend to become an issue. Of course, it is wrong to blame the entire community for a few malacious users but, it does suggest one problem of the Open Source model. The issue being raised is, on an average, you get good solutions but, never trust everyone. An implying issue is - how do you know whom to trust and whom not to.

As the very same post mentions, a simple solution is a wait-and-watch approach - wait for sometime to see anyone else responds with similar help of raises concerns before jumping onto to make the change. Other solutions could be:
1. Wait for some posts to appear on reputed blogs - at least a person who maintains a long time, well visited blog will not post malacious help
2. Try and get help from Linux documentation project () or the web site of your distribution - be it Red Hat, Ubuntu, etc. These guys generally maintain the forums to ensure malacious intent is not spread.
3. Post queries on multiple places and then see if you get similar responses. If something looks suspisiously different, raise a flag.

Of course all of this is time consuming but, being safe is better than losing the entire hard-drive! Maybe this is where an idea can be taken out of Microsoft's MSDN community. If something can be created like this, a really trust-worthy site could be developed where users can be relatively well assured of getting decent help.

Reference:
Ubuntu - Global Announcement: http://ubuntuforums.org/announcement.php?a=54

Why resourcing is difficult for Web Analytics?

Lately, I had to take sessions on Web Analytics to multiple user groups. The types of questions that were asked and the focus from the groups opened my eyes on a problem that we'd never realized till now - identifying the right ‘fit' of people for Web Analytics.

Come to think of it: When you have a Java project, you look for a Java resource. When you have a .Net one - you get a .Net person. But, when you have a Web Analytics implementation project, what do you do? The straight forward answer is - get a person who knows Web Analytics analytics. The question is, what is meant by *knowing* Web Analytics?

Web Analytics - Congruence of Technology and Business
The main problem in narrowing on Web Analytics skill set is that it is inherently different from the traditional technologies or Verticals. To implement an analytics solution, say for a client like Amazon.com, understanding of just Amazon's business model would not be enought. On the other hand, understanding of just the Web Analytics solution is also not enough. A knowledge of any tool will just provide details on how the tool by itself works.

To actually understand and work with Web Analytics, we'd ideally a need a candidate who is:

  1. Good with one of the Web Analytics tools
  2. Has a business tilt of mind, especially in identifying what things if measured add value to a client

The second point is nothing but an ability to uniquely identify the KPIs for the client's business being driven out of the Web Site. The KPIs could be anything from number of people buying a book (Amazon) or number of people signing up for download of a new White Paper (Lead Generation by News Distribution Sites). A person who can match the tools provided by the Analytics vendor with the measurement requirements of the customer is what we should be looking for.

Current issues
The issue we have now with Cognizant is that we have three different sets of people none of whom are really fitting into the role. We have:

  1. Developers who are completely focused on the web analytics tool itself - the way it works and the parmaters it provides
  2. Business Analysts who know the client's business but, are unaware on what the Analytics tools can and cannot do
  3. Architects who lose themselves into the intrcacies of implementation of the tool itself rather than providing customer solutions

(I was bombarded by implementation of Omniture Web Analytics product by architects in one of the session when the session was all about how to use the tool!)

So, the problem that I foresee is that we have people who have a view on just one aspect of the solution and none of whom are able to envisage the complete analytics package providing value to customer. This is the need of the hour and something that needs to be addressed

My Suggestion
To help overcome this issue, my suggestion would be:

  1. Train a batch of freshers and BAs on the Web Analytics products - focus on what the tool can do initially. Then, train the freshers on the implementation aspects.
  2. Try and identify people who envisage solutions and train them on designing Analytics solution. Ideally, these are the hands-on exprienced associates - people who have ideally had a stint at onsite and are in the position of tech lead for the projects. The reason for this category of people is two-fold:
    1. They have seen how customers think and understand how to think along the lines of customer
    2. They are sufficiently hands-on and know what is the problem being solved rather than diluting the problem definition.

Well, I've not got a batch to train as of now in Bangalore but, I do hope to get this type of group whom I can build for future projects!

Sunday, 4 November 2007

How to design website to be web analytics friendly?

-Akshay Ranganath

Last week, we received a few requests for implementing Analytics code on over 1000 pages of a client web site. It was while breaking our heads over the sheer amount of mundane task that we realized on the potential of making this process a lot more easier.

Background
Now a days, almost everyone wants to have analytics code implemented on their site. Given that Google is offering it totally for free, who would not want to use it?

So, first thing to do is start with the assumption that your site is going to have an analytics implementation at some point of time. If you see various products out there, the basic things of most products are:


  1. a small javascript code asking for insertion of a vendor provided script. This will be s_code.js for Omniture SiteCatalyst. For Google Analytics, the file will be urchin.js

  2. another piece or a same piece of code that follows this initial include line for capturing the variable that needs to be reported on. For this purpose, you have multiple option, depending on the product being used:

    1. Omniture SiteCatalyst: Use the custom variables

    2. Google Analytics: I am yet to learn this!




I am assuming that you want to implement a basic analytics solution on the web site. This is the case of most people. (I know it is a generalization but, since this industry is in a nascent stage, there is a lot of information that can be gleaned even with this level of implementation).


To help accommodate this, the pages of the web site should have two important features:

  1. A include line at the top of the file, just after the <body> tag. This line in turn can insert the necessary JavaScript code needed for Google Analytis or Omniture SiteCatalyst.

  2. A shorter code snippet for pulling in the various custom parameters.



To explain this concept, I'll use the example of Omniture SiteCatalyst. Suppose, you have a news publishing website and you need to measure the following:
1.Page name – s.pagename
2.Section Name – s.channel
3.Headline, if applicable – s.prop1
4.Name of author, if applicable – s.prop2
(Paramters after '-' are the Omniture SiteCatalyst variable)

What I would suggest is a simple implementation of placing the necessary information in a DOM accessible format on the rendered page. So, for example, if the details could be designed as follows:
1.<title></title> can contain the correct page name
2.rest of the details could be put in <div></div> tags
So, my final rendered page had the details in a format like:

<div id='section'>Latest news: Sports</div>
<div id='headline'>Man U win Championship Leage – yet again!</div>
<div id='author'>John Brown</div>

Then, we could write a generic JavaScript to pull in the values. The possible pseudo-code would look like:

function getArticleName(article) {
if article requested is 'Section' then {
check if element called section exists
[document.getElementById('section')]
if yes, then return this value
}
}

The final page for could be rendered in a very generic format:

s.pagename = document.title
s.channel = getParameterName('section');
s.prop1 = getParameterName('headline');
s.prop2 = getParameterName('author');

and so on..

Since this is a generic function, it can be easily added in all pages as it is. To ensure the correct usage, it would be a good idea to insert this code just before the tag.

Implementation example
Suppose you are using .Net then the master page concepts fits nicely into the scheme of things. Add the line for including the Javascript (s_code.js or urchin.js) in the master page.

Then, include this master page in all your ASPX pages. And that's should get you a foundation.

Then, design a short javascript having the four lines mentioned about and include it in all your pages just before the end of body tag. As a worst case, the javascript could be empty and do nothing. Still, the pain of updating each page in future is resolved.

The other option could be to use a master footer page. This option would make life a lot more simple.

Conclusion
So, you see implementation of analytics, at least the basic one can be made a lot more easy and painless with a few bit of code designed into your system. Trying to do this after everything is done could be a bit of a pain and unnecessary wastage of effort.

Friday, 2 November 2007

7 Web Analytics Sins - White Paper by ClickTracks

-Akshay Ranganath


Read this nice article on the 7 Web Analytics Sins from ClickTrack. The 7 sins are:

Sin #1: Simple Visitor Counts
Learn the factors that can potentially skew visitor data.


Sin #2: Search Term Popularity
Understand why marketers must concentrate on the quality of visitors a keyword delivers, rather than the quantity.

Sin #3: The Linear Funnel
Learn the reasons why traditional sales funnels can lead to dangerous assumptions.

Sin #4: Data Overload
Know why it’s important to be able to separate interesting information from actionable information.

Sin #5: Relying on Absolute Number
Understand the reason why it’s more important to concentrate on trends instead of absolute numbers.

Sin #6: Relying on Top 10 Lists
Learn how getting stuck in your top 10 referrers can cost you long tail opportunities.

Sin# 7: Technicolor Report
Understand the reason why the way that information is displayed can have a huge impact on ease of use and perception.

For more information visit ClickTracks White paper at http://www.clicktracks.com/downloads/7-web-analytics-sins.pdf

Monday, 29 October 2007

Case Study - How to analyze a Web Analytics Report?

Akshay Ranganath



What to see in your Analytics Report?

Once you have for the Analytics Code onto the site, what do you start to measure? Here’s a short article on it with Google Analytics and a Blog on Ubuntu Linux as an example.

The site used for recording is our own groupMAGNET blog, http://groupmagnet.blogspot.com/.

Reports from Dashboard

Visitor Count

The very first report on the site reports on the number of visits to the web site. (See article on definition of Visit).

So, in the above screen shot, on the 16th of October, I received 89 visitors to my website. For the range from Sep 28th to Oct 28th, this is the highest number. For the period of I’ve also got 213 pageviews.

The question that should come in to mind now is: Why such a sudden surge?

Content Analysis

When I see that that on October 16th there were so many visitors, I checked the Top content report. It showed something like this:

This page shows that for the 213 page views, 128 were received from just one page. This page is having a URL ending in “3-Months after Ubuntu”. So, this is the page that has created such a huge surge in the page.

Since I know that most people landed here, I want to now know if they actually found the page useful. To verify this, I invoke the report for the specific page by clicking on the first URL shown in the sceen shot above. This results in a page of the following format:

So, this page is telling me that:

  • On an average, people read this page for 3:32 minutes. This is a very good time considering that the article is really small.

  • But, it also tells me that 99.21% of the users bounced. This means that after reading this article, the visitor to my site navigated to some other web site. This means:


    • I am offering something that is of use to a lot of readers (the huge number of views) BUT

    • My site is not offering a range of solutions to keep the users hooked on.

Hence, if I were to run huge ad campaigns, etc for some other customers, it could not be a big advantage.

The next question that comes to mind is: How did people land on my site?

How do people reach the site?

To answer this question, go back to the first page – the Dashboard and look at the following report (TrafficSources Overview):

This simple report has the details that shows the mechanism by which people are landing on my site.

So, it says that the most number of users landed on my blog via Referring Sites. A referring site is any site that has a link to this blog. (Sites like Google, etc are treated as a special case and reported in the Search Engines).

Hence, my web site is famous not because a lot of people reached through Google Search but, some particularly important source is referring to my site. Who is this site? To see this detail, click on the view report link.

Here the details shows that the top traffic sources are Ububtuhq.com and Digg.com sites.

Conclusion

From the above discussion, we see that the article “3-months after Ubuntu” has drawn a lot of viewers from the sites digg.com and ubuntuhq.com. Knowing the history of what had happened, I can now conclude that:

  • Digg.com and UbuntuHq.com attract good quality viewers for topics related to Ubuntu Linux

  • These sites (digg.com and ubuntuhq.com) also have ability to target users who are specifically interested in a particular topic (Ubuntu Linux)

  • If I have anything to say on Ubuntu, it is probably a good idea to link the article from digg.com and ubuntuhq.com since it gives me viewers who are actually reading my material. (Coupled with the fact that I got around 10 comments, it also means that they actually read the contents and try to understand it too!)

PS: Google Analytics is a free tool. Anyone with a Gmail Id can get the necessary Javascript code for implementing Google Analytics.