There isn’t much to talk about because it’s not a very complicated app but if you are interested in the process of software development then read on. If you would find these topics boring then it’s best to skip this section and jump forward to the next section.
This post is the eleventh entry in a series of 13 about the story behind the app on Zen Enso. Before continuing, I would recommend reading prior entries first to get a better understanding and flow of the contents.
- A Spark That Kick Off a Quest of a Soul-searching Adventure
- It’s Very Entertaining Listening to Alan Watts
- The Old Man Pointing the Way
- 13 Lessons I learnt About Myself and Probably Useful to You as Well
- The Evolving Ideas and the Differences it Might Have
- What Zen Enso is Aiming for and Trying to Bring About
- Should Life be a Puzzle to be Figured Out?
- The Authors are Who They are: Human Beings
- How to Best Use Zen Enso and to Contemplate About Your Life
- How Does the Name Zen Enso Comes to Be?
- Zen Enso Could be One of My Best Work Yet
- The App Reception, Extra Resources, and a Closing to the Story
- The TLDR: We Don’t Have All the Time in the World!
No, there’s no Kanban nor Agile process because I’m the only sole developer on this app. I just do what feature comes to mind and continuously improve and polish it until I am satisfied with the result.
Android App Development
I started prototyping it back around April 2020 to get a sense of what it might be. In a short amount of time of 2 weeks in my downtime, I’ve gained an MVP (Minimum viable product) after hacking around in my free time. It’s not pretty but functional at least.
I didn’t manage to continue the prototyping stage and need to shelve this personal project as the demands of my day job came knocking. So, I put it on a hiatus for a while until I can get more time to work on it.
Programming can be a mentally exhausting task even if I’ve been in this field for some time now. It’s a creative process that needs intense focus and dedication to solve a problem one by one in successive sequences.
The best moment is always when I fall into the flow zone of focus work and lose track of time. However, my productivity rises tremendously but the downside is I sit too long and time flew by in an instant.
Come October 2020, I restarted the project in an all-new project structure, planning, and direction. Development went on for 4 months to flash out all the parts and modules.
The Technologies and Architecture
Zen Enso like with my others apps is built natively with either Java or Kotlin by using Android Studio. I never would want to build a hybrid app if I have control over the architecture because a native app will always outperform a hybrid one on performance and widget control.
Kotlin is the primary language I use to write the code and MVVM with Clean Architecture to structure it. Many Android Jetpack modules are used to ensure I have the most modern setup I could have at that moment to ensure maintainability.
It also contains lots of common Github libraries that I usually rely on to speed up development time and cut down on potential errors. I even built myself an internal shared module library to reuse code with my other apps.
There is no complicated CI/CD (Continuous Integration and Continuous Delivery) pipeline, SonarQube, multiple steps module merging, and version updating process because it is not needed in a small project of 1 person.
Getting Quotes and Cleaning Them
I also wrote a lot of support code pieces in Kotlin with IntelliJ IDEA Community Edition that is needed for the processing of the quotes and controls.
The quotes are scrapped from Goodreads which I wrote a scraper to do the job. One of the most time-consuming jobs was deciding how many quotes to pull, edit, clean, remove artifacts, weird symbols, packaging, and transfer.
Data cleaning is no joke 😖.
Polishing It Up
In early February 2021, most of the work is done and can be published if I wish to. However, I don’t feel that it is polished or fine-tune enough yet and I don’t want to do a lot of updates after pushing it out in the public.
I was still fussing over the database because of the number of quotes it stored. So, I wanted to make sure it is clean enough and presentable but combing it takes a lot of time and energy.
So, the time between February and August 2021 was used for refinement and polishing the app to a standard I would deem good enough. I want the premium feeling of a nicely built app that people will enjoy using and sharing with their friends and families. Something that will be remembered and be of use often.
Time to Release
On 24th August 2021, I released the app after I feel confident enough about all my preparations. It went live on the Google Play Store and the rest, as you know, is history.
These are some of the features Zen Enso provides.
✔ 75 authors over 5000+ quotes.
✔ Existential corner with 101 questions that you need to tap the bunny for one.
✔ Dark Mode theme available.
✔ Able to bookmark your favorite quotes.
✔ Share a quote you enjoy with your loved one or friends.
✔ Quote can be shared as an image with the copied text.
✔ Able to do a full-text search on a given keyword.
✔ Pin your favorite quote on the app dashboard and notification bar.
✔ Sticky daily morning notification and pinned quote option available
✔ Daily timed notification on a randomly selected quote.
✔ Daily notification quote is saved up to 7 days to rollover.
✔ Full-screen quote customization with different sizes and fonts selection.
✔ Offline viewing when there is no internet connection.
✔ Speak aloud the quote at your pleasure via your phone Text to Speech (TTS).
✔ Back up your bookmarks and author categories.
✔ Minimalist UI experience.
✔ Optimum quote viewing experience.
✔ Collection of grouped authors with similar thinking.
✔ Quote bulb to indicate possible details.
✔ Easter eggs in a few of the quotes.
✔ Resources to learn about Buddhism, Daoisms, Stoicism, Zen, Wabi-sabi, and general life.
If you are wondering about the reception of the release. Do check out the next piece to find out more.
Thanks for reading the 11th entry in a series of 13 in total. The next post is The App Reception, Extra Resources, and a Closing to the Story if you wish to continue the story. See you there!