Skip to content

Nayanika: Preamble

"Having a one or two side-project could prevent you from burn-out", They said.

Well…​ it’s true for me. Having a side-project help me to distract from my day-to-day job.

When you’re work for someone, your fate is already sealed. You can’t freely pick the project you want to work on. You can’t choose your favorite frameworks or libraries. And working more than two years on the same project, trust me, is not fun.

While having a side project I could build new things. Using the latest frameworks or libraries. Or, able to apply what I just learn immediately. It help me to keep my emotion away from burn-out.

Most of the time, my side-project is just small and short-lived. It could be a small project using the shiny new programming language. Or using the latest frameworks and libraries that are in the hype. Even I have tried to learn outside my expertise, e.g.: DevOps and Cyber Security.

So, whenever I’m done with it, I will leave it. I will start to do something new. There is no single of my side-project that could be used by other than me.

But, starting from 2020 it’s changed.

After spending my time in the software development world. I have to learn, unlearn and relearn many things throughout the time. I feel that my knowledge won’t be polished if I do not apply it for real.

During my day-to-day job, I maintained existing projects. It’s difficult to be involved in a green new project. Or involved from start to end in developing a project. So, I feel that I didn’t get the full experience of it.

So, instead of working with short-lived and small side-project. I want to build full-fledged open-source project.

Why an open-source project?

Building and maintaining an open-source project is not an easy task. It has specific guidelines and rules compared with the side-project. I must commit to it. And of course, I also need to see it from start till the end. From gathering the requirements to releasing the project. It will make me able to apply all my knowledge about software development practice.

This is sure a grandiose dream for me. But, I know a project started by a single person and now growing big. Many people are attracted and start contributing to it. It means that this is not an impossible task if I put in my effort.

So, what’s the project?

Actually, I already have one in mind. And I have already worked on it for almost two years. It was starting back in mid-2020.

The project was called Nayanika. A desktop application for reading a comic book. I think only this project has lived longer compared with others. And I keep stick work on it till today.

It’s not like I face a great issue when working on it. Actually, I already have a Minimum Viable Product (MVP) on 2021. But, I still feel is not enough. I keep finding things that I want to improve or enhance. So, I keep refactoring and recreating it again and again.

What’s the difference now?

"Define a clear intention of what you want to achieve", the wise man said.

I want to develop Nayanika professionaly. With the intention that it could be used by others. And I know to do that I must do it right from the start. Not just spend my time coding without any plan and goal.

I’m not thinking that the two years I spend working on it is a waste. In fact, I gain much knowledge. And I keep finding things that I could improve. So, I challenged myself to develop Nayanika once again from scratch.

I want to publicly share my journey in developing Nayanika. Under open-source best practices and applied all my knowledge about software development.

This is more of a journey than an event—​it will take many months to get through the entire process. And of course, I will publicly post on my website. If you are interested, join me to see how far I could bring Nayanika to the world.

If you have any comments or corrections please feel free to email them to me. Also, if you found any of the content on this website useful consider buy me a coffee ;)