# Nhịp làm việc bền khi build một mình

> Hiểu readiness là khả năng giữ nhịp làm việc trong đời sống thật, và chuẩn bị sẵn quy tắc cho những tuần mọi thứ đi lệch.

- URL: https://dantech.academy/courses/kotlin-accelerator/indie-builder/01-indie-mindset/lesson-02-sustainable-solo-rhythm
- Khóa học: [Mobile Action Pro](https://dantech.academy/courses/kotlin-accelerator.md)
- Module: Tư duy của một indie builder
- Thời lượng: 15 phút
- Độ khó: beginner
- Truy cập: Miễn phí, đọc toàn bài

## Mục tiêu

- Định nghĩa readiness là giao điểm của nền tảng đủ dùng, thời gian được bảo vệ và quy tắc hồi phục
- Viết quy tắc giữ nhịp cho tuần tệ nhất trước khi tuần đó đến

---

Người tự build app cần một **nhịp làm việc đủ bền** trước khi cần một ý tưởng hay, vì ý tưởng hay đến mấy cũng tắt sau tuần đầu nếu bạn không có nhịp. Nhiều người bắt đầu bằng cảm hứng: mở Android Studio, Codex hay bất cứ công cụ nào bạn định dùng, đặt tên project rồi lao vào viết code.

Cảm hứng không có lịch, và nó không biết phải làm gì khi đời sống thật chen vào. Sau một tuần bận việc, app dừng lại. Sau hai tuần, người làm tự nhủ mình "thiếu kỷ luật", trong khi lỗi nằm ở cách bắt đầu.

## Readiness là khả năng giữ nhịp

Câu hỏi quen thuộc nhất là **"Mình đã đủ giỏi lập trình chưa?"**. Câu đó có lý, nhưng mới là một phần. Khi build app một mình, sẵn sàng (readiness) là giao điểm của ba thứ:

- **Nền tảng đủ dùng:** bạn biết đủ để một lỗi nhỏ không chặn bạn nửa ngày. Bạn hiểu các thành phần cơ bản, dùng được IDE và nắm workflow chung của project.
- **Thời gian được bảo vệ:** bạn có những khung giờ cố định cho việc build, thay vì hy vọng sẽ tranh thủ được lúc nào đó.
- **Quy tắc hồi phục:** bạn biết mình sẽ làm gì khi một tuần không đi theo kế hoạch: cắt phạm vi, dời việc chưa quan trọng, và biết lúc nào nên nghỉ.

Thiếu một trong ba, kế hoạch sẽ vỡ theo những kiểu khác nhau:

- **Thiếu nền tảng**, bạn bị kéo vào **tutorial hell**: xem hết hướng dẫn này đến hướng dẫn khác mà project không nhích lên.
- **Thiếu thời gian được bảo vệ**, mỗi tuần bạn mở project ra một ít hơn.
- **Thiếu quy tắc hồi phục**, một tuần tệ dễ trở thành **lý do để bỏ hẳn**.

## Thị trường không chấm điểm 10 cho bản đầu tiên

Hãy thử tự hỏi: nếu hôm nay mở project ra, bạn có tự vượt qua vài chướng ngại cơ bản mà không hoảng không? Ví dụ bạn viết được một model dữ liệu đơn giản bằng Kotlin, chạy được app trên emulator hoặc máy thật, commit được một thay đổi nhỏ. Và khi app lỗi, bạn ngồi xuống tìm nguyên nhân thay vì đóng IDE chờ "có cảm hứng" mới sửa.

Cái bẫy hay gặp hơn cả thiếu kiến thức là những hoạt động khiến não tin rằng "mình đang build app": đọc thêm một bài so sánh framework, chỉnh lại theme lần thứ năm, lên lại kế hoạch. Phía sau những việc đó thường là mong muốn bản đầu tiên phải được **điểm 10**.

Thị trường hiếm khi cho điểm 10 ngay sau lần release đầu. Thường bạn nhận về 0 hoặc 1 điểm. Bạn sửa, nộp lại, và điểm tăng dần qua từng lần. Người chờ điểm 10 từ lần nộp đầu tiên thường không bao giờ nộp.

## Lịch làm việc phải chịu được lúc chán

"Khi nào rảnh tôi sẽ làm" gần như luôn có nghĩa là "tôi sẽ không làm đủ lâu để thấy kết quả".

Lịch build không cần đẹp. Nó cần sống sót qua một tuần có họp, có deadline ở công ty, hoặc khi bạn hơi mệt, mà các khung giờ build vẫn còn đó.

Nó cũng phải chịu được sự nhàm chán. Giai đoạn đầu của app nào cũng dễ vì app nào cũng giống nhau ở đoạn này: màn hình đăng nhập, danh sách, màn hình chi tiết. Phần làm app của bạn khác đi đến sau, khi bạn phải giải những vấn đề chưa có hướng dẫn sẵn. Đó cũng là lúc ý tưởng mới trông hấp dẫn nhất.

Khi muốn nhảy sang ý tưởng khác, hãy thành thật hỏi mình: bạn đang thấy một cơ hội tốt hơn, hay đang tìm cảm giác dễ chịu của việc bắt đầu lại?

Chạy theo template cho vui cũng là một thú vui, và không có gì sai. Nhưng nếu bạn muốn có một sản phẩm của riêng mình, bạn phải đi qua đoạn khó này.

## Chuẩn bị cho tuần tệ nhất

Sẽ có những tuần mọi thứ đi lệch: công việc chính tăng tải, build lỗi vì một lý do ngớ ngẩn, hoặc bạn chỉ đơn giản là mệt.

Người mới build thường phản ứng bằng cách làm gấp đôi hoặc dồn hết vào cuối tuần. Cách đó làm đứt nhịp nhanh hơn.

Người build bền có sẵn vài quy tắc cho những tuần như vậy. Ví dụ:

- Lỡ một feature trong tuần, bạn đưa nó vào tuần sau và không cố bù toàn bộ.
- Kẹt quá lâu ở một lỗi, bạn chia bước tiếp theo nhỏ hơn thay vì ngồi yên trong bực bội.
- Công việc chính quá tải, bạn cắt phần polish và giữ phần core.

Quy tắc viết ra từ lúc tỉnh táo giúp bạn không quyết định bằng cảm xúc khi đang mệt. App của bạn sẽ không xong trong một ngày, và nó cần bạn còn ở đó sau nhiều tuần.

## Key takeaway

> Sẵn sàng build app không có nghĩa là bạn thấy tự tin. Bạn sẵn sàng khi có nền tảng đủ dùng, có thời gian được bảo vệ và có quy tắc cho tuần tệ, để khi kế hoạch lệch, bạn điều chỉnh rồi đi tiếp thay vì đổi sang một ý tưởng mới.

## Mang sang dự án của bạn

- Dự án hiện tại của bạn đang thiếu nền tảng, thiếu thời gian được bảo vệ hay thiếu quy tắc hồi phục?
- Viết ra ba quy tắc bạn sẽ dùng cho tuần tệ nhất, trước khi tuần đó đến.

---

- Bài tiếp theo: [Đừng chờ đợi tự tin. Bạn đã có đủ để bắt đầu.](https://dantech.academy/courses/kotlin-accelerator/indie-builder/01-indie-mindset/lesson-03-start-before-you-feel-ready.md)
