All posts

Up from the ashes Image source: uplash.com

Up from the ashes

July 28, 2024 | Rahul

Staying motivated when building an application or any work can be quite hard. I stopped building Hellokea for more than a year after losing my interest. People always say choose something you love. I would say, make something when you have a lot of users – that will give you great motivation. It’s a chicken-and-egg problem. When I started, I believed there is a market for everything. People will buy your product when they think it’s different and worth their penny. I do have users who use our product for their day-to-day tasks. There was some good feedbacks, and the best part is they are still using it. The issue is the revenue. Building an application with sustainable revenue is hard and expecting that in the very early stage of any business is impossible.

The initial spark

My first product idea was to build a tool for communication and marketing. This is the core part of starting Hellokea as a project. During the time I started, I wanted to start with the hardest problem which is a helpdesk software. My plan was to build a tool that includes a helpdesk, growth tool (for posting content to social networks), and a newsletter. I even completed building changelog as a start tool which for some reason I decided to bury it after receiving feedbacks from my friends. What I have managed to complete was Helpdesk system. I always wanted to do something different with the helpdesk software. When I tried 3 different popular software of the same kind, I felt it was quite hard for me to even navigate. This led me to write helpdesk from scratch.

It was a fun start. Every single day was challenging and hard. Email parsing is not easy, and making it work like a client was a great challenge. So that kept me going until I completed the whole helpdesk module. Sure, there are still a few features that need polishing, but the real icing on the cake was my first few users. They were really kind and kept me going. My interest faded after my impossible task was over—the helpdesk. Though I kept using the app for my custom domains and my helpdesk needs, I started focusing more on my day job and got distracted by machine learning. I got into the FOMO cycle to learn about AI and totally dropped my interest in the project.

Fear of competition

Losing interest is one part. I believe subconsciously, the reason could be my competition. Yes! As you know, the market is flooded with lots of helpdesk and customer support software. These are run by huge companies with great funding and talented teams. How can you survive? Survival is the second challenge. The main aim is to convince a few users to use your product when polished and mature software is available in plenty. This made me lose confidence in my grand ambition. Mine is a rare scenario. I did have users using my product. Wasn’t that enough to jump-start any project?

Not sure what happened there. I just couldn’t start. When I keep looking and trying different products in the market, the confidence level plunged even deeper. I badly wanted to abandon my existing small user base to try something new. Something that should keep me going for the next idea. At one point, I even thought it could be because of the depth of the project that I am working on. Hellokea is never about Helpdesk. It’s a toolbox with different tools that would help you to establish your product.

Dusting off the cobwebs

Everything needs a triggering point. The same thing happened again with this project. One of my users wanted to change a behavior of certain feature when emailing their customers. They politely asked me whether it’s on our roadmap since they haven’t noticed any new posts on our changelog or blog for quite some time. As I manage my customer support using Hellokea, I felt the pain. It was a subtle change, and I thought it would be better to spend 3-4 hours to make things work. This was the exact moment that made me realize the work that had been put into building this project. The codebase is massive. There are many modules which I had no clue about. I thought would be better to clean the mess and finish off the feature.

It was certainly not a 3-4 hours job. At that point the frontend was written on Vue2 for Inbox UI. One of the things I learned from touching an old javascript code base is the dependency hell. It’s literally like dusting off the cobwebs. As I was learning Vue when building the UI, I didn’t pin dependencies of packages and the software (node) version. I was at a stage where I didn’t want to change anything and couldn’t push anything back to production. This made me change the whole Inbox code to htmx. Initially, it was scary. I believe no one in their right mind would do that. I was also scared about the smoothness of the page and the interaction between components. I kept digging the code, documentation and hyperscript. It was simply the best thing happened to web. Now the entire frontend is pure html with a bit of javascript. Once I rolled out the release to my users, they were quite happy. Sure there are a few glitches that need to be addressed, but it’s the code which doesn’t need a babysitter every 3 months to update the packages.

Ironing out & Polishing

It’s kind of refreshing to see how much has been accomplished. For a developer, it was a proud moment to see it work without any hiccups. Currently I have decided to focus more on onboarding and documentation. Hellokea badly needs a logo. To make myself answerable, there’s a roadmap page now. The ongoing development is going to be based on that. All our users will have a clear visibility of the progress and changes happening around this project. This website you are currently reading right now is rewritten in hugo and hosted using cloudflare pages. The list goes on and on. But this time I am committed to this project.

The future

This toolbox currently has only one tool – Helpdesk. My next focus is going to be on growth marketing – a tool which helps product marketers to post their status on various social media and get insights. And, of course, there are products out there for this specific task. I want it to be different, uncluttered and ease of use. It’s going to be difficult and could take some time to build this feature and release it in a stable form. When done, this is going to be a jewel on the crown.

I really want to thank open-source software community. With the current state of the open-source movement, I believe, the only thing that stops people from building a beautiful piece of software is a bit of motivation.