How I built my own productivity app
I remember the times using MS Office Outlook mail and hitting the send/receive button to check for new mails, sometimes it gave server related errors, and we were asking IT team to fix it. It was in the days when meetings were arranged by mails or calls and have them on face-to-face even in oversea meetings. We sure have our agendas, but they were personal, not open to public, nobody was intent to block a time period of the day with or without any notes.
How online collaboration became a time management problem
When Google introduced G Suite (now aka Workspace), there was dominant MS Office in the market for competition. Google offered more dynamic and collaborative tools via cloud services (Drive, Gmail, Calendar, Meet) and then Office 365 came to answer to that. From those battles in business app industry, collaboration and coworking tools become more viable and after pandemic the remote work and online meets sealed those tools into our lives forever.
However, like in each tech leap, it created a new problem. Now we needed to deal with managing our calendars publicly by filling with coloured blocks because we could be getting a surprise online meeting invitation to our empty time blocks. We could not decline a meeting request by saying that we need a more important thing to do. If those important tasks were not in our calendar, it meant that the time is free, therefore we started to fill more things to our calendars with locations, working hours, meeting availabilities, lunchtime, workout periods and so on…
Looking for time management tools on the market
This is where I seek for solutions about how to manage my time and calendar in better ways.
Like many people, I tried various apps and techniques like pomodoro and kanban to-do apps. They were OK with their value propositions, but the problem was to find how to integrate your tasks with your calendar. I mean, I wanted to block a time if I’m dealing a to-do task automatically when I was focusing to it. I tried using third party triggering solutions to send time events to calendar but due to lack of features or even paid solutions not worked as I expected.
Decided to challenge myself
Few years ago, I had challenged myself to learn modern web development libraries and got certificates from freeCodeCamp. Those learnings gave me some muscles to built web applications and I sought to find some ideas to built something. When learning new things, it is important to have a flow with focusing and dedication, and need to measure your progress with deliberate practising methods.
I was using a spreadsheet for following my progresses in my learnings and habits. It was looking like this.
First I thought, I can build myself an app for habit tracking and maybe later release it to public. So I decided to search the market if anyone ever made something like in my mind. I came cross by an app which is exactly the same I was thinking to build.
That gave me two thoughts, first is I validated my idea because someone actually tried that, second was should I built it and see if I got a share from the market. They were blue and red ocean market issues.
For almost 2 years, I postponed this idea until I started a new job as a Product Manager. A green light started to flick in my mind because I saw my colleagues around me were struggling to deal with time managing with learning new things between daily tasks and issues like me.
I desperately needed a time management tool to organize my calendar, and I hope it might work for others. However, I had a bad taste with all pomodoro and productivity apps and I then decided to connect all my dots to build my own app.
Why I chose mobile app over web app
In that time, I was reading the Built book from Tony Faddle and physical device interface experiences were itching my mind. In computers, you need keyboard, mouse or a touchpad to interact with UI in apps, but smartphones could be designed for more human friendly and physically (like a haptic feedback to increase experience or touching to screen for interacting elements) therefore I decided to go for mobile apps.
I was really a fan of old Sony digital clocks with alarm and radios, which got blue or green coloured digits. I wanted to go for the same interface on my app to tribute those old styles.
And for coding, I chose Expo Framework for building the app. I know React library and React Native could be useful to develop for both Android and iOS platforms easily.
Learning gaps and falls
It took almost 8 months with early mornings, late nights and weekends to remember and learn things in coding and building an app.
I got a baby and a full time job, he was waking up very early, hence I needed to wake up earlier than him, so that I could be working over the app. And as I have a full time job, I needed to not mixing things up on work times.
Honestly, this progress could be hard for anyone with no idea what would be the benefit getting at the end. It was very overwhelming period and I decided to quit many times working over the app. On those times, remembering the quote of “Journey is the reward” felt good.
I decided, I need a motivator to keep going, and I showed the prototype to my colleagues to get their feedbacks, this led me to keep committing the project at the end of the day because they showed interest with this.
Deciding not to build over to build
By the time the app is working functionally as I needed, although with some bugs, I finished adding things to it.
I used some Product Management skills and tried to be not so obsessed with overbuilding, just focused on shipping it. I started to use the app on a daily basis, and felt it really worked for me to focus on my tasks and adding their time logs to my calendar.
Actually, I didn’t want to move it to the App Store or Google Play because I never had any experience releasing an app on platforms. However, my colleagues which I showed the app started to ask how it was going. (good for starting a conversation) I thought that I need another challenge to ship it to their phones and most importantly, finishing a thing that I started.
I decided just releasing the app on App Store because I saw more iPhones around me rather than Android phones.
Then figured how to open an Apple developer account and which requirements they ask to approve an app. Once again, it became a long journey for me, and I caught into learning wheels again.
I learned the design guidelines for iOS, the documentations, privacy issues and most importantly how to handle rejections :)
By the time of my 4th submission, I decided with not doing their request (it was adding an Apple Sign-in button), but objecting that they did not understand what the app suppose to do.
Surprisingly, Apple review team gave the approval after I wrote my statement, I did not expect that to happen. Soon, it released on the App Store after hours.
My Takeaways
Now, when I search for my app, it is a strange feeling to see it on the store. Basically, you’re making a tool that anyone can use, benefit from, or hate it. Your ideas work on someone else’s devices.
The most valuable takeaway for me in this journey has been to challenge my limits, producing a tool, and shipping it.
If you read so far and curious about trying the app, I put the link below to check it.
References:
Deliberate Practicing: https://www.youtube.com/watch?v=1-sjUoGO250
Productivity Addiction: https://www.bbc.com/worklife/article/20200807-when-productivity-becomes-an-addiction
Time Management Techniques: https://timeular.com/blog/best-time-management-techniques/
Deep Work: https://blog.doist.com/deep-work/
Everyday App: https://www.indiehackers.com/interview/the-productivity-app-that-helped-to-build-and-grow-itself-b4d7afdf11
Red and Blue Oceans Strategies: https://www.blueoceanstrategy.com/tools/red-ocean-vs-blue-ocean-strategy/
Product Manager Hustle Culture: https://www.productplan.com/learn/product-manager-hustle-culture/
Build: https://www.goodreads.com/book/show/59696349-build
freeCodeCamp: https://www.freecodecamp.org/
Expo Documentation: https://docs.expo.dev/
Ship It: https://www.goodreads.com/book/show/43205214-ship-it
Apple Developer Program: https://developer.apple.com/programs/
App Store Review Process: https://blog.bitrise.io/post/app-store-review-time-what-you-need-to-know-for-a-smooth-app-approval-process
iOS Design Guidelines: https://developer.apple.com/design/human-interface-guidelines/guidelines/overview/