Chủ nhật vừa rồi, tôi đã viết một bài chia sẻ về việc đã dành hơn hai tuần để phát triển trang web đánh dấu trực tuyến ListAnyThing. Nhưng đến hôm qua, tôi lại quyết định xóa nó đi. Những người theo dõi qua RSS có lẽ vẫn kịp nhìn thấy.
Trong suốt quá trình phát triển này, tôi đã hoàn toàn đắm mình vào công việc, thường xuyên làm việc đến tận nửa đêm. Có những buổi sáng thức dậy lúc 4-5 giờ vì miệt mài code cả đêm không ngơi tay.
Đây là dự án website đầu tiên của tôi. Mặc dù không bắt đầu từ con số không mà dựa trên nền tảng watchlist, nhưng tôi vẫn phải tùy chỉnh rất nhiều: điều chỉnh cấu trúc dữ liệu theo nhu cầu, hoàn thiện quy trình đăng ký/đăng nhập, bao gồm cả khôi phục mật khẩu, xác nhận email, đặt lại mật khẩu và mời đăng ký…
Vì thiếu kinh nghiệm, tôi chỉ có kết quả tỷ số bóng đá hôm nay thể sửa đổi phần logic nghiệp vụ trong code, chứ không hiểu rõ nguyên lý hoạt động bên trong. Nhiều lần chỉ một vấn đề nhỏ cũng khiến tôi mất hàng giờ đồng hồ để giải quyết, đặc biệt là hai trường hợp dưới đây - cả hai đều xảy ra vào ban đêm và kéo dài đến rạng sáng:
[…]
Sau hai tuần cống hiến hết mình, khi nhìn thấy trang web chính thức lên sóng, tôi thực sự cảm thấy vô cùng tự hào và thỏa mãn. Tuy nhiên, niềm vui ngắn chẳng tày gang, ngay lập tức câu hỏi “Tại sao tôi lại làm những thứ này?” đã xuất hiện trong đầu. Liệu chúng có ý nghĩa gì?
Tôi chỉ cần một trang web đánh dấu hỗ trợ RSS thôi mà. Không kể các dịch vụ miễn phí sẵn có, nếu muốn kiểm soát dữ liệu, việc tự xây dựng cũng có rất nhiều giải pháp nguồn mở như Shaarli. Chỉ mất chưa đầy một giờ trong giờ nghỉ trưa hôm qua, tôi đã dễ dàng triển khai Shaarli. Chính vì vậy, tôi đã quyết định xóa bài viết chủ nhật và chuyển sang sử dụng Shaarli. [Hiện tại đang cân nhắc cách hạ cấp máy chủ xuống phiên bản 1GB RAM khi gia hạn.]
Nếu chỉ phát triển cho một người dùng duy nhất, ngay từ đầu tôi đã sử dụng SQLite thì chắc chắn sẽ không gặp phải hai vấn đề làm tôi mất ngủ kia.
Lập trình thật sự là một công việc kỳ diệu. Rất dễ dàng bị cuốn vào niềm vui giải quyết các vấn đề kỹ thuật, viết ra những đoạn code đẹp mắt hay tối ưu hóa quá mức, mà quên đi mục tiêu ban đầu cần giải quyết.
Việc tìm kiếm công cụ phù hợp cũng tương tự như vậy. Trong hai tuần vừa qua, tôi đã không đọc sách, không liên lạc với bạn bè và không có bất kỳ đầu vào hay đầu ra nào mang tính xây dựng.
Những trạng thái như thế này rồng hồ xảy ra khá thường xuyên. Tôi cần phải thường xuyên nhắc nhở bản thân quay trở lại với yêu cầu thực tế ban đầu.
Sửa đổi lần cuối vào 2025-01-19