<?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; Efficiency</title>
	<atom:link href="http://www.adam-mcfarland.net/category/efficiency/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>The Advantage of Skimming</title>
		<link>http://www.adam-mcfarland.net/2012/01/29/the-advantage-of-skimming/</link>
		<comments>http://www.adam-mcfarland.net/2012/01/29/the-advantage-of-skimming/#comments</comments>
		<pubDate>Sun, 29 Jan 2012 17:27:23 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Efficiency]]></category>
		<category><![CDATA[Productivity]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=3200</guid>
		<description><![CDATA[Sometimes I think skimming gets a bad rap. We&#8217;re worried that people in the future won&#8217;t be able to focus long enough to comprehend anything of real value. While there&#8217;s likely some truth to that, I also see huge opportunity and huge value in skimming&#8230;especially for business owners. Half of the battle when it comes to making business decisions in our current landscape is knowing what&#8217;s possible. Whether we&#8217;re talking specifically web development (HTML5, CSS3, responsive design, etc), or any other aspect of running a business &#8211; marketing, customer service, human resources, legal, accounting, strategy, and the like &#8211; it&#8217;s &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2012/01/29/the-advantage-of-skimming/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>Sometimes I think <a href="http://www.wired.com/magazine/2010/05/ff_nicholas_carr/all/1" target="_blank">skimming gets a bad rap</a>. We&#8217;re worried that people in the future won&#8217;t be able to focus long enough to comprehend anything of real value.  While there&#8217;s likely some truth to that, I also see huge opportunity and huge value in skimming&#8230;especially for business owners.</p>
<p>Half of the battle when it comes to making business decisions in our current landscape is knowing what&#8217;s possible.  Whether we&#8217;re talking specifically web development (HTML5, CSS3, responsive design, etc), or any other aspect of running a business &#8211; marketing, customer service, human resources, legal, accounting, strategy, and the like &#8211; it&#8217;s impossible to be even close to an expert in all of them.  Things are changing too fast. The best that I can hope for is to have an idea of what&#8217;s going on, of what&#8217;s possible if we need to improve something in one of those areas.  I need to do this in a relatively short amount of time.  And so I skim.  I skim my Google Reader, I skim magazines, I skim Twitter.  Most of the time I just read a headline plus maybe a few sentences, and then move on to the next piece of news.  My goal isn&#8217;t full comprehension, it&#8217;s getting a gist of what the article was about in 15 or 30 seconds, and then to move on to the next.</p>
<p>When I do this, I&#8217;m creating a &#8220;mental database&#8221; of what&#8217;s going on in the world.  Often times when we encounter a problem, the first thing I do is think &#8220;I remember hearing about xyz company that had the same problem&#8221; or &#8220;there&#8217;s this cool new website/software/technology that might solve our problem&#8221;.  From there, I usually only remember a small part of where I saw the article.  Maybe I remember how I read it (say Twitter) or where I read it (say Wired.com) or who shared it with me, but I&#8217;ll start to dig backwards and usually find what I&#8217;m looking for in a matter of minutes.  </p>
<p>Only then do I start reading more traditionally, aiming for full comprehension.  I&#8217;ll send an article to my Kindle, buy a book, find other online resources, or whatever makes the most sense for the particular situation.  So, to me, skimming is a great enabler.  It&#8217;s a highly efficient path to more knowledge.  I can consume vast amounts of incredibly resourceful material in extremely short periods of time, and then circle back and dig deeper if and when I find it necessary. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2012/01/29/the-advantage-of-skimming/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>A Huge (&amp; Highly Efficient) Cyber Monday!</title>
		<link>http://www.adam-mcfarland.net/2011/11/28/a-huge-highly-efficient-cyber-monday/</link>
		<comments>http://www.adam-mcfarland.net/2011/11/28/a-huge-highly-efficient-cyber-monday/#comments</comments>
		<pubDate>Mon, 28 Nov 2011 22:22:57 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Detailed Image]]></category>
		<category><![CDATA[Ecommerce]]></category>
		<category><![CDATA[Efficiency]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=3058</guid>
		<description><![CDATA[That picture says it all. I couldn&#8217;t stand back far enough to get all of the boxes in the shot! I&#8217;m writing this at 4:45 PM on Monday, so I&#8217;m not sure whether or not today will break our record for sales in a day. I think it will based on our pace, but if it doesn&#8217;t, it will be close*. Regardless, we&#8217;ve already surpassed last November in sales, and the year as a whole surpassed 2010 a while back so in some ways it&#8217;s kind of insignificant. To me, the real significant thing about today was just how easy &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/11/28/a-huge-highly-efficient-cyber-monday/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<div id="attachment_3059" class="wp-caption aligncenter" style="width: 810px"><img class="size-full wp-image-3059" title="Cyber Monday 2011" src="http://www.adam-mcfarland.net/wp-content/uploads/2011/11/cyber_monday_2011.jpg" alt="Cyber Monday 2011" width="800" height="600" /><p class="wp-caption-text">Cyber Monday 2011 at Detailed Image</p></div>
<p>That picture says it all. I couldn&#8217;t stand back far enough to get all of the boxes in the shot!</p>
<p>I&#8217;m writing this at 4:45 PM on Monday, so I&#8217;m not sure whether or not today will break our record for sales in a day.  I think it will based on our pace, but if it doesn&#8217;t, it will be close*.  Regardless, we&#8217;ve already surpassed last November in sales, and the year as a whole surpassed 2010 a while back so in some ways it&#8217;s kind of insignificant.  </p>
<p>To me, the real significant thing about today was just how easy it felt.  It wasn&#8217;t hectic like it was in previous years (see posts from Cyber Monday <a href="http://www.adam-mcfarland.net/2008/12/02/so-that-went-pretty-well/" target="_blank">2008</a>, <a href="http://www.adam-mcfarland.net/2009/12/01/thank-you-di-customers/" target="_blank">2009</a>, and <a href="http://www.adam-mcfarland.net/2010/11/30/another-record-breaking-cyber-monday-for-detailed-image/" target="_blank">2010</a>) but orders were coming in at just as fast of a pace, if not faster. Compared to say 2009 it felt half as busy even though we shipped out more orders.</p>
<p>Throughout the year we put all of these little efficiencies in place to save a minute here and a minute there.  We also have worked hard to put together a team of people who work hard but also have a relaxed, positive attitude.  All of those things really come together on a day like this.  With a really small team &#8211; only five of us in the warehouse today &#8211; we were able to pack and ship a mountain of orders without rushing or scrambling around.  </p>
<p>The number of emails that we received relative to the number of sales has been down as well (yes, we track that number), which again I attribute to all of the little improvements we&#8217;ve made throughout the year to our product pages, FAQs, guides, and blogs. It&#8217;s a day to celebrate the cumulative impact of all of those little wins.</p>
<p>Oh, and we *almost* filled up the entire FedEx truck. They had to pack the boxes in there pretty tight. I&#8217;m looking forward to the day when they have to call in for reinforcements!</p>
<p>*Update 11/29 &#8211; The pace picked up considerably in the evening and we ended up destroying our single-day sales record!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/11/28/a-huge-highly-efficient-cyber-monday/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Creating a Better Customer Service Workflow: Part 3 &#8211; Synchronized Text Expansion with AutoHotKey &amp; Dropbox</title>
		<link>http://www.adam-mcfarland.net/2011/05/18/creating-a-better-customer-service-workflow-part-3-text-expansion-with-autohotkey-dropbox/</link>
		<comments>http://www.adam-mcfarland.net/2011/05/18/creating-a-better-customer-service-workflow-part-3-text-expansion-with-autohotkey-dropbox/#comments</comments>
		<pubDate>Wed, 18 May 2011 11:40:49 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Customer Service]]></category>
		<category><![CDATA[Efficiency]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2618</guid>
		<description><![CDATA[In part one of this series about creating a better customer service system, I wrote about the problems with our existing customer service setup, in part two I wrote about our new solution using Google Apps Gmail. In this last post of the series I&#8217;m going to cover how we use AutoHotKey and Dropbox to synchronize text expansion across our company. What is Text Expansion? Text expansion is one of those things that&#8217;s somewhat difficult to explain, but once you see it or try it you instantly realize the value of it. Lifehacker did a great feature on text expansion &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/05/18/creating-a-better-customer-service-workflow-part-3-text-expansion-with-autohotkey-dropbox/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>In <a href="http://www.adam-mcfarland.net/2011/05/10/creating-a-better-customer-service-workflow-part-1-the-problem/">part one</a> of this series about creating a better customer service system, I wrote about the problems with our existing customer service setup, in <a href="http://www.adam-mcfarland.net/2011/05/13/creating-a-better-customer-service-workflow-part-2-our-solution/">part two</a> I wrote about our new solution using Google Apps Gmail.  In this last post of the series I&#8217;m going to cover how we use AutoHotKey and Dropbox to synchronize text expansion across our company.</p>
<h2>What is Text Expansion?</h2>
<p>Text expansion is one of those things that&#8217;s somewhat difficult to explain, but once you see it or try it you instantly realize the value of it. Lifehacker did a <a target="_blank" href="http://lifehacker.com/5611210/how-to-use-text-expansion-to-save-yourself-hours-of-typing-every-day">great feature on text expansion</a> last year.  Here&#8217;s how they define it: </p>
<blockquote><p>Text expansion utilities monitor your typing and trigger rules when you type a predefined phrase or key combination. When you type one of those pre-defined phrases, your text expansion utility removes your short version and replaces it with a longer phrase without requiring you to type the entire thing &#8211; saving you loads of keystrokes and time.</p></blockquote>
<p>One of the things that I say over and over at the end of customer service emails is &#8220;Let me know if you have any other questions and I&#8217;ll be happy to help.&#8221;  Now I haven&#8217;t actually written that phrase in years.  What I type instead is &#8220;lmk+&#8221; and then {Tab} and text expansion takes care of the rest.  I like using &#8220;+&#8221; followed by {Tab} at the end of my &#8220;trigger&#8221; to ensure that there&#8217;s absolutely no way that text expansion will be triggered by mistake.  </p>
<p>Here&#8217;s a quick video I put together that shows just how fast I can respond to certain emails.  </p>
<p><center><iframe width="853" height="510" src="http://www.youtube.com/embed/7e1oVYwcCbE?rel=0" frameborder="0" allowfullscreen></iframe></center></p>
<p>The beauty of text expansion is that I can piece together several different canned responses to create a unique email without ever actually typing anything more than a series of short triggers that I&#8217;ve memorized.  </p>
<p>I also love text expansion because I only have to think about a reply once.  I get a lot of technical questions from non-technical customers.  These questions require that I create a thorough response that resolves the issue and is also simple to understand, which can take some time and effort to craft.  Once I get the wording correct, I can just add it to my text expansion script and the next time it arises I won&#8217;t have to think through that &#8220;perfect wording&#8221; again. </p>
<h2>Using AutoHotKey With Dropbox</h2>
<p>When I <a href="http://www.adam-mcfarland.net/2009/03/26/officially-addicted-to-texter/">first wrote about text expansion</a> back in 2009, I was using a product called <a target="_blank" href="http://lifehacker.com/software/texter/lifehacker-code-texter-windows-238306.php">Texter</a>.  Texter was created by the Lifehacker team several years ago (the last update was in 2007).  It sort of works in Windows 7, which was good enough for me until we went on this customer service initiative and we needed a way for everyone to have access to the same database of standard responses.</p>
<p>After doing a little research I learned that <a target="_blank" href="http://www.autohotkey.com/">AutoHotKey</a> was the gold standard.  I was a bit intimidated because it isn&#8217;t really a piece of software in the typical sense, it just runs in the background and allows you to write Windows scripts that can do all sorts of things, text expansion being one of them.  I shouldn&#8217;t have been intimidated though &#8211; it took me all of 15 minutes to download it, install it, and get my text expansion up and running exactly the way I had it on Texter.  I wouldn&#8217;t even bother using Texter.  AHK is far more flexible and really simple to use.  Their documentation is thorough, yet easy to read even for a non-programmer.  </p>
<p>During my research I read a comment on Lifehacker by someone who used <a target="_blank" href="http://www.dropbox.com/">Dropbox</a> to sync their AHK scripts across their computers.  <em>That</em> was what I was looking for to tie all of this together.  I downloaded it and installed it myself, and the AHK script ran fine from the Dropbox folder.  Then I set Greg up with AHK and our Dropbox account and we tried modifying the AHK file on one computer and it synced perfectly across our computers.  If one person creates a new standard response it&#8217;s instantly available to everyone in our company!</p>
<p>We created a cheat-sheet on our wiki so that everyone would have a simple way to look up each trigger and it&#8217;s purpose, as opposed to having to open and navigate through the long AHK file.  </p>
<p>Another great thing about AutoHotKey is that you can run as many scripts as you want.  We have a shared script, but I also have a personal script for some of my own salutations or standard responses for things that the other guys won&#8217;t ever need (like when someone asks me to review a book on my blog they get hit with &#8220;bookreview+&#8221;).  </p>
<h2>It&#8217;s an Investment</h2>
<p>Text expansion is amazing.  After using it for a few years, I can&#8217;t imagine using a computer without it.  It is however, an investment, and like any investment it takes a little time to truly pay off.    </p>
<p>In the beginning, it&#8217;s quicker to just type a reply, hit send, and move on to the next email.  It takes an additional minute or two to standardize the response, add it to AHK, test it, and add it to the wiki.  </p>
<p>After you start getting used to it a bit, it becomes just about as fast as copying and pasting from a standard responses document.  You still have to look up the trigger on the wiki or by opening the AHK file, which takes just as much time as copying and pasting does.</p>
<p>The real benefit comes once you&#8217;ve memorized all of your commonly used triggers.  Then you can piece together emails rapidly like I did in the video.  You don&#8217;t need to type any part of the actual reply, you don&#8217;t need to think about wording it, and you don&#8217;t need to leave your inbox.  You just answer emails <em>really fast</em>.  Even if you do need to customize part of the email, you can freely flow from normal typing to text expansion without even thinking about it.  </p>
<p>&#8212;</p>
<p>That concludes my three-part series on Creating a Better Customer Service Workflow.  While our system is far from perfect, it&#8217;s a massive improvement from what we were doing before.  We&#8217;re all able to work faster and more efficiently now, and even more importantly we&#8217;re in a position where we feel confident about plugging a new employee into our system.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/05/18/creating-a-better-customer-service-workflow-part-3-text-expansion-with-autohotkey-dropbox/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Creating a Better Customer Service Workflow: Part 2 &#8211; Our Solution</title>
		<link>http://www.adam-mcfarland.net/2011/05/13/creating-a-better-customer-service-workflow-part-2-our-solution/</link>
		<comments>http://www.adam-mcfarland.net/2011/05/13/creating-a-better-customer-service-workflow-part-2-our-solution/#comments</comments>
		<pubDate>Fri, 13 May 2011 11:34:38 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Customer Service]]></category>
		<category><![CDATA[Efficiency]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2589</guid>
		<description><![CDATA[In my previous post, Creating a Better Customer Service Workflow: Part 1 – The Problem, I gave an overview of the issues we&#8217;ve begun to face as we&#8217;ve introduced multiple people into our customer service workflow. As you can see from the graphic above, our solution was simply Gmail. Well, a pimped out version of Google Apps Gmail that takes advantages of all of the unique features that Gmail has to offer in a manner that actually turns it into a pretty awesome customer service system for a small team. This solution sort of came about by accident. Since we &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/05/13/creating-a-better-customer-service-workflow-part-2-our-solution/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2011/05/system2.png" alt="Google Apps Customer Service System" title="Google Apps Customer Service System" width="968" height="263" class="aligncenter size-full wp-image-2592" /></p>
<p>In my previous post, <a href="http://www.adam-mcfarland.net/2011/05/10/creating-a-better-customer-service-workflow-part-1-the-problem/">Creating a Better Customer Service Workflow: Part 1 – The Problem</a>, I gave an overview of the issues we&#8217;ve begun to face as we&#8217;ve introduced multiple people into our customer service workflow. </p>
<p>As you can see from the graphic above, our solution was simply Gmail.  Well, a pimped out version of Google Apps Gmail that takes advantages of all of the unique features that Gmail has to offer in a manner that actually turns it into a pretty awesome customer service system for a small team.  This solution sort of came about by accident.  Since we use Google Apps Gmail on a regular basis, we&#8217;re always discussing all of the new features.  One day Mike suggested that the combination of those would make for a pretty good customer service system.  After some discussion, we all agreed, and we decided to give it a try.</p>
<h2>How It Works</h2>
<p>I&#8217;ve never been a fan of Gmail&#8217;s conversation view.  In my personal Gmail, and in my Google Apps Gmail, I turn it off.  <strong>However, for customer service, having these threaded conversations is ideal</strong>.  This is the number one feature that makes Gmail an appealing customer service platform.  It looks very similar to a ticketing system on the back end without having all of the downsides of a ticketing system I mentioned in the previous post.</p>
<p>Under our Google Apps account, we created support emails for our major sites, so detailedimage.support, lockerpulse.support, and sportslizard.support.  Since we <a href="http://www.adam-mcfarland.net/2011/04/12/happy-to-be-finally-paying-for-google-apps-premiere/">recently upgraded</a> to the premiere business version of Google Apps, each of these accounts costs $50/year.  We then routed all of our customer service emails to these new customer service addresses. </p>
<p>Stepping back for a second, the main downside of a shared inbox is that it can get messy if everyone isn&#8217;t on the same page.  We made three simple rules: 1) every support email must have a minimum of two labels, one for the type of inquiry  and one for the team member who is assigned the email, 2) emails should stay in the inbox until they are answered and then archived, and 3) if you&#8217;re passing an email to another person you should label it with their name, move it to the inbox, and mark it as unread. </p>
<p>Gmail has two features that make this super easy &#8211; <a target="_blank" href="http://mail.google.com/support/bin/answer.py?hl=en&#038;answer=12096">address aliases</a> and <a target="_blank" href="http://mail.google.com/support/bin/answer.py?answer=6579">filters</a>.  We use address aliases to &#8220;tag&#8221; incoming messages from our contact form.  For example, if someone picks &#8220;website issues&#8221; from the dropdown, the email will be sent to detailedimage.support+technical.  <strong>Used in conjunction with filters, this allows us to automatically label every single incoming message with the type of inquiry and the person that should answer it.</strong>  For instance, that email would be labeled &#8220;Site Issues&#8221; and &#8220;Team/Adam&#8221; because I handle all of the website issues.  </p>
<p>This is absolutely huge.  If I log in and there are 10 messages, I don&#8217;t need to look at all 10, only the ones that are labeled with my name.  Given that there&#8217;s not a ton of overlap in our areas of expertise (I won&#8217;t be answering detailing questions, just like Greg won&#8217;t be answering technical questions), it would be a huge waste of time for someone to have to do this manually. </p>
<p>The last critical piece of the puzzle is <a target="_blank" href="http://mail.google.com/support/bin/answer.py?answer=138350">Gmail delegation</a>.  Gmail allows you to grant other people access to your account to answer email on your behalf (like, say, a secretary). <strong> We took each support email account and granted access to each individual&#8217;s Pure Adapt account, making it super simple to switch between inboxes</strong> (remember, one of our goals was to not add complexity to our routine, and logging in and out of several Gmail accounts all day long qualifies as that).  I&#8217;m the only one who answers questions on all three sites, so here&#8217;s what delegation looks like for me:</p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2011/05/gmail-delegation.png" alt="Gmail Delegation" title="Gmail Delegation" width="291" height="262" class="aligncenter size-full wp-image-2594" /></p>
<p>When you send an email, it says that it&#8217;s from &#8220;Detailed Image Support (sent by [user])&#8221;, where [user] is the sender&#8217;s individual Pure Adapt email address. This lets us search by sender.  For instance, if we want to get a quick look at all of the sent messages by a new customer service employee, to check for quality or quantity or response time, we can.</p>
<p>As an aside, because of this new system we have all stopped using the Thunderbird mail client and moved to using Gmail directly in the browser.  It was a long time coming.  Thunderbird <a href="http://www.adam-mcfarland.net/2007/10/18/using-thunderbird-as-an-outlook-replacement/">served us well for years</a>, long before we were on Google Apps, but the time had finally come to ditch it and move to the browser.  Gmail is arguably a higher functioning email client than anything available on the desktop.  </p>
<h2>The Advantages</h2>
<p>The primary advantages of using a system like this is that it solves all of the problems I mentioned last post. We can all see, search, and reply-to everyone else&#8217;s email.  If someone goes on vacation, someone else can just step right in and pick up the slack.  There&#8217;s never an issue of a customer contacting us twice in two different locations.</p>
<p>This also compliments with our internal &#8220;User History&#8221; system well.  The system allows us to look up and modify everything someone has done on our site.  We can search by all sorts of criteria, like name, email, user ID, order number, tracking number, etc.  One of the bits of information that gets displayed is their inquires through our contact form, along with a corresponding request number, making it simple to then take that number and search it in Gmail to find the ensuing exchange.  Down the road, I may integrate these two things further so that the entire conversation is available to view in their User History, but for now it seems to work really well.  With a few clicks you can literally find out everything you need to know about a customer.  </p>
<p>It also should be noted that the setup time for this was a huge advantage.  Less than a day of time total on my end to configure everything, document it all, and then have a meeting to kick it all off.  Compared with the setup time on a ticketing system, or the development time of a custom system, this was a breeze.  Gmail is also a familiar interface for all of us, and it&#8217;s likely to be a familiar interface for our future employees, which will help cut down on the learning curve.</p>
<p>For what it&#8217;s worth, as we all move towards using mobile phones and tablets as complimentary email devices, Gmail is very well supported.  Not something we really took into consideration, but it is nice to not have to worry about our ticketing system not having a mobile website/app for every platform out there.  Gmail works well across the board.  I know for me, it&#8217;s easy to switch back and forth between accounts on my Android phone.  </p>
<h2>The Limitations</h2>
<p>Like with any system, there are some limitations. Here are the big ones to me:</p>
<ul>
<li>Lack of stats.  Even though we can search by user, and in Gmail you can see all of your account activity, we don&#8217;t have access to the types of stats most ticketing systems do.  It would be nice to break things down by user, like average response time, number of requests handled, and overall time spent answering questions per day/week/month.</li>
<li>10 person limit.  You can delegate a Gmail inbox to up to 10 people.  Not a big deal for us for a long time, but it&#8217;s a downside for sure when you talk about system scalability.</li>
<li>Conversation grouping isn&#8217;t perfect.  If the subjects match, Gmail tends to group it into a conversation, even if it&#8217;s from a different sender.  This has forced us to take any generic subject line like &#8220;Detailed Image Tracking Information&#8221; and change it to &#8220;Detailed Image Tracking Information.  Order #12345&#8243; to avoid this.  Kind of a pain, but not a huge deal.</li>
<li>No labs support. Gmail labs features don&#8217;t work when you&#8217;re in a shared inbox, whether you configure them in your account or in the master account.  There are a few labs features I&#8217;d like to use, but we can&#8217;t.</li>
</ul>
<p>That&#8217;s basically it.  All in all, a relatively simple solution to what was becoming a big problem for us.  We&#8217;ve been using it for about a month now and it&#8217;s been a huge improvement.</p>
<p>In my <a href="http://www.adam-mcfarland.net/2011/05/18/creating-a-better-customer-service-workflow-part-3-text-expansion-with-autohotkey-dropbox/">next post</a> I&#8217;m going to discuss how we use synchronized text expansion to speed up our response time.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/05/13/creating-a-better-customer-service-workflow-part-2-our-solution/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Creating a Better Customer Service Workflow: Part 1 &#8211; The Problem</title>
		<link>http://www.adam-mcfarland.net/2011/05/10/creating-a-better-customer-service-workflow-part-1-the-problem/</link>
		<comments>http://www.adam-mcfarland.net/2011/05/10/creating-a-better-customer-service-workflow-part-1-the-problem/#comments</comments>
		<pubDate>Tue, 10 May 2011 11:07:14 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Customer Service]]></category>
		<category><![CDATA[Efficiency]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2575</guid>
		<description><![CDATA[One of the ways that any small business can outdo the competition is with great customer service, something we&#8217;ve been dedicated to providing since day one. Given that we don&#8217;t provide phone support, it is even more important for us to provide the absolute best email customer service that we can. We&#8217;ve recently overhauled our customer service workflow so that it&#8217;s simpler, more scalable, and more efficient. These changes apply to all of our sites that generate a lot of customer questions &#8211; Detailed Image, LockerPulse, and SportsLizard, but primarily you can assume that I&#8217;m talking about Detailed Image throughout, &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/05/10/creating-a-better-customer-service-workflow-part-1-the-problem/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>One of the ways that any small business can outdo the competition is with great customer service, something we&#8217;ve been dedicated to providing since day one.  Given that we <a href="http://www.adam-mcfarland.net/2010/03/19/phone-support-and-great-customer-service/">don&#8217;t provide phone support</a>, it is even more important for us to provide the absolute best email customer service that we can.  </p>
<p>We&#8217;ve recently overhauled our customer service workflow so that it&#8217;s simpler, more scalable, and more efficient.  These changes apply to all of our sites that generate a lot of customer questions &#8211; <a target="_blank" href="http://www.detailedimage.com/">Detailed Image</a>, <a target="_blank" href="http://www.lockerpulse.com/">LockerPulse</a>, and <a target="_blank" href="http://www.sportslizard.com/">SportsLizard</a>, but primarily you can assume that I&#8217;m talking about Detailed Image throughout, given it&#8217;s relative importance. This is the first of three posts.  In part one, I&#8217;ll discuss the problem with the way we did things previously.  In <a href="http://www.adam-mcfarland.net/2011/05/13/creating-a-better-customer-service-workflow-part-2-our-solution/">part two</a>, I&#8217;ll go over our solution, and in <a href="http://www.adam-mcfarland.net/2011/05/18/creating-a-better-customer-service-workflow-part-3-text-expansion-with-autohotkey-dropbox/">part three</a> I&#8217;ll outline one of the major changes that has drastically increased the speed at which we can answer any given email.</p>
<h2>Life Is Simple When It&#8217;s Just One Single Person</h2>
<p>When any small business is first getting off the ground, you usually just have one person answering customer service inquires.  In most cases, this is how it should be: <a target="_blank" href="http://en.wikipedia.org/wiki/KISS_principle">KISS</a>.  There&#8217;s no need for the added complexities that come with multiple people providing customer service.  </p>
<p>Whether a customer emails you or submits an inquiry through a contact form, the workflow is pretty much the same: you get the email, you reply back, you and the customer continue to email back and forth until the issue is resolved, and then the conversation is forever archived in your email to be searched and referenced by you, the sole customer service agent.  Everything is nice and simple, kind of like this:</p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2011/05/cust1.png" alt="Customer Service Example - One Person" title="Customer Service Example - One Person" width="300" height="272" class="aligncenter size-full wp-image-2577" /></p>
<h2>With Two People, It Gets Complex</h2>
<p>Unfortunately, as soon as you introduce a second person into the system, all hell breaks loose.  Now, emails can go to either of you.  You can each search your own emails, but you can&#8217;t see the other person&#8217;s.  It looks a bit of like this:</p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2011/05/cust2.png" alt="Customer Service Example - Two People" title="Customer Service Example - Two People" width="676" height="473" class="aligncenter size-full wp-image-2578" /></p>
<p>This isn&#8217;t catastrophic &#8211; it&#8217;s how we operated for several years &#8211; but you run the risk of having several recurring issues.  The largest deals with customers who contact both customer service people, either inadvertently (because they&#8217;re anxious and they want a reply) or intentionally (if they don&#8217;t like what one person says, they try another to see if they can get the answer they want).  This can result in double work being done, confusion, and, if a customer happens to get a different response from each party, an inconsistent (and unfair) customer service experience.  You also can run into issues when someone takes a day off.  If they don&#8217;t check their email, important inquiries can go unread and unanswered in a timely manner.</p>
<p>Now, we combated this with some common sense.  We&#8217;d forward customer service emails to someone else when people went away for any extended amount of time, and we&#8217;d do our best to chat with each other when we were unsure of a situation.  This worked, mostly, for the better part of five years.</p>
<p>Eventually though, these problems became too big to overlook. We needed a way to avoid those mistakes.  Everyone had to be able to see, search, and answer everyone else&#8217;s conversations without adding time or confusion to our already busy days. Preferably, this new system would save us all time.</p>
<p>We also needed a system that could be easily taught to an employee.  This was really what pushed us to make the change now.  We will be hiring soon, and one of this person&#8217;s big responsibilities will be to answer Detailed Image customer service.  We need to be able to monitor what they&#8217;re doing, jump in at times, and not have to worry about fragmenting things further by creating another separate email account.</p>
<h2>Ticketing System? Not For Us, At Least Right Now</h2>
<p>Most companies choose to solve this problem by using a ticketing service or ticketing software.  We&#8217;ve all experienced this many times as customers.  You send an email or submit a question through a contact form, and then you get an email letting you know that a ticket has been created, either immediately or after someone manually creates it.  Then you might get an email a little later saying &#8220;Your ticket has been assigned to Matt&#8221;.  And then eventually you get a reply to your question.  If you then want to reply, you either have to visit their website, create an account (sometimes), and reply in their ticketing system, or you have the choice to reply via email between those asterisks&#8230;.you know, the ones that look like this:</p>
<p><code><br />
******************************************************************************************<br />
TO REPLY TO THIS MESSAGE PLEASE REPLY BETWEEN THESE LINES. EVERYTHING ELSE WILL BE CUT OFF<br />
******************************************************************************************<br />
</code></p>
<p>At the end of it all, you get an automated email asking if it&#8217;s OK to close the ticket.  Sometimes you then get another email asking you to rate the person who helped you.</p>
<p>Now, ticketing systems have some real advantages on the back end, but my partners and I don&#8217;t like this customer experience at all.  I recently submitted questions to two different companies, both of which we are paying customers, both of which use <a target="_blank" href="http://www.zendesk.com/">Zendesk</a>.  Zendesk seems to be the new leader in this space, at least for web apps.  In both cases, I had to sign up for a separate account to reply to the ticket.  In one case, it took two days for the ticket to be created, and another two to get a response.  In both cases, despite my questions eventually being answered, it felt like a very <em>cold</em> experience.</p>
<p>Contrast that with when you contact a company and you get a <em>real email</em> back.  It feels much more personal, much more friendly.  You can just click reply and say what you need to say.  It doesn&#8217;t matter what email program you&#8217;re on, it doesn&#8217;t require you to reply in any way that&#8217;s different than any normal email, and you can attach anything you want and it will definitely get to us.  In short, email is the simplest, quickest, and least stressful way for a customer to participate in a customer service exchange.  At least that&#8217;s how my partners and I feel.</p>
<p>A ticketing system might eventually be in the cards for us.  It might be unavoidable when we have 10 or 15 customer service reps.  But what about when we have two or three or four?  The more we thought about it, the more we were against a ticketing system right now.  There had to be an intermediary step for us, one that preserved the advantages of email while still solving all of our problems.  We contemplated building our own custom system, but the time and work involved seemed too complex.  What to do?</p>
<p>In my next post, I&#8217;ll outline our solution.  More to come&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/05/10/creating-a-better-customer-service-workflow-part-1-the-problem/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Attempting to Quantify How Busy We Are</title>
		<link>http://www.adam-mcfarland.net/2011/04/21/attempting-to-quantify-how-busy-we-are/</link>
		<comments>http://www.adam-mcfarland.net/2011/04/21/attempting-to-quantify-how-busy-we-are/#comments</comments>
		<pubDate>Thu, 21 Apr 2011 21:05:56 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Ecommerce]]></category>
		<category><![CDATA[Efficiency]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2540</guid>
		<description><![CDATA[Detailed Image has had a really busy Spring season. Everyone has had to chip in a bit extra at the warehouse to ensure that we get all of the orders out the door in a timely manner. This past week was so busy that Mike, Greg, and I went in Sunday to pack boxes for about five hours, something we&#8217;ve never done before outside of the Black Friday to Cyber Monday rush. We&#8217;ve also each had many days where we&#8217;ve had to go into the warehouse unplanned to help out. One of the more difficult things has always been figuring &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/04/21/attempting-to-quantify-how-busy-we-are/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.detailedimage.com/">Detailed Image</a> has had a really busy Spring season.  Everyone has had to chip in a bit extra at the warehouse to ensure that we get all of the orders out the door in a timely manner.  This past week was so busy that Mike, Greg, and I went in Sunday to pack boxes for about five hours, something we&#8217;ve never done before outside of the Black Friday to Cyber Monday rush.  We&#8217;ve also each had many days where we&#8217;ve had to go into the warehouse unplanned to help out.  </p>
<p>One of the more difficult things has always been figuring out at what threshold we need extra people in the warehouse beyond the scheduled team.  <strong>What we&#8217;re really trying to quantify is: how much physical work needs to be done to get all of the orders out?</strong> For years we always relied on the total dollar amount of orders in our shipping queue.  This is a good metric, but it has some noticeable flaws, especially on busy days.  For instance, if we&#8217;re running a 20% off sale, that number will appear to be lower than the actual amount of work that needs to be done (an order that usually costs $100 will only be factored in at $80).  Or, if we have a buffer on sale (as we do this month) and we&#8217;re selling a lot of them, it could make it appear as if there&#8217;s more work than there actually is because there&#8217;s a big difference in how long it takes to package a single $130 item than $130 in $10 &#8211; $20 products.</p>
<p>Given this, we asked ourselves, what numbers do we have that will help normalize this data a bit and give us a simple number that we can work off of on a daily basis?  <strong>We decided that we could get a much better idea of how busy we were if we factored in total dollar amount being shipped, total number of packages being shipped, total number of items being shipped, and total weight being shipped.</strong>  We then came up with a maximum threshold for each, the absolute most we think we can do in one business day given our current team, which we guessed to be roughly 20% higher than our previous maximums.  These maximums will likely change any time we add staff or introduce a new efficiency. </p>
<p>We weighted each of these factors equally to come up with a simple single percentage that gives us a better approximation of how busy we are.  We can view it in &#8220;real-time&#8221; for what is currently in our shipping queue, and also have a report so that we can compare it to the past. Our maximum is roughly five times larger than our average day, meaning that on average we&#8217;re around 20% capacity but that we&#8217;ve fluctuated up to about 80% on our busiest day.  I&#8217;m not sure if this is normal for e-commerce companies or not.  I certainly think the seasonal nature of our business, combined with how often we run sales, factors in to the variation quite a bit.  </p>
<p>Here&#8217;s a shot of the variation from before, during, and after a recent sale (read from bottom up, so the 15% day is the first day in the example):</p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2011/04/howbusyarewe.png" alt="Busy metric" title="Busy metric" width="211" height="200" class="aligncenter size-full wp-image-2541" /> </p>
<p>I&#8217;m really excited about this. It&#8217;s a very simple metric, which is why I think it works.  It&#8217;s hard to try to think in terms of packages and revenue relative to our staffing capabilities, but it&#8217;s easy to think in terms of percentages. In both the short term and long term this should help us out quite a bit with our warehouse staffing decisions.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/04/21/attempting-to-quantify-how-busy-we-are/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Happy to be Finally Paying for Google Apps Premiere</title>
		<link>http://www.adam-mcfarland.net/2011/04/12/happy-to-be-finally-paying-for-google-apps-premiere/</link>
		<comments>http://www.adam-mcfarland.net/2011/04/12/happy-to-be-finally-paying-for-google-apps-premiere/#comments</comments>
		<pubDate>Tue, 12 Apr 2011 18:35:11 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Efficiency]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2533</guid>
		<description><![CDATA[One of the goals of our company has always been to keep as much of our data on the web as possible, preventing the loss of a single computer from hurting us, and making it simple for anyone to get up and running on a new machine in minutes. We&#8217;ve also always tried to have redundant backups of everything. However unlikely, it&#8217;s always possible that the worst case emergency scenario can happen. Back in 2008 we migrated all of our email to Google Apps. Along with email, we also moved all of our documents and wikis. It&#8217;s almost impossible to &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/04/12/happy-to-be-finally-paying-for-google-apps-premiere/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>One of the goals of our company has always been to keep as much of our data on the web as possible, preventing the loss of a single computer from hurting us, and making it simple for anyone to get up and running on a new machine in minutes.  We&#8217;ve also always tried to have redundant backups of everything.  However unlikely, it&#8217;s always possible that the worst case emergency scenario can happen.  </p>
<p>Back in 2008 we <a href="http://www.adam-mcfarland.net/2008/05/01/becoming-a-web-based-company/">migrated all of our email </a>to Google Apps.  Along with email, we also moved all of our documents and wikis.  It&#8217;s almost impossible to quantify how well this has worked, between the time-savings, cost-savings, and collaborative features.  I almost can&#8217;t imagine running an organization without it.  Over the past few years the <a href="http://googleapps.blogspot.com/">Google Apps Blog</a> has done countless stories on large companies and organizations, including many governments and municipalities, who have ditched all of the costs of hosting their own email and documents in favor of Google.</p>
<p>For a long time we&#8217;ve been planning to upgrade from the free version to the Permiere version, which costs $50 per year per user, and <a href="http://www.google.com/apps/index.html">offers features</a> like more email storage, more business security features like forced SSL, a 99% uptime guarantee, and 24&#215;7 support.  These things aren&#8217;t necessary when you&#8217;re first starting out, but there comes a point where $50/year/user is a ridiculously cheap price to pay for those things.  I&#8217;m a big believer in &#8220;you get what you pay for&#8221;, especially in business.  You can only get just so mad when a free service goes down or temporarily loses a little of your data or doesn&#8217;t respond to a question you have.  We&#8217;re at the point now though where we can&#8217;t afford to have those things happen.  A day without email would be close to catastrophic, which is why we&#8217;ve now upgraded.</p>
<p>We also upgraded because we&#8217;re in the middle of a massive overhaul of how we do email, particularly how we handle customer service, in preparation for hiring a customer service employee soon.  We&#8217;re planning on using even more of the Google Apps functionality in our day-to-day workflow, which just heightens the need for all of those things that the Premiere account offers.  </p>
<p>Of course, Google and Gmail have had their fair share of <a href="http://www.iol.co.za/scitech/technology/internet/frustration-fury-at-gmail-outage-1.1050057">outages</a> and <a href="http://lifehacker.com/#!5772138/gmail-glitch-wipes-out-archives-from-150000-accounts-so-back-yours-up-already">data loss</a>, so we&#8217;ve also signed up for <a href="http://www.backupify.com/">Backupify</a>, which automatically backs up everything in our Google Apps (and Flickr and other services) for $19.99/month.  In an absolute worst case scenario, like if Google ceased to exist, we could be back up and running in less than a day with very little data lost. Another no brainer for us at this stage in the game.  </p>
<p>When I was completing the sign up process, I had a moment where I thought &#8220;I&#8217;m also happy that we&#8217;re paying because this is a way to pay Google back for all of the great free stuff they&#8217;ve made available to our business&#8221;.  Of course, then I thought about all of those services and realized that over the years we&#8217;ve paid G a boatload of money for AdWords&#8230;so maybe I&#8217;ll just stick with all of those other reasons for upgrading. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/04/12/happy-to-be-finally-paying-for-google-apps-premiere/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>The Big Impact of Little Time Savings</title>
		<link>http://www.adam-mcfarland.net/2011/04/06/the-big-impact-of-little-time-savings/</link>
		<comments>http://www.adam-mcfarland.net/2011/04/06/the-big-impact-of-little-time-savings/#comments</comments>
		<pubDate>Wed, 06 Apr 2011 23:18:54 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Efficiency]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=2513</guid>
		<description><![CDATA[It&#8217;s really easy to get blinded by the routine tasks that you do. So much so that sometimes I don&#8217;t step back and think critically enough about them. I have a lot of recurring tasks on my to-do list that fall into this category. When it pops up, I do it. Generally without much thought. It&#8217;s just a necessary road block to pass so that I can actually start my work for the day. Lately we&#8217;ve been trying to take a critical look at everything we do. As we grow, you can only do so much and still keep your &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2011/04/06/the-big-impact-of-little-time-savings/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s really easy to get blinded by the routine tasks that you do.  So much so that sometimes I don&#8217;t step back and think critically enough about them.  I have a lot of recurring tasks on my to-do list that fall into this category.  When it pops up, I do it.  Generally without much thought.  It&#8217;s just a necessary road block to pass so that I can actually start my work for the day.  </p>
<p>Lately we&#8217;ve been trying to take a critical look at everything we do.  As we grow, you can only do so much and still keep your sanity. We&#8217;ve been trying to ask the critical questions:  Is this something that we need to keep doing? Can I do it less often? Can I delegate it? Can I outsource it? Can I automate it?</p>
<p>One of the tasks that had been taking up an increasing amount of my time is something I call &#8220;LockerPulse source management&#8221;.  The RSS feeds that we pull from are sometimes published with invalid code that we can&#8217;t parse, or sometimes the sites are down temporarily.  Since we check each site every 15 minutes, it can be a waste of resources to constantly poll and attempt to process a feed from a site that&#8217;s down for even a day or two.  To combat this, I had been running a check a few times an hour that would kick me an email if a news source hadn&#8217;t been processed in over an hour (4+ failures).  If I got one of the emails, I&#8217;d manually investigate and deactivate the source in our system if necessary.  Then, at least once per day, I&#8217;d check to see if those sites were back, first by visiting, then by validating with the <a target="_blank" href="http://validator.w3.org/">w3C validator</a>, and finally by putting it through a simulated parsing in our system.  If it passed, I&#8217;d reactivated the feed.  </p>
<p>Over time, as we&#8217;ve added news sources and <a href="http://www.adam-mcfarland.net/2011/03/12/college-news-on-lockerpulse-start-to-finish-in-5-days/">added college sports coverage</a>, this became a 30 minute-per-day task for me.  Even worse than being 30 minutes, was that it was in several small chunks.  So maybe three or four times per day I was doing this source management for 5-10 minutes.  The thought that I had to check on it was always subtly in the back of my mind.</p>
<p>A few weeks ago we talked about delegating it.  Then I thought some more, and realized that everything I was doing could be automated.  Even the W3C check just required using <a target="_blank" href="http://validator.w3.org/docs/api.html">their API</a>.  Over the weekend I put this in place and now I have a system that&#8217;s constantly deactivating, testing, and reactivating all day long.  It does a better job than I ever could, and it takes zero effort from me.  All of this took me only about 3 hours to set up and test.  </p>
<p>In retrospect this should have been blatantly obvious, and something I should have done much earlier.  But it was one of those things that at first only took a few minutes a day, which I saw as negligible time.  By the time it had grown I had just become so conditioned to it that I didn&#8217;t realize just how much time it was taking up.  30 minutes/day over a year is 10,950 minutes, or 7.6 full days saved.  Not to mention the mental effort expended on starting and stopping something a few times a day, or the tiny bit of stress I had every time I opened my inbox and saw an alert. </p>
<p>All of the tiny, seemingly negligible, efficiencies like this that you can put in place now will eventually come to help your business in the long run.  Especially when the &#8220;break even time&#8221; is less than a week like it was in this case.  A few minutes here and there compound over time to make a huge difference.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2011/04/06/the-big-impact-of-little-time-savings/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>The Story Behind the Detailed Image Mobile Site</title>
		<link>http://www.adam-mcfarland.net/2010/10/01/the-story-behind-the-detailed-image-mobile-site/</link>
		<comments>http://www.adam-mcfarland.net/2010/10/01/the-story-behind-the-detailed-image-mobile-site/#comments</comments>
		<pubDate>Fri, 01 Oct 2010 19:36:22 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Decision Making]]></category>
		<category><![CDATA[Detailed Image]]></category>
		<category><![CDATA[Ecommerce]]></category>
		<category><![CDATA[Efficiency]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=1991</guid>
		<description><![CDATA[Yesterday we launched a dedicated mobile site for Detailed Image. Above are a few screenshots. Overall I&#8217;m extremely pleased with how it came out. The functionality is nearly 100% of the full site. That said, the story of how this mobile site came about over the past two weeks is much more interesting than the functionality of the site so that&#8217;s going to be the focus of this post. Why a Mobile Site? I think the main answer to this is obvious &#8211; more and more people are browsing the web from mobile devices. The second reason, and what threw &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2010/10/01/the-story-behind-the-detailed-image-mobile-site/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2010/10/mobile-home-80pct.png" alt="DI Mobile" title="DI Mobile" width="750" height="410" class="alignnone size-full wp-image-1995" /></p>
<p><img src="http://www.adam-mcfarland.net/wp-content/uploads/2010/10/mobile-category-79pct.png" alt="DI Mobile Browsing" title="DI Mobile Browsing" width="750" height="410" class="alignnone size-full wp-image-1994" /></p>
<p>Yesterday we launched a dedicated mobile site for <a href="http://www.detailedimage.com/">Detailed Image</a>.  Above are a few screenshots.  Overall I&#8217;m extremely pleased with how it came out.  The functionality is nearly 100% of the full site.  That said, the story of how this mobile site came about over the past <em>two weeks</em> is much more interesting than the functionality of the site so that&#8217;s going to be the focus of this post.  </p>
<h2>Why a Mobile Site?</h2>
<p>I think the main answer to this is obvious &#8211; more and more people are browsing the web from mobile devices.  The second reason, and what threw me off course on the scope of this project, was to simplify functionality.  The Detailed Image site when it was launched in early 2009 was one of the few e-commerce sites that really pushed the use of AJAX.  Some features, such as a dropdown notification after adding a product to cart (instead of being taken off page), or adding/removing products from your cart, or applying a coupon code, greatly benefit from a usability perspective.  Initially, that level of javascript processing wasn&#8217;t possible on mobile phones.  In 2009 the majority of the people trying to buy from an iPhone ran into issues and couldn&#8217;t complete their purchase.  If you recall, it was one of the four major reasons that <a href="http://www.adam-mcfarland.net/2010/01/04/how-i-handle-customer-service-on-a-new-feature/">people failed our checkout</a>.  </p>
<h2>My Original Strategy</h2>
<p>Given that reasoning, our original strategy was to build a completely separate mobile site at m.DetailedImage.com similar to how we built our scaled back mobile site for LockerPulse.  The mobile site would have stripped down functionality, removing the need for javascript in the shopping process to accommodate phone browsers.  Just to get all of the portions of the site critical to shopping (home page, browsing, item pages, registration, checkout, etc) I figured it would take 1-2 months plus testing time.  While the back-end functionality would remain the same and utilize all of the existing classes, the front-end would be totally new.  </p>
<p>Initially I had this in my dev plan for early 2011, prior to our Spring rush.  Then I looked at the stats and saw that about 6% of our visitors were coming from mobile devices. I decided to try to bust ass and get it done prior to the Holidays &#8211; even an increase in conversion rate of a percentage or two amongst those mobile users would make it worth my time.  However, as I sat down to map the project out I started to freak out a bit (this was only last Monday, some 11 days ago).  There was no way that I could get it done prior to the holidays and still get everything else done that I had planned.  In addition, I wasn&#8217;t really looking forward to all of the tedious testing. What to do?   </p>
<p>When I mentioned my plan to work on the mobile site, George pointed out that many people were in fact checking out OK on their devices.  That prompted me to look into the data a bit more.  Turns out that all throughout 2010 people have been checking out fine using their mobile devices.  Only 1 failed checkout, in February, and I&#8217;m pretty sure it was one of the other reasons that caused it.  All in all, lots of sales through mobile devices, almost all on iOS and Android.  It does make sense &#8211; given the advance in the Webkit browsers that both use, any javascript issues from early 2009 that I assumed were still there are now gone.  Just for good measure I picked up my Android phone and tested everything I could think of &#8211; no issues.</p>
<p>That completely changed my approach.  Now we&#8217;re not talking about functionality at all.  We&#8217;re talking strictly aesthetics, which led me to the idea&#8230;</p>
<h2>My New Strategy</h2>
<p>What if we simply just served a new stylesheet to mobile users?  It would be inserted into the header after all of the other stylesheets so that it would over-ride the main styles and display them properly for mobile devices.  I remembered <a href="http://mobify.me/">MOBIFY</a>, a company that will &#8220;mobify&#8221; your site in minutes with the same approach.</p>
<p>I whipped open Firefox, opened up <a href="http://getfirebug.com/">Firebug</a>, and within minutes had proved my concept to myself.  From the LockerPulse site, I remembered all of the &#8220;rules&#8221; for mobile design &#8211; full width, no sidebars, variable font sizes, small images, etc.  It was pretty easy to show myself that it was possible.  I was so excited &#8211; the benefits of doing it this way are astronomical (see below). </p>
<p>Instead of spending months, I spent a handful of days going page by page through Detailed Image and re-styling the pages, although once the template was done many of the pages already looked just fine.  Only ~150 styles were required to transform the entire site. We benefited immensely from haven written all W3C compliant HTML and structuring our CSS well.  I had to write one small javascript function, do tiny bit of work with the HTML served (such as changing the doctype to a mobile doctype), and build in the device detection from LockerPulse, and we were all set.</p>
<h2>How it Works</h2>
<p>When someone is determined to be a mobile user, we simply change the doctype declaration and add in the new stylesheet and javascript function.  Everything &#8211; including both blogs, the guides, reviews, and the entire shopping process &#8211; still has the functionality that it does on the main site.  How do we determine if someone is a mobile user?  There are a few ways:</p>
<ul>
<li><strong>URL variable</strong> &#8211; the URL variable &#8220;mobile&#8221; can be toggled on any page of the site to put you in or take you out of &#8220;mobile site mode&#8221; (i.e. www.detailedimage.com?mobile=on).  m.DetailedImage.com simply directs there.  There are links in the footer of both versions to go back and forth (no visitor ever actually has to use the URL variable).</li>
<li><strong>Cookie</strong> &#8211; once the URL variable is set one way or another, the rest of your session will remain that way unless you change your mind and click one of the links in the footer.</li>
<li><strong>Device detection</strong> &#8211; if there isn&#8217;t a URL variable or a cookie, we use a class I built for LockerPulse to detect whether or not you&#8217;re using a mobile device.  Given that it&#8217;s been proven on LP, this was a very quick implementation.</li>
</ul>
<h2>Pros/Cons</h2>
<p>First, the pros:</p>
<ul>
<li><strong>Way faster</strong> &#8211; took less than two weeks from idea to implementation!</li>
<li><strong>Little/no maintenance, very scalable</strong> &#8211; assuming we stick to our coding/styling standards, new pages should look just fine without any work.  Occasionally we&#8217;ll need to do something minor like hide an element, shrink an image, or remove a border.</li>
<li><strong>Cool features that help mobile browsing</strong> &#8211; I never would have thought to include the autosuggest for the search box in a mobile version, but it&#8217;s maybe even more important because of how tedious it is to type on a mobile screen.  In the same manner, drilling through products by criteria such as brand, price, and usage become even more helpful on a small screen.</li>
<li><strong>The entire site</strong> &#8211; the blogs and the guides are a large portion of our traffic.  It&#8217;s great to get those into a readable format for someone who has a few seconds to kill on their phone.</li>
<li><strong>No redirects</strong> &#8211; no redirects to maintain, and if the device detection happens to be wrong there&#8217;s no messy incorrect redirects going on.  </li>
</ul>
<p>Of course, there are a few cons:</p>
<ul>
<li><strong>Extra HTML</strong> &#8211; a dedicated site would have only the HTML necessary for the mobile site.  Our mobile pages serve up some elements, only to have them hidden with CSS.</li>
<li><strong>A lot of requests</strong> &#8211; in the same manner, we have our main stylesheet, only to have an additional request being made to another stylesheet that over-writes a large portion of the original stylesheet. </li>
</ul>
<p>Clearly, the cons are NBD (no big deal) given the relative advantages of the pros.</p>
<h2>SEO Impact</h2>
<p>But how does this affect how search engines see the site?  Good question.  Thankfully Google answers it in full in their <a href="http://googlewebmastercentral.blogspot.com/2010/09/seo-starter-guide-updated.html">recently updated SEO guide</a> (I know I&#8217;ve said it before <a href="http://www.adam-mcfarland.net/essays/seo-and-web-marketing/">in my essay</a>, but it&#8217;s a must-read for any site owner &#8211; who better to get your advice from than the search engine itself?).</p>
<p>Google does two things that are really smart &#8211; they have separate sitemap syntax for mobile sites, and they use a separate user agent when crawling mobile sites.  The first lets you submit your mobile sitemap to them.  In our case, the URLs I submitted were exactly the same as the ones in our regular sitemap.  The difference being that they&#8217;ll send Googlebot-Mobile instead of Googlebot to visit those mobile URLs. By adding Googlebot-Mobile to your device detection, you&#8217;re serving your mobile pages to the mobile crawler and your normal pages to the normal crawler.  It&#8217;s explained in full in their guide, but basically they just want you to show them what you show a visitor of the same criteria (mobile vs non mobile) and you&#8217;ll be fine.</p>
<h2>Business Impact</h2>
<p>Bottom line:  I just got a two month project done in two weeks, and got it done <em>better</em>.  For me, this serves as a reminder to always challenge my own assumptions. Things change fast in the web world. What wouldn&#8217;t have worked in September 2009 worked just fine in September 2010.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2010/10/01/the-story-behind-the-detailed-image-mobile-site/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Why I Check Email First Thing Every Day</title>
		<link>http://www.adam-mcfarland.net/2010/09/09/why-i-check-email-first-thing-every-day/</link>
		<comments>http://www.adam-mcfarland.net/2010/09/09/why-i-check-email-first-thing-every-day/#comments</comments>
		<pubDate>Thu, 09 Sep 2010 17:54:20 +0000</pubDate>
		<dc:creator>Adam McFarland</dc:creator>
				<category><![CDATA[Efficiency]]></category>
		<category><![CDATA[Email]]></category>
		<category><![CDATA[Productivity]]></category>

		<guid isPermaLink="false">http://www.adam-mcfarland.net/?p=1939</guid>
		<description><![CDATA[Every once in a while when reading an article about email productivity I&#8217;ll see a reference to the book Never Check E-Mail In the Morning: And Other Unexpected Strategies for Making Your Work Life Work by Julie Morgenstern. Right up front I&#8217;ll say that I haven&#8217;t read the book, but have seen it referenced enough to know the idea behind the technique. From this Lifehacker article Top 10 Smart and Lazy Ways to Save Your Workday: Author of Never Check Email in the Morning Julie Morgenstern suggests waiting for one hour before you open up your email inbox in the &#8230; <a class="continue-reading" href="http://www.adam-mcfarland.net/2010/09/09/why-i-check-email-first-thing-every-day/">Continue reading</a>]]></description>
			<content:encoded><![CDATA[<p>Every once in a while when reading an article about email productivity I&#8217;ll see a reference to the book <a href="http://www.amazon.com/Never-Check-E-Mail-Morning-Unexpected/dp/0743250885/ref=sr_1_fkmr1_1?ie=UTF8&#038;qid=1284051999&#038;sr=8-1-fkmr1">Never Check E-Mail In the Morning: And Other Unexpected Strategies for Making Your Work Life Work</a> by Julie Morgenstern.  Right up front I&#8217;ll say that I haven&#8217;t read the book, but have seen it referenced enough to know the idea behind the technique.  From this Lifehacker article <a href="http://lifehacker.com/358472/top-10-smart-and-lazy-ways-to-save-your-workday">Top 10 Smart and Lazy Ways to Save Your Workday</a>:</p>
<blockquote><p>Author of Never Check Email in the Morning  Julie Morgenstern suggests waiting for one hour before you open up your email inbox in the morning. Accomplishing something out of the gate sets the tone for the rest of your day, Morgenstern says, and once you&#8217;ve launched your email client, you&#8217;re &#8220;open for business&#8221; and paying attention to incoming requests.</p></blockquote>
<p>In theory it sounds great.  But I&#8217;m going to play contrarian to that viewpoint.  Working under the assumption that you don&#8217;t literally roll out of bed and check your email (I don&#8217;t particularly think that&#8217;s healthy, I like to hit the gym up first thing in the morning), and working under the assumption that you have good email habits like I&#8217;ve <a href="http://www.adam-mcfarland.net/category/email/">outlined in prior posts</a> (filtering non important emails, only checking email at set intervals, keeping your inbox empty, etc), then I think checking email is the absolute smartest thing to do when you first sit down to work in the morning.</p>
<p>Here&#8217;s why.  As a business owner (or, really anyone with an important job) you&#8217;re constantly running into little &#8220;emergencies&#8221;. It seems crazy to think that whatever little productive task you&#8217;re accomplishing at the beginning of the day is more important than putting out a fire.  If our server is down, I get a text message alert and I&#8217;m on it no matter what time of day.  Otherwise, anything important I get notified via email.  I auto-filter out the unimportant stuff (like newsletters and notifications of sales that come through DI) so that my inbox generally consists of customer service questions, email alerts of odd things that happen on our sites, emails from my partners, and stuff related to my blog.  The blog stuff can wait, and usually does.  The rest of it is far more important than anything else I would have been working on.</p>
<p>On any given day my project work typically involves working on programming a feature for DI or LP, or working on some marketing initiative related to one or the other. A routine customer service question for DI might involve someone having trouble checking out or applying a coupon code.  An email alert might involve someone who hit refresh during checkout and got charged twice. My partners might have noticed a bug on one of the sites.  Which seems more important to you?  Taking care of your customers is and always will be more important than establishing positive momentum on my work day.  For me, I&#8217;m more stressed out working on programming something when I know there could be stuff sitting in my inbox that is holding up someone from getting their order shipped out today.  It doesn&#8217;t make a difference if the new feature is delayed by a few hours or a few days even, but it does matter if there&#8217;s a customer waiting on a reply or something is seriously wrong with one of our sites.  </p>
<p>Essentially, for me it boils down to this.  Emergencies always supersede project work.  And if you are trying to provide great customer service, that too should also supersede project work.</p>
<p>I feel like this translates well to other jobs too.  No matter what type of work you do, there&#8217;s always unforeseen things that should immediately jump to the top of your priority list.  If you have clients that have a major issue with their site, you&#8217;re better off all around just knowing about it right away and fixing it ASAP.  They&#8217;ll be happier and you&#8217;ll be happier.  And if it isn&#8217;t a major issue, you&#8217;ll feel better emailing them an ETA on the fix, and they&#8217;ll feel better by hearing from you.  </p>
<p>Now of course, if you took this too far you&#8217;d have your inbox open all day long and constantly be interrupted.  Which is why I prefaced this by saying that if you&#8217;re like me (you have projects and customer service, both of which are important) you&#8217;ve got to be relatively strict with when you have your inbox open and when you don&#8217;t.  The big difference with the morning is that it&#8217;s likely been 12+ hours since your last email check. Adding an extra hour, especially when you have shipping windows like us, doesn&#8217;t make sense.  Not checking email again until noon or 4 PM isn&#8217;t a big deal because those people are waiting a few hours at most.  I&#8217;ve added a quick email check to my day around 1 PM because I know that&#8217;s the latest I can contact someone in the warehouse and get something adjusted before FedEx arrives around 2:30.  I tend to check around 8:30 AM, 1 PM, and 5:30 PM, and it works out great &#8211; prompt replies for customers, especially during business hours, and still plenty of time with my inbox closed so I can get stuff done. </p>
<p>Anyway, in theory the idea of waiting to check your email might make sense, but in practice it just doesn&#8217;t work for me.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.adam-mcfarland.net/2010/09/09/why-i-check-email-first-thing-every-day/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

