How long does it take to convert an idea to fully usable product? What should I do to get my app on market? Who to contact? What to do?
In this blog post, will try describing the path of converting your idea into a product.
In this article, I’ll be thinking about creating a mobile app, but I think this is fully applicable to other “IT” products like web, desktop etc.
To begin with, let’s assume you have a brilliant idea. You were taking a shower & it dawned on you. You fell in love with the idea. You want to do it.
Do the research
I must say, I find it really hard to come up with something that wasn’t invented earlier. Even if I think that my idea is unique, it occurs that are many similar products on market. This is not a bad thing. Try using them. Take your time & play with them.
“Are they exactly the same as your idea? Would you like to use them? If not what would you change? See how the apps affected the market? Are they popular? Do many people use them? Will people use your app?”
One of my friend, when reviewing this article said:
‘It’s always a good idea to find a group of people, who might potentialy intersted in using your product, or who are in the same business as you try to be in. Send them emails. Ask them questions about a problem which you are tying to solve with your product. Don’t suggest answer. Maybe they’ll give you a hint what to do”
Ask yourself many questions. Take notes. Write pros & cons and decide whether you want to proceed or not. It might be hard to give up on your idea, but trust me — it’s still better to give up here than to spend many dollars and give up later.
Think about monetization & costs of your app
Yes, I know: you just had an idea and wanted to create a single app, but trust me: it won’t look simple after all. Right now it is an idea but we want it to evolve into a fully usable product. Noone (even the richest people) doesn’t want to create a product that is losing their money. You need to think if you want to earn money from it or not. If so, how do you want it to happen? There are many options here. You can include ads, you can introduce premium users, you can make the app a paid one. Only you know what to do. For sure the development process costs money. Each month, a whole year long you will probably be charged for it. Think about it. Even if you don’t want to support your app after a release (which I don’t recommend) there are still the costs of servers. Can you pay for them pro bono? Are you willing to do so? Remember this is still an idea.
Find your people
This is a point which is quite hard. By now, you have specified an idea, you know what you want & you have a (more or less) business plan. Now it’s time to start acting. It’s time you find a team which you can trust. And this is where it gets complicated.
Again, the same friend who was reviewing this article said, that’s it good to find a co-founder. He added that’s it’s good if he has different abilities then you. If you are a tech guy, find someone with better soft skills. If you are a marketing guy, find a tech guy etc. You won’t manage to run it on your own. Find someone to help you!
Now, let’s find a developers team, which can build the product for you. How to do it? In my opinion, just talk & ask questions.
Why do I think you should put a stress in finding a team? Because here we have a conflict of interest. You want to get your product live. Your team’s company wants to earn money. In IT: time = money.
You need to find a company which is really professional. A company which understand that they are to serve a client in the first place. You might need to talk, talk and talk. Talk to owners of the company (or people in charge); talk to a manager who should take care of your project; just talk. I know this point might be hard, as sometimes we have to choose a company from a tender.
If you have an opportunity of choosing a company, choose a company in which you’d like to work.
Introduce a product to your team
There is nothing worse than a team of developers who don’t understand a product. You should explain why you want to create the app, why users would like to use the app, what is your goal etc. The more you talk about it, the better for the product. Your team needs to fully understand the domain of a problem. Share your idea, what needs to be done, how you want it to be done etc.
Let the team propose
It is not that easy to build an app. Let’s say you want to have a mobile app. Do you know how many different frameworks/technologies can be used to build an app? There are at least 8 popular I can think off (and I was thinking for like 5 seconds). Each has pros and cons. It’s up to you to choose the proper one. It’s up to a company, to open your eyes and highlight pros and cons. Be careful in here. Each company has a limited stack of technologies — they might want to sell you something which is not the best fit.
But choosing technology is not the only thing you should think of. Ask which framework do they want to use to manage the project. Will it be Waterfall? Kanban? Scrum? Again, ask what are the downsides and upsides of each.
Again: read and talk. Talk and read.
In one of a project in which I was involved, a client had an idea. He came to us to build an app for him. He shared an idea with us. We thought it was kinda good, but the client didn’t know how to exactly achieve it. So we proposed a workshop. It was something between Brainstorm and EventStorming. We spent one whole day. By we, I mean our PM, our UI/UX designer, backend developer and mobile developer. We had tons of paper, poststickers, markers and tape. We filled the whole wall of our meeting room with paper. We created the whole flow of the application. During this event we had questions; the client had questions. There were gaps in a flow. We’ve found edge cases. We specified several things. But guess what? During that meeting, we managed to fix everything. Basically, after one meeting we knew what we have to do. Each of us knew the domain.
As I have written above: I believe this point is very important, that developers know the product. If they don’t, they’ll have to suspect how it should work — this might lead to problems & even project failure.
Also, brainstorming can help later in creating tasks/user stories. You know what you want, why you want it and how it should work. You know everything.
It’s really worth to have something similar. Even if you don’t see potential profits now, you will see it later. The coding will be much easier & the management will be much smoother.
This step might be the longest one. Firstly, get to talk to the designer. By now, he should know how the app should work and what needs to be included. But what he doesn’t know, is what colour preferences do you have. Maybe you already have an idea about the app feeling? Heavy, dark or colourful, cheering, friendly? Which path should the designer follow? Talk and tell him. I’d like to add that in this step, a designer (before sending propositions to the client) needs to send it to the developers. Several things might be hard to implement (or not worth it), while others can be provided almost out of a box.
At the same time, developers can be working on setting up a project. Before implementing real features there is work that needs to be done. We, the developers, need to create a repository, configure servers, setup CI/CD, create project skeleton etc. For sure, it takes time. Having at least one design ready, the developers can start working on features.
Depending on a what you agreed, they need to show you the results of their work frequently. If they don’t show it, know that something may go wrong. Are you on track? Is the deadline achievable? How can you know if you don’t see the results of their work?
If you think you can see the result at the end of project development — let me tell you one thing: don’t do it. Let’s say you are working in SCRUM. You have 2-week sprints. This means you will see the result of their work every 2 weeks. You can test it on your own after you receive a new version. If you find a bug, you can let them know earlier so they’ll have time to fix it. If you don’t like the way how it works you can tell. If you want to change the requirements you can do it when you see it.
On the other hand, let’s say you receive a version after the whole development process. For sure you will have a bunch of comments about the app, you will notice several issues. But can you adjust the requirements now when you receive the latest version? Sure you can, but you will have to pay for it. Not that good. Remember time=money. The sooner you spot something, the better for you.
Let’s say you have a version that you want to release to the public. Are you sure you can do it? Have you tested it properly?
Sure, the company which was developing the app, tested it, but you are the owner of the initial idea. You know how it should work and what to expect. Test it. Take your time, and take care of your “child”. Be sure it works as it should. If you are sure it is fine, give it a go and schedule a release.
Release MVP, collect feedback & add new features
This is a very important one. Being honest, I forgot about it. Bartek, when reading this article, reminded me about it & told it is crucial. But what’s it all about?
Basically, the point is: don’t create the whole system at once. Implement only the necessary functionalities — create MVP product (Minimum Viable Product) & release it to people as soon as possible. Why? Because you will see if they really need it or not. If not, then stop it as there is no sense in investing more money in it. If yes, collect feedback. Give them a contact form, or an email address they can use, so they can send you what they like, what they would like to see & what is not working. It’s really important to have it. Otherwise, how do you know what users would like to see?
If you see that most of your users would like eg. to log in with Google account, you should really think about it. If you find it useful, give it a higher priority. Ask your team to implement it. Release it. Make your users happy!
Right now, when you have scheduled a release, think about marketing. How do you want to advertise the app? You need to get people to use it. Think about it. It’s high time to do it.
After your app is released, it sounds like there is nothing left to do. Not true. You or someone else should look after it. Are you going to leave a child on its own?
There are several things that can stop working: your server is down, your app gets banned, you find a bug.
In each scenario, your users will be upset. They can’t use the app. For sure, after receiving a bunch of emails from your users, you will contact your team asking “why the hell my app is not working?”. And they will answer you: “we don’t keep an eye on it. You didn’t ask us to do so”.
When talking about support, you have three options:
- think about signing a support contract
- keep an eye on the app yourself
- don’t care about your users.
For sure, you don’t want to follow the third path. What I can suggest, is signing a support contract. Talk to your team how much time do they think it will take to fix bugs in a month. If there is nothing to be fixed, you can ask them to implement a new feature.
When deciding to follow the second path and keeping an eye on the product on your own. In case something is wrong with the app, you will probably have to contact your team anyway. Or you won’t have to do it if you know how to fix it. But I can see that most of the clients I am working with are nontechnical. Each bug is still going to go through my hands.
I won’t answer the question which path should you follow: it’s all about money. See what suits your business plan and choose it.
One more thing to add. Support isn’t only about fixing. It’s also about performance optimisation, updating 3rd party libraries, fixing stuff and removing nasty things we had to do because of a deadline.
I believe I’ve described the whole process of development. These 10 points are only a short description of what can happen to your idea if you decide to convert it into a product. You can prepare yourself, you can read articles about how it looks but life is life — it will surprise you, even if you are fully prepared. So don’t hesitate, get your money and act!
Featured image source: https://pixabay.com/en/thought-idea-innovation-imagination-2123970/
Other images are drawed by mygirlfriend & me.