Mã Nguồn Ngược Dòng Chương 5 / 209

Chương 5 — Bài toán vốn

Tối thứ Hai, ba còn ngoài đường, mẹ đi ca chiều chưa về.

Hoàng ngồi một mình ở bàn học — cái bàn gỗ cũ kê sát tường, mặt bàn có vết mực loang lổ từ hồi lớp sáu không tẩy được. Trên bàn có tập vở học, hộp bút chì, và một tờ giấy học trò kẻ ô vuông mà anh vừa lấy ra từ cuốn tập dự phòng chưa dùng.

Anh mở bút ra. Vẽ một vòng tròn to giữa tờ giấy. Bên trong viết: 2 TRIỆU / 26 NGÀY.

Từ vòng tròn đó, anh kẻ ra bốn nhánh.


Nhánh một: Dạy gia sư.

Tính ra không cần nhiều: giá thị trường 2014 là năm mươi đến bảy mươi ngàn một buổi. Nếu dạy Toán hoặc Anh văn, đứa học sinh lớp dưới — năm mươi ngàn một buổi là khả thi. Hai buổi một ngày, năm ngày một tuần.

Anh gõ nhẩm: năm mươi ngàn × hai buổi × năm ngày = năm trăm ngàn một tuần. Bốn tuần là hai triệu.

Hai mươi tám buổi dạy. Hai mươi tám lần đến nhà người lạ, ngồi giải thích bài lớp bảy lớp tám cho đứa trẻ không muốn học, về nhà trước chín giờ để ba mẹ không hỏi.

Hoàng nhìn con số đó.

Trong góc tầm nhìn, một dòng nhỏ xuất hiện:

⚙ ĐÁNH GIÁ PHƯƠNG ÁN
Gia sư — 500k/tuần × 4 tuần = 2 triệu.
Rủi ro: không tìm được đủ học sinh trong tuần đầu.
Chi phí ẩn: 40–50 giờ lao động. Không mở rộng được.
Kết luận: CHẬM QUÁ.

Anh khoanh tròn chữ “gia sư” rồi gạch chéo.


Nhánh hai: Bán lại thông tin.

Anh biết nhiều thứ người khác không biết — xu hướng công nghệ, startup nào sẽ lớn, thị trường nào đang trống. Nhưng bán thông tin cho ai? Không ai trả tiền cho đứa 14 tuổi nói về công nghệ. Và anh không thể dùng mảnh thông tin tương lai — Hệ thống chưa cấp, điều kiện chưa đủ.

Gạch chéo.


Nhánh ba: Làm thêm ở tiệm net.

Tiệm net gần nhà cần người trực ca tối. Tiền công khoảng ba mươi ngàn một ca, ca tối năm tiếng. Tháng được chín trăm ngàn nếu làm đều. Không đủ trong 26 ngày, lại phải giải thích với ba mẹ về ca tối.

Gạch chéo.


Nhánh bốn: Viết phần mềm.

Hoàng nhìn nhánh thứ tư. Cái nhánh này anh chưa viết gì cả — chỉ vẽ đường thẳng ra rồi để trống.

Không phải vì không biết. Mà vì cần nghĩ thêm trước khi viết.

Anh đặt bút xuống.

Mình đã bắt đầu xây cái database Access từ thứ Bảy. Ba bảng cơ bản: học sinh, lớp học, lịch học. Còn thiếu phần giao diện nhập liệu và phần báo cáo. Nếu hoàn thiện xong, đem đến trung tâm gia sư chú Hải ở đường Phan Văn Trị — chú đang quản lý bằng sổ tay và tờ giấy — thì có thể thuyết phục chú trả tiền không?

Có thể không. Chú Hải có thể dùng thử không trả tiền, hoặc thấy không cần. Nhưng đó là lần đặt cược có lý nhất trong tất cả các nhánh. Không mở rộng được một mình — nhưng là thứ duy nhất có thể mang lại tiền trong thời gian đủ ngắn nếu thuyết phục đúng người.

Anh viết vào nhánh bốn: Tool quản lý học sinh — trung tâm nhỏ. Hoàn thiện trước thứ Tư.

Rồi khoanh tròn, không gạch.


Vấn đề là cái notebook.

Cái notebook Lenovo bỏ trong tủ từ năm ngoái — ba mua thanh lý từ chỗ quen, RAM hai giga, ổ cứng 160 giga, pin hỏng nên phải cắm điện liên tục. Chạy Windows XP. Bàn phím thiếu phím F12 và phím mũi tên trái không nhạy.

Hoàng lấy nó ra từ tủ, đặt lên bàn.

Màn hình sáng lên từ từ — tiếng quạt notebook rồ lên một cái rồi ổn định ở tần số thấp hơn. Desktop hiện ra: hình nền mặc định Windows XP đồi cỏ xanh, biểu tượng Recycle Bin góc phải, biểu tượng My Computer góc trái.

Anh mở Microsoft Access.

Cái file anh đã lưu vào USB từ tiệm net thứ Bảy — anh cắm USB vào, kéo file ra desktop, mở lên. Cửa sổ Access hiện ba cái bảng: HocSinh, LopHoc, LichHoc. Cấu trúc còn trống, chưa có dữ liệu thật.

Anh đặt tay lên bàn phím.

Bàn phím Lenovo notebook, phím nhỏ hơn phím desktop, khoảng cách giữa các phím hẹp hơn. Bàn tay 14 tuổi — ngón ngắn hơn, không có lớp chai ở đầu ngón tay như bàn tay kỹ sư 27 tuổi anh nhớ.

Anh gõ thử một dòng.

Tay không chậm. Chậm hơn bàn tay 27 tuổi nhưng không chậm theo cách anh lo — cơ thể này đã gõ bàn phím đủ lâu ở trường, ở tiệm net. Ngón tay nhớ vị trí phím trước khi đầu nhớ. Cái cảm giác đó — khi tay chạy trước não — là cái cảm giác Hoàng nhớ từ hồi mới học code, khi cơ thể bắt đầu nội hóa thứ mà trước đó phải nghĩ mới làm được.

Ít nhất tay không phản bội mình.

Anh bắt đầu làm phần form nhập liệu.


Access 2003 — không phải công cụ anh muốn. Nếu là năm 2026, anh sẽ viết web app bằng Python và SQLite trong nửa buổi, triển khai lên cloud, giao link cho chủ trung tâm mở trên điện thoại.

Nhưng đây là năm 2014. Trung tâm gia sư nhỏ của chú Hải không có server, không có internet đủ mạnh để chạy web app, nhân viên không quen dùng trình duyệt cho công việc quản lý. Cái chú ấy cần là một file chạy được trên cái máy tính Windows đang đặt ở bàn tiếp tân — cắm điện, mở lên, gõ vào, xong.

Access làm được điều đó.

Anh tạo form nhập học sinh: trường họ tên, ngày sinh, số điện thoại phụ huynh, lớp đăng ký, học phí tháng. Kéo từng ô từ bảng HocSinh ra form — click, kéo, thả. Thêm nút Lưu, nút Xóa, nút Tìm kiếm.

Thêm validation: trường học phí chỉ nhận số, không nhận chữ. Trường ngày sinh phải đúng định dạng ngày tháng năm.

Anh nhìn cái form đang làm. Trông ổn — không đẹp, màu xám mặc định của Access, nhưng dùng được. Người không biết lập trình vẫn gõ vào được mà không cần hiểu cái gì phía dưới.

Không cần đẹp. Cần chạy được và dễ dùng.


Hai tiếng sau, anh xong phần form học sinh và form lịch học.

Còn phần báo cáo.

Đây là phần quan trọng nhất — quan trọng hơn form nhập liệu — vì đây là thứ chủ trung tâm thật sự cần: ai đang học, ai đang nợ học phí, tháng này thu được bao nhiêu, lớp nào ít học sinh. Nếu form nhập liệu là thứ nhân viên dùng, thì báo cáo là thứ chủ nhìn.

Anh tạo query đầu tiên: danh sách học sinh nợ học phí tháng này.

SELECT HocSinh.HoTen, HocSinh.SDT_PhuHuynh, 
       LopHoc.TenLop, LichHoc.HocPhi,
       LichHoc.NgayDong
FROM HocSinh 
INNER JOIN LichHoc ON HocSinh.MaHS = LichHoc.MaHS
INNER JOIN LopHoc ON LichHoc.MaLop = LopHoc.MaLop
WHERE LichHoc.TrangThai = 'Chưa đóng'
ORDER BY LichHoc.NgayDong;

Anh chạy thử. Query trả về bảng trống — vì chưa có dữ liệu thật — nhưng cấu trúc đúng.

Tiếp theo: tổng thu tháng, số học sinh theo lớp, lịch học tuần tới.

Phím mũi tên trái không nhạy — anh phải gõ mạnh hơn bình thường hoặc dùng chuột để di chuyển con trỏ. Không nguy hiểm, chỉ chậm hơn. Anh điều chỉnh cách gõ sau vài phút — dùng chuột nhiều hơn, tay trái ít dùng mũi tên hơn.

Làm được. Không hoàn hảo nhưng làm được.

Đồng hồ góc màn hình: 21:47.

Ba giờ. Anh làm được ba tiếng liên tục.


Tiếng khóa cửa từ ngoài vào.

Hoàng ngước lên — mẹ về. Tiếng dép lê trên nền gạch, tiếng bật đèn phòng khách, tiếng TV bật lên rồi tắt âm thanh xuống thấp.

Mẹ đi ca chiều hay về khoảng chín rưỡi đến mười giờ, tùy xe buýt có đúng giờ không.

Anh lưu file, thu nhỏ cửa sổ Access, kéo cái quyển sách Văn ra để trên bàn. Không phải vì sợ bị hỏi — mẹ không hay hỏi con làm gì trên máy tính — mà vì thói quen có trước khi anh nghĩ đến nó.

Mẹ ghé đầu vào phòng: “Con chưa ngủ?”

“Dạ, đang ôn bài.”

“Cơm nguội trong nồi, con ăn chưa?”

“Ăn rồi.”

Mẹ gật đầu, quay ra. Hoàng nghe tiếng chân mẹ đi về phòng tắm — tiếng nước chảy, tiếng kéo ghế ra bàn bếp, tiếng ly đặt xuống mặt bàn đá.

Một lúc sau, mẹ ngồi ở phòng khách, bật TV nhỏ tiếng. Anh nghe loáng thoáng tiếng chương trình tivi — hình như chương trình tâm sự gia đình, loại mấy giờ tối hay chiếu.

Anh mở lại notebook.


Phần báo cáo mất thêm một tiếng rưỡi.

Không phải vì phức tạp — vì cái máy chậm. Mỗi lần chạy query thì Access ngồi xử lý mất hai ba giây, màn hình đóng băng rồi hiện kết quả. Anh không quen với độ trễ đó — năm 2026 máy tính trả về kết quả trước khi tay buông phím. Ở đây anh phải học lại cái thói quen: gõ lệnh, chờ, nhìn kết quả, mới gõ tiếp.

Nhưng xong.

Anh mở từng cái báo cáo lên, nhìn qua. Form nhập học sinh — chạy được. Form lịch học — chạy được. Báo cáo tổng thu tháng — query đúng, hiển thị đúng cột. Danh sách nợ học phí — đúng. Lịch học tuần tới — đúng.

Không có dữ liệu thật nên nhìn vào thấy trống, nhưng cấu trúc hoàn chỉnh.

Anh lưu file lần cuối. Đặt tên: QuanLyHocSinh_Demo_v1.mdb.

Trong góc tầm nhìn:

⚙ HỆ THỐNG KIẾN QUỐC
─────────────────────
KHAI KHOA BẢNG — Bước 1/5
Trạng thái: Đang thực hiện
Tiến độ: DEMO HOÀN CHỈNH ✓
Hướng tiếp cận: PHÙ HỢP
Bước tiếp: Tiếp cận người mua.
Hạn chót còn: 26 ngày.
─────────────────────

Hướng tiếp cận phù hợp. Không phải đúng, không phải chắc thắng — chỉ là phù hợp.

Hoàng ngồi nhìn cái file trên desktop.

Bây giờ là phần khó: tìm được người mua. Chú Hải ở đường Phan Văn Trị — anh biết trung tâm đó từ ký ức của đứa trẻ này, ba hay chở qua đó mỗi lần đi đường tắt. Trung tâm nhỏ, khoảng hai mươi học sinh, ba lớp. Đúng quy mô cần một tool như thế này.

Nhưng chú Hải không biết mình cần — chưa ai nói với chú là quản lý bằng sổ tay có thể làm khác đi. Phải thuyết phục từ zero.

Và mình là đứa học sinh lớp chín.

Anh gập notebook lại. Không tắt — pin hỏng nên phải cắm điện, tắt đi bật lại mất thêm ba phút khởi động.


Tiếng TV vẫn nhỏ từ phòng khách.

Hoàng đứng dậy, ra lấy ly nước, nhìn vào phòng khách từ cửa. Mẹ ngồi trên cái ghế sofa da cũ, đôi chân co lên ghế, đang nhìn màn hình TV. Chương trình đang chiếu cảnh một bà mẹ ngồi kèm con học — đứa con cúi đầu làm bài, bà mẹ giải thích từng bước.

Mẹ nhìn thấy anh đứng ở cửa.

“Ôn xong chưa?”

“Gần xong.” Hoàng đứng dựa cửa, cầm ly nước. “Mẹ về sớm vậy?”

“Xe buýt hôm nay không kẹt.” Mẹ nhìn lại TV, ngón tay bật tắt nút âm thanh. “Con học nhiều không, hôm nay thấy mặt mày mệt.”

“Không có gì.”

Trên màn hình TV, đứa con trong chương trình đang gặp bài khó, nhíu mày. Bà mẹ cầm bút chỉ vào tờ giấy nói thứ gì đó.

Mẹ nhìn màn hình, nói không hướng về Hoàng: “Bây giờ có cái gì cho tụi học sinh tự ôn không con, kiểu như tự theo dõi học bài ấy. Hồi xưa mình nghèo muốn học thêm phải nhờ thầy hàng xóm, giờ có tiền thì lại không có thời gian ngồi kèm…”

Câu nói đó mẹ nói theo kiểu người vừa nhìn TV vừa nghĩ ra lớn tiếng — không hỏi thật, không cần trả lời, chỉ là suy nghĩ phát ra ngoài.

Hoàng cầm ly nước, không nói gì.

Nhưng trong đầu anh, cái câu đó vừa chạm vào thứ gì đó anh chưa để ý.

Học sinh tự theo dõi học bài.

Tool của anh đang xây hướng đến chủ trung tâm — người quản lý. Nhưng mẹ vừa nói về học sinh — người học. Cái nhu cầu của hai phía không giống nhau: chủ trung tâm cần theo dõi tiền và lịch, học sinh cần gì khác. Biết mình đang học tới đâu, biết buổi tới học gì, biết mình đang thiếu phần nào.

Đó không phải là cái tool anh đang làm.

Nhưng đó là câu hỏi anh có thể giữ lại — không phải cho bây giờ, cho sau.

“Có chứ mẹ,” anh nói. “Nhưng mắc.”

Mẹ gật đầu, không hỏi thêm. Bật lại âm thanh TV lên một chút.

Hoàng quay vào phòng, đặt ly nước xuống bàn.

Anh ngồi xuống, mở notebook lên. Màn hình sáng trở lại — cái file QuanLyHocSinh_Demo_v1.mdb vẫn ở đó trên desktop.

Anh mở tờ giấy học trò từ ban nãy ra, lật sang mặt còn trống. Viết ở góc trên:

Thứ Tư — đến Phan Văn Trị.

Bên dưới viết thêm: Mang USB. Mang notebook nếu cần demo trực tiếp. Có thể không trả tiền ngay — cần thuyết phục về giá trị trước.

Rồi thêm một dòng nữa, nhỏ hơn, phía dưới cùng:

Câu hỏi giữ lại: học sinh cần gì từ trung tâm — không phải chủ trung tâm.

Anh nhìn dòng đó.

Không phải câu hỏi cần trả lời ngay hôm nay. Nhưng cần nhớ.

Trong phòng khách, TV vẫn chạy, âm thanh nhỏ và đều. Mẹ đang ngồi nghỉ sau ca chiều theo cái cách mẹ hay nghỉ — không ngủ ngay, ngồi nhìn màn hình một lúc để cơ thể xuống nhịp trước khi vào giường.

Hoàng tắt đèn bàn, chỉ để lại ánh màn hình notebook.

26 ngày.

Demo xong. Bước tiếp: tìm người mua.

Còn chưa biết người đó có mua không.