theater stage with spotlights

This is part of my 4-year bootstrapping retrospective. Part 1: Why Bootstrapping Was The Only Logical Choice.

A couple months ago, I found something I wrote accidentally on Hacker News. Having vitriol spewed at me. (Surprise! Some might say those two phrases are redundant! ;)

Why?

My husband and I had shut down our second SaaS product, Charm.

Charm was beautiful & wonderful (with — dare I say it? — a revolutionary workflow) and our early-access customers loved it. We’d been working on it for two years. We hired an expert sys admin to design us a scaleable architecture, and we had arranged the servers. We’d had freelance help all along, and we paid for the best (and while the best loved us and gave us discounts, the best is never cheap!).

By October 2012, Charm was already covering its own (massive) server bills — or, in other words, bringing in the better part of $4,000 a month in revenue. That was before we even opened it up to more than just a tiny sliver of the 3,800 people who signed up to “Be the First In Line.”

While our first SaaS, Noko, had just recently topped $400,000 in revenue a year, I was sure that Charm would grow ten times faster.

Then we killed it.

Why?

Why would we shut down a product that our customers loved, that was already monthly net-neutral, that we’d spent 2 years and something like $175,000 to $200,000 on?

This is what Hacker News couldn’t understand.

I wrote an email to our beloved customers, explaining:

You probably noticed Charm had some nasty downtime a couple weeks ago.

Service quality is very important to us. If we didn’t think we could do better, we wouldn’t do it at all.

We’ve spent very generously on sysadmin services and infrastructure (nearly $100k of investment on sysadmin services/infrastructure alone). We hired the best possible, and we splurged on a redundant, powerful, and expensive server configuration from the beginning.

Now we’ve discovered that there’s some kind of base incompatibility with Ubuntu, which is giving us kernel panics which nobody can track down. Charm has been plagued by mystery technical problems from the beginning, when we had to backport from Rails 3.x to 2.x because of massive performance slowdowns which even Rails Core members couldn’t identify.

What this has really shown us is that, if we open Charm to the general public, we won’t be able to provide you with the kind of service you deserve. We are a tiny team, and so far, we’ve had zero luck in our attempts to grow by hiring developers. Problems which are small now will only get bigger.

There are a lot of things I’m willing to take risks with, but not with your ability to provide support to customers for your business.

And so it is with a very heavy heart that we will cease operating Charm from Dec 15, for the foreseeable future.

You won’t be billed again, and we’ll refund your last payments.

We will gladly help you migrate your data out of Charm. Please contact us directly ([email protected]) for help.

Thank you so much for taking a chance on us, and sharing our dream for a superior email interface.

I’m truly sorry to disappoint you.

Best wishes,

Amy

That’s what ended up on HN. And all Hacker News could see was the technical issues. But I’m sure you, dear reader, have better reading comprehension than that.

It wasn’t about the technical issues. They were just the harbinger.

We shut down Charm for the best of all possible reasons:

  • Feeling responsible to our customers.
  • Feeling responsible to our own values.

Our company is three people: Me, my husband Thomas Fuchs, and one employee, Devon.

We’d already spent the more than 1/3 the cost of our house on development. (Our own money, in case that wasn’t clear. You know my position on funding.)

So, by the time fall 2012 rolled around, we knew it was “Now or Never” for Charm’s public launch. Cue another list:

First of all, it had been a long time coming.

Secondly, I didn’t want to keep bank-rolling it from the money we made from other projects (namely my class, 30x500). There’s no point in borrowing from Peter to pay Paul forever. I’m running a business, not a playground.

So we set a date: November 2012. This impending launch clarified a lot of things.

First, it was clear that Charm was going to be a much more demanding product to run than Noko Time Tracking. For starters, to get great performance to grow to hundreds of customers, we needed $3k/mo of servers. Charm dealt with email; that’s a lot of backend connectivity involved, not to mention a lot of data to store, index, access, and search. We also built a totally live interface using Backbone.js and that is not without its performance costs.

Secondly, Charm, unlike Noko, required high availability. If your time tracker goes down, it doesn’t actually prevent you from doing your work. Charm, on the other hand would be people’s work. Charm downtime could possibly cause our customers to lose customers.

That’s an awful lot of responsibility for a technical team of two (one sick).

Thirdly, we had two products to run: Noko, and Charm. Plus my class. We’d already trimmed our sails by stopping our JavaScript Master Class for months at a time. It was still too much. Charm wasn’t moving forwards as fast as we needed, development-wise. Noko wasn’t moving forward at all. Something had to give.

Therefore, we knew we needed either to find the right employees right away (fat chance!), or find technical partners to help us run the app.

So we took the partnership route with people we knew, respected, and trusted.

It didn’t work out.

This wasn’t anyone’s fault. We’re still friends and they’re fantastic at what they do, and we still work happily with them. But it’s been my experience, again and again, that just because you work beautifully with someone in one capacity doesn’t mean another arrangement will necessarily work, for all kinds of reasons.

(This applies equally to all permutations of consultant -> partner, friend -> partner, friend -> freelancer, friend -> employee, freelancer -> employee, employee -> freelancer, etc. My husband and I work together like a well-oiled, if occasionally cranky, engine. But that wouldn’t work for most people, either.)

So, while all this was coming to a head, in October… we were on a trip. We’d intermittently had weird Charm crashes, etc., for which we relied on our aforementioned expert sysadmin (to the tune of $200/hr — well worth it, by the way).

We had been at a biz conference in Scottsdale, and then rented a house for a week in Sedona, AZ. Thomas, Devon and I put our heads together for several days to work on the Charm launch. Then Devon headed home and Thomas and I had a couple days to ourselves.

Charm went down one night at 3am.

Our freelance sysadmin wasn’t available.

The servers weren’t responding at all. It wasn’t just that the app / web server had lost the thread… the whole system was unreachable. Thomas busted his ass to figure out what was wrong. We had to rely on Rackspace’s excellent service to get things back online. Nobody did anything wrong, but it still sucked the big time. My husband gets real tetchy when he is stressed out. (As do I.) We were supposed to be relaxing. It didn’t happen.

We have friends who run infrastructure products… and they thrive on it, but during this minor catastrophe, we thought back to their lives, and we had flashes of the future, of receiving server alerts in the middle of a party, of having to scrounge up a laptop to fix it (or leave)… no thank you.

Above, I broke the timeline a little — it was about a week after we returned from this trip that we decided to end our partnership. Things simply came to a head. Expectations weren’t met, words were exchanged, tears were shed (at least by me!). Stress, stress, stress.

So, there we were with:

  • An unwillingness to spend more out-of-pocket
  • A failed partnership and no hiring prospects
  • No development momentum
  • Downtime, another mystery problem, after we had already had so many
  • A very real preview of what our lives would be like if we continued down this path
  • Customers who were currently very understanding, but who would no doubt cease to be, the less and worse we did
  • Another product with happy customers, easy to run, and profitable, which we were neglecting
  • Did I mention I have a chronic illness?

Our choice was clear… there was no choice. Charm was already dead. We just called off the chest compressions.

So…

Charm is by far the best thing I’ve ever designed. I love designing software and I believe I have a unique approach; workflow, and good feelings, above all else, are my focus, and whenever I start to question my own self-regard, I use other people’s software.

Charm really is great. When people use it, they love it. And they happily give us money. (Lots of it! Charm was expensive and that didn’t deter our early customers.)

But what good does all that do me if we’re miserable? Or if we have to sacrifice everything else we’ve built trying to shove this fat baby bird out of the nest?

So of course, I love the product and I want to see it out there. We thought, we can give my baby up for adoption, maybe. I talked to some people in the industry about selling it. (Another list!)

First, I knew another bootstrapped software company just like ours that attempted to sell a (profitable) product they needed to “twilight”, for the sake of focus. They loved their customers and wanted to ensure continued service. Were they able to sell the product? No. They contacted all their competitors and a lot of other folks besides. Nobody wanted to buy it without the team, or they just wanted to buy the customer list (and shut down the product).

I asked one of the many venture capitalists who reach out to me: OK, I’ll bite. How often do product-only sales happen? Just about never, he said.

I asked around the folks I knew who were knee-deep in the more traditional startup space, where acquisitions happen. No good prospects there, either.

So, continuing the way we were going: Hell no.

Selling: Not an option.

Emergency hiring: Not an option.

Partnerships: Been there, done that, ripped up the t-shirt.

Taking investment: Hahahah. I only included this for the humor value. I’d take out a second mortgage before I took investment.

Shutting down with dignity was the only option left.

And so I wrote that heartfelt email, and sent it, and our customers were all really nice about it. They knew we’d always striven to take great care of them, and people respond to that.

Finally, we helped some of them migrate their data out, gave them nearly 8 weeks to make other arrangements, and that was that.

Charm is now gone. The landing page is gone. We use it internally (on a slooooow server) and that’s that.

What have I learned?

Well, for one, making the right decision always makes you feel better afterwards. Or at least, it always makes me feel better. It sucked, but it was a huge relief.

Two, if you treat your customers right, they’ll treat you right. Unlike some services that get acquikilled, we didn’t just shut down and delete data without warning. We did the right thing… as much for their quality of service as anything else. And our customers respected us for it. The general response was, “Aww, we love Charm, but that’s so sad! But we understand.” Some of them even thanked us (!) for making the right, hard decision.

And friends asked, “Are you okay?” like it was my cat that died instead of my product. That was sweet and meant a lot to me.

Three, the loud-mouthed people “in the stands” at Hacker News are full of crap. But, no surprise there. “OMG HOW DID YOU SPEND $100K ON THAT?” “For that much, you could hire TWO sysadmins for $5k/mo.” “Nobody will ever fund you now!” “Nobody shuts down because of technical problems! There must be a conspiracy!” Lulz. Sound and fury signifying nothing, my friends.

(Don’t believe that people would really say those things? Here, go read for yourself.)

If you were to only see the HN thread, you wouldn’t know that the people who matter (our customers) were kind. I bring it up because I believe this kinda crap has a chilling effect and I like to show what it’s really like.

Those were the lessons about the shut-down itself. As for what I learned about the whole two-year process:

Just because a genuine need exists, and you can fill it, doesn’t mean you ought to. Yep, I can design a better support tool than just about anybody else before and, so far as I’ve seen, since. But that’s not good enough.

I hadn’t fully thought through the issues of running an infrastructure product. Noko’s a doll to run. Charm would be, by its very nature, much more demanding. If I had anticipated our difficulty in hiring-people-to-worry-about-it-for-me, I would never have embarked on the project at all.

It’s easy to assume you’ll grow by hiring, right up to the point where you actually experience hiring someone. Big “duh” there. Everybody talks about growing with bodies as if it’s straightforward, even if finding talent is a challenge. But what I’ve found is that there’s little problem finding people to hire, but hiring is such a risk because if you hire the wrong person, it can ruin everything until (and long after) you end the situation. Devon has absolutely been the ideal hire for us… but before Devon, I had hired two people I was forced to subsequently fire. The stress was terrible for my health. And my health is far more important than any kind of glory, growth, respect, or revenue. I cannot keep hiring if I keep a 33% hit rate. (And, if you’re hiring and you plan to be a kind of semi-absent owner (either due to putzing around Italy, or sick), finding the right person gets even harder.)

You can do everything right… and still have it blow up in your face. In terms of the tech, we knew what we were doing. You might say Thomas knows his way around Rails, as a Rails Core Alumnus, and we certainly know what’s what when it comes to JavaScript performance. We hired people who were top experts in their field (including Rails committers). When we had those unbearable, unmanageable Rails 3.x performance problems, members of the Rails Core team helped us to try and track them down. They couldn’t figure it out. When we had another issue with the server architecture, nobody could figure out what it was. We don’t blame our sys admin at all. He has an amazing track record and we know he did a great job (sometimes at his own expense because he, too, was frustrated with the situation).

There is nothing at all wrong with our former partners; we love them. We gladly work with them to this day. It was simply that the particular structure of relationship (partnership) wasn’t one that worked for us both.

You can be a world-class expert; you can hire world-class experts; you can do everything right… and things can still go wrong.

There is no certainty in this world. There is no protection. Sometimes there is nobody to blame.

Making decisions out of boredom is pathetic. I love a good challenge. My mother couldn’t afford to replace my ancient Centris 610 when I was an 11-year-old begging for a PowerPC. So what did I do? I made the money myself. I sold all my My Little Ponies and a bunch of my other toys at a yardsale; I did errands; I washed cars. I rise to challenge. That’s one thing that’s never changed about me.

This time, to my detriment. Charm arose partially out of rage at the shittiness of the existing products (which we had to use endure every day!), and a knowledge that there was an open space in the market, but it was also most tantalizing because Noko, good ol’ Noko, happy Noko, was boring. I wanted a bigger challenge.

Duh.

Ego is stupid. We had a little bit of Second Product Syndrome, make no mistake. Launching Noko was stressful, sure. But launching Charm was much more stressful. My actual thought process went something like this:

“OK, when we launched Noko, we weren’t really risking anything reputation-wise. But now we have a reputation and it’s important to ship something that, even if it’s incomplete, compares favorably to what people expect from us.”

Who knows, possibly if we’d ignored that bit of stupidity, we’d have launched Charm as a Shitty First Draft, and found all this out sooner. Or perhaps attracted the perfect technical hires by serendipity & being “out there.” We’ll never know now, though, and that’s ok.

I’m smart and learn from my mistakes. By the time we shut down Charm, I had already seen, admitted, and internalized all of the above. I’ve got no problem at all admitting when I am wrong. (Psst: I was wrong.) And so I didn’t worry about how our “reputation” would suffer for shutting it down (what does that even mean?) and I didn’t really worry that our customers would hate us, because I knew we had given them no reason to.

We’ve doubled down on Noko and it’s growing, we’re happier, our customers are happier, we’re still working with our former/would-be partners, and all is rosy in Hoy-Fuchsville.

That leads me to the present: I’m writing this essay to share what I learned with you.

Despite this all sounding like a horrible (and preventable) situation, we made the right (hard) decision, and in my opinion, I’ve come out looking feeling good about my husband and I and the way we handled things, and still have the respect and friendship of our now-former customers and partners… and that’s all that really matters to me, in the end. What are the fevered dreams of random strangers on the internet, compared to that?

Nothing.

How do you make your first sale?

Follow our FREE roadmap from $0 to $10k and start your product business one small, achievable win at a time.

When you subscribe, you’ll also get biz advice, design rants, and stories from the trenches once a week (or so). We respect your email privacy.