Bug và sex - chuyện thường ngày ở huyện

Submitted by superthin on 02/12/2017 - 07:54:34
Cover lỗi của Drupal

Một ngày nào đó, một khi "dấn thân" vào việc viết mã, bước đầu của cái gọi là "lập trình máy tính", người ta sẽ biết rằng đâu có có nhiều câu nói bắt đầu với "Programming Is Like Sex..." của những gã lập trình viên khá tên tuổi trong giới lập trình.

Tùy quan điểm về tình dục (sex) của mỗi người mà cái sự giống nhau với lập trình máy tính được nhìn nhận ra sao, nhưng dù người ta thích thú hay chán ghét đi nữa, điểm chung đó là một khi bạn "dính vào" rồi thì không thể dừng được, cứ phải tiếp tục theo cái kiểu gần như đã trở thành một con nghiện.

Thin giờ xem như đã bắt đầu trở thành một con nghiện của món ma túy "lập trình máy tính".

Đợt vừa rồi Thin đã làm một việc là "chuyển nhà" cho trang web này, hơi vất vả vì gần như phải tự học và làm mọi thứ mà mình chưa được đào tạo trường lớp hoặc thông qua kinh nghiệm thực tế. Khi chuyển nhà thành công, truy cập vào thấy trang web chạy được, mừng ơi là mừng. Nhưng vài ngày sau, cái sự vui mừng đó bỗng nhiên như một quả bóng xì hơi, bắt đầu có những thứ không giống như lúc trang web còn ở nhà cũ. Một số biểu hiện lạ có thể nhìn thấy: thông báo đỏ lòm khi đăng nhập, báo thiếu thứ nọ thứ kia, lỗi liên quan đến phân quyền,... Ở mặt giao diện trang chủ, các địa chỉ web (tức URL) bỗng nhiên bị thêm /index.php vào phía trước, nhìn thấy rất ngứa mắt.

Điểm khởi đầu Drupal
Điểm khởi đầu đề bắt đầu dò bug của Drupal

Vậy là hành trình dò tìm bug (lỗi liên quan đến lập trình phần mềm máy tính) và sửa bug bắt đầu. Không có nền tảng gì về việc tìm dò bug, mọi việc lại bắt đầu với Google... Thin đã phải đọc khoảng 20 trang tài liệu để định vị xem lỗi xảy ra do đâu, sau đó lên các trang web thảo luận về Drupal tìm xem có ai bị lỗi giống mình không, người ta giải quyết lỗi như thế nào. Trong một bể thông tin với hàng trăm ngàn vấn đề, nhưng không dễ để tìm ra vấn đề của mình, cũng như giải đáp về nó. Vậy là Thin đành phải đặt câu hỏi, nêu ra những gì mình nhìn thấy, môi trường cài đặt website này,... để nhờ cộng đồng giải đáp. Sau vài ngày, câu trả lời làm Thin trở nên thất vọng vì khác xa sự tưởng tượng. Nhưng không vì thế mà bí, cũng có manh mối để tiếp tục.

Khi bài viết này được xuất bản, bug đã được sửa xong. Kinh nghiệm rút ra: hết sức cẩn thận với cache của Drupal cũng như cache của trình duyệt web, trong quá trình làm website, luôn luôn dựng một môi trường gần giống và nhân bản website ra để quan sát, thử nghiệm trên đó giúp dò tìm manh mối, không được thực hiện trong môi trường thực website đang vận hành, vì có khả năng mọi thứ trở thành tro bụi sau một nhầm lẫn nào đó.