The new year is here, and here at Qbix we are pursuing multiple directions at once, to implement our vision.
- We are working on releasing Calendar Pro, a vast improvement over our current popular calendar app (with realistic calendars, social backgrounds, weather, and more) — our first paid app.
- We are building a unified interface for our apps that will work on desktop, mobile and tablet browsers. About 3/4 of the way done with that.
- We are working on a system that would allow people to invite each other to things more smoothly than ever before, participate in real time streams, subscribe to updates, download native apps on all platforms, and all this in a way that is more secure than using passwords.
As usual, there is a lot to do. But if we are going to accomplish big things this year, sometimes we have to launch small. What I have noticed is that big things take a long time to get done — and while they are getting done, people have almost no idea what it is you are building. I’ve found myself talking about what we are doing, and sometimes I am able to get people to imagine it, but I would rather be showing. We should be launching.
So I have had a general insight about building a system — whether the tech side or the business side — that I want to tell you about. Launch the minimum extendable product first. Sometimes this is the minimum viable product, aka the MVP. But in a system so complex as ours, we have to worry that when thousands of people start using the minimum viable product, it will become too complex or impossible to build out the rest of our vision.
For example, Facebook has started with just a big group of “friends” with no way to put them into groups, until much later. As a result, the entire website has been defined by this. This has affected every part of what they do — from their look and feel, to the experience people have on their site, to their business strategy and decisions as a company.
We already have traction. Every day we have over 30,000 people using our apps (and, from what it looks like during upgrades, at least 150,000 people have them installed). What we are worried about is painting ourselves into a corner and not being able to execute the full vision we have set out to fulfill: namely, a platform for tools that really help people get things done together.
So we have a challenge. If we launch something, it will let people really start getting what we’re doing, and we will get a lot more money and resources which will enable us to pursue our ultimate vision. On the other hand, we shouldn’t launch something that will prevent us from executing our main vision as things grow in another direction.
The solution is to take the minimum product which has the potential to grow (e.g. by invitations and word of mouth), but make sure that even after it has a lot of users, there is a way to build your full vision.
In our case, most of the issues revolve around syncing contacts with your various address books. Part of the way we help people stay more productive is by organizing contacts into groups. But on the other hand, sync is a hard problem to solve. There are very good solutions already in place, but they do not support OAuth and people essentially have to give out their password for you to write a CardDAV and CalDAV client for them. Something that flies in the face of what we are trying to do. So we have to write our own address book importers and figure out what to do about syncing changes. Can we launch without solving those problems? Yes. I would talk more about that but this blog post has already become quite long, and in order for us to get things done, we will just have to break things up into smaller more presentable pieces.
Simplify. And launch!