Thus far, without being able to hire full-time, outsourcing that stuff was the best decision that I've made yet. It enabled us to launch some features that might have otherwise taken me forever to get around to building.
971 karma · joined March 28, 2007
[ my public key: https://keybase.io/garrettdimon; my proof: https://keybase.io/garrettdimon/sigs/gGkgLyPihmN10DRPVM9y5jc0VcNj5_avwRbrTNJgFwM ]
Thus far, without being able to hire full-time, outsourcing that stuff was the best decision that I've made yet. It enabled us to launch some features that might have otherwise taken me forever to get around to building.
I used to think that adding a second full-time person was the solution for alleviating pain, but now I see it as the way for all of the work to simply be more fun because there's somebody else to help accomplish more.
Also, we have a very different view on customer service. I strive to respond to all customers immediately. We could reply within a day, but going above and beyond for customers is important to me. The support requests in the middle of the night aren't even a problem. It's just part of the gig.
In the four years since quitting my day job to freelance and build my app, I've gotten engaged, married, gone on a honeymoon, got a dog, gone to Europe for a week, and had our first child. I also regularly go on vacation and go snowboarding. I've been full-time on Sifter for about half of that time. So I was part-time for about two years, and that was hard work balancing the two, but it wasn't that bad. I just split time between freelancing and building the company. It was stressful at times, but well worth it.
In my case these days, as a solo founder, it's a bit involved. I work every day, but for the most part, I still only work 40 hours per week. I work from home and see my wife and daughter all of the time and find time to go to the gym every single day. I take breaks and spend time with them whenever I want, and I just work whenever it fits into the family schedule. The only catch is that it's very hard to stop thinking about work in my downtime, but I think that has as much to do with me and being passionate about work as it does being a business owner.
It hasn't been a cakewalk by any means, but it's entirely possible. I've got a slide deck that covers some of the personal side of things if you're interested. (http://bootstrapping.sifterapp.com)
UPDATE: Further digging seems to validate that most modern screen readers do ignore pseudo elements. So, there's no doubt that this solution is promising. However, as with anything, your user agent baseline should be considered before using it. Saying that everyone should be using this right now probably isn't a reliable blanket recommendation.
I technically have what some people might consider a co-founder, but he's more of an investor/advisor as I've been the only person that's involved day-to-day.
I also created a presentation recently that summarized what the experience has been like and what we've done right or wrong for our situation. (http://bootstrapping.sifterapp.com)
Finally, I'd also recommend Maciej Ceglowski of Pinboard as a good source. He discusses a little bit of his experience on the Pinboard blog. (http://blog.pinboard.in/)
Keeping churn low has way too many potential variables. The quality of the product, the benefits or usefulness, the cost, customer support, and dozens of other things all ultimately play a role. Even the type of product could affect churn. Is it something that people only need occasionally or something that they'd use daily?
I honestly couldn't tell you how our churn manages to stay so low. If I had to guess, I'd say that it's focusing on making a high quality product and taking extremely good care of customers. We've never had someone tell us that they were canceling because of the quality of the product or support.
The rates and returns were all over the board. The only consistent factor was that once Sifter became more well known, the advertising was significantly less effective at generating advertising. So, it's great for finding new traffic and getting the word out, but once that's done, we'd have throw a lot of money at it to see significant results.
As far as the biggest lessons, they're all in the slide deck. :)
I don't really have any tips or advice beyond making sure that you meet people and build the relationships long before you need them. Then, you have people that you trust that you can turn to when you're ready.
I'm definitely aware of how easily the new services enable you to entirely avoid the PCI issues. Personally, I'd say that their cut is probably well worth it relative to the time and effort that it takes to build it from scratch. However, that's driven in large part because I'd much rather invest time in the product than worry about the billing details. It's not that it's all that difficult, it's just that it's not the core of what makes Sifter unique.
With regards to promotions and stuff, I'm not a big fan of that. I'm a strong believer in keeping things simple and people either like it enough to pay for it or they don't. I feel that promotions might attract people for the wrong reasons. The more complex the pricing is, the more painful it is to deal with, and it can quickly become a distraction from simply crafting a better product.
Of course, plenty of companies have had great success with promotions, but it's not for us. To each their own, right? Either way, I hope the info helps. Best of luck which ever way ends up working out for you.
Keep in mind that it really all depends on your goals, and my goals aren't to create a huge app that generates millions but to build something that's pleasant to use and supports me to the point that I can continue to work on it.
That said, I think that we probably should have invested in improving and polishing our existing features before adding source control and email integration. However, I'm sure those have generated a handful new customers that otherwise probably wouldn't have used Sifter. I think they fall into the categories of things that people need when they're evaluating software but that in reality they really don't end up using.
Really, there's so many variables that it's hard to contribute any level of success or failure to one decision. I'm really pretty happy with everything that we have or haven't done to this point. It's just a bit disappointing to pour effort into a feature and find out that it's only being used 2-3% of the time.
Obviously, since we built it in house, I don't have any hands on experience with the other options that are out there now, but from what I've seen with other applications, I can't see any reason not to use the other providers.
The downside to not building your own system is that you may lose some control over things like invoice formatting or other parts of the user experience.
The other aspect that's a big consideration is PCI compliance. We don't store any payment information on our servers, but it does pass through our servers which means we have to have the minimum amount of PCI compliance. By offloading it to another provider, you're almost entirely free of any significant PCI compliance.
Now that it's done, it's kind of nice having full control over every detail of how we handle credit cards. However, I wouldn't do it again now that there are so many other options out there.
As far as only offering one plan, it simply doesn't make sense for us. Our costs go up based on the amount of usage, so it makes sense for the price to go up for customers who use more resources.
So each night, we bill about 1/30th of our customers. It's not exactly 1/30th because some days have more customers and some have fewer.
http://journal.sifterapp.com/blog/2007/08/bug-issue-tracking...
http://journal.sifterapp.com/blog/2007/08/tracker-status-com...
http://journal.sifterapp.com/blog/2011/07/resolved-vs-closed...
As far as the transitions, it was partially cost and having extra cash and partially just being ready for it based on growing traffic or new functionality. It was never the same set of motivations. Fortunately, we never grew so fast that we didn't have time to scale with the growth. So, it was a combination of "things are slowing down a bit" and "we have the money to take the next step" and "we ought to have a better hosting environment".
The reality is that Sifter almost never goes down, and when it does, it's usually something outside of our control and gets resolved fairly quickly by our host. Now that we're in a higher availability environment, that's helping a lot too.
The outlook is pretty great now. It was definitely hard at the beginning, but most of that was self-imposed. Now that I recognize how rarely Sifter does go down or have performance issues, I know that I don't need to worry as much. It was a difficult lesson to learn though.
The migration to get on the new platform wasn't worth it for us right now. It definitely looks nicer, though, and I'm a little envious of those that signed up later and get to use it.
We built it in late 2008, and either the companies that handled recurring stuff didn't exist when we were building it, or we weren't aware of the ones that did. Otherwise, it's unlikely that we would have gone down this route. However, now that we have it, it is pretty nice to have control over every detail of how it works.
When we made the enhancements, we briefly considered switching to a provider for handling it, but given our existing infrastructure, it was actually easier for us to improve our own instead of migrating to another provider.
What you've described is what I aspire to once we have children. Working from home. Flexibility to spend time with family. Thanks for sharing.