Content
01 - Introduction & Motivation
Preface

Preface

[⚠️ Auto-translated by ChatGPT. Review pending.]

Independent development is a fascinating endeavor. Over the past two to three years, I have developed five web applications around the Gallinula platform:

  • forum: The early version of Gallinula, a mini-forum application. It has now accumulated over 700 users within the campus.
  • thewall: The campus anonymous message wall, the most active product on the Gallinula platform. It currently has 13,200+ messages, with a daily average of around 600 page views, and can reach over 2,600 daily visits during peak periods.
  • 2021/2022 flags: An H5 page for New Year's wish lists. It received over 200+ user visits and shares during the 2022 New Year period.
  • NextShuttle: A shuttle timetable and countdown to the next bus. A small utility application.
  • Gallinula Course: A platform for school courses and professor evaluations. It is currently under development and has already accumulated over 60+ users and approximately 200 course data contributions before the official launch.

For me, the process of independent development is a process of unleashing my imagination and creativity. There are few other things that give me the same sense of achievement. From designing UI/UX mockups to selecting technology stacks and designing system architectures, to programming, debugging, and deploying to production, and then promoting and operating after the launch, each step has given me ample room for creativity to implement my ideas and innovations. When I see these apps being used by more and more classmates around me and actually helping them solve the problems they faced before, it motivates me to think about the next challenge and design the next application. For me, the entire process forms a positive feedback loop that keeps me motivated to complete the development of so many apps.

However, developing an independent application doesn't seem as complicated as people imagine. The first version of thewall took only 9 days from the initial idea to launch. I completed the prototype in 4 days, and the remaining 5 days were spent on debugging. Most of the time during the entire design process was spent on balancing the posting and deletion mechanisms. The first version of Gallinula Course also took only 4 days. I took advantage of the New Year holiday and spent 10 hours each day to achieve this result. NextShuttle is a simpler single-page application. I decided to create this page because on the first day of school, I noticed many second-year students didn't know where to check the shuttle timetable. So, I spent a few hours in Building AB on campus that afternoon and directly deployed it to the Gallinula server that evening, completing the entire process in just 7 hours.

Therefore, through the development process of these web apps, I believe I have gradually discovered a path to rapidly develop applications. With the help of efficient development tools, existing development frameworks, and assistance from AI models, it should not be difficult for a person to create a simple independent application within a week. Moreover, the recent emergence of the ChatGPT model has shown people the tremendous increase in productivity brought about by human-machine collaboration, leading me to a bold speculation: in future production models, artificial intelligence will undoubtedly replace most repetitive low-level labor. A combination of one person, an efficient set of productivity tools, and N artificial intelligence models should be the norm for future work. Independent developers can also leverage these advanced tools to quickly create any product they desire within a short period of time.

And this book explores how as an independent developer, you can make use of the efficient development frameworks and automation tools currently available on the market to develop a "small and beautiful" application in a short time, realizing any idea you have in mind. However, this book is not only aimed at individual developers but also startup teams that can refer to the methods and techniques mentioned in this book to quickly develop and deploy application services, seizing market opportunities before they heat up. Furthermore, as long as you can find a good business model, you can completely profit from the independent applications you develop, making it your main source of income.

This book is divided into two parts: the first part is titled "Make Your App," which focuses directly on technical content. It covers the entire process of developing and deploying a simple independent application, including purchasing a domain, selecting cloud services, setting up a development environment, choosing development frameworks, rapid development techniques, software release, maintenance, and monitoring. The second part is titled "Make Your App Better," which delves more into how to develop a good independent application, including product design, user growth, monetization, and how to discover inspiration from life with an independent development mindset, continuously creating.

In the main body of the book, I will attempt to use a series of multiple-choice questions to guide readers in step-by-step selection of development environments, programming languages, development frameworks, and system architectures that suit their habits and product characteristics. Only when all components in the system are coordinated can the entire process be more efficient and rapid. At the end of each chapter, I will summarize all the mentioned development frameworks and automation tools for readers' reference. Additionally, the appendix of this book will include a case study of "best practices" where I will explain how I used the methods described in the book to rapidly develop and deploy an application, maintain user growth, and even achieve profitability.

To keep the content of this e-book up-to-date and to maintain the best practices, I have decided to update it once a year to adapt to the constantly changing technical tools and market environment. Through this annual update, I hope it will provide readers with the latest, most comprehensive, and practical guide to independent development, enabling readers to continually enhance their abilities and realize their boundless creative ideas through independent applications. I also welcome active feedback and suggestions from readers to help me continuously improve the content of this book, making it more relevant to readers' needs and actual situations. I sincerely invite everyone to join the Slack community of MakeYourApp.today to provide criticism and suggestions on the content of this book, and to share your ideas with other independent developers, exchanging stories and experiences throughout the process of independent application development.

Junkai Man

February 22, 2023