Rudi Shumpert : Code By Numbers
25Sep/100

X Change 2010 – Web Analytics Conference

For those that have attended the 2010 X Change Web Analytics Conference you know that it was an amazing experience. For any that did not make it, boy did you miss out! This was once of the best conferences I have ever attended.

Even with the conference attendance being limited to a small number, I had the opportunity to meet with and have really great conversations with most of the people there. The format of the conference is unlike anything you will find elsewhere. There are no speakers, no presentations, no sales pitches. It is as the title says an exchange of ideas among the attendees. The sessions or huddles as they call them are a focused conversation with 8-14 people who are passionate about the topic at hand. Each attendee is invited and encouraged to participate in the discussion and in the huddles I was apart of, almost every person there had something to offer to the conversation.

The huddles that I was able to attend were:

  • Integrating Web Analytics and CRM
  • Do’s & Don’ts when working with developers
  • Turning around troubled Web Analytics deployments
  • Moving from short-term conversion to lifetime value
  • The myth of the “Universal” tag

Every huddle leader did a great job of keeping the conversation focused and on topic without limiting the natural flow of the conversation. And being able to listen to others in the industry that have struggled and had success in dealing with the same issues that I have faced. I was able to take plenty of notes and many take aways to put into action almost immediately.

In addition to the huddles there were multiple functions that enabled you to interact with your fellow attendees and continue the conversations from the huddles or branch off new topics with new people. The list folks I was able to meet and talk to were too numerous to list, but everyone there at the conference was approachable and eager to share their knowledge and experiences with others.

The Semphonic and Web Analytics Demystified folks really know how to put on a great event, and I am grateful to have been able to participate and I am looking forward to next year’s event already.

7Sep/106

The best laid plans of mice and men

Over the past few months there have been several great articles about the amazing projects, mentors, and students over at the Analysis Exchange.   This post is not going to be like those.   Yes, the project was for a great cause, The Peoples Charter, and the mentor Ridder Manzanet, is fantastic. The student however....... me ...... did not do the project, or the Analysis Exchange justice.   In short, I failed.

There are many excuses I could list, or hide in the shadows and hope that no one else would find out about this, but I won't.  I knew when I took on this project that I did not have the time right then to work on the project and I should have not signed up for the project, but I did.  Thankfully, Ridder, was totally committed to the project stepped in and did all of the work for the client.   I sent my apologizes on to the client, my mentor, and even to Eric Peterson.  All of which were extremely professional and really speak to the quality of the work and people contributing to the Exchange.  It is because of this quality that I wanted to write this post.  I truly do feel bad for the position that I put both my mentor and the Analysis Exchange in,  but the more I thought about it the more I felt it really echoed what happens on many, many projects out there in the real world.

Things happen, deadlines are missed, and projects fail.  That is a fact of life, not just in the confines of the measure community but in all aspects.   I can not change the things that have happened in the past, all I can do is to accept responsibility for my inability to contribute on the project and make damn sure that does not happen again.   Fail faster is a phrase you hear frequently in the measure community, now having earned that badge :/ it is time to try again.  And try again I will.  But this time I will be better prepared.  I will take more time to evaluate the project before putting my name in.  I will make sure I have the time to commit to the project.  I will strive to make a positive impact on the project.

If you have already contributed to the Analysis Exchange, thank you for all that you have done.  If you have not, don't be afraid to fail.  Try it!  If it does not go well, accept it, figure out what went wrong, fix it, and try again.

-Rudi

21Jul/102

Share This Page – On Your Terms!

Build your own "Share this page" feature!

Not too long ago I added one of the "Share this page" scripts, AddToAny, to our web site.  This seemed like it was going to work fine but this approach had 3 major drawbacks.

  1. Most of these services require you to link to their JavaScript file on their servers.  Sure this is fairly reliable but I am not a fan of this approach.
  2. Limited tracking / analytic capabilities.
  3. Cookies you can not control.

The first two issues are not huge issues, but while we were testing the site, we noticed that the scripts were adding a few of their own cookies to our users.  I understand why this is, but I did not like it and the feature was pulled.  So I tested out another one, Share This, and it did the same thing. Not only do they add cookies to your users, but they are also tracking usage of their tool on your site.  I don't blame them for this, after all they are providing this as a free service but I still do not like it.

After looking at the scripts for a while I decided that it could not be that difficult to write my own "Share this page" feature.

My goal was to create a widget to let users share the current web page without the limitations listed above.  With just a wee bit of research I found the methods needed to be able to share a page via email, Twitter, Facebook, and LinkedIn. And then track the usage of data in Omniture SiteCatalyst.

<ul>
  <li><A onClick="jsFunctionToRecordClick('Email');" HREF="mailto:?subject=#variables.emailSubject#&body=#variables.emailMessage#">Email </a></li>
  <li><a onClick="jsFunctionToRecordClick('Twitter');" href="http://twitter.com/home?status=#variables.twitterLink#" target="_blank">Twitter </a></li>
  <li><a onClick="jsFunctionToRecordClick('LinkedIn');" href="http://www.linkedin.com/shareArticle?mini=true&url=www.rudishumpert.com&title=AmazingArticle&summary=This is the best ever&source=Rudi"  target="_blank">LinkedIn </a></li>
  <li><a onClick="jsFunctionToRecordClick('Facebook');" href="http://www.facebook.com/share.php?src=bm&u=#variables.currentPage#&t=#variables.twitterLink#&v=3" target="_blank">Facebook </a></li>
</ul>

Sample links without the tracking added:

And then the JS Function: Note the JS function is specific to Omniture tracking but this could be leverage for any analytic solution with some minor tweaking.

			function jsFunctionToRecordClick(category){
				var s = s_gi(s_account);
				s.linkTrackVars="events,eVarN,propN,propN";
				s.linkTrackEvents="eventN";
				s.events="eventN";
				s.eVarN=''+category+'';
				s.propN=''+category+'';
				s.propN=''+category+' | '+s.pageName+'';
				s.tl();
				s.events="";
				s.linkTrackEvents="";
				s.linkTrackVars="";
				s.eVarN='';
				s.propN='';
				s.propN='';
			}

The feature is added to the page using a jQuery menu script that creates the same mouse-over drop down effect that the free scripts use, but you can use any sort of presentation approach that fits your web site's style.

And that is it.  You know have your own custom share this web page feature that your can style however you like and maintain complete control over what cookies are used on your site and what level of tracking you would like to get out of the widget.

14Jul/100

Creating static URL’s from dynamic pages for Eloqua

Sometimes the code... it mocks me. This was the case when working with the implementation scripts from Eloqua. I followed the instructions and by default about 98% of the tracking we needed was being accomplished. The issue I encountered was trying to get Eloqua to differentiate the content being served up on a dynamic page.

One url. page.cfm?urlVariable=1 , page.cfm?urlVariable=2, page.cfm?urlVariable=3. They all showed up as page.cfm in the reports. And while Eloqua does have features that allow you to set up a query string in the admin console, you have to assign each value ahead of time and from what I have been told by folks both inside and outside of Eloqua, you are not able to use those values for certain types of behavioral tracking and filtering.

NOTE: I claim little knowledge of the inner workings of Eloqua and have had to take the word of the support folks and the documentation I could find. If you know this to be different, I would love to hear from you.

After much time spent scouring the web I found this article on an Eloqua blog.
http://eloqua.blogspot.com/2010/05/fun-with-eloqua-and-jquery-tracking-pdf.html

The author of this blog, used a secondary tracking script from Eloqua ( elqFCS.js) and leveraged this and jQuery to auto tag links to any pdf on the sample site. Seeing this approach I was pretty sure I could use this method to meet my goal.

Step 1: Add the link to the additional JS file. It should be part of the standard implementation scripts.

 <SCRIPT TYPE='text/javascript' SRC='/elqNow/elqFCS.js'></SCRIPT>
 

Step 2: Check for the dynamic page, and if found create a "static" url to send to Eloqua.

 <cfparam name="url.urlVariable" default="">
<cfif cgi.path_info EQ "/dynamicPageInQuestion.cfm" and LEN(url.urlVariable) GT 0>
	<script>
		$(document).ready(function(){
			var fullurl = '<cfoutput>http://www.yoursite.com/NameOfYourChoosing/#url.urlVariable#</cfoutput>';
			elqFCS(fullurl);
	 	});
	</script>
</cfif>

That's it! Now inside of Eloqua in addtion to seeing a visit to /dynamicPageInQuestion.cfm you will also see

http://www.yoursite.com/NameOfYourChoosing/1

http://www.yoursite.com/NameOfYourChoosing/2

http://www.yoursite.com/NameOfYourChoosing/3 etc or whatever value you need to be able to filter on.

As of now, this is working and meets the goal / need I had. I'm curious if others have dealt with this, and if so what solutions did they come up with.

26Jun/101

Review & Thoughts: “When more is not better: Page Tags” by Eric Peterson

If you have not read Eric Peterson's latest white paper "When more is not better: Page Tags" STOP!  Go read it!  Then come back!

There are many, many blogs and folks that spend a lot of time talking about how to do analysis of all the data that folks are collecting with various tools, but there are not that many that really go into the topic of tagging, or implementation, or just data collection.  Perhaps it us because it is more technical, geeky, and flat out just not as sexy as other topics.  But this white paper really stood out for me as my main focus in web analytics is data collection.

The white paper outlined the following issues with tagging as it exists today.

In Web Analytics Demystified’s opinion, the problem with tags is three-fold:

  • Tags become a panacea, replacing sound business measurement practices
  • Tags can slow down page loading and degrade the consumer experience
  • Tags have the potential to erode data  confidence when poorly managed

I would add a fourth item to this this.   Lack of skilled staff to implement/manage tags.  Sure there are lots of companies and consulting shops that can do this for you, but most companies do not have this type of talent on staff, or they do not have full access to this type of IT resource .

Some of the causes listed in the white paper for the proliferation of tags were:
More Tags Does Not Mean “More Accuracy”
I agree in this statement, but what about the use of two tools for validation of trends, not the confirmation of numbers?  Although with the right tag monitoring tool in place the need for this would greatly diminish.

Data Confidence

  • Shoddy implementation is missing from the list.  All too often I have seen or heard of this!
  • Lack of good consistent documentation of implementation best practices.
  • Lack of internal IT help to manage the tags
  • IT has no clue what the tags do or the business requirements behind them

Load time
I have seen this first hand, and yes the tags can slow down a web site, especially when you have have multiple tagging solutions in place. ( Which is why you should track load times ;-) ) The other thing to watch out for is as more and more site use Ajax and the likes to provide a rich experience for the end user, there is a risk of double tagging a page if the developers are not careful in how they load content on a page and that can result in all sorts of wonky data.

This may all sound a bit daunting, but fear not!  The white paper has a solution for this very need.  A "Chief Data Officer"!!  The white paper does a great job explaining the responsibilities that the CDO would have, but what it all boils down to is someone to own all aspects of data collection with regards to analytics.   As a developer who is also tasked with these responsibilities I am thrilled  about this.   As sites become more complex and the tagging solutions evolve with them, the need for a technical person who can fill this role is crucial.   My hope is that companies will read and adopt this quickly.

Get Adobe Flash playerPlugin by wpburn.com wordpress themes