<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>Adam McFarland &#187; Programming</title>
	<atom:link href="http://www.adam-mcfarland.net/category/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.adam-mcfarland.net</link>
	<description>Musings of a Balding 29 Year Old Business Owner</description>
	<lastBuildDate>Mon, 06 Feb 2012 21:01:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>LockerPulse Fantasy Player Tracking Launched!</title>
		<link>http://www.adam-mcfarland.net/2011/09/13/lockerpulse-fantasy-player-tracking-launched/</link>
		<comments>http://www.adam-mcfarland.net/2011/09/13/lockerpulse-fantasy-player-tracking-launched/#comments</comments>
		<pubDate>Tue, 13 Sep 2011 16:40:21 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[LockerPulse]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2881</guid>
		<description><![CDATA[On Saturday we wrapped up and released one of my favorite projects I&#8217;ve ever worked on: LockerPulse fantasy player news tracking. My partners and I have all been avid fantasy players for years (I was in leagues where Barry Sanders and Emmitt Smith were the consensus top 2 picks!) and like all fantasy football players, we&#8217;re looking for any informational edge that we can get to help us win. Especially Sunday mornings, and especially when injuries are involved. There&#8217;s nothing worse than starting a guy who isn&#8217;t going to play. After launching LockerPulse it didn&#8217;t take us long to realize &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/09/13/lockerpulse-fantasy-player-tracking-launched/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>On Saturday we wrapped up and released one of my favorite projects I&#8217;ve ever worked on: <a href="http://www.lockerpulse.com/">LockerPulse</a> fantasy player news tracking.  </p>
<p>My partners and I have all been avid fantasy players for years (I was in leagues where Barry Sanders and Emmitt Smith were the consensus top 2 picks!) and like all fantasy football players, we&#8217;re looking for any informational edge that we can get to help us win.  Especially Sunday mornings, and especially when injuries are involved.  There&#8217;s nothing worse than starting a guy who isn&#8217;t going to play.  </p>
<p>After launching LockerPulse it didn&#8217;t take us long to realize that we had an asset &#8211; lots and lots of news being indexed &#8211; that could help out fantasy players like ourselves.</p>
<p>This project took a long time and a lot of things had to come together correctly for us to be able to launch it. First and foremost, we needed to build a relatively good search engine, something we&#8217;ve been iterating on since we <a href="http://www.adam-mcfarland.net/2010/11/14/new-lockerpulse-features-search-engine-ajax-crawling-and-custom-wallpaper/">launched our search functionality</a> last year. It&#8217;s not like we can &#8220;tag&#8221; a single feed for a specific player, as we do for our teams (i.e. a NY Mets blog is linked to NY Mets news).  So we need to contextually search articles as they come in to see if they discuss the player, and if they do create a relationship in our database that the player is linked to that article.  </p>
<p>With that in place, we then needed up to date player rosters, preferably with little maintenance on our end. We were able to use the <a href="http://developer.fanfeedr.com/" target="_blank">FanFeedr API</a> to build a roster management system so that we always had the most up to date players from all the major sports.  I spend probably 30 minutes a week maintaining it. The system queues up roster moves and I approve or reject them&#8230;just in case there&#8217;s an issue with the API and our system tries to move/delete someone who is on a bunch of fantasy teams.</p>
<p>After a few more months of developing and testing, I am really pleased with how the end product came out. To add players, you start typing a name and our autosuggest pulls them up for you:</p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2011/09/fantasy_add_1.png" alt="LockerPulse Fantasy Player Tracking - Add" title="LockerPulse Fantasy Player Tracking - Add" width="1000" height="497" class="aligncenter size-full wp-image-2888" /></p>
<p>After adding your team, you can read the news just like you do for your teams. Stories update in real-time just like in the My News section, and you can filter by sport or player just as you can filter by team or source in My News:</p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2011/09/fantasy_1.png" alt="LockerPulse Fantasy Player Tracking" title="LockerPulse Fantasy Player Tracking" width="1000" height="382" class="aligncenter size-full wp-image-2887" /></p>
<p>It also highlights in the text where your player is mentioned.  This is especially helpful for long articles where you have multiple players mentioned.  Your eyes are drawn right to the piece of text that&#8217;s important to you:</p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2011/09/fantasy_highlight.png" alt="LockerPulse Fantasy Player Tracking - Highlighting" title="LockerPulse Fantasy Player Tracking - Highlighting" width="800" height="313" class="aligncenter size-full wp-image-2884" /></p>
<p>And it&#8217;s available on our mobile site too:</p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2011/09/mobile1.png" alt="LockerPulse Fantasy Player Tracking - Mobile" title="LockerPulse Fantasy Player Tracking - Mobile" width="779" height="404" class="aligncenter size-full wp-image-2885" /></p>
<p>Because this is something that my partners and I really really want from a user perspective, it was exceptionally fun to work on for all of us. Work can&#8217;t be fun all of the time, but it&#8217;s a huge bonus when it is! </p>
<p>It&#8217;s also an important feature for LockerPulse.  As I alluded to above, we&#8217;re starting to take one of the biggest assets &#8211; our database of ~1.7 million stories and growing &#8211; and finding new ways to use it to provide value to our users.  </p>
<p>It&#8217;s amazing to step back and see how advanced of a site it&#8217;s become in such a short time.  It&#8217;s also exciting to think that we&#8217;re still quite a ways away from getting the product to where we want it to be.  As cool and as useful as I think it is now, give us another year and I think this thing will be at a whole other level.  That pumps me up <img src='http://www.adam-mcfarland.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/09/13/lockerpulse-fantasy-player-tracking-launched/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>LockerPulse Launches in the Toshiba App Place</title>
		<link>http://www.adam-mcfarland.net/2011/07/20/lockerpulse-launches-in-the-toshiba-app-place/</link>
		<comments>http://www.adam-mcfarland.net/2011/07/20/lockerpulse-launches-in-the-toshiba-app-place/#comments</comments>
		<pubDate>Wed, 20 Jul 2011 18:50:42 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[LockerPulse]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2804</guid>
		<description><![CDATA[A few months ago I received an email from SnappCloud, a company that builds cloud app stores, on behalf of Toshiba.  They were interested in including LockerPulse in an app store that Toshiba was launching.  Now, I&#8217;ll admit, I was a little skeptical at first.  I mean, just how many app stores can there be?  Then again, I figured it wouldn&#8217;t hurt to schedule a call with them, so I did. And I was really impressed.  They had &#8220;soft launched&#8221; the app store, named the Toshiba App Place and had some pretty impressive results.  They came with hard data that &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/07/20/lockerpulse-launches-in-the-toshiba-app-place/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-2809" title="LockerPulse in the Toshiba App Place" src="http://www.adam-mcfarland.net/wp-content/uploads/2011/07/toshiba_am.png" alt="LockerPulse in the Toshiba App Place" width="700" height="214" /></p>
<p>A few months ago I received an email from <a href="http://snappcloud.com/" target="_blank">SnappCloud</a>, a company that builds cloud app stores, on behalf of Toshiba.  They were interested in including <a href="http://www.lockerpulse.com/" target="_blank">LockerPulse</a> in an app store that Toshiba was launching.  Now, I&#8217;ll admit, I was a little skeptical at first.  I mean, just how many app stores can there be?  Then again, I figured it wouldn&#8217;t hurt to schedule a call with them, so I did.</p>
<p>And I was really impressed.  They had &#8220;soft launched&#8221; the app store, named the <a href="http://apps.toshiba.com/" target="_blank">Toshiba App Place</a> and had some pretty impressive results.  They came with hard data that kind of surprised me.  It also intrigued me that there were no free apps and that there were no sports apps; we&#8217;d be one of the first in both categories.</p>
<p>In addition, I was impressed by how tight the integration was on Toshiba devices.  While the app store is accessible to anyone on the web, it&#8217;s really meant for those who have purchased Toshiba computers and tablets.  Users are able to sign up for and launch web apps like LockerPulse right from the local software.  And there are <em>a lot</em> of Toshiba devices that this is being shipped on this Fall (I know numbers but I&#8217;m probably not supposed to say).</p>
<p>The integration had to be pretty tight on our end as well.  Toshiba/SnappCloud needed to be able to register and log in users from their interface.  This required LockerPulse to have a relatively robust API, something we didn&#8217;t have.  I talked it over with my partners and we ultimately decided that the free publicity, and the opportunity to work with such a big company, were too much to pass up.</p>
<p>So, I built my first API.  It took some time to build, and then probably almost a month of back and forth with their dev team to get everything to integrate perfectly, but it was well worth it, both as a learning experience for me and for the end result.</p>
<p>Last night, after a final round of QA testing during the day, SnappCloud released <a href="http://apps.toshiba.com/offers/25562" target="_blank">LockerPulse in the Toshiba App Place</a>.  They have a nice, clean, simple-to-use interface, which is a huge positive.  The audience that buys a Toshiba laptop at Best Buy is generally less tech savvy than the audience that uses the Chrome Web App store (this exposure to a more mainstream audience is another aspect that sold us on this deal).</p>
<p>We&#8217;re really happy to be the first sports app in the store.  We&#8217;ve already seen a wave of signups, which came as a nice surprise to me.  It&#8217;s my understanding that they&#8217;ll really be pushing this (and hopefully us) in the Fall when all of the new devices are flooding the markets.</p>
<p>As was the case with <a href="http://www.adam-mcfarland.net/2011/03/16/check-out-lockerpulse-on-googles-college-basketball-page/">being featured by Google in the Chrome store during March Madness</a>, this was/is some unplanned and unexpected notoriety for LockerPulse.  As in the Google situation too, it&#8217;s been really encouraging to have a large company like this contact us and work with us.  It&#8217;s another sign we&#8217;re moving things in the right direction. We haven&#8217;t really done our marketing push yet, so this kind of feels like an added bonus.  We have a solid 3 &#8211; 6  months left of development until we&#8217;re at the point where we think this thing will be ready for prime time.  That time frame has been slowed a bit by DI&#8217;s very busy Spring &amp; Summer&#8230;something you won&#8217;t find me complaining about!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/07/20/lockerpulse-launches-in-the-toshiba-app-place/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>A Milestone For Our Shopping Cart Software</title>
		<link>http://www.adam-mcfarland.net/2011/06/05/a-milestone-for-our-shopping-cart-software/</link>
		<comments>http://www.adam-mcfarland.net/2011/06/05/a-milestone-for-our-shopping-cart-software/#comments</comments>
		<pubDate>Sun, 05 Jun 2011 15:04:56 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Detailed Image]]></category>
		<category><![CDATA[Ecommerce]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2670</guid>
		<description><![CDATA[Upon finishing a programming project to improve how we manage out of stock products and then integrate it with our shipping estimates (see image above), I completed all of the major initiatives that we wanted to complete in 2011 to improve our shopping cart software that powers Detailed Image. The reason why we&#8217;re at this point and it&#8217;s only June 5th is a pretty simple one &#8211; most of the important stuff is finally finally done! We&#8217;ve built a stable, scalable, easy-to-manage and easy-to-use platform that will serve us well for years to come. There&#8217;s nothing &#8220;major&#8221; left to do&#8230;at &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/06/05/a-milestone-for-our-shopping-cart-software/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2011/05/checkout-backorder.png" alt="DI Checkout Backorder Example" title="DI Checkout Backorder Example" width="880" height="534" class="aligncenter size-full wp-image-2702" /></p>
<p>Upon finishing a programming project to improve <a href="http://www.adam-mcfarland.net/2010/04/08/managing-out-of-stock-products/">how we manage out of stock products</a> and then integrate it with our <a href="http://www.adam-mcfarland.net/2010/03/31/making-shipping-estimates-a-little-more-obvious/">shipping estimates</a> (see image above), I completed all of the major initiatives that we wanted to complete in 2011 to improve our shopping cart software that powers <a href="http://www.detailedimage.com">Detailed Image</a>.  The reason why we&#8217;re at this point and it&#8217;s only June 5th is a pretty simple one &#8211; most of the important stuff is finally finally done!  We&#8217;ve built a stable, scalable, easy-to-manage and easy-to-use platform that will serve us well for years to come.  There&#8217;s nothing &#8220;major&#8221; left to do&#8230;at least as of right now.  We&#8217;re entering a maturity stage for the software, one that I&#8217;ve never really experienced, where we can focus on some combination of data-driven small tweaks (lots of split-testing) and some crazy experimental stuff (like completely new interfaces for shopping).  </p>
<p>Out of curiosity, I went searching for the first evidence of the start of this shopping cart project.  I vividly remember the night when we decided to abandon the osCommerce platform that Detailed Image had been using in 2006/2007 and begin developing our own.  Had there been something like <a target="_blank" href="http://www.shopify.com/">Shopify</a> around at the time, there&#8217;s no way we would have ever attempted a project of this magnitude.  But the shopping cart software in 2007 left a lot to be desired, especially when it came to search-engine-friendliness.  </p>
<p>Anyway, I was able to dig up a document called &#8220;Time Frame&#8221; from July of 2007 where I outlined to my partners the development time frame for the software, in which I estimated that we&#8217;d complete and launch the site sometime in late August.  The earliest blog post that I can find, <a href="http://www.adam-mcfarland.net/sl-ye-archive/2007/08/flipping-switch.html">Flipping the Switch</a> from 8/11/2007, about dialing up my productivity to hit the launch date, mentions that we were shooting for a September 1, 2007 launch.   We eventually ended up launching on 9/7/2007 &#8211; the title of my post, <a href="http://www.adam-mcfarland.net/2007/09/06/di-up-completely-and-utterly-drained/">DI Up – Completely and Utterly Drained</a>, kind of says it all about how hard we pushed to launch.  There was a quick growth spurt right away, and after another solid year of growth <a href="http://www.adam-mcfarland.net/2009/01/05/08-grade-09-goal/">we realized that we had outgrown that current setup</a> and the entire thing needed a revamp if we were going to stay on our platform during our next big growth phase.  Starting in early 2009, Mike and I built a new shopping cart system, one that fixed most of the problems of the old one while also being compatible with many of the things the old one did right.  That launched in May of 2009, and <a href="http://www.adam-mcfarland.net/2009/05/01/the-new-detailed-image-is-live/">my launch post</a> is pretty similar to that one from 2007 in that I was totally mentally spent. Ever since then we&#8217;ve been meticulously chipping away <a href="http://www.adam-mcfarland.net/2009/09/10/our-exhaustive-shipping-project-what-we-learned-and-what-new-features-we-added/">one</a> <a href="http://www.adam-mcfarland.net/2010/02/01/new-to-di-ask-a-pro-detailer-weekly-free-product/">feature</a> <a href="http://www.adam-mcfarland.net/2010/04/08/managing-out-of-stock-products/">at</a> <a href="http://www.adam-mcfarland.net/2010/10/01/the-story-behind-the-detailed-image-mobile-site/">a</a><a href="http://www.adam-mcfarland.net/2010/11/02/testing-a-new-promo-upsell-for-the-holidays/"> time</a> up to the present.</p>
<p>If you showed me back in 2007 what we have now, my jaw would have dropped.  Both on the front end and on the back end, we have software that I believe gives us a big competitive advantage.  If you look at all of the stuff we&#8217;ve tried as a company over the years, we&#8217;ve started a lot of things, but for one reason of another have changed directions and never seen them all the way through (all of which I believe in retrospect were good decisions).  This is something that we&#8217;ve been committed to for four years now, and I think the results of this slow, iterative improvement speak for themselves when you evaluate the product as a whole and the impact it&#8217;s had on our growth.  </p>
<p>There&#8217;s an amazing sense of accomplishment that comes along with sticking with a project like this for so long.  It&#8217;s very tangible evidence of my progress as a developer and our progress as a company.  There&#8217;s also a great sense of relief that comes with being at this point.  Any time I haven&#8217;t been working on the cart, there&#8217;s been this guilt in the back of my mind that I need to get back to it because we&#8217;re still lacking this important feature or that important feature.  There was a time back when I left my job where I spent considerably more time doing SEO and web marketing for us and for our clients than I did doing any sort of development.  Looking forward, I&#8217;m excited to have the chance to push forward with the development on LockerPulse, re-introduce some of that marketing into my day (for both sites), and tackle new business challenges like hiring our next wave of employees.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/06/05/a-milestone-for-our-shopping-cart-software/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>The Joys of Internal Programming Projects</title>
		<link>http://www.adam-mcfarland.net/2011/03/26/the-joys-of-internal-programming-projects/</link>
		<comments>http://www.adam-mcfarland.net/2011/03/26/the-joys-of-internal-programming-projects/#comments</comments>
		<pubDate>Sat, 26 Mar 2011 19:32:28 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2418</guid>
		<description><![CDATA[In any job, the majority of the important work you do will go unseen to the outside world. When it comes to the programming work I do for our company, many of the projects that have been the most beneficial to us will never see the light of day. Some of the stuff I can blog about, like our inventory zone system, and other stuff is unfortunately better off kept private. Earlier this week we had our most successful Detailed Image sale ever. Any time we&#8217;re doing volume at a level that we haven&#8217;t experienced before, there are a few &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/03/26/the-joys-of-internal-programming-projects/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>In any job, the majority of the important work you do will go unseen to the outside world.  When it comes to the programming work I do for our company, many of the projects that have been the most beneficial to us will never see the light of day.  Some of the stuff I can blog about, like our <a href="http://www.adam-mcfarland.net/2010/08/23/our-improved-inventory-zone-system/">inventory zone system</a>, and other stuff is unfortunately <a href="http://www.adam-mcfarland.net/2009/08/27/the-people-that-ruin-blogging-for-me/">better off kept private</a>.</p>
<p>Earlier this week we had our <a target="_blank" href="http://twitter.com/#!/AdamJMcFarland/status/50911121326096384">most successful Detailed Image sale</a> ever.  Any time we&#8217;re doing volume at a level that we haven&#8217;t experienced before, there are a few new holes exposed in the way we do things.  In this case, our inventory management has become increasingly complex as we have products coming in and going out at a rate that we haven&#8217;t experienced before.  We&#8217;ve also picked up a lot of new products, and offered a lot of pre-orders, all adding to the complexity.  </p>
<p>This morning I made an improvement to our inventory management that should save a bunch of time for Mike with accounting, Greg when he&#8217;s placing orders with vendors, and Charlie when he&#8217;s receiving and entering orders.  I really really enjoy projects like these.  </p>
<p>When we&#8217;re building something to release on the Detailed Image site or the LockerPulse site, we have to take into account that what we&#8217;re about to release will be available on the public web, and all of the usability, security, scalability and compatibility issues that come with that.  When I&#8217;m building something for our team, I&#8217;m only building for a handful of users.  I can focus on making it as usable and functional as possible for just us.  It doesn&#8217;t have to be fancy, it doesn&#8217;t have to scale, and it doesn&#8217;t have to be compatible with all sorts of different browser/OS combinations. </p>
<p>The best part though, is that I get to see that whatever I&#8217;m building is helping them do their job just a little bit better.  When one of them tells me that feature x saved them an hour of work or prevented an error, it&#8217;s an awesome feeling.  They all do a lot to make my job easier.  This is one of the ways that I can help them out. So while I absolutely <a href="http://www.adam-mcfarland.net/2011/03/24/the-benefits-of-a-how-can-we-get-better-box/">love hearing from our customers</a>, and positive feedback from them makes me feel great, it&#8217;s never quite as satisfying as having a happy customer within our company.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/03/26/the-joys-of-internal-programming-projects/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>College News on LockerPulse: Start to Finish in 5 Days</title>
		<link>http://www.adam-mcfarland.net/2011/03/12/college-news-on-lockerpulse-start-to-finish-in-5-days/</link>
		<comments>http://www.adam-mcfarland.net/2011/03/12/college-news-on-lockerpulse-start-to-finish-in-5-days/#comments</comments>
		<pubDate>Sat, 12 Mar 2011 19:42:23 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Culture]]></category>
		<category><![CDATA[LockerPulse]]></category>
		<category><![CDATA[Productivity]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2373</guid>
		<description><![CDATA[On Tuesday morning I received an email from two people at Google asking for some vector graphics for LockerPulse. They said that they were going to be featuring it in an upcoming March Madness promotion, presumably for the Chrome Web App Store, although they didn&#8217;t specifically say so (&#8220;March Madness&#8221; refers to the NCAA basketball tournament that starts this Sunday night with the selection show, with play beginning Tuesday). This would be an awesome opportunity to promote LockerPulse, especially because we haven&#8217;t really started our full-fledged marketing campaign. There was just one problem: LockerPulse didn&#8217;t cover college sports, something that &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/03/12/college-news-on-lockerpulse-start-to-finish-in-5-days/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>On Tuesday morning I received an email from two people at Google asking for some vector graphics for LockerPulse.  They said that they were going to be featuring it in an upcoming March Madness promotion, presumably for the Chrome Web App Store, although they didn&#8217;t specifically say so (&#8220;March Madness&#8221; refers to the NCAA basketball tournament that starts this Sunday night with the selection show, with play beginning Tuesday).  </p>
<p>This would be an awesome opportunity to promote LockerPulse, especially because we haven&#8217;t really started our full-fledged marketing campaign.  <strong>There was just one problem: LockerPulse didn&#8217;t cover college sports</strong>, something that I&#8217;m not sure the Googlers realized.</p>
<p>At that moment, we were faced with three options:</p>
<ol>
<li>Tell them thanks but no thanks since we didn&#8217;t have college coverage</li>
<li>Send them the graphics but realize that when people visited the site as part of a March Madness promotion that they&#8217;d promptly click away</li>
<li>Bust ass and get NCAA sports on the site before the tournament started</li>
</ol>
<p>Of course, we chose #3.  I emailed them back with the graphics and got to work.  </p>
<p>We were planning on adding college sports soon, we just didn&#8217;t have a hard deadline.  It was a large project and Detailed Image is in the middle of it&#8217;s busy season, so we previously figured it could wait.  Now, with an opportunity like this, it seemed like a no brainer to make it happen.  We&#8217;re going to be putting a lot of time and money into marketing LockerPulse at some point in the near future, but when presented with an opportunity to make some of that happen now, for free, we&#8217;d be crazy not to jump on it.</p>
<p>This morning we launched with coverage for 73 college teams.  For the most part, they fit perfectly into the existing structure of the site.  I didn&#8217;t have a ton of time to research sources, so I&#8217;ll have to spend a few nights in the next week populating the database with some more quality news sources for each school.  </p>
<p>Just like with the <a href="http://www.adam-mcfarland.net/2011/02/16/how-our-team-pulled-together-quickly-for-todays-big-product-launch/">Meguiar&#8217;s product launch last month</a>, this was a great example of everyone working together on a tight deadline.  Mike covered a day for me in the warehouse and got me all the graphics I needed quickly. My good friend <a href="http://imagew3.com/">Tim</a>, who has <a href="http://www.adam-mcfarland.net/2010/06/28/is-google-ruining-your-life-guest-post/">guest blogged</a> on here before and is a frequent commenter, has been managing our social media presence for both DI and LP and has become an even bigger part of our marketing in the past few months.  He handled setting up associating Twitter and Feedburner accounts for all of the teams.  Which freed me up to get the teams and sources in the database, do all of the development work, and test test test.  </p>
<p>I&#8217;m not really sure what Google&#8217;s promotion efforts will result in (still waiting to find out more info).  Hopefully it will bring a bunch of attention to LockerPulse during a really popular time for college sports, which will result in more passionate long term users.  Regardless of what happens, just getting this done was a big accomplishment in and of itself.  </p>
<p>In five days we probably accomplished what would normally take three weeks at our normal pace.  Aside from eating and going to the gym, I was working every waking hour these past few days.  It&#8217;s not something I want to do all the time, but every once in a while I like it.  I enjoy the challenge.  I enjoy the singular focus.  I enjoy the feeling of seeing it all go from paper to reality in such a short time.  And I enjoy the team work that&#8217;s involved in making it happen.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/03/12/college-news-on-lockerpulse-start-to-finish-in-5-days/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Good Web Apps Take Time</title>
		<link>http://www.adam-mcfarland.net/2011/02/23/good-web-apps-take-time/</link>
		<comments>http://www.adam-mcfarland.net/2011/02/23/good-web-apps-take-time/#comments</comments>
		<pubDate>Wed, 23 Feb 2011 18:30:33 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Entrepreneurship]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2350</guid>
		<description><![CDATA[Yesterday @DHH wrote a great post on the 37signals blog titled The obsession with next. The basic premise was: Outside of a few breakthroughs here and there, most things that are good are good because they got there slowly. He also linked to the Joel Spolsky article Good Software Takes Ten Years. Get Used To it., which DHH referenced as a classic, but was new to me. I really like Joel and I&#8217;ve read a good amount of his posts and articles in Inc. over the years, but I missed this one, since, you know, I was a sophomore in &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/02/23/good-web-apps-take-time/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>Yesterday <a target="_blank" href="http://twitter.com/DHH">@DHH</a> wrote a great post on the 37signals blog titled <a href="http://37signals.com/svn/posts/2782-the-obsession-with-next">The obsession with next</a>.  The basic premise was:</p>
<blockquote><p>Outside of a few breakthroughs here and there, most things that are good are good because they got there slowly.</p></blockquote>
<p>He also linked to the Joel Spolsky article <a target="_blank" href="http://www.joelonsoftware.com/articles/fog0000000017.html">Good Software Takes Ten Years. Get Used To it.</a>, which DHH referenced as a classic, but was new to me.  I really like Joel and I&#8217;ve read a good amount of his posts and articles in Inc. over the years, but I missed this one, since, you know, I was a sophomore in college when it was written in 2001.</p>
<p>Even though it&#8217;s a decade old, it really struck a chord with me.  While I&#8217;m developing something like the <a href="http://www.adam-mcfarland.net/2011/02/19/lockerpulse-ads-up-running-version-0-0-0-1/">LockerPulse Ad Platform</a> I&#8217;m equal parts excited and stressed out.  Excited for obvious reasons. The stress comes from knowing the fact that we&#8217;re only a small portion of the way to being where we want to be with it, and nothing other than time is going to get us there.  Time to develop, but also time to analyze data and listen to the feedback from our customers.  Even with a huge budget and a lot of people, you can only accelerate so fast.</p>
<p>A few really interesting pieces from the article:</p>
<blockquote><p>You write the first version of your product, a few people use it, they might like it, but there are too many obvious missing features, performance problems, whatever, so a year later, you&#8217;ve got version 2.0. Everybody argues about which features are going to go into 2.0, 3.0, 4.0, because there are so many important things to do.</p></blockquote>
<p>This excerpt has a calming effect on me.  Like &#8220;OK, all projects go through this and it&#8217;s not necessarily because we&#8217;re potentially too small or too overworked or underfunded&#8221;.</p>
<blockquote><p>So, it takes a long time to write a good program, but when it&#8217;s done, it&#8217;s <strong>done</strong>.</p></blockquote>
<p>I actually believe that this statement can apply to web software as well.  I think there will come a time, maybe a year or two from now, when LockerPulse will be &#8220;done&#8221;.  It doesn&#8217;t mean there won&#8217;t still be work to do to keep it up to date with the ever-changing web, just that the functionality that will be useful to our core audience is finite in scope.</p>
<p>He goes on to list some of the common software development mistakes.</p>
<blockquote><p>Mistake number 1. The Get Big Fast syndrome. This fallacy of the Internet bubble has already been thoroughly discredited elsewhere, so I won&#8217;t flog it too much. But an important observation is that the bubble companies that were trying to create software (as opposed to pet food shops) just didn&#8217;t have enough time for their software to get good.</p></blockquote>
<p>Again, patience grasshopper.</p>
<blockquote><p>Mistake number 2. the Overhype syndrome. When you release 1.0, you might want to actually keep it kind of quiet. Let the early adopters find it. If you market it and promote it too heavily, when people see what you&#8217;ve actually done, they will be underwhelmed.</p></blockquote>
<p>This is what I was getting at when I wrote <a href="http://www.adam-mcfarland.net/2010/06/23/obscurity-is-your-friend/">Obscurity is Your Friend</a>.  To an extent, we&#8217;re still &#8220;keeping it quiet&#8221; with LockerPulse for a little longer.  When you have a limited marketing budget like us (or really, even if you don&#8217;t), there&#8217;s no sense in wasting it on what you know is going to be a vastly improved product six months down the road.</p>
<blockquote><p>Mistake number 5. The &#8220;We&#8217;ll Ship It When It&#8217;s Ready&#8221; syndrome. Getting good software over the course of 10 years assumes that for at least 8 of those years, you&#8217;re getting good feedback from your customers, and good innovations from your competitors that you can copy, and good ideas from all the people that come to work for you because they believe that your version 1.0 is promising. You have to release early, incomplete versions &#8212; but don&#8217;t overhype them or advertise them on the Super Bowl, because they&#8217;re just not that good, no matter how smart you are.</p></blockquote>
<p>The old adage: &#8220;<a href="http://ma.tt/2010/11/one-point-oh/">if you’re not embarrassed when you ship your first version, you waited too long</a>&#8221;</p>
<p>For web apps and web software, maybe it&#8217;s not 10 years, but it&#8217;s also not overnight.  I know for us, it&#8217;s looking like LockerPulse will probably be a 2-3 years in development before it&#8217;s what I consider to be &#8220;awesome&#8221;.  I started working on it somewhere around October of 2009, which puts us at about the 1.5 year mark right now.  We&#8217;re getting there. For many of our users, myself included, the site has improved the way they consume their sports information, and that&#8217;s pretty cool.  </p>
<p>There&#8217;s still a ways to go though, which is OK because we&#8217;ve got DI still growing and supporting us.  Which I guess is another lesson:  not expecting your web software to become wildly profitable overnight.  I think you have to have another source of revenue, be it a job or another business, to take the pressure off. While there are a few outliers for sure, most companies, 37signals included (they had clients for a number of years), have had steady growth over a long time to become immensely successful.</p>
<p>As DHH summed up nicely in his post yesterday:</p>
<blockquote><p>
It’s not only good software that takes a decade to develop, good companies do too. If you agree that’s true, it follows that you wouldn’t want promising entrepreneurs to go chasing waterfalls before they know how to paddle in the pond. Or something like that. I guess what I’m trying to say is that I want to see evolution get a chance to work its magic, but if great products and companies keep getting abandoned or bought after 3-5 years, there’ll be less of that. And that’s a damn shame.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/02/23/good-web-apps-take-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LockerPulse Ads Up &amp; Running, Version 0.0.0.1</title>
		<link>http://www.adam-mcfarland.net/2011/02/19/lockerpulse-ads-up-running-version-0-0-0-1/</link>
		<comments>http://www.adam-mcfarland.net/2011/02/19/lockerpulse-ads-up-running-version-0-0-0-1/#comments</comments>
		<pubDate>Sat, 19 Feb 2011 17:12:25 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Advertising]]></category>
		<category><![CDATA[LockerPulse]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2336</guid>
		<description><![CDATA[OK so we really don&#8217;t version our projects like that. The point is that this is a really early stage project. From the very beginning, prior to even deciding whether or not to have a paid version, we recognized that there was a lot of opportunity in targeting ads to sports fans. SportsLizard does this in a very basic way. On our Price Guide we target eBay ads based upon what card/collectible the user is valuing. Search for a Michael Jordan card, and we&#8217;ll show you a banner ad of Michael Jordan cards. It&#8217;s worked really well for us over &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/02/19/lockerpulse-ads-up-running-version-0-0-0-1/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2011/02/ads_example.png" alt="LockerPulse Ad Platform Example" title="LockerPulse Ad Platform Example" width="800" height="765" class="aligncenter size-full wp-image-2337" /></p>
<p>OK so we really don&#8217;t version our projects like that.  The point is that this is a really early stage project.</p>
<p>From the very beginning, prior to even deciding whether or not to have a paid version, we recognized that there was a lot of opportunity in targeting ads to sports fans.  SportsLizard does this in a very basic way.  On our <a href="http://prices.sportslizard.com/">Price Guide</a> we target eBay ads based upon what card/collectible the user is valuing.  Search for a Michael Jordan card, and we&#8217;ll show you a banner ad of Michael Jordan cards.  It&#8217;s worked really well for us over the years, far better than AdSense.  As a whole, the advertising revenue for SportsLizard almost doubled in 2010 and has continued to grow into 2011.</p>
<p>The premise for the <a href="http://www.lockerpulse.com/">LockerPulse</a> ad platform is that using the eBay and Amazon API&#8217;s we can hyper target ads to users based upon what they&#8217;re viewing, their preferences, their history, their location, and other factors.  I&#8217;m of the belief that there is something on eBay or Amazon at any given moment &#8211; tickets, memorabilia, apparel, books, movies, etc &#8211; that every single sports fan is interested in looking at.  It&#8217;s a matter of us being smart enough to figure out what to show, how to show it, and when to show it. We&#8217;ve (predictably) seen a lot more sign ups come through since <a href="http://www.adam-mcfarland.net/2011/01/30/why-we-made-lockerpulse-completely-free/">making the site completely free</a>, which will help us gather even more data.  The more active the user, the better ad we&#8217;ll be able to show them (in theory).   </p>
<p>We have been running AdSense tests for a few months now.  The click-through-rates were very encouraging and act as a great baseline to try to beat.  Which is why to start we essentially mimicked AdSense in as many ways as possible, including the fonts, the colors, the size, and the location on the page.  We tried to not make too many educated guesses. The goal at the moment is to simply collect data and try to beat AdSense.  Right now there is an ad at the end of every single story on both the regular site and the mobile site.  Assuming this works, the sky is the limit.  </p>
<p>I spent a ton of programming time integrating effectively with Amazon and eBay, and then building caching systems on our end so we&#8217;re not creating an ad on the fly every time you access a story.  I&#8217;ve done my best to set everything up to scale well as we grow and add functionality. Both API&#8217;s are OK to work with, but are littered with documentation for deprecated functionality (or functionality that is soon to be deprecated).  The challenge was in figuring out prior to starting what documentation is actually valid.  There also wasn&#8217;t much sample code out there, I sort of figured it all out on my own.  They also don&#8217;t integrate well with their affiliate programs, which have separate logins and documentation.  For all of the potential with these API&#8217;s, I wonder how many are turned away by the unnecessary complexity?  </p>
<p>Anyway, just getting this launched is very exciting for us.  We could have spent months more adding features and fine tuning things, but to be honest we really don&#8217;t know will work and what won&#8217;t.  As with most web projects, the data and customer feedback will go a long ways in dictating our next move and ensuring we don&#8217;t waste time on unnecessary stuff.</p>
<p>Oh, and if you happen to come across an ad that isn&#8217;t relevant I&#8217;d greatly appreciate you leaving a comment or dropping me an email. For instance, we&#8217;ve discovered situations where we&#8217;ll show ads for &#8220;Buffalo Bill&#8221; the Western movie(s) instead of Buffalo Bills stuff.  I&#8217;m making a list of these things.  I&#8217;ll go back and clean them all up on the next iteration. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/02/19/lockerpulse-ads-up-running-version-0-0-0-1/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>New LockerPulse Features &#8211; Search Engine, AJAX Crawling, and Custom Wallpaper</title>
		<link>http://www.adam-mcfarland.net/2010/11/14/new-lockerpulse-features-search-engine-ajax-crawling-and-custom-wallpaper/</link>
		<comments>http://www.adam-mcfarland.net/2010/11/14/new-lockerpulse-features-search-engine-ajax-crawling-and-custom-wallpaper/#comments</comments>
		<pubDate>Mon, 15 Nov 2010 00:39:04 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[LockerPulse]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2104</guid>
		<description><![CDATA[Over the past two weeks we released a couple of important features for LockerPulse. As I touched upon when I returned from my trip, we&#8217;ve got a few interesting opportunities in the works so I&#8217;m spending as much time as I can building out the software. The first thing we tackled was a custom wallpaper feature. Users can now upload a background image of their choice, or choose from our various background images. This is one of those things that doesn&#8217;t appear to be that important, but when you&#8217;re using the site multiple times per day it adds a nice &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2010/11/14/new-lockerpulse-features-search-engine-ajax-crawling-and-custom-wallpaper/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>Over the past two weeks we released a couple of important features for LockerPulse. As I touched upon when <a href="http://www.adam-mcfarland.net/2010/10/30/im-back/">I returned from my trip</a>, we&#8217;ve got a few interesting opportunities in the works so I&#8217;m spending as much time as I can building out the software.  </p>
<p>The first thing we tackled was a custom wallpaper feature.  Users can now upload a background image of their choice, or choose from our various background images.  This is one of those things that doesn&#8217;t appear to be that important, but when you&#8217;re using the site multiple times per day it adds a nice touch to have a nice high resolution background image of your favorite team or player.</p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2010/11/bg-image.png" alt="LockerPulse Custom Background Images" title="LockerPulse Custom Background Images" width="700" height="261" class="alignnone size-full wp-image-2107" /></p>
<p>Much more importantly, was the release of our search engine towards the end of last week.  I can&#8217;t tell you how often I overhear something related to sports when I&#8217;m out or as I&#8217;m walking past the TV or in a Tweet.  I&#8217;m always curious and want to know more.  I previously resorted to using Twitter or Google News, but since launching LockerPulse I found myself searching our database because we had more/better information than those two did.  </p>
<p>Anyone can now search our stories by hovering over the &#8220;search&#8221; icon on the left side of any page, or by going to <a href="http://www.lockerpulse.com/search">LockerPulse.com/search</a>. We have almost 600k stories indexed and growing fast. It took some work to refine it, and there are some limitations (like only returning 20 results) but for a first release I&#8217;m very happy with the results.   Most queries are super fast.  The older or more rare the topic, the longer it takes.  We added a sidebar that shows Twitter results to supplement the main results.  It really behaves like a &#8220;real-time&#8221; sports news search engine.  </p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2010/11/lp-search.png" alt="LockerPulse Search" title="LockerPulse Search" width="900" height="434" class="alignnone size-full wp-image-2106" /></p>
<p>That in and of itself is pretty cool, but the main reason why this is important for us long term is that the search functionality is what will drive our fantasy sports offerings.  The ability to track individual players is arguably more important to sports fans these days.  Right now, if you perform a search for a player (say, because you need an injury update to know if they&#8217;ll be playing or not), it works really really good.  We&#8217;ll be pumping in more fantasy news to the mix and then adding a &#8220;My Players&#8221; feature to the premium version. From a business standpoint, this will definitely help us sell premium accounts &#8211; the product is no longer strictly for leisure, it&#8217;s something that can help you win (prizes/money/bragging rights) in your fantasy league.</p>
<p>The third feature is one of my favorites: ajax crawlability using the new <a href="http://code.google.com/web/ajaxcrawling/index.html">standard proposed by Google</a>.  Twitter is probably the example you&#8217;re most familiar of that does this. Let&#8217;s say you visit the LockerPulse home page and click on the Dallas Cowboys.  The news will load all slick without a page refresh, but prior to having this feature in place if someone bookmarked the link or copied it somewhere, they would just see <strong><em>http://www.lockerpulse.com</em></strong>.  Now, the URL looks like <strong><em>http://www.lockerpulse.com/#!NFL/Cowboys/</em></strong>. That link will redirect both users and search engines to <strong><em>http://www.lockerpulse.com/NFL/Cowboys/</em></strong>, our static version of the page.    </p>
<p>This is even more useful (almost necessary) for the search engine. If I link you to a search for &#8220;Brett Favre&#8221; the link will look like this <strong><em>http://www.lockerpulse.com/search?q=Brett+Favre</em></strong>.  But if you then decide to search for &#8220;Adrian Peterson&#8221; the search engine will load the results without a refresh and just tack <strong><em>#!search?q=Adrian Peterson</em></strong> on to the end of the URL.  If someone then bookmarks that new link <strong><em>http://www.lockerpulse.com/search?q=Brett+Favre#!search?q=Adrian%20Peterson</em></strong> and then visits later they&#8217;ll be redirected to <strong><em>http://www.lockerpulse.com/search?q=Adrian%20Peterson</em></strong> and get the results for &#8220;Adrian Peterson&#8221; as intended, and not results for &#8220;Brett Favre&#8221;.  Google Instant works in much the same way.  </p>
<p>The reasoning behind why this is semi-difficult to do and why it&#8217;s so important is explained in full in <a href="http://www.seomoz.org/blog/how-to-allow-google-to-crawl-ajax-content">this great article on SEOmoz</a>.</p>
<p>The next few weeks I&#8217;m hoping to get a lot more done, but that will all be dependent upon how crazy DI gets.  Looking up at the calendar we&#8217;re not too far away from Black Friday and Cyber Monday!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2010/11/14/new-lockerpulse-features-search-engine-ajax-crawling-and-custom-wallpaper/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Testing a New Promo Upsell for the Holidays</title>
		<link>http://www.adam-mcfarland.net/2010/11/02/testing-a-new-promo-upsell-for-the-holidays/</link>
		<comments>http://www.adam-mcfarland.net/2010/11/02/testing-a-new-promo-upsell-for-the-holidays/#comments</comments>
		<pubDate>Tue, 02 Nov 2010 22:32:02 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Detailed Image]]></category>
		<category><![CDATA[Ecommerce]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2068</guid>
		<description><![CDATA[I&#8217;ve mentioned on a few different occasions that offering free shipping all of the time, say for orders over $100 or $200 doesn&#8217;t work well for a business like ours. We&#8217;re in a unique industry where weight doesn&#8217;t correlate at all to money spent &#8211; you can spend $60 on three heavy gallons that cost us maybe $20 to ship to CA, or you can spend $200 on a wax that costs us $8 to ship to CA. We&#8217;ve found that as a policy it&#8217;s much more fair to everyone if we charge you based on weight, not on amount &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2010/11/02/testing-a-new-promo-upsell-for-the-holidays/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve mentioned on a few <a href="http://www.adam-mcfarland.net/2009/09/10/our-exhaustive-shipping-project-what-we-learned-and-what-new-features-we-added/">different</a> <a href="http://www.adam-mcfarland.net/2010/09/21/coupon-code-strategy-ramblings/#comments">occasions</a> that offering free shipping all of the time, say for orders over $100 or $200 doesn&#8217;t work well for a business like ours.  We&#8217;re in a unique industry where weight doesn&#8217;t correlate at all to money spent &#8211; you can spend $60 on three heavy gallons that cost us maybe $20 to ship to CA, or you can spend $200 on a wax that costs us $8 to ship to CA.  We&#8217;ve found that as a policy it&#8217;s much more fair to everyone if we charge you based on weight, not on amount spent.  In the end this allows us to be really accurate with our shipping estimates and not undercharge or overcharge any of our customers.</p>
<p>That said, we still use free shipping as a promotional offer from time to time, and in particular during the Holiday season we do exactly what I just said we don&#8217;t normally do &#8211; offer free shipping to customers who spend over $150 in hopes of upselling all customers over the $150 during a season where people spend more freely.  For us, the Holiday season starts on 11/1, and like last year we have the free shipping banner across the top of every page:</p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2010/11/upsell-top.png" alt="DI Holiday Shipping Upsell" title="DI Holiday Shipping Upsell" width="800" height="248" class="alignnone size-full wp-image-2071" /></p>
<p>This year we also programmed in a new feature.  On the Cart page &#8211; the page where you can delete items, change quantities, and get a shipping quote, just before you proceed to the Checkout page that requires a log in &#8211; users are now shown just how much more they need to spend to qualify for the free shipping. As they add/remove products on the page, the shipping estimate updates accordingly using AJAX:</p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2010/11/upsell-cart2.png" alt="DI Holiday Shipping Upsell" title="DI Holiday Shipping Upsell" class="alignnone size-full wp-image-2072" /></p>
<p>I&#8217;ll plan on following up with a post on the results after the Holidays. To gauge success,  I&#8217;ll look at average order value to see if that increased, and I&#8217;ll also look to see what percentage of our orders crossed the free shipping barrier.  </p>
<p>The interesting thing about this is that this same system could be applied to other promotions that we run.  Say, for example, when we give away free products.  You could say &#8220;Spend $x more and get two free towels&#8221;.  Really any promo that requires a min-spend could be potentially enhanced with the system.  Will be interesting to see how well it works. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2010/11/02/testing-a-new-promo-upsell-for-the-holidays/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>My Productive Fall</title>
		<link>http://www.adam-mcfarland.net/2010/10/18/my-productive-fall/</link>
		<comments>http://www.adam-mcfarland.net/2010/10/18/my-productive-fall/#comments</comments>
		<pubDate>Mon, 18 Oct 2010 21:53:30 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Productivity]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Work Ethic]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2040</guid>
		<description><![CDATA[Towards the end of Summer I decided to sit down and make a list of things that I wanted to accomplish this Fall before the Holiday Season started. It was a lot &#8211; more than I thought I could get to &#8211; but I like to challenge myself. We consider our &#8220;Holiday Season&#8221; to start on November 1. I like to have every new cart feature in place by mid-October so we have some time to work any kinks out before the big rush. I&#8217;m taking some time off this week and next week to head back to James Madison &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2010/10/18/my-productive-fall/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>Towards the end of Summer I decided to sit down and make a list of things that I wanted to accomplish this Fall before the Holiday Season started. It was a lot &#8211; more than I thought I could get to &#8211; but I like to challenge myself.  We consider our &#8220;Holiday Season&#8221; to start on November 1.  I like to have every new cart feature in place by mid-October so we have some time to work any kinks out before the big rush.  I&#8217;m taking some time off this week and next week to head back to James Madison to <a href="http://www.adam-mcfarland.net/2009/10/26/my-visit-to-james-madison-university/">give another talk</a>, and also to visit some friends and family down South.  Therefore, my deadline to get everything done was yesterday&#8230;and I did it. </p>
<p>Here&#8217;s the list I put together on 8/20:</p>
<ul>
<li><a href="http://www.adam-mcfarland.net/2010/08/23/our-improved-inventory-zone-system/">Implement new warehouse pulling system</a></li>
<li><a href="http://www.lockerpulse.com/Product-Blog/2010/09/02/check-out-our-new-look/">Do LP Redesign w/Mike</a></li>
<li><a href="http://www.lockerpulse.com/Product-Blog/2010/09/03/source-project-complete-over-550-new-sources-available/">Add LP Sources</a>, review all existing sources for quality</li>
<li><a href="http://www.adam-mcfarland.net/2010/09/21/coupon-code-strategy-ramblings/">Revamp DI Checkout process</a></li>
<li><a href="http://www.adam-mcfarland.net/2010/10/01/the-story-behind-the-detailed-image-mobile-site/">Create and launch DI Mobile Site</a></li>
<li>Create DI Holiday shipping system</li>
<li><a href="http://www.detailedimage.com/blog/site-announcements/using-our-new-save-cart-feature-to-create-a-wish-list/">Add Wish List/Save Cart feature to DI</a></li>
<li>Improve DI/SL MySQL query optimization</li>
<li>Complete cart Admin functionality</li>
</ul>
<p>We also <a href="http://www.adam-mcfarland.net/2010/08/30/our-first-full-time-employee-started-today/">hired our first full-time employee</a> during that time period too.</p>
<p>Now, some of that stuff I can&#8217;t/won&#8217;t/shouldn&#8217;t delve into exactly what it involved, but all of it was important and it all wrapped up nicely heading into the Holidays. When I get back, I can focus on 1) the extra day-to-day work involved in making things run smoothly during a busy season, and 2) finally devoting the majority of my &#8220;project time&#8221; to growing LockerPulse.  </p>
<p>I realize that my posts have dropped off a bit.  I&#8217;ll probably end up posting a bit more once I get back.  The past few months I chose getting an extra hour or two of work done over writing a post.  It&#8217;s always a balancing act &#8211; if business and/or my personal life are super busy, the first thing that I&#8217;ll trim back on is the blog posts.  </p>
<p>At the end of any given day, I always <a href="http://www.adam-mcfarland.net/2010/06/10/lay-bricks/">feel better when I put in a hard days work</a>.  It&#8217;s always very satisfying to set aggressive goals and then nail all of them.  </p>
<p>I&#8217;m not sure whether or not I&#8217;ll post when I&#8217;m gone.  I&#8217;ll definitely be back in early November when the fun begins!  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2010/10/18/my-productive-fall/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>

