Chương 5 - Bug Repro
Bug repro: tiếng lóng của dân lập trình, nghĩa là làm cho một lỗi xảy ra lại theo ý mình. Lỗi mà tái hiện được là lỗi có quy luật, coi như đã nắm được nó.
Chiều thứ Hai, Vy với Nam lên Atlas Capital. Cô bé ngồi bàn gần cửa nói cô cũng học trường R, biết Vy từ bữa anh về trường chia sẻ. Vy đoán cô nhớ buổi hay nhất, mà buổi nào anh nói cũng hay hết.
Người ngồi đối diện hai người là Gia Khôi, một trong ba giám đốc của Atlas. Ở buổi thuyết trình Vy chưa gặp Khôi, giờ ngồi trước mặt mới thấy người này khó nhằn. Khôi hỏi ít, mà câu nào cũng trúng đúng chỗ Nam và Vy lúng túng, dù hai người chuẩn bị kỹ lắm rồi.
Vy nghe là biết Khôi không muốn bỏ tiền vô một công ty lấy AI có sẵn gắn vô game. Khôi còn hỏi người chơi tăng mạnh thì máy chủ chịu nổi không.
Liếc thấy Nam cau mày, Vy lại thấy hào hứng. Lâu lắm rồi mới có người làm khó được Nam. Chuyện máy chủ thì hai anh đâu có giấu, chỉ là chưa ai coi đó là rủi ro. Tới đây Vy mới đưa con át chủ bài ra: phần AI của Lunar Fox không thuê của hãng nào, mà là mô hình hành vi Vy với Nam tự viết, học từ dữ liệu người chơi Planet Moon, chạy trên máy chủ của mình. Sau này muốn gắn qua game khác cũng được, chỉ cần cho nó học lại từ dữ liệu game đó. Gọi vốn lần này là để nâng cấp máy chủ và tuyển thêm người, chuẩn bị mở rộng.
Khôi nghe hết rồi đóng nắp bút. Vy còn chưa đoán ra vậy là tốt hay xấu thì Khôi nói: “Mình làm thẩm định kỹ thuật ngay trong tuần.”
Hưng rủ Vy dọn qua nhà mình ở mấy ngày cho tiện. Hưng chưa nói hết câu, Vy đã gật. Vy tính nhẩm: mới một buổi chiều mà có thêm một quỹ chịu ngó tới mình, một chỗ ngủ, một người bạn cùng nhà đọc được báo cáo tài chính, và hơn hết là được ở lại Việt Nam thêm ít bữa. Lâu lắm rồi Vy mới thấy Sài Gòn chiều mình cỡ này.
Ra khỏi phòng họp thì trời đổ mưa. Vy đứng bên vách kính ngó xuống đường. “Chà, mưa lớn dữ.” Mưa cỡ này thì cả Sài Gòn được phép đình trệ một chút. Ai bị gì cũng đổ tại trời mưa.
Cửa thang máy vừa đóng, Vy la to: “Sắp có tiền rồi!” Nam giật mình rồi cũng bật cười. Nam tưởng Vy mừng vì tiền, nhưng anh mừng vì sắp có cớ về hẳn.
Lên xe về khách sạn, anh gọi hãng bay đổi vé qua thứ Hai tuần sau. Tổng đài viên hỏi lý do, Vy nói: “Có người muốn coi kỹ đồ chơi của anh.”
Tài xế liếc anh qua gương chiếu hậu.
Tổng đài viên im lặng một hồi mới nói: “Em ghi là lý do cá nhân nha anh.”
“Ừ, em ghi vậy cũng được.”
* * *
Chiều thứ Ba, trong thang máy lên Atlas, Hưng kể Khôi chỉ dặn cô bé làm hành chính kiếm cho Vy một chỗ ngồi thoải mái. Vy phải hỏi lại Hưng mới nhớ cô bé tên Hân. Mới một buổi sáng mà cô đã kiếm ra nguyên một phòng riêng trên tầng 12. Hân đang xếp hàng lấy kem dưới sảnh cũng bỏ ngang. Vy không ngờ chỗ ngồi của mình lại đổi bằng một cây kem của người ta.
Gặp Hân ở cửa trả dù, Vy nói: “Anh bao em ly kem khác nha. Hai ly luôn!”
Hân đưa anh tấm thẻ khách. “Dạ. Thẻ từ sáng mai mới có, anh xài tạm cái này nha.”
Anh nói gì người ta cũng cười theo, riêng cô bé này hỏi gì cũng dạ, xong thôi. Anh không biết mình làm gì mà cô lạnh với mình vậy.
Phòng nằm ở góc, cửa sổ ngó ra sông. Lunar Fox ra đời dưới tầng hầm nhà ba má Vy bên Úc. Vốn đầu tiên là tiền xin của bạn bè, cả công ty ngồi làm trên bàn ăn, họp hành qua màn hình. Giờ lần đầu anh có một căn phòng ngồi làm ở Sài Gòn, mấy ngày thôi, phòng đi mượn thôi, mà có luôn đường dây nội bộ gọi thẳng xuống bàn Hân. Anh lại được ưu ái rồi.
Trên bàn có sẵn một tờ giấy nhớ màu vàng ghi số nội bộ của Atlas, mật khẩu Wi‑Fi, giờ máy lạnh tầng này tự tắt, quán cơm nào trong hẻm sau tòa nhà bán tới chiều. Dòng cuối cùng:
Phòng bên trái là văn phòng luật. Tường không mỏng lắm, mà anh nói nhỏ chút là bên đó không phàn nàn đâu.
Vy bật cười thành tiếng, xong nhớ ra dòng cuối, vội cười nhỏ lại. Trên kệ có cái bình nấu nước kiểu cổ màu kem với một chậu trầu bà.
Anh nhấc điện thoại bàn gọi xuống Atlas, định cảm ơn Hân rồi hẹn luôn bữa kem. Người bắt máy là một người khác:
“Hân về rồi anh.”
Vy ngó đồng hồ góc màn hình, năm giờ một phút. Anh cứ tưởng làm quỹ đầu tư thì phải tối mịt mới về.
Tối đó Atlas gửi danh sách thẩm định qua email, dài bốn trang. Phần tài chính đòi báo cáo quản trị, sao kê ngân hàng với tờ khai thuế bên Úc, chắc tuần này Vy phải hối chị kế toán dữ lắm. Phần pháp lý đòi giấy chuyển giao quyền sở hữu trí tuệ của tất cả những người từng góp tay vô sản phẩm.
Vy ngồi đếm những người góp tay vô Planet Moon suốt bốn năm nay, được mười một người. Mười người có giấy ký đàng hoàng, người thứ mười một là Linh.
Hồi Lunar Fox còn nằm dưới tầng hầm, cả công ty chỉ có anh với Nam, không ai biết vẽ. Vy tìm được Linh trong một nhóm họa sĩ tự do. Hồi đó Linh đang học năm ba mỹ thuật ở Sài Gòn. Linh vẽ con cáo đầu tiên cho Planet Moon, Vy chuyển khoản trả ba trăm đô Úc. Không ai ký gì, vì lúc đó Lunar Fox chưa có cái gì đáng để ký.
Khung chat với Linh dừng ở hai năm trước, ở cái sticker con mèo cúi đầu cảm ơn Linh gửi. Vy gõ: Linh ơi, anh Vy Lunar Fox đây. Anh cần gặp em một chút, chuyện con cáo.
Đọc lại thấy giống tin nhắn lừa đảo, anh gửi thêm tấm hình con cáo. Tới khuya Linh vẫn chưa xem.
Nhà Hưng mới đặt luật: sau mười giờ tối không ai được nói chuyện, dán trên tủ lạnh. Luật không ghi gì về sáu giờ sáng.
Sáu giờ sáng ở Sài Gòn là chín giờ ở Sydney. Vy đeo tai nghe, ngồi ở bàn ăn họp với ba người bên Úc. Mỗi người năm phút, Vy chỉ hỏi một câu: đang kẹt chỗ nào.
Jun báo bản cập nhật hôm qua làm game tự văng ra ngoài trên mấy dòng điện thoại Android đời cũ. Ben với Thảo chưa từng đụng tới phần code đó, còn Nam thì cả tuần này phải ngồi với bên thẩm định.
“Để anh,” Vy nói.
Mấy năm nay Vy code ít dần. Làm CEO thì ngày nào cũng có việc khác xếp hàng trước cái việc anh thích nhất. Nhưng chỗ Planet Moon nhận dữ liệu người chơi là chỗ anh viết những dòng đầu tiên. Anh mở log ra đọc chừng mười phút là thấy vấn đề, chỉ Jun tắt tính năng mới trên máy chủ rồi duyệt bản vá Jun làm.
Mười lăm phút sau bên Úc báo game hết văng. Vy vẫn tin nãy giờ mình nói nhỏ lắm. Cửa phòng ngủ mở, Hưng đứng nhìn Vy trong bộ đồ ngủ, tóc dựng một bên, rồi đi thẳng vô bếp rót nước. Tối đó trên cửa tủ lạnh có thêm một tờ giấy viết tay: Trước bảy giờ sáng phải nói thật nhỏ.
Ngày thẩm định đầu tiên, Vy mặc cái áo sơ mi sạch cuối cùng. Anh về nước với một cái vali xách tay cho bốn ngày, giờ bốn ngày thành mười ngày. Tối hôm trước anh ghé chợ Bến Thành mua ba cái áo thun in hình tô phở, vì cô bán hàng nói mua ba tính tiền hai.
Vy đang nâng ghế lên mức cao nhất, ngả ghế hết cỡ, mặt bàn kéo lên ngang ngực, thì Nam mở cửa bước vô.
“Ông đang nằm hay đang đứng?”
“Vy đang thử coi CEO có ghế có bàn xịn thì ngồi kiểu nào.”
Khôi dẫn Quân lên tầng 12. Quân ngoài bốn mươi, từng làm giám đốc công nghệ cho một công ty ví điện tử, giờ nhận thẩm định kỹ thuật cho mấy quỹ. Khôi cầm theo một ly espresso còn bốc khói.
“Hân pha hả anh?” Vy hỏi. “Sao không ai pha cho Vy?”
Khôi liếc lên cái kệ.
“Hân chuẩn bị cho cậu cả bình nấu nước rồi đó. Bình Hân đi xin bên tầng này, còn cây trầu bà là của Hân đem lên.”
“À. Vy tưởng phòng này có sẵn.”
Khôi dặn chiều lại lên, rồi đi xuống. Quân xin quyền đọc mã nguồn, đọc tới phần nhận dữ liệu thì dừng lại hỏi sao viết vòng vèo vậy. Nam quay qua Vy.
Vy giải thích hồi đó tiền thuê máy chủ tính theo giờ, mà người chơi Planet Moon phần đông chơi từ chiều tới khuya, nên anh viết cho cả hệ thống ngủ theo người chơi. Khuya người ta ngủ thì máy chủ cũng ngủ, trưa mới thức. Nhờ vậy năm đầu, tiền thuê máy chủ bớt được một nửa.
Quân gật đầu, gõ ghi chú. “Hồi đó nghèo nên viết khéo.”
“Giờ cũng nghèo anh,” Vy nói. “Có tiền nuôi máy chủ là tụi em cho nó thức luôn.”
Mấy câu Quân hỏi sau đó thì Nam phải mở hệ thống ra mới trả lời được. Vy biết mình mà còn ngồi đó thì thế nào cũng nói chen, còn mấy câu này Quân cần nghe chính Nam trả lời. Anh ôm laptop ra hành lang, nhường luôn văn phòng cho hai người. Ra tới ngoài anh mới nghĩ, phòng này người ta kiếm cho mình mà.
Vy thấy thiếu một cái bảng trắng để vẽ cho Quân coi, tiện hỏi luôn chỗ in tài liệu. Anh gọi xuống Atlas. Lại người khác bắt máy, Hân lại về rồi. Vy ngó đồng hồ, năm giờ một phút.
Sáng hôm sau, trên bàn có một cái bảng trắng, bốn cây bút lông bốn màu và một tờ giấy nhớ: Chỗ in ở tầng ba, anh báo số phòng là được, cuối tháng họ tính tiền về Atlas.
Vy xuống Atlas để cảm ơn Hân về cái bảng trắng. Ngồi ở bàn Hân là một cô gái tóc ngắn đang cúi xuống lục ngăn kéo.
“Em ơi, Hân có đây không em?”
Cô gái quay lại. “Dạ, em đây anh.”
Hân cắt tóc ngắn, nhìn trẻ ra mấy tuổi. Anh mượn dù của cô, ngồi phòng cô kiếm, vậy mà cô cắt tóc một cái là anh đứng ngay trước mặt cũng không nhận ra. Anh hơi quê, mà xưa giờ hễ quê là anh nói lớn.
“Dễ thương ghê. Ai cắt vậy? Cho anh xin địa chỉ, anh cũng muốn nhìn mình dễ thương.” Anh vuốt mái tóc xoăn đã hơi dài.
Hân cầm hộp kim bấm. “Tiệm gần chợ Tân Định đó anh. Mà anh thợ ít nói chuyện lắm, chắc ảnh chịu anh không nổi.”
Bàn trong có người bật cười. Vy cười theo. Anh không ngờ cô bé ít nói này cũng biết giỡn, giỡn xong lại ngó xuống hộp kim bấm.
“Anh còn nợ em kem. Chiều nay tan làm đi nha, hai ly.”
Điện thoại trên bàn Hân rung lên, cô liếc xuống rồi mới trả lời. “Dạ, chiều nay em có hẹn rồi anh.”
“Vậy mai.”
“Dạ, để em coi lịch.”
Lên tới văn phòng Vy vẫn thấy lạ. Ăn kem đâu có tốn bao nhiêu thời gian. Xưa giờ anh mời ai ăn kem thì người ta gật liền, có ai bắt anh chờ coi lịch bao giờ. Anh cũng muốn biết trong cái lịch đó có gì mà không chen nổi hai ly kem.
Chiều đó, chưa tới năm giờ Vy đã gọi xuống cho Hân.
“Atlas xin nghe.”
Là Hân.
“Anh Vy nè. Anh muốn hỏi về cái bảng trắng.”
Thật ra Vy chẳng có gì cần hỏi. Anh hỏi bút đỏ mua ở đâu, bảng lau bằng gì, tầng ba in màu số lượng lớn được không. Hân trả lời từng câu: bút đỏ cứ xuống Atlas lấy, đồ lau bảng để sẵn trong ngăn bàn thứ hai, in màu số lượng lớn được nhưng phải báo trước một tiếng.
Hỏi gì Hân cũng trả lời được ngay, cái gì trong tòa nhà này cô cũng biết nằm ở đâu. Vy đang nghĩ câu thứ tư thì nghe tiếng Hân đẩy ghế.
“Dạ, năm giờ rồi anh. Em xin phép về nha. Có gì anh nhắn chị Mỹ Phương giúp em.”
Hân cúp máy. Tới giờ Vy mới biết cái chị hay nghe máy sau năm giờ tên là Mỹ Phương.
Anh quay qua Nam. “Bug repro được rồi.”
Nam vẫn gõ phím. “Lỗi gì?”
“Năm giờ là Hân bốc hơi. Ba ngày liền. Không phải lỗi, là sự kiện có lịch.” Vy đếm ngón tay. “Một, đi học thêm. Hai, đón em đi học. Ba, ở nhà có phim truyền hình chiếu lúc năm giờ rưỡi.”
“Bốn, đi hẹn hò,” Nam nói, mắt vẫn dán vô màn hình.
“Hân hả?” Vy bật cười. Cô bé nói chuyện với anh còn ngó xuống hộp kim bấm, đi hẹn hò thì biết ngó vô đâu.
* * *
Trưa thứ Sáu, Atlas đi ăn cơm tấm, rủ luôn Vy với Nam. Quán đầu đường, ba cái bàn inox kê nối nhau, nước mắm đựng trong bình nhựa đỏ.
Vy chờ cả bàn ăn được nửa dĩa mới gõ đũa vô ly trà đá.
“Vy có một phát hiện trong quá trình thẩm định.”
Nghe tới chữ thẩm định, Khôi mới ngẩng lên.
“Không phải Lunar Fox. Atlas.” Vy hạ giọng.
“Cậu thẩm định Atlas?” Khôi hỏi.
“Ở Atlas có một sự kiện lặp lại mỗi ngày, đúng năm giờ chiều, không lệch phút nào. Vy kiểm chứng ba lần, có nhân chứng.”
Anh chỉ qua Nam. Nam gật, miệng còn nhai.
“Đúng năm giờ, Hân biến mất.”
Cả bàn quay qua Hân.
“Anh hỏi thiệt nha. Em đi đâu mà đúng giờ dữ vậy?”
“Em đang xài app hẹn hò. Cũng khá bận.”
Cả bàn im re. Khôi lên tiếng trước. “Năm giờ là hết giờ làm mà.”
Thư bật cười, Hưng sặc trà đá, rồi cả bàn cười rần.
Vy cười lớn nhất. Cười xong anh mới nhớ ra chiều hôm qua mình giữ Hân trên điện thoại tới sát năm giờ, hỏi cái bảng trắng lau bằng gì. Cái hẹn cô nói hồi sáng hôm qua hóa ra là hẹn với ai đó trên app. Hai ly kem của anh thua một người lạ. Nói cho đúng thì sau năm giờ, anh không có trong lịch của Hân.
“Hôm qua anh làm em trễ hẹn hả?”
“Dạ không.” Hân gắp miếng chả lên. “Em canh giờ rồi.”
_______
* Bug repro: tiếng lóng của dân lập trình, nghĩa là làm cho một lỗi xảy ra lại theo ý mình. Lỗi mà tái hiện được là lỗi có quy luật, coi như đã nắm được nó.