Back Office Exposed: Bingo Card Creator

If you spend just a few minutes on Hacker News, you’ll come across Patrick McKenzie in one way or another (I’m convinced that he must comment on every single HN post). He lives in Japan and recently left his cushy full-time job to focus on Bingo Card Creator — something he created as a side gig four years ago. Patrick’s always sharing tactical tips on HN but I wanted to know more about how BCC actually worked. If you’ve built something on the side and you’re trying to extract more money out of it, keep reading — this one’s for you.

What is BCC?

Elementary schoolteachers like playing bingo as a review activity, because it scales to any number of students, is fun while remaining educational, and proceeds at a predictable pace.  However, every student needs a unique bingo card to play.  Making cards by hand takes a while, buying them costs a lot of money.  Bingo Card Creator makes bingo cards quickly and cheaply for schoolteachers, and other folks who are interested in playing custom bingo games.

There are two versions of the software.  One is the original downloadable Java application.  The other version is a web application, written in Rails.  They’re sold as a set, for $30 (plus $5 if you want a CD).  This is a one-off purchase.

How did you get started?

While working at my ex-ex-day job, at a prefectural technology incubator, an English teacher connected to us asked whether I knew of a good way to make bingo cards.  I told her to Google it.  She said that she did and couldn’t find anything useful.  One thing lead to another and, well, here we are.  (Here’s the full story.)

Why did you design BCC as a downloadable app instead of using a SaaS model?

When I created BCC, I was 24 years old and had graduated from a “Java school” and then spent a few years with 90%+ of my development experience being fat client Java applications.  You know the line about how if all you have is a hammer, everything looks like a nail?  Bingo cards, yep, totally a nail.  In retrospect, web applications are much, much, much, much better from the developer’s perspective (if you’re interested,my thoughts on desktop vs web apps).  However, at the time I could not make web applications.

Some time after releasing BCC, I switched jobs to a company which make Big Enterprise Java Web Applications, and concurrently taught myself how to use Rails.  (Incidentally, teach yourself to use Rails if you work on *any* MVC architecture: it will greatly clarify your thinking about MVC in general.  I became a much better Java programmer through my exposure to Rails.)  I started expanding the website for my product, first creating content at scale highlighting the usage of the product, then creating a custom CMS to make it easier for freelancers to create content, and eventually integrated web-enabled features on the downloadable application and launched a web application.

As for why BCC is a one-time purchase: back in 2006 I had the traditional developer’s skepticism of many effective ways to make money.  One of these is recurring charges.  I also thought my customers were used to recurring charges in their industry and hated them, so a one-off purchase would be a point of differentiation.  Certainly, some customers do genuinely hate recurring charges, but I will certainly have them as a core feature of any software I produce in the future.  The business benefits are just incredible.

I have approximately 3,000 paying customers for my software.  You know what my revenue was for today?  *Nothing*, because we’re in the dog days of summer, and sales slow to a crawl until school gets back in session.  If there were any recurring component to the revenue from BCC, that would essentially smooth out performance over the very seasonal calendar, and also continue to reward me for previous hard work.

What tools do you use on a daily basis?

I’m currently using a Dell Studio notebook, which I bought two months ago to celebrate going full-time.  Most importantly for my business, it has a SSD drive (128 GB of lifechanging speed — buy one today if you don’t have one) and a copy of VMWare Workstation, which lets me switch seemlessly between Windows and Ubuntu running in a VM.  I prefer Windows as a client OS, and love Windows Seven.  (And I just lost any chance of speaking at a Rails conference in the forseeable future.)  These days, most of my development is done in Ubuntu, because I use too many server-side things which are hard to fake on Windows.

I use NetBeans for Rails development and Eclipse for Java development.  My preferred browser is Chrome, and I keep Firefox around for superior add-on (Firebug, YSlow, ShowHTTPHeaders, etc) support and IE around for testing, though I prefer IE to Firefox.  (Darn, I am burning the bridges today.)

I use an 812SH Sharp phone, which is a Japanese featurephone.  My main use of my phone is to send text messages to friends and receive phone calls, although it also has a (crippled) browser which is sufficient to operate my site’s admin interface.  I take my Kindle everywhere I go, and use its built-in browser for light browsing, such as checking email or reading Hacker News.

You can see my whole workspace in the attached photo.  The $1 notebook is from Muji, probably the best designed of a series of $1 notebooks I have owned.  I use it for project management, technical documentation, and todo lists.  I also use my blog as a public repository of “What was I thinking when I did that?!”, and it has saved my bacon more than once.

I use Gmail personally and Google Apps for my business-related email.  My email workflow is very simple, owing to many years of running this business on a part-time basis: I check it when I wake up and bfeore I go to sleep, and immediately answer any emails from customers, and address emails from non-customers (for example, startups asking for advice) as time allows.  The time difference between Japan and the US means that most customers get emails within 5 ~ 9 hours of their email.  I tell my customers that I generally aim at answering all questions within one business day, and I meet that goal in excess of 99% of the time.

I use a variety of web services to handle various aspects of my business.  Many of them will be discussed below.

Can you tell us a little about your backoffice infrastructure?

At any given time I have approximately three or four VPSes at Slicehost.  All use Ubuntu.  The largest one, currently 1.5 GB, is for Bingo Card Creator.  I run all of my PHP-using sites, such as my blog and mini-sites, on a separate 512 MB VPS.  These are physically separate because I trust WordPress about as far as I can throw it, and also because Apache has a habit of taking down memory-constrained VPSes when hit by large amounts of traffic, and if that took down my site as collateral damage many people would be annoyed with me.  I also have another VPS for Appointment Reminder, currently at 512 MB while in development.

Bingo Card Creator is a Rails application, running behind Nginx (the best webserver ever) proxying to four Mongrels.  This is largely because that was the best practice back in 2007 when I created it, and I’ve had no impetus to change.  In addition, there are two DelayedJob workers running constantly — these primarily do PDF (bingo cards) and image creation (live previews of bingo cards for display via AJAX), and secondarily handle talking to external APIs such as Mixpanel.

Most of my customer data is in MySQL.  I also use Redis, primarily for non-permanent persistent data such as A/B test participation, and Memcached as a generic scratchpad and cache.

BCC has a fairly sophisticated monitoring setup, because I hate downtime with a burning passion.  The processes are monitored by god and Scout.  Should anything untoward happen, Scout sends me an email, and Google sends emails matching certain subjects (implying critical issues, such as the site being totally unavailable or the DelayedJob queue going out of control) directly to my cell phone.  My cell phone has a custom ringtone for receipt of those emails: Ride of the Valkyries.  I chose it because it is intensely disturbing to me, would certainly wake me up, and yet would not unduly embarass me if it were to ring in public.

I take payments via Paypal and Google Checkout.  Both are wrapped for me by e-junkie, a payment processor who offers a custom cart (which I no longer use, but which is a great first option for folks who can’t program their own) and which handles Registration Key delivery, accounting, and wraps callbacks in a consistent API.  I originally used them when this was all beyond my capabilities, since I couldn’t do web programming.  As time has progressed, I’ve gradually brought many of their functions (such as accounting / customer records / search) in-house.

One other thing e-junkie handles is API calls to SwiftCD for customers who order CDs.  It happens totally transparently for me: if the customer requests a CD, I don’t have to do anything.  SwiftCD burns an image I’ve uploaded, mails it directly to the customer, and invoices me at the end of the month.

I handle all customer support by myself, using email.  (I have made two phone calls related to Bingo Card Creator in four years.  Customers frequently request that I call them.  I have no desire to do so, because $30 a sale is not enough for me to walk technically disinclined customers through a Java installation at 4:30 AM in the morning.  Most are quite happy when I resolve their issue over email and tell them that, as I’m in Japan, it would be inconvenient for them to have to call me.  Since the vast majority of my customers have never made an international phone call, that explanation works for them much better than “Basically, it makes little economic sense for me to speak to you about this.”)

I am a metrics junkie.  At present, I use Mixpanel for funnel tracking, Google Analytics for basic web statistics, Clicky as a backup to Google Analytics, and CrazyEgg.  CrazyEgg lets you know where people are clicking on your website.  It has repeatedly made me thousands of dollars by showing obvious visible evidence of suboptimal page design.  I highly recommend everyone use it.

I use A/Bingo, OSS Rails software which I wrote, to do A/B testing.

I am a heavy user of Google AdWords, mostly on the content network.  You know all those pages Mahalo / About.com / Demand Media / etc have which satisfy every query a Kansas schoolmarm could possibly ask?  If one is about bingo, you’ll probably find my ads on it.    AdWords is my #2 source of customers after organic search.  It is responsible for approximately half of my sales and 1/5 of my profits.  (I do a bit of work these days to measure this in a more systemic manner than AdWords will by default.  For example, if you Google [math bingo cards] and arrive at my math page via the organic listings, then sign up to my trial, and later Google [bingocardcreator.com] and click the AdWords link, Google will score that as a conversion for AdWords.  I only score conversions for AdWords if the customer found me through AdWords prior to signing up for their trial, regardless of how they use Google as navigation after that.)

Can you share the key metrics you watch on a daily basis? Why are they important to you?

I have published a variety of stats but I don’t watch metrics on a daily basis because I don’t make metrics-based decisions on a daily basis, and absent making decisions watching metrics is only as productive as playing WoW.  When I have to make decisions about upcoming development priorities or marketing decisions (such as what keywords to look at), I look at my keyword data (Analytics), previous popularity for word lists on my site (homegrown), and A/B tests.  A/B tests are sort of the holy grail of metrics, because they are *designed* to result in data that tells you something which you can use as the basis for a decision.

Pop quiz: Analytics said your conversion rate went down.  What do you do?  Answer: nothing, because you have no clue why.  Maybe you spend a few hours digging into stats and trying to retrofit an explanation onto the data, which is probably just deceiving yourself.  Pretend that instead you A/B tested blue buttons versus green buttons.  Blue buttons won.  What do you do?  Exactly, you use the blue buttons.  A/B tests are actionable by design.  That is why I’m so enamored with them, and why I *had* to create a better way for Rails developers to use them.

A/B tests also have a very nice property for time-constrained businessmen: you code them and then let them run while you do other things, then check them.  Coding and checking is fast, and letting them run doesn’t block progress (or participation with your family, the day job, or what have you).

One metric I do watch is sales, particularly YOY change in sales (this tells me whether the business is growing when adjusted for seasonal distortions) and “predicted sales this year”, which is partially a vanity metric (that is my score at the game of business, and I love playing games) and partially lets me make consequential decisions such as “How much do I get paid?” and “Can I afford to leave my day job?”

The image on the right is what you see if you log into my website as me.  At the top left you’ll see quick links to common tasks, from using my bingo card CMS to linking to my version of various stats.  (They’re typically similar to the publicly available versions, with more detail.  For example, I can show data more granularly because I don’t have to worry about private customer data leaking.)

On the left side you’ll see a few stats I use as a quick business health check, like login counts for this week.  Invitation Stats shows the status of a project I tried, where I created Dropbox-inspired double-sided incentives for inviting your friends to join the service.  As you can see, it has not been a resounding success.

Sources of sales shows a quick overview of who is sending me customers that convert lately.  (“nil” is #1 largely because I wasn’t tracking this until recently.)

Vanity Stats is on the dashboard purely because it brings a smile to my face.  I used to be a teacher, and even in my best year I rather doubt that I contributed to 600,000 lessons.

The main pane of the dashboard is search results, which I use for customer support.  By default it shows the last ten customers, because people are overwhelmingly likely to ask for support their first day with the product.  It is optimized to my most common problems: “What is my Registration Key?”, “What is my password?”, and “I’m seeing something funky.  What is up?”  (Clicking on “Ghost me” logs me in as them, which often lets me diagnose the issue instantly.  I love web applications.)

You’ll also note the quick&dirty sales projections.  These are intentionally not that sophisticated: if I sold $100 on the first day and there are 30 days this month, then it will project $3k in sales for the month.  Currently it is showing $4k in projections for a June, which I would be flabbergasted if that came to pass, but after a week or so it typically converges on a fairly accurate number for most months without a major holiday.

I also have a physical dashboard in my room which displays some other metrics, mostly for personal motivation.

When a new sale comes in, can you walk us through the process?

I’m going to back up a step, because the vast majority of my sales start in the free trial, either the web app or the downloadable version.

If they click Yes, the program will generate a random ID within the Java application, and open their default browser to a particular page using that ID as a query parameter.  Rails will stuff that ID in the session, then show them the purchasing page.  The shopping cart on the purchasing page contains a link to e-junkie, including a parameter e-junkie will pass back if they receive a transaction notification from Google or Paypal corresponding to that link.

Let’s pretend that the customer clicks purchase.  They’re transparently redirected through e-junkie to the payment process they selected in my shopping cart (Paypal or Google Checkout).  They fill out their payment details, and I get money deposited in my account.

Paypal or Google Checkout then pings e-junkie with a very large, complicated API containing all the details of the transaction.  e-junkie turns around and pings my server with the details of the transaction, twice.  Once in requesting the Registration Key for the customer, and once to register the fact of the sale.

As soon as my server receives word of the sale, I look at the session ID e-junkie gave me, and determine what session it belongs to.  Then, I check to see if they had that random ID passed by the Java application.  If yes, I write a key in memcached recording the correspondence between their random ID and their Registration Key.

While this was going on, their copy of Bingo Card Creator has been relentlessly polling the server: “Has she bought it yet?  Has she bought it yet?  Has she bought it yet?”  It does this by passing the same random ID to a web service running on the server.  If the transaction has been consumated, BCC will learn the Registration Key, and then automatically upgrade itself to the registered version.  This removes a *major* source of customer support complaints, since Registration Key management is a hard concept for many shareware customers to grasp.  From the customer’s perspective, she just got done putting her details into Paypal, and by the time she closes the browser (after ignoring the instructions) and goes back to Bingo Card Creator, it already says “Thanks for your purchase!”  That little psychic saves me hours every month in support email.

The process is quite similar for the online application. (You’ll notice that this test account has participated in the Refer a Friend program a few times and has a quote of 20 cards, rather than the 15 cards that most folks start out with.  That referral program has not been a success.)

If you purchase while signed into the online application, the link to e-junkie contains an identifier for your account.  I look it up when I receive the purchase confirmation, and transparently upgrade the account to the registered version.  There is a manual way for customers to upgrade accounts, too, for those who use it at home but purchase at school from a machine I’ve never seen before, and for similar cases.  The vast majority of customers get instant, automatic gratification though.

In addition to handling the registration, my site also creates bookkeeping entries (in my home-grown bookkeeping software — there was a remarkable dearth of stuff which would produce publicly visible sales reports) and entries in my customer records so that I can conveniently look them up for support purposes.  Prior to developing these systems, I used the ones at e-junkie.  They were perfectly adequate, but that is one more login to have to do to accomplish any customer support task.

What were some of the biggest mistakes you made in growing your business?

The time IE 6/7 users couldn’t sign up, lasting for the busiest month of the year, has got to be up there.

There are many, many things that I’ve done which were suboptimal in retrospect, but I don’t necessarily consider them mistakes.  Doing a desktop application was suboptimal, but I couldn’t have delivered a web application at the time.  I am currently on my third “second” product, having done a bit of work on numbers one and two and then discovered that they were unlikely to be successful.  I have a list of failed A/B tests too long to fit into this already overlong interview.

I have consistently underestimated how far this program would eventually go.  For example, prior to leaving my ex-ex-job (which was a cushy 40 hours per week endeavor with little professional growth) to become a salaryman (which taught me a lot of things at the expense of 2.5 years of my life), I was offered the opportunity to recontract for two years.  I declined, feeling that I was going to better things as a salaryman.  At the time, I considered it beyond fantasy to go full-time just on BCC.  Knowing what I know now, could I have used much longer nights and weekends to grow the business, develop another product, and go full time a bit earlier with less work-related stress?  Probably.  But I don’t really regret being a salaryman — it makes for a great story to complain about.

If someone wanted to start a business similar to yours, what advice would you give to them?

DO IT.  LAUNCH IT.  GET IT OUT THE DOOR.  I don’t care if you think you can’t code.  You can learn.  I don’t care if you think you can’t market.  You can learn.  I don’t care if you think there is no market for your product.  You can grow, expand, and pivot.  (And besides, what are you working on which is more niche than bingo cards for elementary schoolteachers, anyhow?)

Running a business is the best possible training for running a business.  So stop making excuses — believe me, I was a champion at it — and start running a business.  By all means, read blogs, talk to people, scheme and dream… but then go get your hands dirty.

In the entire history of the world, there has never been a better time to start a business than right now.  You can run a multinational software business with thousands of customers.  It isn’t rocket science.  A confluence of things — OSS, scalable distribution like organic SEO, AdWords, Facebook and friends, powerful APIs like Paypal or Twilio that let you hook into massive enterprise power without leaving your kitchen — is making it even easier with each passing day.  So start learning now.  Every day you’re working, you’ll be building the knowledge, tools, connections, SEO juice, capital, and audience to make an even better go of things tomorrow.

What else should we know about you?

Prior to running a business I ran a WoW guild.  It was rather substantially more work and more drama than running a business, for dramatically worse loot.

If you haven’t started a business yet, you’re saying that everything in your life right now is more important to you than having a business.  Ask your heart of hearts: is that really true?  If you’re booked solid with your children, then yes, absolutely put your children first.  But if you *say* you’re booked solid with your children and yet you still find time to watch television and play online poker, then it is time to have a frank discussion about your true priorities in life.

***

Jeebus, is there anything else I can add to this? Patrick’s kicking some serious ass and, this is the best part, is openly sharing the details of how he does it.

  • I love his approach to metrics — he loves them but avoids looking at them unless they’re critical to a decision. Even then, he lets the results of A/B testing tell him what to do next.
  • If you don’t have an admin dashboard for your app, do it now. Patrick’s dashboard let’s him handle customer service and business metrics in one place, yours should do the same. (Incidentally, this interview convinced me to build “user impersonation” into my own dashboards for MailFinch andNotaryCRM. Thanks Patrick!)

You can find Patrick on his blog and on HN, check out Bingo Card Creator, read other Back Office Exposed features and submit yourself for a Back Office Exposed feature.

More on the “Thanks BP” project

A few days ago, I quietly launched a way for people to donate to the Gulf cleanup while taking a jab at BP. We sold ten letters in the first few minutes and it’s steadily grown over the past few days — yesterday, wewon the #bpcarescontest.I started the MailFinch “Thanks BP” project because I wanted to do something more than just donate to the cleanup. I wanted to get back at BP… ideally, without getting sued in the process. It turns out, other people wanted to do the same thing too.

As I write this, we’ve sold over 100 letters in the past few hours (incidentally, the “BP-covered Pelican” is the #1 favorite by a huge margin) and the orders keep rolling in — every penny we make on this will be donated to the Gulf Restoration Network.

When I see an oil-covered pelican on the news, I don’t say to myself, “That’s an oily scum-covered pelican.” No. I say to myself, “That’s a BP-covered pelican.”

So, do your part: donate to the cleanup, tell your friends about this or just do something. It’s our responsibility to make sure this doesn’t happen anywhere else on the planet.

Back Office Exposed: ReTargeter

I signed up for ReTargeter a few weeks ago after meeting their founder, Arjun Dev Arora, through a few mutual startup friends. They send me a weekly report that shows the number of conversions I get each week and, frankly, it’s a non-zero number. ReTargeter helps me focus my marketing dollars on traffic that has already been to my site and, since MailFinch is a relatively niche site, the majority of my traffic is people that are interested in mailing something. Read: ReTargeter has already paid for itself with MailFinch.

What is ReTargeter?

ReTargeter is an online advertising platform that allows companies to effectively solve one of their biggest problems: staying in front of their users after they’ve expressed interest. We place a few lines of code on a particular site and then show ads to people after they leave that site. [Ed. note: The cool part is that they show your ad on thousands of other sites — my friends send me screenshots, almost daily, of MailFinch being shown on Digg, Gmail, Yahoo and lots of other places.] So the use case is someone visits Nike.com (who happens to be one of our clients). They then go to Yahoo two days later and see an ad for Nike. Five days later they’re on Facebook, they see an ad for Nike. And so on and so forth. We do it in a manner that’s subtle yet is effective.

So that’s what Retargeter does, we’ve got a host of clients ranging from politicians to B-to-B companies to folks who sell stickers and rock bands as well.

How did you get started?

I was previously the Head of Business Development for Yahoo Real Estate so I spent some time in and around the internet space, particularly being at a place like Yahoo afforded me with a lot of opportunities to meet great people. I got in touch with some great angel investors post-Yahoo and started ReTargeter with their funding. They sit on the board as well, so great group of people.

Initially, I spent a lot of time developing the partnerships needed to access all the ad inventory that we now have. Then we spent time on integrating open source technology to do a lot of the back-end stuff. We’ve since graduated to a more sophisticated system that we’ll talk about later. Basically,** I got the basic pieces together and then hit the web, hit the phones and got out and started building the company**.

What tools do you use on a daily basis?

We’re almost entirely in the cloud. I use an iPhone which is perfect because a lot of our web apps actually have native applications. I have a couple of laptops, a desk phone and we use Google Apps for email and documents. For our CRM, we use Pipeline Deals and it’s great, easy to get setup and completely in the cloud. I’ve played around with Basecamp in the past but we mainly stick to email and Google Docs to handle project management. We use Twitter pretty aggressively and CoTweet is our tool on that end. Internally, we use Yammer — it’s really, really helpful for team communication. Everyone uses Tungle to setup meetings with prospect, clients and everyone else in-between.

Can you tell us a little about your back-office infrastructure?

We’re a subscription based company and everything is month-to-month so we use Recurly to handle our credit card transactions. Prior to that, we used Authorize.net to deal with this manually and, frankly, it was difficult. Recurly gives us a user dashboard, an easy way to change subscriptions and makes our lives a bit easier.

In terms of fulfillment, most everything is done manually via email. We really value our account managers to form a relationship with the client and they currently handle the process of collecting the client’s ads, updating them with weekly stats and sending the client the code for their site. We will likely move to a web-based solution where clients can FTP in and manage part of their account online.

We don’t do a lot of manual invoicing, but we use Less Accounting in the rare case that an invoice is needed. We use some proprietary stuff on the back-end to help us manage the host of ad-network and ad-exchange relationships that allow us to traffic the ads across the web. We also use MobileStorm, Flowtown and Kiss Metrics.

What steps need to happen between a new customer signing up and them going live?

This is a cool one. We do a lot of outbound stuff to bring people to our site. Email marketing, blog posts across the web, outbound sales, Facebook advertising, Google advertising, LinkedIn or Twitter — when someone gets to our site, it’s usually because they saw us somewhere and they’re interested in us. They’ll fill out a lead form and then we’ll reach out to have a conversation about their specific needs. Once we get this far, the customer will start creating their ads and sign-up online through Recurly.

At this point, the client will send us the banner ads for their campaign and we’ll send them the code that they’ll need to install on their site. Once they’ve completed the code install and we’ve uploaded the banners into our system, we’ll launch the campaign. At that point, we’ll check the customer off in our CRM system, track them in Recurly to make sure everything is legit with their credit card and then get them into our customer tracking system with is a combination of Highrise and Google Docs actually. So, that’s the flow — once they’re up and running, their account manager will keep a constant line of communication open via email.

What were some of the biggest mistakes you made in growing your business?

One thing that we didn’t really think about was how to scale the business. We’ve started to do more of this but we’ll probably need to devote even more time to figuring this out. Initially, we were just making phone calls and sending a few emails. Then we got a little more sophisticated and started sending small email blasts, writing on blogs and buying Adwords here and there. We should have been thinking about this from Day 1 — how do we build a massive company that scales.

We tried to hire slow and focused on bringing the right people in but maybe we were a little too cautious. We could have been more aggressive about bringing on folks early — lots of factors at play there but bringing them on early would have been helpful.

If someone were to start a business similar to yours what advice would you give them?

First, find all the back-end tools as soon as you can. Focus on what you’re passionate about — whether that’s building a product, focusing on sales, marketing, business development. There are an incredible amount of tools out there that deal with some of the bullshit you have to deal with on a day-to-day basis and let you focus on building the product, building customer relationships and grow revenue.

Second, never underestimate the power of truly having a strong network. I can’t even begin to tell you how amazing people are out there. Just willing to help and really make the right relationships and even introduce you to potential clients. For us that’s been a key factor and we’re very thankful and always hope that we can give back as much or more than people have given to us.

Finally, it’s something that I’m sure everyone hears often, but it’s all about the people and the team and hiring the right folks and building out the right culture.

What else should we know about you?

I’m just incredibly passionate about what I do and helping people really understand the power of the internet. I want to help people get the amazing things that the web affords for businesses and otherwise.

Secondly, I’m passionate about helping people and meeting interesting people doing interesting things and thinking about big ideas. Those are things that I really care about.

Lastly, I love to hustle. Nothing is built without really putting in the time and effort — really putting yourself out there, quitting your day job and going for it. That’s something that I’m very passionate about and entrepreneurship in general.

Thanks again I really appreciate the opportunity to do this. I hope this was helpful.

***

If you ever get a chance to speak to Arjun, do it. He knows exactly what he’s doing and, better yet, isn’t trying to keep all that good stuff to himself. A couple of thoughts:

  • I love how scrappy he is. He cobbled together a few free tools and then started working the phones — this is huge. (Reminder: revenue solves everything.)
  • His signup process is a little rough and he knows it. (When I first signed up, I remember thinking that I wouldn’t have gone through the process if I hadn’t talked to him personally.) If he’s able to build a successful business while the signup process is shitty, just imagine how much better this is going to get when he can grease the wheels.
  • For businesses at this stage (and with similar “service” models), I like to keep a close eye on four numbers: MRR (monthly recurring revenue), Churn (as a % of MRR), COA (cost of acquisition) and LTV (lifetime value). Whether they look for more funding or organically grow this thing, these four will tell you most of what you need to know.
  • If I were in his shoes, I’d start focusing on the account management piece ASAP. It’s easy for back-office costs to skyrocket when you’ve got account managers and their overhead in place. Start thinking about the ratio of account managers to paying customers — focus your efforts on increasing this ratio without decreasing the quality of service (if churn goes up, you’re probably not delivering the service you promised and/or your account manager isn’t cultivating a good relationship). Better tools and/or processes are key.

You can find Arjun on Twitter, check out ReTargeter, read other Back Office Exposed features and submit yourself for a Back Office Exposed feature.

For startups, effectiveness > efficiency

Chris Dixon makes an important point about not over-engineering your product in the early days:

Many products can be built much more quickly and cheaply by settling for good technology plus a bunch of hacks – human editing, partnerships, using 3rd party software – versus creating a perfect technology from scratch.

To this day, most of the work at MailFinch is still manual. Someone has to make sure a document gets printed, folded and stuffed into a printed & stamped envelope before handing it off to USPS. It’s not the sexiest solution, but consider the alternative: super-expensive but fully automated printing gear that costs more than most houses in the DC Metro area.

Not cool.

It turns out, I’m not the only one that did it this way. SpareFoot had no automation at the beginning either (viaJason Cohen):

Instead SpareFoot decided to automate nothing. When a potential buyer made a search, they grabbed their email or phone number and said “Thanks, we’re going to find you a great deal by Thursday.” Then they banged the phone all day, calling up regional storage facilities. Their pitch was awesome: “I’ve got a lead for you; his name is John Doe and he’s looking for a 10×20 with air conditioning. If your rate is competitive, we can do the deal today. By the way, if you want us to send leads like this to you all the time, it’s $20/mo to list with us.”

A startup’s first priority is to find a workable business model. After all, you can’t optimize for a problem that you don’t have. Focus on building something people want. Once you start to see some traction, start to figure out how to extract some cash from them. It doesn’t have to be pretty, it just has to work – revenue solves everything when you’re an early stage startup.

Back Office Exposed: ZippyKid

A few weeks ago, I realized that this site was running slow. Really slow. On average, it took ~3 seconds for any page to load. It was killing my SEO juice and I noticed that I was starting to lose readers left and right. I called my friend Vid immediately and he pointed me to his new service, ZippyKid. The results speak for themselves: I saw a 300% performance improvement once he took over this site. So, I asked him to tell me a little more about how it all works.
What is ZippyKid?

ZippyKid is a boutique web hosting service that manages WordPress for you, so you can manage the content of your website.

How did you get started?

Over past 3 years, I’ve noticed an increase in clients asking me help with their WordPress sites. I wrestled with outdated plugins and insecure configurations for ~30 sites before I started to notice patterns. Being a programmer, I automated the things I could and looked for tools to help me manage everything else.

Tell us a little more about the tools you use on a daily basis.

It can vary, but this is what you’ll find me using on most days:

  • 15 inch macbook pro
  • iPhone
  • Omnifocus
  • Omnioutliner
  • Netbeans
  • Vim
  • Github

Can you tell us a little about your backoffice infrastructure?

Github/Git for version control, Rackspace Cloud for hosting, Chargify for billing and custom scripts to install/update WordPress across multiple servers.

What were some of the biggest mistakes you made in growing your business?

I waited 365 days way too long to launch the site. I kept thinking about all the things I thought I needed: a rock solid billing system, proper control panels, status monitoring, [insert 435820746254 other excuses here]. I should have started this a long time ago.

If someone wanted to start a business similar to yours, what advice would you give to them?

Don’t wait. If you’re honest with your customers, they’ll understand and help you. I’ve told my customers that it’s just me and one person to answer emails, this helps manage their expectations and mine. I don’t promise 24/7 support, I promise fast loading, secure, and reliable websites.

***

A couple things I noticed while talking to Vid:

  • He’s a smart guy and has managed to avoid over-engineering the product. For example, he’s using an off the shelf billing system to avoid having to build it in-house (which, traditionally, is a nightmare to build and maintain). Notice that most of the workflow steps are manual — he hasn’t invested time/money into building anything fancy just yet. Instead, he’s proving that the business is viable before investing too much into it.
  • Three words: Monthly Recurring Revenue. My favorite kind of business.
  • The service and/or the process isn’t groundbreaking or new, he’s simply using his expertise to make his consulting life a little easier.

You can find Vid at Third Party Code, check out ZippyKid, read other Back Office Exposed features andsubmit yourself for a Back Office Exposed feature.

 

Startup Market Positioning: Less is More

Looking back at the recent growth of MailFinch, most of the success can be attributed to what the productcan’t do. We do very few things but we do those things better than anyone else in the game and we make it drop-dead simple to get started. Now Thomas Thurston, a researcher and consultant based in Portland, Oregon, has come up with a formula that predicts startup success with an 85% accuracy rate. Here’s the gist of his research:

Pretty much every startup you’ll ever meet will say it is better than its competitors. However you want to measure it—speed, technology, revenue model, whatever—a young company will say it outperforms others in its class. What’s more, it’s smaller and nimbler than the big companies, so it will be able to innovate faster and stay ahead of the curve.Just one problem: That’s exactly why it will fail.

What a startup should do instead—to give itself the best chance of surviving—is enter the market at the low end of performance, Thurston says. That is, offer a product that’s not necessarily as good as its competitors, but is cheaper and more accessible. “Lower cost, lower performance, and gets better over time,” is how Thurston puts it.

Less features, more win. I love it.

Aim for the Little Wins

It’s been a week since Summit Series wrapped up and I’m finally getting around to processing all of the fantastic conversations I had through the weekend. My favorite people at the event, by far, were the entrepreneurs with a pure tactical mindset. Anyone talking strategy was usually shutdown by a simple tactical question that involved specific calls to action, conversion rates and tools. I loved it.The harsh reality of entrepreneurship is that successes (whether you’re thinking in terms of revenue, user counts or anything else) are few and far between — for every one that succeeded, there were ten others that failed. Building strong businesses is about consistently hitting singles and doubles.

These people understand that this is the single best way to make your odds of success better — you can’t hit a home run without first learning how to hit the ball in the first place.

Rather than looking for the next idea that’s going to make them an overnight success, the best entrepreneurs spend their time improving the fundamentals of their business using metrics. By learning how to consistently hit these singles and doubles, these entrepreneurs set themselves up to knock a home run out of the park.

Hand-wavy strategies are overrated. Pick a few core metrics (signups, conversion rates, etc), use tactical techniques (A/B testing, landing pages, better calls-to-action, etc) to make the numbers even better and,most importantly, block off time on a monthly basis to review the previous month’s results and make decisions about the next month.

Little wins on a day to day basis are the best to consistently and methodically grow.

Back Office Exposed: Kadavy Inc.

Here’s a quick interview I did with David Kadavy, “President and Owner of Kadavy, Inc., which is an S-Corporation that houses my web design consulting services, as well as media properties, such as kadavy.net, Flatmate Meetup, and my share of nom.ms.” He seems to have his hands in a bunch of stuff and I wanted to see how he manages to run it all without breaking a sweat.What is Kadavy Inc?

Kadavy, Inc. is a Media company that I bootstrap with User Interface Design / User Experience consulting. The end goal is to be myself for a living.

How did you get started?

It all started with a really simple, really meta blog post on a Blogger.com blog, about 6 years ago. I wanted to share what I learned and encountered by following my curiosities day-to-day. Over time, opportunities to make money have come out of this.

**What tools do you use on a daily basis? **

  • 13″ MacBook Pro
  • IKEA Jerker Desk
  • Wacom Tablet
  • Aeron Chair
  • Green Tea
  • VooDooPad
  • Google Calendar
  • Gmail
  • iPhone
  • Freshbooks
  • Google Docs
  • Google Analytics
  • Google AdWords

Can you tell us a little about your backoffice infrastructure?

I invoice using Freshbooks, which is great, but it’s a little awkward for keeping track of ad revenues from ad networks. I end up creating a client, emailing myself the invoice, and entering payment, whenever I get a payment from an ad network, such as Google AdSense. Since oDesk is one of my clients, I use their time-tracker when I’m working for them, and billing and payment is automatic. I also have to create “imaginary” invoices for them to get the data into Freshbooks.

What were some of the biggest mistakes you made in growing your business?

I can’t say that I would do much differently because it’s a long process, and – for my style – there isn’t any way around that. But, over time I’ve learned that every business has a product or service, customers, suppliers, and competitors. Really understanding the nature of all of these elements, and how they relate to one-another, works wonders in recognizing the difference between a weak business model, and a strong one.

**If someone wanted to start a business similar to yours, what advice would you give to them? **

Forget about money and follow your interests and curiosities. Share what you learn, and be thirsty to learn from others. If this isn’t enough to make you happy and fuel your patience in waiting for success, you should do something else. Also, this post on the way I work may be of interest.

You can find David at kadavy.net, read other Back Office Exposed features and submit yourself for a Back Office Exposed feature. Photo of Kadavy, Inc. at a cafe is from a Chicago Tribune article on Foursquare.

Forget automation: Do everything manually

Jason Cohen’s analysis of “marketplace” business models is fantastic, but this gem is the most important:

But just because automation is the goal doesn’t mean it’s the way to start. The good thing about automation is it’s efficient; the bad thing is you cannot learn because you’re not involved in the process. And at the start, learning is where you should be spending most of your time!

For example, when SpareFoot began they weren’t sure how to charge storage companies. Should it be a $20/month listing fee? Or a flat “finders fee” per lead? Or a commission on leads which convert to sales? Could they charge extra for a “premium” listing? Should purchases go through SpareFoot so they can extract their cut, or should they bill storage companies separately?

If they had picked a strategy and automated it, there’s a low chance they would have picked the right one. All that time spent writing and debugging code, worthless.

Instead SpareFoot decided to automate nothing. When a potential buyer made a search, they grabbed their email or phone number and said “Thanks, we’re going to find you a great deal by Thursday.” Then they banged the phone all day, calling up regional storage facilities. Their pitch was awesome: “I’ve got a lead for you; his name is John Doe and he’s looking for a 10×20 with air conditioning. If your rate is competitive, we can do the deal today. By the way, if you want us to send leads like this to you all the time, it’s $20/mo to list with us.”

The bold phrase in there is damn compelling, right? And of course they varied the offer based on current pricing theory or in real-time based on the interaction with that particular storage facility.

None of this — determining the pricing structure and amount, building relationships with facility managers, and ensuring buyers’ success — would have happened if they started by writing code or any other sort of automation.

When I started MailFinch, I did everything manually — printing, folding, stuffing, licking, stamping, addressing… everything. When I was ready to start scaling, I knew the pain points better than anyone else. Scaling was the easy part.