1
头图

A self-taught programmer.

Writing my first line of code at the age of 32 felt like a bad start. I have postponed learning code for many years, and I have always been led by work and other research.

When I finally started, I signed up for my first Udemy coding course, and then I was hooked. If someone told me two years ago, I would often go to bed early on Friday night so that I could get up early to program, I would not believe them 😂.

Purpose and starting point 💰

In 2019, a friend and I opened an exam preparation course in the mining industry. As a side job, by the end of this year, the income of this course had grown to US$10,000 per month.

I am too poor to have money to buy a built-in flashcard application for our students, so this is the fuse for me to finally learn programming👨🏻‍💻. I started to work for an hour a day and got up at 6 in the morning, much earlier than my full-time job.

Translator’s Note: The flashcard application is an internal learning application created for students. Flashcards may be a means of learning and memorizing, similar to card words, guess what

In the first four months, I completed three coding courses online, Udacity's Android basic course ($700) and Udemy's two Flutter courses, and I learned from each course. However, in hindsight, the Udemy Flutter course was the most valuable for me. When I started learning Android courses in Udacity, I didn't know the existence of Flutter. My purpose was to build an Android application. In addition, although I like that the Udacity course has a fixed structure and assignments, paying $800 is much more expensive than the Udemy course ($30). In short, if I knew the cross-platform Flutter that I know now, I wouldn't bother with Android.

The main reason I was attracted to Flutter to make flashcard apps was to avoid learning different languages for iOS and Android apps. In the end, I spent three months building the flashcard application, coding for one to two hours a day, usually working between 6 am and 8 am.

In order to keep progress while developing the flashcard application, I used the free Pomodoro timer application to record my coding time, and then entered the time into the excel sheet to make the chart below. I always have a "actual vs. target" chart, so I can see if I am ahead or behind.

The internal flashcard application is a practice of coding. I learned the skills of creating a basic application, using other people’s software packages, and basic knowledge of using the Firebase database, without worrying about in-app purchases or social authentication.

I suggest starting with such a simple project, something that you can complete within a few months at most. This makes it less daunting and therefore reduces the urge to give up. Even if it doesn't make money, it provides a great stepping stone for future applications.

As all programmers know, you will continue to get into trouble. I have been watching YouTube videos, searching for bug fixes, until I found an effective solution.

At the end of 2019, I decided to add a Pomodoro learning timer to the app so that our students can also track their learning. Making an accurate timer that will not be "sleeped" by the operating system is much more difficult than expected! Building a learning timer for students’ flashcard applications was the starting point for my journey to build learning applications for the public.

My learning app for the masses

Like many independent developers, my public application was built out of a desire to "tick myself". I'm looking for some features that other public learning/focus timer apps don't have, especially the "Actual vs. Goal🐛" chart.

By the beginning of 2020, I have a strong desire to use the coding skills I learned to build internal applications to make my own public learning/focusing application. But I convinced myself not to do this.

Here are some screenshots of my study/focus application Milki

这是我的学习/专注应用Milki的一些截图

Until I started listening to "Indie Hackers Podcast", I knew that small demand or niche products are okay. It's okay to do small projects that you are interested in. They won't make a billion dollars, or even a million dollars, but it doesn't matter. I realized that if I could make money from the apps I wrote every month, I would be very excited! Compared to the professional services you sell in real life, making money through apps seems much more difficult. It seemed difficult to earn $1 from the mobile app, but I decided to give it a try.

On December 1, 2020, I finally started writing my perfect learning/focusing application. I want to have "actual and target" charts, just like my bad Excel sheet. I also want to provide independent activity profiles and goal maps for my coding and other company exam preparation time.

Making the first version of the application is very interesting! I learned a lot of skills, including in-app subscriptions, social authentication, more animations and using WebFlow make a website.

Social authentication is difficult! FlutterFire documentation is very helpful. I have experienced many ups and downs (including Android Google auth working in development, but not when it arrived in the Play Store!). I will share these experiences in another article.

For in-app purchases, I spent a week trying to get the In_App_Purchase package to work properly. I finally switched to RevenueCat, , which is incredible for in-app subscriptions, and the free MRR is up to $10,000! But this is also another article.

Milki website, produced by WebFlow

Milki网站,由WebFlow制作

You may be wondering how the name and theme of this application came from. Well, embarrassingly, I have been fascinated by Space-X and space in the past few years. So I decided to make this app a little space-themed. To show respect to the galaxy we are in, I decided to call this app Milki. The domain name is available, and it turns out to be very lucky. When I made this application, 3 different people contacted me to buy this domain name, and I rejected a $500 offer. I was too invested at that stage (plus I like space) 🙅🏻‍♂️

Launch Milki📱

When I was almost ready to launch Milki, I placed the app in the App Store and Google Play store for pre-orders. This is about a month ago when I planned to release it. I received about 60 pre-orders on iOS, but not many pre-orders on Android. I didn't do any marketing work, I just opened a Twitter account for the app and said on Twitter that it can be pre-ordered (currently I don't know anything about Twitter, and I have almost no fans).

I learned about App Store Optimization (ASO) by taking another Udemy course and watching about 50 AppRadar YouTube videos. I ended up signing up for AppRadar for $40 per month, but I must admit that although spending money is painful, tracking my keyword performance over time seems to be worthwhile. My "Study Timer" ranking in the App Store is about 28th in Australia (my home country) and about 70th in the United States. My goal is to enter the top 10 in the United States. I really don't want to spend money on advertising, so I will optimize the Store ranking!

After quite a lot of research and comparison-I determined the annual subscription business model Milki The first year is $30, and thereafter it is $60 per year. Admittedly, this is more than what I originally planned to charge, but due to the unique features of the app and such a niche nature, I decided on this price. I believe that a well-made, non-advertising, and constantly improving application that took months to build, should be used at a reasonable price.

I released the iOS version of Milki.app on March 14, and to my surprise I sold it on the first day! I released the Android version a few days after iOS, but it is much more difficult to get android sales! So far, I have only made a soft release-I have not Product Hunt or any platform.

Earnings from the Apple App Store (one is mine, the other is my mother's😂)

来自苹果App Store的收益(一个是我的,一个是我妈妈的 😂)

To be honest, I think Milki is very likely to get zero paying users, and this app will disappear in the ocean of other learning timer apps. Although I already have some customers, I am worried that my current income will decrease. In order to avoid this situation, I will continue to improve the application, devote myself to the ranking of the app store, learn marketing skills, and give it a chance to grow!

What's the next step? 🚀

My goal is to make a living with Flutter apps. From Milki and others including planned B2B Flutter web apps. I haven't done any coding work for other companies, and I don't plan to do so. I want to build my own ideas.

Also, please feel free to follow me at (by the way, I am new to Twitter!).


杭州程序员张张
11.8k 声望6.7k 粉丝

Web/Flutter/独立开发者/铲屎官