At the time of writing it is already nine months since I’ve started my adventure with mobile app development and ReactNative in particular.
Before that I’ve wrote an simple Android “stopwatch with reporting over email” app for Megaron. I’ve also wrote full blown iOS app in Swift for my startup, that didn’t went live, although the app was decent! (Side note: as it usually is with tech startups run by tech people we didn’t found a market for it).
As you already know, HabitChallenge is not really my “first” mobile app, but it is first that went live and is actually used by plenty of people around the world.
The story starts back in July 2016, when I’ve broke my tibia bone… That means at least 3 months of lying down in the bed… no walking (at least not without crutches), no running, no going out… My first idea (actually second one, first was not to bother about it and live my normal life… how foolish I was) was “Let’s use this time productively and make as much as possible from it!”. That’s how I started thinking about my first publicly available mobile app.
Why mobile app? There were plenty of reasons:
- I wanted to learn whole process from idea inception, through implementation, publishing the app, marketing it… and observing how it grows,
- I always wanted to help other people, create something that would be usable for others,
- Wanted to learn new technologies and explore this part of software development that I was not yet exposed to,
- AppStore and Google Play are now huge markets, why not to participate in them,
- Passive income is a big thing now, and mobile apps sounds like one of the possibilities.
OK, so it would be an mobile app… which platform? iOS or Android? Of course the answer is “both”. Since I was already familiar with development for both of them I know what to expect… and didn’t wanted to play with XML layout files for Android and Storyboard or XIB (which internally are also XML) for iOS; writing UI code manually was also not an option. Lucky on ClojureD conference I’ve heard about ReactNative and that was my weapon of choice 😉
I’ve already said why and how… but “what” is still an open question. It shouldn’t be something big, nor buyer-seller type of app. It should some kind of utility app… or productivity…
Back then I was using HabitLoop to track my habits. It was not the nicest looking app, but it is open sourced has decent set of features and only available on Android. “Yeah! Let’s write yet another habit tracking app!” was my thought… “But it should have some ‘twist’, so that it won’t be a simple clone…”.
At that point I’ve started listing features and picking what will be included in first release (aka. MVP). In about two days I had listed everything, write it down, decided and commit for it.
The first version of HabitChallenge app had:
- awesome UI and UX (that means I need to find someone to do it for me),
- habit that can repeat on particular day of week,
- habit can repeat multiple times per day (eg. drink 7 glasses of water),
- habit can have multiple reminders,
- no ads,
- free version with limits for number of habits, reminders and repetition during the day,
- in app purchase for the Pro version.
Just recently HabitChallenge was installed over 10 000 times on Google Play (it took about 5 months to get there). It is used all over the world (although it only supports only Polish and English) and the “twist”, the “killer feature” is still not implemented yet… and I’m still working it 😉