Search This Blog

Hovertrx

Add URL

Translate

Wednesday, October 2, 2013

Work Less, Get More Done: Analytics For Maximizing Productivity

For three years now I’ve been running a small software business in my spare time.  It has been a very educational experience, especially in showing me that many things we think we know about software, programming, business, and the like are wrong.  This is a bit of a shock, especially for well-worn chestnuts which have intuitive appeal, which we have come to invest with moral significance, and (most importantly, because we all think we’re smart) we’ve believe so self-evidently true as to make investigation a waste of time.
For example: I have come to the conclusion, over the last three years, that working hard is overrated.  This is an idea I have been kicking around for a while, but it was thrown into sharp relief by a blog post entitled The Only Alternative Is To Work Harder, by a gentleman named Paras Chapra over at Wingify.  Paras and I have corresponded over email a few times, so I say as one analytics junkie to another: the notion that working longer hours is correlated to better business results is a pernicious social pathology.

Working Longer Hours Is Not A Competitively Defensible Advantage

For the last five years, I’ve been a Japanese salaryman, and have often worked 70 hour weeks out of a sense of social obligation.  I understand, very well, the social pressures which could lead someone to write “If your nearest competitor or neighbour works X hours, you must work for X+1 hours.”  It is just aterrible strategy.  Your competitor can adopt it as easily as you can, and then you’re playing a game of multiplayer endurance chicken against everyone else in your market.  You can’t win but you can certainly all lose, by ending up with an entire community where soul-crushing hours are normative.  (There are certain tendencies to this among Silicon Valley startups.  Take it from a Japanese salaryman, guys: it is a disease so vicious that in addition to hobbling businesses it damages society itself.  We’re barely beginning to recover from it decades later.)
Why can’t you win?  Well, suppose that longer hours are indeed the key to success and that Paras is willing to work longer hours than 99.9% of the population of India.  I don’t know how many hours that is at the 99.9% level, but call it 82 a week.  He’ll work 82 hours and then find, oh shoot, over a million people are willing to work more.
Working harder is a particularly bad idea for startups because you are likely competing with people with resources which, relative to yours, are infinite.  I compete with several educational publishers who employ tens of thousands.  Paras competes with Google.    Our competitors have more man-hours in a week than we’ll have in the next decade.  Engaging them on those terms is madness.

Why Smart People Keep Falling For This

Working long hours is near the perfect storm of meme spreadability.
It flatters the sensibilities of many religions — Max Weber was putting the Industrial Revolution down to the Protestant Work Ethic a hundred years ago.  It sometimes confuses me that it is so popular with atheist Japanese salaryman and agnostic Silicon Valley founders.  Then again, programmers at most companies work on a schedule designed to maximize the productivity of illiterate 18th century water loom operators, so expecting rationality might be excessively optimistic.
There is also a sense that working less is somehow, you know, cheating or immoral.  Take the reactions to 4 Hour Workweek (which is, incidentally, a tonne of self-promotion and self-help book hucksterism concealing an ounce of solid productivity gold): a lot of people are emotionally invested in the way that they have always done things being the correct, proper, morally acceptable way of doing things.  A lot of my fellow software developers feel the need to work long days because otherwise their customers will see them as lazy, despite the fact that their customers can only perceive the external indicia of the labor rather than the labor itself.  My customers don’t know that I average four hours a week on my business any more than they know I average 70 hours a week on my day job: all they see is the web site.
It is easy to fall into this trap of productivity being defined in terms of observed effort exerted because in the typical face to face organization it is easy to see who is “working hard” and very difficult to measureactual productivity.  The manager (and peer employees) always knows who was putting in heroic efforts at 10:00 PM last night.  However, your organization almost certainly doesn’t track productivity in any rational, systematic fashion.
This is a pity, because you can’t improve what you don’t measure.  Web analytics has taught us that our cherished beliefs about web design don’t matter an iota in the face of actual customer behavior.  Customer development has shown us that most of the time we’re spending enormous amounts of resources (including time) on products which will fail for lack of demand.  What is the use in one-upping the competition and spending 83 hours to their 82 when you’re both producing something that no one even wants?

Poor Metrics For Productivity

Of course, if you pick a poor metric and try to optimize for it, bad things happen.  For example, many large Internet publishers put auto-refresh code into their pages to inflate page views.  That adds no lasting business value (although it might succeed in getting a few more scraps from CPM advertisers prior to them abandoning the campaign in favor of models that actually work).
Similarly, my day job used to measure engineering productivity in, essentially, hours.  If I worked 20% more hours in August than I did in July, I was 20% more productive in August.  I remember one of my “very productive” weeks: after sleeping in a hotel because I was not physically capable of commuting home, I got to work and started pulling tickets, then opened the appropriate file and started coding.  I then continued for 90 minutes chasing rabbits before I realized that a) I had started working on a file totally different than the feature being discussed and b) the problem I thought I was fixing was not written in the ticket, anywhere.  I had literally hallucinated the entire request.  I then proceeded to spend the rest of the day committing crash bugs into the trunk, confusing our contractors with instructions that might as well have come from someone abusing drugs, and generally spinning my wheels.
Under the productivity tracking system we had at the time, that was my most productive day ever.  You don’t want to emulate that example.  For more examples of things not to emulate, see the Mythical Man Month.

Good Metrics For Productivity

I sell software online in my business. It is very, very easy to identify the direct driver of business value: selling software.  One conversion is worth $30.  It is even pretty easy to identify contributors to that: working up the funnel, trial signups aren’t worth as much as sales, but given their observed conversion rate 70 cents is a decent estimate.  ”Casting to currency” lets you compare the worth of two different things, easily.  An intervention which generates 10 sales is less worthwhile than one which generates 4,000 trial signups (all else equal).
In practice, this works well for tracking productivity, too.  Just assign an arbitrary value to tasks, based on your best guess of how much value they add for the business.  Then, track how long it takes to complete the tasks, and figure out where you’re adding disproportionate amounts of value and where you are spinning your wheels.  Do more of the former, less of the latter.
When in genuine doubt about the value, guess what it would cost to have somebody else do it for you.

The Pseudo-Wage

When I started my business I thought it would be amazing if I eventually earned $100 per hour working on it.  (This is a princely sum for 20-something programmers in Japan.)  Its funny, people generally get very good with practical experiences of the mathematical properties of averages in school and then totally forget about that experience in business.  If you want a 92 average, you’d better not routinely get 60s on your homework.  If you want to earn $100 an hour, you’d better not busy yourself with $5 an hour tasks.
Examples:
  • How much is mailing a CD worth?  Like many software developers, I offer CDs of my software.  The primary purpose is to get the sale from people who would not buy if it were purely virtual.  Thus, my labor in generating CDs is worth however many marginal sales the CD option nets me, plus the marginal revenue from actually paying more for the CD.  If I had A/B tested the option, I’d have a very rigorous notion of how much CDs are worth, but we’ll go with a guess: 25% of sales of the CDs would not have happened but for the CD option, thus a single CD is worth $5 (what I charge) + $7.50 (a marginal $30 sale every 4 CDs) = $12.50.  When you consider that I’d have to do all the burning, enveloping, addressing, licking, and mailing myself (in very small batch sizes), its reasonable to assume that doing CD fulfillment myself would be worth on the order of $50~60 an hour.
  • How much is A/B testing worth?  I generally try for about 5 new A/B tests a month.  If the successful ones combine to a 5% improvement (not infrequent) and you generously assume that takes 10 hours, then over the course of a year I’ll earn over $1,500 from them, for over $150 an hour.

You’re Measuring Productivity.  Now, Improve It

Clearly, this means that instead of licking more stamps I should be writing more A/B tests, right?  Sure, I can lick one stamp and write one A/B test, but my time is my most important and limited business asset, so I have to be sparing with it at the margin.
“But Patrick, that is all well and good, but you still have to mail those CDs!”, I hear you say.  No, I have to make sure the CDs get mailed, which is a distinction with a difference.  No middle American schoolmarm perceives additional value over having my saliva the envelope her software came in.  I have long-since outsourced the actual production and mailing of the CDs to SwiftCD.  They cost me about $6 each and, when I was still typing orders in manually, increased the amount of orders I could fill in an hour from about 4~5 to about  10 (note, again, small batch sizes mean this was dominated by setup-and-teardown time as I lost productivity to friction turning on my computer, opening email, copy/pasting over details, checking them, then turning off the computer and running to work).  That results in a significant increase in my psuedo-wage: after deducting the extra cost of outsourcing versus insourcing, I still make ~$100 an hour versus ~$50 doing everything myself.

Productivity Technique #1: Outsource.

This is the first of three major tactics for improving productivity: outsource anything that your personal presence does not add value to.  Equivalently, outsource anything where the replacement price is less than your desired pseudo-wage.
Remember that outsourcing imposes an overhead cost, and payment is due in your time rather than dollars.  Often, this overhead swamps the actual monetary cost of the project.  This kills many outsourcing development projects, because communicating (detailed, constantly changing) customer requirements consumes an enormous amount of time on the part of both sides.
In my own business, I very rarely outsource development, for this reason.  I also don’t outsource direct interaction with customers, because I feel that as a small business knowing what my customers want is an important differentiator.  Everything else, though, is on the table.
My most important use of outsourcing is getting content written for my website.  My software creates bingo cards, and offering bingo cards in the exact niche a searcher is looking for helps convince them to sign up for the free trial.  For example, if you’re looking for a Halloween bingo activity to play with class, the fact I have one ready to go increases your likelihood of sourcing your immediate and future bingo card needs with me rather than making them yourself or going to a competitor.
I used to write my bingo cards myself, and I’m fairly good at it, but eventually I figured that while it was a worthwhile activity it didn’t really get all that much more worthwhile as a result of me doing it.  Instead, I put out a call on my blog for freelancers, and eventually worked out a mutually rewarding relationship with a highly-educated American teacher.  She bangs out the cards on her own schedule, and once a month I click “Post” on my backend interface and then mail her a check.
The economics of this arrangement are so staggeringly efficient that people tell me I have to be lying about it.  The pages my freelancer writes for me were visited 65,000 times in September, producing roughly $1,300 worth of sales for me through getting people into my various conversion funnels.    I did less than five minutes of work to maintain the freelancing relationship in September.  Do you want to do the math?
There is no possible way for me to achieve results like that merely by lengthening the number of hours I work in a day.  Additionally, because I’m capable of producing like that (via, e.g., leveraging freelancers intelligently in a business process which uses software to make them efficient and then extracts business value out of their labor), there is no need to spend excessively long hours working for the sake of working.

Productivity Technique #2: Automate Your Processes.

Software developers should really spend more of their time creating tools for themselves, but we’re hardly the only vertical this applies to.  One of the best points of an awesome lecture on lean startups is that a startup’s most important product is the process the startup uses to create products.
This idea is so powerful that I say, without a hint of exaggeration, it has changed history.  A huge portion of Japan’s rise to global prominence was a result not of working harder, morning radio exercise routines, of the superiority of wet rice cultivation for creating productive societies (all of these, and more, were explanations advanced by authors on the syllabi for the courses I took in the process of completing my East Asian Studies degree — which will teach you to trust academia).  It was by having a few decades of head-start on process improvement as a science.
(I’d be remiss if I didn’t point out that folks have also identified process improvement as a cause of Japan’s economic boom.  However, “Toyota considers it a worthwhile use of time to shave 15 seconds off the construction of an automobile” is so counter-intuitive and unsexy that people reach for the much more obvious, morally correct, visible explanation that Toyota workers work so much harder than GM workers.  This is despite inconvenient facts such as the fact that Toyota can reproduce their productivity advantage in American factories using American workers, and has, repeatedly.  Journalists and management consultants never let facts get in the way of a good narrative.)
Process improvement works for small companies, too!  For example, my use of freelancers rather than myself to write bingo cards is one example of a process improvement, but when I started the process was horrific.  They’d create the word lists (as text files), then have to manually run them through Bingo Card Creator, take screenshots, do manually cropping, etc etc.  This is a lot more efficient than having me do the same steps (their time is cheaper than mine, and I can always find another freelancer but finding a 25th hour in a day is sort of tricky), but there was clearly room for improvement.
I actually outsourced creation of the first improvement: it was a script which, given specially named text files as input, would open up Bingo Card Creator, emulate a user on the keyboard clicking on the particular buttons, and then open up PDF viewer, emulate hitting Print Screen, open up MSPaint, etc etc.  It was a system held together entirely by duct tape, but it worked.  It took me an hour every month to supervise the script and correct unhandled exceptions but it worked.  The productivity of my freelancers immediately increase.  This let them get more work done in less time.  I then bumped up their wages and the resulting more-money, less-busywork combination has kept them sufficiently happy with the arrangement that it has continued without a serious hitch for more than a year now.
(Incidentally, I eventually spent some time and replaced the duct tape.  Remember, it was still taking me an hour a month and I still had access to a computer: clearly, there was room for improvement.  I eventually tightened up the automation, decreasing it from 60 minutes to 40 minutes, then refactored some of the automation and got it down to 30 minutes, then leveraged an unrelated technology change I made and got it down to the current five minutes.  Five minutes isn’t zero minutes, either, so I still have work to do.)
Process improvement takes time.  Consider it an investment in your business’ future, and charge yourself for it.  I outsourced the first draft of that automation and got valuable results for $100.  (Why didn’t I write it myself?  Automating interfaces is Not My Bag, Baby and it would have taken me far more than an hour to do.)  As it is, all the development I’ve ever done on every draft of that system, plus all the handling of freelancers, adds up to less than twenty hours.

Productivity Technique #3: Eliminate Unproductive Uses of Time.

The final technique for maximizing your productivity is eliminating uses of time which do not add business value. We’ve all got them, most of them probably unknown to us because we don’t track our uses of time well.  (I use RescueTime.  If you don’t, install it today and spend some time aggressively categorizing what websites are worthwhile for you to be on.  Consider this a very, very effective process improvement.)
For example, as I mentioned earlier, I’m a bit of an analytics junkie.  RescueTime reported to me that I was spending upwards of 1 hour a day on Google Analytics.  I had an honest conversation with myself on whether I was getting $100 worth of insights every single freaking day out of Google Analytics.  The answer was, no, not really — I was essentially engaged in a nervous habit, opening Analytics and drilling down through a million reports to feel productive when I wasn’t mentally ready to actually be productive.  In particular, I had a few favorite screens I’d check too often — trial downloads per day, for example.
I eventually killed that habit by surfacing that number on my admin dashboard for my website (where I have to go to resolve routine customer service inquiries).  That way, the number flashes by the corner of my eye once every morning as I do productive work.  It is also set so that it gets cached for 24 hours, so that the monkey-brain WoW playing scrolling-numbers-are-dopamine-cast-into-integers side of me can’t get fascinated into sitting on the page and hitting refresh all day.
That sure isn’t going cold turkey, though.  A better example: I used to spend much, much more time on blogging than I do currently.  This is my 447th post to this blog, and I consider the blog one of the main contributors to my business doing as well as it has.  However, over the last three years, I’ve learned something: 90% of the value from the blog is in far less than 10% of the posts.  I’ve always written a mix of long-form, packed essays (you have now suffered through at least one — congratulations!) and shorter articles about more minor topics.  The shorter articles typically take me about an hour to write, whereas this article took me about four.  However, my long essays produce more traffic, more discussion, more links, and better writing (this last one subjective, the others less so) than the shorter articles — and vastly out of proportion to the time invested.  On a links-per-hour scale its better than a hundred to one in favor of the articles, I kid you not.  This has lead me to gradually curtail most of the minor posting to my blog.
You probably have something which could stand elimination in your business.  If you’re using Lean Startup-style processes, you should find out which of your development efforts are being 100% wasted because your customers don’t want what you’re making.  The solution to this is simple: stop that development.  You may spend time on social media when you could be working.  Work more, play when you get home.  (Says the guy who has racked up in excess of 200 hours on Hacker News — I never said I was particularly good at this.)
Maybe you spend time developing social media sites when you could be developing something people would pay for. ( Just kidding, Twitter.)
Well, OK, mostly just kidding.

Worker Smarter, Not Harder.  Then Go Home.

“Working harder” is a poor strategy which your competitors can trivially replicate.  Instead, spend some time measuring what tasks add value to your business and at what imputed wages.  Outsource those tasks which are below your desired imputed wage, automate any task where appropriate, and simply don’t do things which don’t add value.
I generally resist the urge to put a call to action in my blog posts, but just this once: working for the sake of work is a waste of time, resources, and human potential.  Try some of the suggestions from this post and see if you can’t cut a sliver of time off your work week — 15 minutes, an hour, whatever you can do.  If it works out, spend that time doing something which matters to you: read your kid a bedtime story, volunteer for your church, play WoW, whatever.  We should work to live, not live to work, and maximizing what the economists call “leisure” and what I’d rather rebrand as “stuff of lasting importance” should be a major goal for our careers and businesses.

No comments:

Post a Comment

Followers