How to build a product people love?
tl;dr: In a way, we already achieved our stability goal. TablePlus is now a production-ready database management tool as the core features are stable enough for the day-to-day database tasks. In this post, we want to share our journey of building TablePlus from 0 to what it is today.
What’s in our minds
As we mentioned in our quick introduction to TablePlus, we couldn’t find a perfect database tool for ourselves. We were familiar with all the tools available at the time but the thing was, they were so outdated, or just not good enough for us. They were either having poor performance, running slow, or being too unintuitive that we couldn’t put up with.
So we decided to build a tool for ourselves and that’s how TablePlus was born.
Because we are the end users, so we understand the problems really well, and we know exactly what is needed to solve that problem for us. We need a database tool that is:
- fast
- easy to use
- highly reliable
And this is what is looks like:
As it turned out, we were not alone.
People started to adopt TablePlus, one by one. And with zero spend on marketing, we have built a significantly strong community with thousands and thousands of developers, DBAs, Data analysts, data scientists, students, and teachers, from all around the world using TablePlus every day.
That was purely word of mouth. We somehow got lucky being discovered by a lot of people, but at the same time, we think we have done at least one thing right, which is making people happy. You know, if you can manage to reach a lot of people but with a crappy product, nobody would come back and use it again. Retention should always be the prime goal. And people only stay when they feel happy.
How did we do that?
There are two parts of making people happy:
- Building something people love
- Making people trust
Let’s get into details.
Making something people love
1. It has to get the job done
In our case, it has to be a competent database tool. And over time, we think that we have been doing pretty well with that.
- Performance: The app was built native, which is pretty neat and fast. It can get up and running in half a second. It can handle queries execution at a lightning speed.
- Stability: We want our users to have the confidence of using the tool. We’ve tested on many complex cases to ensure the app run smoothly. You don’t see it crash that often.
- Usability: The intuitive design makes it easy for any new users to adapt to the tool without being a tool expert. You see it and you know it immediately. All the most important features are available right in front of you, while those with less usage will be nested inside.
And it’s free. Anyone can be able to download the app and use it for free, forever.
That’s all we wanted, and we are happy using what we have built.
2. Stick with our core values
- We want it to run fast, so whatever we do, we would never sacrifice its performance over anything else.
- We want it to be clean and simple, and we would never give it up too.
But in order to make TablePlus feature-rich, we have to add a lot more features, and more features will easily lead to a bulky app with low performance and a clumsy interface with a bunch of features stuffed together. To solve this, we came up with a plugin system.
The core features that are most important will always be there in the app and keep being improved, while all the extra parts will be moved into the plugin system instead. To customize the app for higher needs, you can install plugins written by others or write your own plugin in Javascript.
This way, we allow the app to be extended beyond the basic needs but still keep it clean and simple.
3. Listen to our users
It came to our attention from the beginning that we were not just building a tool for ourselves, but tackling the problem of a larger community. TablePlus is being used by a lot of people. And to make sure that we got it right, we chose to listen to our users more. We stay active on Github, Twitter, Website support, Facebook, anywhere that our users can interact with.
The most difficult part of listening to users is not getting as many feedback as possible but evaluating the feedback and balancing between your own product vision and customer requests to keep your product simple.
There are a number of questions we ask ourselves whenever we hear something from our users:
- Is it a bug? If yes, fix it immediately
- If it’s not a bug, then am I, as a user, seeing this as a problem?
- Is this something that happens frequently?
- Which tool did they use and how can it affect their opinion?
- If we make the change, how can it affect other users?
- Is there a better solution for this?
To validate our assumption, we went on with our research:
- We looked at what people are complaining with their peers.
- We looked at the common behaviours from similar products such as text editors.
- We counted how many times people requested it.
- We ask our users’ opinion about it.
- We looked at the statistics to see if people actually use it.
4. And we keep improving
Listening to feedback, evaluating opinion, implementing, and back to listening. We just keep repeating that cycle over and over again. We understant that no matter how good something is, there’s always room for improvement. Having bugs is somewhat tolerable, it happens sometimes. But not fixing it while you are aware of is unacceptable. And people just love seeing progress being made.
We improved TablePlus quite a lot, actually. Over 1000 changes were applied to the app over the past year, and that number is not gonna stop there. We keep updating and releasing a new version every week with loads of new features and bug fixes.
Building trust
Building trust is hard. We cannot just jump out and ask people to use or buy something from us. That doesn’t make sense as we are literally nobody.
We have to build up that trust step by step. We really spend time and effort into learning from users, building product, and taking care of many little things. We focus heavily on one very important aspect but usually underrated, that is doing support.
Can you recall the last time you requested a new feature for a tool you used, how long it would take to be implemented, even though it’s an important feature?
I bet it normally takes a couple months, if not forever.
Or when you have a question which you can’t find the answer anywhere else but reach out to the support team, and you only receive the answer a couple days later?
Even worse, have you ever reported a critical bug and have not seen it fixed until months later?
I bet more than once.
If you use open source software, it’s up to the managing team whether they want to implement something or not, you can not really demand it. But it’s always the responsibility of the team to listen to users’ requests and make what is best for them, as fast as possible.
We are always there when our users need us the most
Doing customer support is not about listening to complain and answering the question, but it’s really about proactively helping them solve their problems.
Lots of issues from one customer can be a sign of a meaningfully-engaged user; lots of open issues or tickets that take a long time to close or can’t be resolved may indicate a user that’s at-risk of churning out, or, at least, won’t be an advocate for us.
When something bad happens, it’s always better to get it resolved quickly, then we’re good. If it’s not being resolved quickly or at all in a way that’s favorable for the user, then we know that they’re not happy. And that makes it worse.
We want to eliminate that barrier, we try to respond to feedback/request/bug report and provide them with a solution as fast as possible. We normally reply within a couple minutes, if not instantly. If it takes any longer, that’s only when we go to bed, and it would not be longer than a couple of hours though.
By doing this, we are letting our users know that we do care about them, about their problems, and we will always try our best to help them solve it.
Being said, TablePlus is still in the early stages and has a long way to go. Thanks for being around with us. We will keep building and improving the app. We want to hear more from you on feedback & suggestions, please tell us if you have one: Create an issue.
Not on Mac? Download TablePlus for Windows.
On Linux? Download TablePlus for Linux
Need a quick edit on the go? Download TablePlus for iOS.