<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.buzzillions.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Buzzillions Blog » Tech</title>
	
	<link>http://blogs.buzzillions.com</link>
	<description>What we do for your reviews</description>
	<lastBuildDate>Tue, 15 Nov 2011 01:32:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.buzzillions.com/buzztechnology" /><feedburner:info uri="buzztechnology" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><geo:lat>37.766529</geo:lat><geo:long>-122.39577</geo:long><item>
		<title>Buzzillions Reviews 2 for iPhone Is Here!</title>
		<link>http://feeds.buzzillions.com/~r/buzztechnology/~3/qcMtGsBg9dY/</link>
		<comments>http://blogs.buzzillions.com/2011/09/02/buzzillions-reviews-2-for-iphone-is-here/#comments</comments>
		<pubDate>Fri, 02 Sep 2011 19:45:32 +0000</pubDate>
		<dc:creator>Danny</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[buzzillions]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[iphone app]]></category>
		<category><![CDATA[ipod touch]]></category>
		<category><![CDATA[itunes]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[mobile shopping]]></category>
		<category><![CDATA[reviews]]></category>

		<guid isPermaLink="false">http://blogs.buzzillions.com/?p=5628</guid>
		<description><![CDATA[Introducing Buzzillions Reviews 2 for iOS (iPhone, iPod touch and iPad) We&#8217;ve been working behind the scenes to bring a new Buzzillions experience to the Apple iOS (previous version here), and as of this summer, it&#8217;s finally here!  With Buzzillions Reviews 2 for iPhone, iPod touch and iPad, you get all the best Buzzillions features [...]]]></description>
			<content:encoded><![CDATA[<h3>Introducing Buzzillions Reviews 2 for iOS (iPhone, iPod touch and iPad)</h3>
<p>We&#8217;ve been working behind the scenes to bring a new <a title="Buzzillions" href="http://www.buzzillions.com/" target="_blank">Buzzillions</a> experience to the Apple iOS (previous version <a title="Buzzillions Reviews v1" href="http://blogs.buzzillions.com/2011/03/08/buzzillions-iphone-app/" target="_blank">here</a>), and as of this summer, it&#8217;s finally here!  With <a title="Buzzillions Reviews 2 for iPhone, iPod touch, and iPad on the iTunes App Store" href="http://itunes.apple.com/us/app/buzzillions-reviews/id408984527?mt=8" target="_blank">Buzzillions Reviews 2 for iPhone, iPod touch and iPad</a>, you get all the best Buzzillions features &#8211; like product search, ratings histogram, pros &#038; cons, review face-off, and of course, the *reviews* themselves &#8211; but with a cool new interface that highlights the clean Apple iOS experience.  In addition, we&#8217;ve added a new barcode scanning feature (powered by <a title="RedLaser" href="http://redlaser.com/" target="_blank">RedLaser</a>) that quickly allows you to retrieve product reviews with the press of a button &#8211; perfect for in-store shopping!</p>
<h3><strong>Buzzillions Reviews 2 In Action</strong></h3>
<p>Already know the product name?  Search from over 2 million products on Buzzillions.<br />
<a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8625.png" target="_blank"><img class="alignnone size-full" title="Search any product" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8625.png" alt="Search any product" width="186" height="279" /></a> <a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8627.png" target="_blank"><img class="alignnone size-full" title="Get the results" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8627.png" alt="Get the results" width="186" height="279" /> </a><a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8626.png" target="_blank"><img class="alignnone size-full" title="Choose a product" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8626.png" alt="Choose a product" width="186" height="279" /></a></p>
<p>Need quick answers?  Skim the ratings histogram, pros &#038; cons and review face-off.<br />
<a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8630.png" target="_blank"><img class="alignnone size-full" title="See the ratings histogram" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8630.png" alt="See the ratings histogram" width="186" height="279" /></a> <a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8628.png" target="_blank"><img class="alignnone size-full" title="See the pros &#038; cons" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8628.png" alt="See the pros &#038; cons" width="186" height="279" /> </a><a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8629.png" target="_blank"><img class="alignnone size-full" title="Read the review face-off" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8629.png" alt="Read the review face-off" width="186" height="279" /></a></p>
<p>Shopping in the store?  Scan a barcode and read from over 16 million product reviews.<br />
<a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8632.png" target="_blank"><img class="alignnone size-full" title="Scan a barcode" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8632.png" alt="Scan a barcode" width="186" height="279" /></a> <a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8631.png" target="_blank"><img class="alignnone size-full" title="Get the result" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8631.png" alt="Get the result" width="186" height="279" /> </a><a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8633.png" target="_blank"><img class="alignnone size-full" title="See the review snapshot" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8633.png" alt="See the review snapshot" width="186" height="279" /></a><a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8634.png" target="_blank"><img class="alignnone size-full" title="See all the reviews" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8634.png" alt="See all the reviews" width="186" height="279" /></a> <a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8635.png" target="_blank"><img class="alignnone size-full" title="Read a negative review" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8635.png" alt="Read a negative review" width="186" height="279" /> </a><a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8636.png" target="_blank"><img class="alignnone size-full" title="Read a positive review" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8636.png" alt="Read a positive review" width="186" height="279" /></a></p>
<p>Buzzillions Reviews 2 also features browsing products by category, checking prices, sharing by email and managing your favorite products list.<br />
<a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8611.png" target="_blank"><img class="alignnone size-full" title="Browse products by category" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8611.png" alt="Browse products by category" width="186" height="279" /></a> <a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8598.png" target="_blank"><img class="alignnone size-full" title="Share a product by email" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8598.png" alt="Share a product by email" width="186" height="279" /></a> <a href="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8596.png" target="_blank"><img class="alignnone size-full" title="Manage a favorite products list" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/IMG_8596.png" alt="Manage a favorite products list" width="186" height="279" /></a></p>
<h3>Available in the iTunes App Store</h3>
<p><strong><a title="Buzzillions Reviews 2 for iPhone, iPod touch, and iPad on the iTunes App Store" href="http://itunes.apple.com/us/app/buzzillions-reviews/id408984527?mt=8" target="_blank">Try Buzzillions Reviews 2 for iPhone, iPod touch, and iPad, available in iTunes now</a></strong> &#8211; we think you&#8217;ll love it.</p>
<p style="text-align: center;"><a title="Buzzillions Reviews 2 for iPhone, iPod touch, and iPad on the iTunes App Store" href="http://itunes.apple.com/us/app/buzzillions-reviews/id408984527?mt=8" target="_blank"><img class="size-full wp-image-5635 alignnone" title="Buzzillions Reviews 2 for iPhone" src="http://blogs.buzzillions.com/wp-content/uploads/2011/09/buzz-app-image.jpg" alt="Buzzillions Reviews 2 for iPhone" width="578" height="411" /></a><br />
&#8220;16 million product reviews in your pocket!&#8221;</p>
<img src="http://feeds.feedburner.com/~r/buzztechnology/~4/qcMtGsBg9dY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.buzzillions.com/2011/09/02/buzzillions-reviews-2-for-iphone-is-here/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blogs.buzzillions.com/2011/09/02/buzzillions-reviews-2-for-iphone-is-here/</feedburner:origLink></item>
		<item>
		<title>Customizing Google Website Optimizer Using AJAX</title>
		<link>http://feeds.buzzillions.com/~r/buzztechnology/~3/deWK3-yOKYE/</link>
		<comments>http://blogs.buzzillions.com/2010/01/04/customizing-google-website-optimizer-using-ajax/#comments</comments>
		<pubDate>Tue, 05 Jan 2010 03:12:40 +0000</pubDate>
		<dc:creator>Lauren</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[The Buzz]]></category>
		<category><![CDATA[multivariate]]></category>
		<category><![CDATA[testing]]></category>
		<category><![CDATA[websiteoptimizer]]></category>

		<guid isPermaLink="false">http://blogs.buzzillions.com/?p=3468</guid>
		<description><![CDATA[File this post under: Technical Nerd stuff for the .001% of you out there who might be interested. For those of you who may not know it, Buzzillions makes its money in part from our users clicking through to retailer websites from various sections of our product pages. Users arrive on Buzzillions, select products, read reviews [...]]]></description>
			<content:encoded><![CDATA[<p>File this post under: Technical Nerd stuff for the .001% of you out there who might be interested.</p>
<p>For those of you who may not know it, Buzzillions makes its money in part from our users clicking <a href="http://www.buzzillions.com/reviews/canon-powershot-g10-digital-camera-reviews#bz-model-wtb" target="_blank">through to retailer websites from various sections of our product pages.</a> Users arrive on Buzzillions, select products, read reviews and continue on to one of our retailers to purchase. We want to satisfy the user by providing useful buying options when they are ready to buy and satisfy our merchants who are always desiring more of our above-average converting traffic. As part of an effort to maximize these clicks and conversion rate, we embarked upon <a href="http://en.wikipedia.org/wiki/Multivariate_testing" target="_blank">Multivariate Testing</a> using <a href="http://google.com/websiteoptimizer" target="_blank">Google&#8217;s Website Optimizer</a>, a framework that has many attractive features &#8211; chief among them being &#8220;its free&#8221;. Varying the content and measuring the success or failure of a tweak or series of tweaks to our user interface in attracting clicks is the name of the game.</p>
<p>Traditionally (in the web world that means in the last year or so), Website Optimizer is used to inject test content into a page dynamically via javascript. The content is served up from Google&#8217;s side after we set up our tests and tell it what to inject into our page. Could be a different-looking button or it could be an entire chunk of a page. This is tricky when you want to test a section of a page that is dynamic and has many repeating areas. From what I&#8217;ve seen most developers are working around it by serving up all the variations in their HTML and then using either css or javascript on the Website Optimizer side to either show or hide the content variations.</p>
<p>Problem is, page performance (size, speed) for users and keyword density for Google take a negative hit when you add the variations to the code. Doesn&#8217;t amount to much if the variations are small (button appearance, small text changes) BUT the toll could be very negative if your variations bloat your HTML by, say 25-50% like ours were. So we needed to come up with another way of doing things, especially since we had a lot of variations to test and very little time to test them in (sound familiar, software developers?).</p>
<p>After banging our heads against the wall for a few days, we came up with something that fit the bill (note that we did create an internal server side testing framework but it wasn&#8217;t multivariate and didn&#8217;t have statistically sophisticated reporting). Since our Where To Buy section is the one that is the most heavily tested and also the heaviest in terms of page weight and number of variations BUT is below the fold, we decided that we should try to AJAX the page section onto the page dynamically after the page loaded. The benefit being that it would have no negative impact on our site performance in terms of page size, speed or keyword density &#8212; all metrics that matter to our users and Google, especially during the busy holiday season for us. To accomplish this, we would need to create a backend web service and hook it up to several javascript components &#8211; the <a href="http://developer.yahoo.com/yui/" target="_blank">YUI Javascript Library</a> which we use to create and retrieve our AJAX call, our own javascript for manipulating the AJAX&#8217;d data once returned, and the <a href="http://peter.michaux.ca/articles/javascript-template-libraries" target="_blank">Trimpath Library</a> for some front-end templating to make it all look pretty and seamless.</p>
<p>This combination of technologies allowed us to use a free and sophisticated tool such as Google Website Optimizer, retain the dynamic complexity of our page delivery all the while preserving page speed, size and keyword density. The team consisted of one backend engineer to create the web service, a designer to work up the variations, a business owner to shepherd the project and winnow the variations to a manageable size and a front end engineer to glue it all together and set up the Google Website Optimizer test itself.</p>
<p>Leading up to the 2009 Holiday season, we tested over 200 versions of our product page to maximize buying options for our users and clicks to our merchants. We were able to create a variation (variation #86 to be specific) that showed a DOUBLING of the click through rate to our merchants (without any sacrifice to the conversion rate). The click through rate growth was actually 60% once we installed variation #86 permanently before the Holidays started (we assume this discrepancy is due to the statistical wobble inherent in the multivariate reporting). Still, a 60% increase in click through rate was great news for our users (who found more buying options) and great news for our merchants (who received more traffic at the same above average conversion rate).</p>
<p>Here are some more details about how to integrate the above technologies into your site:</p>
<p>Since Google&#8217;s Website Optimizer code is required at the very top of the HTML to work effectively and because (for performance reasons) we load all of our javascript at the very end of the page just like any other website that is aware of performance&#8217;s impact on the user, we had to come up with a way of making Website Optimizer aware of what our javascript components were doing. To do this, we came up with the idea of having Website Optimizer poll for our components. The code that went inside of Website Optimizer was super-simple:</p>
<p>&lt;script&gt;</p>
<p>function poll() {</p>
<p>if (typeof BZGWOREADY==&#8221;undefined&#8221; || !BZGWOREADY) {</p>
<p>setTimeout(&#8216;poll()&#8217;, 1000);</p>
<p>} else {</p>
<p>bZ.wtb.gwo.fetchData(&#8216;variation1&#8242;, &#8216;variation3&#8242;, &#8216;variation9&#8242;);</p>
<p>}</p>
<p>}</p>
<p>poll();</p>
<p>&lt;script&gt;</p>
<p>This simple javascript function basically tells Website Optimizer to look for a javascript object called &#8220;BZGWOREADY&#8221; that lives at the very end of the javascript on our side of the fence; if it doesnt find it, it waits for one second and then looks for it again. Pretty basic actually.</p>
<p>Then, at the very end of the page after all of our javascript has loaded which deals with the AJAX call, the Trimpath templating and all the other javascripted parts of our test content, we instantiate the object that Website Optimizer is looking for simply like this:</p>
<p>var BZGWOREADY = {};</p>
<p>Instantiating the BZGWOREADY object like this tells the Website Optimizer code that we are ready to make our AJAX call and get the ball rolling &#8211; fetching and formatting the data and telling our javascript which variations to use (in the example above, the 3 parameters passed to the function bZ.wtb.gwo.fetchData which lives inside of the javascript on &#8220;our&#8221; side tells our code which variations to use).</p>
<p>Using this technique can be time-consuming in terms of development, but if you are concerned with page bloat and keyword density, you might want to check it out. Might be worth it for you. Have fun.</p>
<img src="http://feeds.feedburner.com/~r/buzztechnology/~4/deWK3-yOKYE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.buzzillions.com/2010/01/04/customizing-google-website-optimizer-using-ajax/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://blogs.buzzillions.com/2010/01/04/customizing-google-website-optimizer-using-ajax/</feedburner:origLink></item>
		<item>
		<title>Endeca Discover ’09 – Buzzillions Date Book</title>
		<link>http://feeds.buzzillions.com/~r/buzztechnology/~3/1v7LgTF0uLI/</link>
		<comments>http://blogs.buzzillions.com/2009/06/08/endeca-discover-09-buzzillions-date-book/#comments</comments>
		<pubDate>Mon, 08 Jun 2009 17:38:16 +0000</pubDate>
		<dc:creator>Angela</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[date book]]></category>
		<category><![CDATA[Endeca]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://blogs.buzzillions.com/?p=1997</guid>
		<description><![CDATA[Jim is out and about again, this time representing Buzzillions at the Endeca Discover conference in Boston.  He&#8217;s doing talk about all the cool ways we&#8217;re leveraging Endeca Extend to make the most out of review content and Q&#38;A.  For updates follow us on Twitter.]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-medium wp-image-2002" title="endeca-discover2" src="http://blogs.buzzillions.com/wp-content/uploads/2009/06/endeca-discover2-300x128.png" alt="endeca-discover2" width="300" height="128" />Jim is out and about again, this time representing Buzzillions at the <a href="http://www.endeca.com/discover/">Endeca Discover</a> conference in Boston.  He&#8217;s doing talk about all the cool ways we&#8217;re leveraging Endeca Extend to make the most out of review content and Q&amp;A.  For updates follow us on <a href="http://www.twitter.com/buzzillions" target="_blank">Twitter</a>.</p>
<img src="http://feeds.feedburner.com/~r/buzztechnology/~4/1v7LgTF0uLI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.buzzillions.com/2009/06/08/endeca-discover-09-buzzillions-date-book/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blogs.buzzillions.com/2009/06/08/endeca-discover-09-buzzillions-date-book/</feedburner:origLink></item>
		<item>
		<title>Atlassian Summit presentation: Buzzillions and Jira Greenhopper</title>
		<link>http://feeds.buzzillions.com/~r/buzztechnology/~3/0z2fL6RjsTY/</link>
		<comments>http://blogs.buzzillions.com/2009/06/02/atlassian-summit-presentation-buzzillions-and-jira-greenhopper/#comments</comments>
		<pubDate>Tue, 02 Jun 2009 21:26:12 +0000</pubDate>
		<dc:creator>Jimbo</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[atlassian]]></category>
		<category><![CDATA[greenhopper]]></category>
		<category><![CDATA[jira]]></category>

		<guid isPermaLink="false">http://blogs.buzzillions.com/?p=1935</guid>
		<description><![CDATA[Hey folks,  Thanks for a great session and cheers to the &#8220;ghost&#8221; voice that brought you all back to life halfway through. Keep in touch. http://twitter.com/buzzillions Here&#8217;s the Jira Greenhopper presentation: http://bit.ly/buzzjira Good luck to JC and family in your move to Australia! Cheers, Jim]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1774" title="atlassian-summit_medium" src="http://blogs.buzzillions.com/wp-content/uploads/2009/05/atlassian-summit_medium.png" alt="atlassian-summit_medium" width="120" height="250" /></p>
<p>Hey folks, </p>
<p>Thanks for a great session and cheers to the &#8220;ghost&#8221; voice that brought you all back to life halfway through. Keep in touch. <a href="http://twitter.com/buzzillions" target="_blank">http://twitter.com/buzzillions</a></p>
<p>Here&#8217;s the Jira Greenhopper presentation:</p>
<p><a href="http://bit.ly/buzzjira" target="_blank">http://bit.ly/buzzjira<br />
</a></p>
<p>Good luck to JC and family in your move to Australia!</p>
<p>Cheers, Jim</p>
<img src="http://feeds.feedburner.com/~r/buzztechnology/~4/0z2fL6RjsTY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.buzzillions.com/2009/06/02/atlassian-summit-presentation-buzzillions-and-jira-greenhopper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blogs.buzzillions.com/2009/06/02/atlassian-summit-presentation-buzzillions-and-jira-greenhopper/</feedburner:origLink></item>
		<item>
		<title>Installing Endeca 6.1 using Puppet</title>
		<link>http://feeds.buzzillions.com/~r/buzztechnology/~3/w7nRQBhZ73s/</link>
		<comments>http://blogs.buzzillions.com/2009/05/29/installing-endeca-61-using-puppet/#comments</comments>
		<pubDate>Fri, 29 May 2009 17:27:57 +0000</pubDate>
		<dc:creator>Jimbo</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[Endeca]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[puppet]]></category>

		<guid isPermaLink="false">http://blogs.buzzillions.com/?p=1743</guid>
		<description><![CDATA[At Buzzillions, we&#8217;ve been a user of Endeca for almost 3 years.  However, we haven&#8217;t automated the installation of the software. Each time we upgraded to the next version or upgraded the hardware on an existing version, we&#8217;d have to dust off our documentation always wondering if we&#8217;d added those last minute tweaks that *really* [...]]]></description>
			<content:encoded><![CDATA[<p>At Buzzillions, we&#8217;ve been a user of Endeca for almost 3 years.  However, we haven&#8217;t automated the installation of the software. Each time we upgraded to the next version or upgraded the hardware on an existing version, we&#8217;d have to dust off our documentation always wondering if we&#8217;d added those last minute tweaks that *really* finish off the installs. Did we add the fact that we had to change the capitalization of &#8220;Pipeline.epx&#8221; to the our internal <a href="http://twiki.org/" target="_blank">wiki</a>? Probably not. But is it really necessary to automate things if Charles and Kevin have it stored in their brain? Definitely, yes. In fact, one of engineers wanted a &#8220;play&#8221; version of Endeca and 15 minutes later, he had his own sandbox to mess with.</p>
<blockquote><p>This Endeca-centered blog post is the first in an occasional series where we&#8217;ll discuss how we&#8217;re using Endeca. One of our engineers was mentioning how finding Endeca tips using Google wasn&#8217;t very easy. So here goes.</p></blockquote>
<p>We&#8217;ve got enough machines in various development and production environments that standardizing installations and being able to bring new machines online quickly has become a business necessity.</p>
<p>So during this upgrade to version 6.1, we opted to run the whole install from <a href="http://reductivelabs.com/" target="_blank">Puppet</a> , an open source server provisioning software project. We already use it to provision most of the other major software in our infrastructure.</p>
<p>I generally tell people that it takes about 4 times as long to automate a process as it does to &#8220;just do it&#8221; manually. That&#8217;s a hard pill to swallow when time spent on infrastructure has to be balanced with time spent innovating. For us, Endeca has long been one of the installs that&#8217;s done by the software engineers and not the systems team. But upgrading from 5.1.3 to 6.1.1 was the right time to automate the whole thing. So we grabbed our wiki pages, our journal entries and telnet session logs and sent them to our brave but persistent systems admin. He figured out the test cases, asked questions and probably installed Endeca over 50 times on the way to success.</p>
<p>The good news is that he can get the whole thing from a blank machine to a machine running forge/dgidx and dgraphs that have yesterday&#8217;s data and config files in about 15 minutes using Puppet.</p>
<p>Note that it helps to have all necessary files in a code repository system that Puppet has access to. We use <a href="http://subversion.tigris.org/" target="_blank">Subversion</a>.</p>
<p>If you&#8217;ve ever installed Endeca, the steps are usually included in 3 to 6 different PDF files that are in various &#8220;docs&#8221; directories. Though we&#8217;re partial to the CommerceSuiteQuickStartGuide.pdf these days. The migration steps are where it gets complicated. You generally need to work with Support to find out which files are critical and which ones are unnecessary. The various Migration Guides are fairly incomplete for a real migration.</p>
<p>Here are our steps for Migration from 5.1.3 to 6.1. Note that these steps will be slightly different than your specific steps. Really, the hardest part about the automated install is to formalize the exact ordering and dependency of all the install elements and the migration elements. The way puppet works is that at each step, you need to specify a &#8220;test&#8221; so that Puppet doesn&#8217;t run a step that it has already run before (it might be the existence of a directory or a file or the response code from the emgr_update calls). I think the phrase is making an &#8220;idempotent operation&#8221;. Also note that we use Red Hat Linux 5.</p>
<ol>
<li>Create a user account specific to the version of endeca you&#8217;re installing.
<ul>
<li> Don&#8217;t just use a username that is generic. Using one that is specific per version allows you to upgrade on the same server since you may want to add new software to a server where you&#8217;re already using Endeca. The environment variables for different versions are different so we opted to have different users since our inittab scripts run as this special version specific endeca user.</li>
<li>Puppet creates the endeca version specific user along with its profile environment variables file.</li>
</ul>
</li>
<li>Standard install steps
<ul>
<li>Create a shortcut UNIX alias to change directories to the base /endeca directory, call it $ENDECA.</li>
<li>Create a shortcut alias for your application name, call it $APPNAME</li>
<li>As the endeca version specific user,
<ul>
<li>Install the MDEX software using the silent install option. Easy. No config file needed.</li>
<li>Install the PlatformServices software using the silent install option. Here you need to decide whether it&#8217;s a FULL install (for Forge/Dgidx servers) or an AGENT ONLY install (MDEX/Dgraph only servers). Silent install file is simple.</li>
<li>Install the Merchandising Workbench software using the silent install option (or your appropriate Workbench package). Silent install file is simple.</li>
<li>Install the ContentAssembler API basically by unzipping into the $ENDECA</li>
<li>Install the DeploymentTemplate 3.0 using a silent install file. This silent install file can be quite complicated but we just use the simple options (anybody know where the documentation for the advanced options is located?). NOTE that since Endeca uses relative paths during deployment deploy, we had to write a shell script to call their shell script to get these relative paths to work in Puppet. The other installs seem to use the path that you pass in.</li>
</ul>
</li>
</ul>
</li>
<li>Migration steps
<ul>
<li>State files
<ul>
<li>To keep your N values stable between instances, you need to grab the two files located in $ENDECA/$APPNAME/data/state and move them to your new deployment application in the same directory. We keep update these files in our Subversion repository after every Forge run.
<ul>
<li>autogen_dimensions.xml.external.gz</li>
<li>autogen_dimensions.xml</li>
</ul>
</li>
</ul>
</li>
<li>Pipeline files
<ul>
<li>The pipeline is divided generally into two parts: Dev Studio files and Web Studio files.
<ul>
<li>The Dev Studio files are files that users DON&#8217;T change in Web Studio. They are generally located in $ENDECA/$APPNAME/config/pipeline and you can just copy them to the new deployment application in the same directory.</li>
<li>The Web Studio files are kept in the &#8220;ether&#8221; so you have to extract them using the &#8220;emgr_update&#8221; application. You set which files are &#8220;Web Studio maintained&#8221; by changing the &#8220;ConfigUpdate&#8221; section of the AppConfig.xml. Make an empty directory $ENDECA/$APPNAME/temp and extract the files using the emgr_update command and then copy to the pipeline directory in the new deployment application.
<ul>
<li>emgr_update &#8211;host localhost:8006 &#8211;action get_ws_settings &#8211;app_name $APPNAME &#8211;prefix $APPNAME &#8211;dir $ENDECA/$APPNAME/temp</li>
</ul>
</li>
<li>Once you&#8217;ve copied the Dev Studio files and then the Web Studio maintained files to the new pipeline then you can stuff the files into the new Web Studio.
<ul>
<li>emgr_update &#8211;host localhost:8006 &#8211;action update_mgr_settings &#8211;app_name $APPNAME &#8211;prefix $APPNAME &#8211;dir $ENDECA/$APPNAME/config/pipeline</li>
<li>If you have externally managed dimensions, you will need to ignore a warning like &#8220;warning, cannot find &lt;file&gt;, proceed anyway?&#8221; . Just say yes, it doesn&#8217;t actually need the externally managed dimension files.</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li>Data files
<ul>
<li>In preparation for the baseline update, we move our data files to the $ENDECA/$APPNAME/test-data/baseline directory. We mainly use XML files as our pipeline source files.</li>
</ul>
</li>
<li>Web Studio usernames and preferences
<ul>
<li>Copy the &#8220;webstudio&#8221; directory in the 5.1.3 $ENDECA_CONF/state</li>
<li>Remove the existing &#8220;webstudio&#8221; directory in your new deployment application in $ENDECA_TOOLS_CONF/state</li>
<li>Turn off the Endeca processes. Paste the &#8220;webstudio&#8221; directory from above into $ENDECA_TOOLS_CONF/state. Turn Endeca processes back on.</li>
</ul>
</li>
<li>Before you baseline, here are some miscellany:
<ul>
<li>By hand, migrate your AppConfig.xml from 5.1.3 to 6.1.1 (not many material changes)</li>
<li>In AppConfig.xml, change &#8220;pipeline.epx&#8221; reference to &#8220;Pipeline.epx&#8221;</li>
</ul>
</li>
</ul>
</li>
<li>Run the $ENDECA/$APPNAME/control/initialize_services.sh to setup the servers and modules explained in the AppConfig.xml</li>
<li>Run $ENDECA/$APPNAME/control/load_baseline_test_data.sh</li>
<li>Run $ENDECA/$APPNAME/control/baseline_update.sh</li>
<li>At this point, via Puppet, with NO human intervention we have installed a new Endeca master server (Forge/Dgidx). The Puppet installation for an MDEX/Dgraph server is just the user creation, MDEX install, PlatformServices AGENT ONLY install and an inittab script. Then you start the process and include the server and port into the AppConfig.xml which will configure the server the next time you run any EAC command. </li>
</ol>
<p>Send us your comments and hopefully other Endeca users will start to blog/write about the ways they make life easier on themselves or the cool things they do. The Encyclopedia (read &#8220;wiki&#8221;) part of the Endeca documentation system is also a great place to make updates and share tips.</p>
<p>Cheers, The Buzzillions Team</p>
<img src="http://feeds.feedburner.com/~r/buzztechnology/~4/w7nRQBhZ73s" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.buzzillions.com/2009/05/29/installing-endeca-61-using-puppet/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://blogs.buzzillions.com/2009/05/29/installing-endeca-61-using-puppet/</feedburner:origLink></item>
		<item>
		<title>The Atlassian Summit – Buzzillions Date Book</title>
		<link>http://feeds.buzzillions.com/~r/buzztechnology/~3/27UuJHBwP74/</link>
		<comments>http://blogs.buzzillions.com/2009/05/29/the-atlassian-summit-buzzillions-date-book/#comments</comments>
		<pubDate>Fri, 29 May 2009 15:45:59 +0000</pubDate>
		<dc:creator>Buzzillions Team</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[The Buzz]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[date book]]></category>
		<category><![CDATA[employees]]></category>
		<category><![CDATA[greenhopper]]></category>
		<category><![CDATA[jira]]></category>
		<category><![CDATA[Office]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://blogs.buzzillions.com/?p=1745</guid>
		<description><![CDATA[Our friends at Jira (a.k.a. Atlassian) are having their first ever user conference this week.  Luckily for us, they chose to host it in San Francisco, Buzzillions&#8217; hometown.  Jira is the management software we use to organize the development of Buzzillions&#8217; new features, bug fixes &#38; upgrades.  We can&#8217;t wait to mingle with other users, [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-thumbnail wp-image-1774" title="atlassian-summit_medium" src="http://blogs.buzzillions.com/wp-content/uploads/2009/05/atlassian-summit_medium-120x150.png" alt="atlassian-summit_medium" width="120" height="150" />Our friends at Jira (a.k.a. <a href="http://www.atlassian.com/">Atlassian</a>) are having their first ever <a href="http://www.atlassian.com/summit/">user conference</a> this week.  Luckily for us, they chose to host it in San Francisco, Buzzillions&#8217; hometown.  <a href="http://www.atlassian.com/software/jira/">Jira</a> is the management software we use to organize the development of Buzzillions&#8217; new features, bug fixes &amp; upgrades.  We can&#8217;t wait to mingle with other users, learn more about Atlassian &amp; generally get our geek on at the three day summit.  They&#8217;ve even invited our own Jim Morris (head honcho of Buzzillions) to speak!  He&#8217;ll be talking about how Jira&#8217;s Greenhopper plug-in helps our whole team create order from chaos.   <a href="http://twitter.com/buzzillions">Follow Jim on Twitter</a> for the inside scoop!</p>
<p style="text-align: right;">The Buzzillions Team</p>
<img src="http://feeds.feedburner.com/~r/buzztechnology/~4/27UuJHBwP74" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.buzzillions.com/2009/05/29/the-atlassian-summit-buzzillions-date-book/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blogs.buzzillions.com/2009/05/29/the-atlassian-summit-buzzillions-date-book/</feedburner:origLink></item>
		<item>
		<title>Testing new page templates</title>
		<link>http://feeds.buzzillions.com/~r/buzztechnology/~3/gPaQBYqD0dY/</link>
		<comments>http://blogs.buzzillions.com/2009/04/24/testing-new-page-templates/#comments</comments>
		<pubDate>Fri, 24 Apr 2009 23:17:50 +0000</pubDate>
		<dc:creator>Jimbo</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[new features]]></category>
		<category><![CDATA[television]]></category>

		<guid isPermaLink="false">http://blogs.buzzillions.com/?p=1555</guid>
		<description><![CDATA[We&#8217;re testing a few new page templates this weekend. New GPS page. Here&#8217;s the screen of the OLD GPS page (scroll down for OLD Televisions page): New Television page. Here&#8217;s the screen of the OLD Televisions page:]]></description>
			<content:encoded><![CDATA[<p>We&#8217;re testing a few new page templates this weekend. <a href="http://www.buzzillions.com/4294966923_nz_gps_reviews" target="_blank">New GPS page</a>. Here&#8217;s the screen of the OLD GPS page (scroll down for OLD Televisions page):</p>
<p><img class="size-full wp-image-1556 alignnone" title="old_gps" src="http://blogs.buzzillions.com/wp-content/uploads/2009/04/old_gps.jpg" alt="old_gps" width="710" height="2455" /></p>
<p><a href="http://www.buzzillions.com/4294966882_nz_television_reviews" target="_blank">New Television page</a>. Here&#8217;s the screen of the OLD Televisions page:</p>
<p><img class="alignnone size-full wp-image-1557" title="old_televisions" src="http://blogs.buzzillions.com/wp-content/uploads/2009/04/old_televisions.jpg" alt="old_televisions" width="710" height="2452" /></p>
<img src="http://feeds.feedburner.com/~r/buzztechnology/~4/gPaQBYqD0dY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.buzzillions.com/2009/04/24/testing-new-page-templates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blogs.buzzillions.com/2009/04/24/testing-new-page-templates/</feedburner:origLink></item>
		<item>
		<title>The Buzzillions iPhone App is Here!</title>
		<link>http://feeds.buzzillions.com/~r/buzztechnology/~3/2Wo1pZOaZxQ/</link>
		<comments>http://blogs.buzzillions.com/2009/01/12/the-buzzillions-iphone-app-is-here/#comments</comments>
		<pubDate>Tue, 13 Jan 2009 01:33:22 +0000</pubDate>
		<dc:creator>Tara</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[itunes]]></category>
		<category><![CDATA[reviews]]></category>

		<guid isPermaLink="false">http://blogs.buzzillions.com/?p=740</guid>
		<description><![CDATA[The other day I was in Target looking for air beds for a visitor coming in town.  While it&#8217;s easy these days to find product reviews on things like digital cameras and televisions, it&#8217;s a little trickier when you&#8217;re looking for other products.  As I stood there blinking at the choices, (varying price ranges, familiar [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=299258407&amp;mt=8 "><img class="aligncenter size-full wp-image-744" title="iphoneapp3" src="http://blogs.buzzillions.com/wp-content/uploads/2009/01/iphoneapp3.jpg" alt="" width="500" height="256" /></a></p>
<p>The other day I was in Target looking for air beds for a visitor coming in town.  While it&#8217;s easy these days to find product reviews on things like digital cameras and televisions, it&#8217;s a little trickier when you&#8217;re looking for other products.  As I stood there blinking at the choices, (varying price ranges, familiar and unfamiliar manufacturers etc.) I thought&#8230;if only there was a way I could get some advice here.  Did I need the $100 air bed with the foot pump, or would the $39 one do just fine?  While it was tempting to go home, get on the computer and see what Buzzillions had to say about it, I ended up choosing blindly.  Now I (and YOU) don&#8217;t have to.  With our new <a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=299258407&amp;mt=8 ">Buzzillions iPhone app</a>, you can (if you have one of these handy phones OR the ipod touch) download the app and be on your way to having millions of product reviews at your fingertips.</p>
<p><a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=299258407&amp;mt=8 "><img class="aligncenter size-full wp-image-769" title="iphone_three3" src="http://blogs.buzzillions.com/wp-content/uploads/2009/01/iphone_three3.jpg" alt="" width="500" height="228" /></a></p>
<p>So the next time you&#8217;re at a retailer, scratching your head as you mull over the options, you can whip out your iPhone, type in the product name and get a little guidance from reviewers like you.  Best of all&#8230;<a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=299258407&amp;mt=8 ">it&#8217;s FREE.</a> We&#8217;d love to hear what you have to say about it, things you like, things you don&#8217;t, so we can work to improve the application to make it even more useful.</p>
<img src="http://feeds.feedburner.com/~r/buzztechnology/~4/2Wo1pZOaZxQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.buzzillions.com/2009/01/12/the-buzzillions-iphone-app-is-here/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blogs.buzzillions.com/2009/01/12/the-buzzillions-iphone-app-is-here/</feedburner:origLink></item>
		<item>
		<title>Bloggers spoke…we listened</title>
		<link>http://feeds.buzzillions.com/~r/buzztechnology/~3/IvxIDfp1FIE/</link>
		<comments>http://blogs.buzzillions.com/2008/12/11/bloggers-spokewe-listened/#comments</comments>
		<pubDate>Thu, 11 Dec 2008 23:43:02 +0000</pubDate>
		<dc:creator>Tara</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[new features]]></category>
		<category><![CDATA[site search]]></category>

		<guid isPermaLink="false">http://blogs.buzzillions.com/?p=650</guid>
		<description><![CDATA[Recently we have been reaching out to bloggers, people who are passionate about saving money, getting quality products and finding the right product for them.  Some are moms who (time crunched and budget conscious) know that in order to make wise product decisions they must read reviews.  Others are simply people who write about savvy [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have been reaching out to bloggers, people who are passionate about saving money, getting quality products and finding the right product for them.  Some are moms who (time crunched and budget conscious) know that in order to make wise product decisions they must read reviews.  Others are simply people who write about savvy ways to save money, find bargains and get the best deal&#8230;something even more important in today&#8217;s economy.  We asked for feedback about our site from these wonderful bloggers and got some great insights about how to make our site even better.  When reading comments about our site on these blogs, what we noticed several times was that people wanted an improved search; a way to search within categories as opposed to one general search.  We took note of these suggestions since we&#8217;re always trying to improve your experience on the site and  we launched a feature on our site that will make searching much easier.  Take it for a <a href="http://www.buzzillions.com">test drive</a>, and tell us what you think&#8230;</p>
<img src="http://feeds.feedburner.com/~r/buzztechnology/~4/IvxIDfp1FIE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.buzzillions.com/2008/12/11/bloggers-spokewe-listened/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blogs.buzzillions.com/2008/12/11/bloggers-spokewe-listened/</feedburner:origLink></item>
		<item>
		<title>AnswerBox – A quick new way to get product answers on Buzzillions.</title>
		<link>http://feeds.buzzillions.com/~r/buzztechnology/~3/PrOs_Jg3xAA/</link>
		<comments>http://blogs.buzzillions.com/2008/12/02/answerbox-a-quick-new-way-to-get-product-answers-on-buzzillions/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 22:10:57 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://blogs.buzzillions.com/?p=607</guid>
		<description><![CDATA[As working parents with two young kids – a 7-month-old and a 3-year-old – my wife and I are all about streamlining.  We want what is best for our family, but frankly don&#8217;t have time to read through the multitude of books, websites, and blogs, not to mention the advice from friends and family (both solicited and [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal"><span style="x-small;"><span style="Arial;">As working parents with two young  kids – a 7-month-old and a 3-year-old – my wife and I are all about  streamlining.  We want what is best for our family, but frankly don&#8217;t have time  to read through the multitude of books, websites, and blogs, not to mention the  advice from friends and family (both solicited and unsolicited) to make an  informed decision about what is best for us.  It is not only time-consuming,  it&#8217;s overwhelming.  That&#8217;s why we love Buzzillions.com and PowerReviews&#8217; new  feature, AnswerBox.  Both help cut through the barrage of information to find  the <em><span style="italic;">right</span></em> advice and  products for us </span></span></p>
<p class="MsoNormal"><span style="x-small;"><span style="Arial;"> </span></span></p>
<p class="MsoNormal"><span style="x-small;"><span style="Arial;">I know we’re biased,  but Buzzillions.com <em><span style="italic;">is</span></em> the best  place for top rated products with ratings from other parents like us!   Buzzillions.com allows us to read reviews from real parents on everything from  the best baby bottles and the most reliable baby diapers to trendy gift ideas  for our 3-year-old’s upcoming Birthday.</span></span></p>
<p class="MsoNormal"><span style="x-small;"><span style="Arial;"> </span></span></p>
<p class="MsoNormal"><span style="x-small;"><span style="Arial;">However, sometimes we need specific  answers to questions and don’t have time for in-depth research.  That’s where  AnswerBox comes in.  What do other parents think about using BPA-free baby  bottles and which ones do they recommend?   What are the best sources for  “official” car seat and booster seat safety information?  How well do gDiapers  work?  We love the fact that the inserts are flushable and compostable, but do  the reusable diaper shells really keep it all in (yes, they  do)? </span></span></p>
<p class="MsoNormal"><span style="small;"><span style="12pt;"> </span></span></p>
<p class="MsoNormal"><span style="x-small;"><span style="Arial;">As you can see, we’ve got a lot of  questions.  The local baby boutique is good for some answers, but who has the  time these days and how do we know that they aren’t just trying to get us to buy  their products?  Baby books are great for one-way information, but not specific  answers.  There must be a lot of other parents out there with answers! </span></span></p>
<p class="MsoNormal"><span style="x-small;"><span style="Arial;"> </span></span></p>
<p class="MsoNormal"><span style="x-small;"><span style="Arial;">With this in mind, PowerReviews  created AnswerBox.  Our newest feature enables your customers to ask questions  about specific products and tap into a large online community of active shoppers  for answers. </span></span></p>
<img src="http://feeds.feedburner.com/~r/buzztechnology/~4/PrOs_Jg3xAA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.buzzillions.com/2008/12/02/answerbox-a-quick-new-way-to-get-product-answers-on-buzzillions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blogs.buzzillions.com/2008/12/02/answerbox-a-quick-new-way-to-get-product-answers-on-buzzillions/</feedburner:origLink></item>
	</channel>
</rss>

