4
2 Comments

What do I need to learn in order to not mess up my idea?

I have an idea for what I consider a simple B2B product that I intend to build with PHP and React. I think I can produce an MVP for this product very quickly, but it includes several features that I'm worried are easily fucked up. These are:

  1. A "credits" feature: users will be able to purchase credits through Square; I will need to store balances error-free so users' money doesn't disappear
  2. A user database linked with Facebook/Google
  3. A secure dashboard for use by business clients that is fairly secure.

I've been coding for a long time, but the stuff I work on has always been low-stakes and I've long had a tendency to work kludgily. If I get even one client for this product, the possibility for any of those three features to destroy the business in the event of an error is huge. Security, in particular, is a HUGE concern for me. What tools or libraries can I deploy — and what coding practices can I start to use — to make sure that I don't fuck this up?

  1. 3

    Almost everything I've ever built has crashed or lost data at some point. None of the first three startups I worked on could handle the load at launch time.

    I remember getting into YC, and working hard to build my app Taskforce. This was pre-Firebase, but I wanted real-time updates, so I built this system using XMPP. I thought it could handle thousands of simultaneous connections, but turns out it couldn't. I learned that the hard way when we got featured on TechCrunch and Hacker News, the app went down for ~36 hours, and tens of thousands of interested customers got to see our broken app. Whoops.

    Even before that, I had another startup called Syphir that let users apply advanced rules and filters to their Gmail inboxes. Google featured it in their blog post announcing the launch of OAuth for Gmail, and suddenly we were downloading millions of people's emails. It created a backlog so big that we couldn't apply any of our filters for days. Whoops.

    Even Indie Hackers went down for almost 24 hours once while we had a story at the top of Hacker News back in the early days.

    So yeah, I don't have a solution for you to not fuck up, but hopefully my stories about fucking up will help you feel better when something inevitably goes wrong. Life goes on, people forgive you, and it most likely will not sink your business.

    The harder part — and the thing worth worrying about — is how to make something people want and get it into their hands.

  2. 3

    You are going to fuck up. Multiple times. Your job isn't to avoid fuck-ups, rather it is to ensure you communicate with your prospective customers and beta users, listen to them really well and build a product which solves their needs.

    I promise that the success of your business has nothing to do with your ability to avoid any downtime/loss of credits and everything to do with you iterating quickly and responding to users' feedback resulting in a product which, no matter how buggy, provides so much value to the customer that they stick with you.

    The last thing you want is to spend 6 months building a completely secure, bug-free and credit-balance-perfect app that nobody wants to use...