Quyển 1: Nhồi Nhét
Chương 15: Dòng Hồ Sơ Thứ Hai
Sáng thứ Năm, Nhã đến công ty, vì cậu không còn lựa chọn nào khác. Nghỉ ba ngày liên tiếp là quá nhiều. Minh đã gọi hai lần, nhắn ba lần, và tin cuối cùng — "Mày ổn không?" — có một dấu chấm hỏi ở cuối, thứ mà Minh gần như không bao giờ dùng. Đọc dấu chấm hỏi đó, Nhã biết mình đã kéo dây quá căng.
Tám giờ, cậu ngồi vào bàn, mở board nguồn ra, và cố ép mắt bám vào sơ đồ. Nhưng đầu cậu không ở đây. Nó ở căn phòng trọ cách công ty bảy cây số — trên mặt bàn, nơi hộp dẹt nằm cạnh vòng tay, nơi hàng chục bức ảnh ký hiệu cậu chụp bên kia xếp thành chồng, nơi quy luật âm thanh ngắn-dài-rung cậu nghe được ở cửa hang còn vang trong tai.
Cả buổi sáng trôi qua trong lớp vỏ của một ngày bình thường. Cậu debug, trả lời tin nhắn trên Slack, gật đầu khi Trung ghé bàn hỏi về firmware — làm tất cả những việc mà một kỹ sư phần cứng phải làm, bằng phần não vẫn còn rảnh. Phần còn lại thì đếm giờ.
Mười hai giờ trưa, cậu xuống căng tin ăn cơm mà không nhớ mình ăn gì. Một giờ, nằm trong phòng nghỉ, nhắm mắt, không ngủ được. Hai giờ, quay lại bàn, làm thêm được chút ít. Bốn giờ chiều, cậu gõ cửa phòng Minh, xin về sớm — đau đầu.
Minh nhìn cậu một lúc, cái nhìn của người biết rõ đây không phải đau đầu. Nhưng anh không hỏi. Chỉ gật.
Bốn giờ rưỡi, cậu về đến nhà.
Căn phòng đón cậu bằng sự im lặng quen thuộc. Cửa sổ vẫn đóng, đèn bàn vẫn tắt, mọi thứ ở đúng chỗ cậu để lại sáng nay — không ai vào, không gì động đến. Cậu tháo đồ công ty, pha một ly cà phê đen, rồi ngồi xuống trước bàn, nơi hộp dẹt, vòng tay, sổ ghi chép và laptop chờ sẵn như một dàn nhạc cụ chờ người chơi.
Một hơi thở dài. Rồi cậu bắt đầu.
Vòng tay đặt lên vị trí thứ mười bảy trên lưới giấy — ô mà sáng qua đã kích hoạt giao diện hồ sơ. Hộp dẹt sáng lên gần như tức thì, và dòng hồ sơ hiện ra, giống hệt lần trước. Nháy lưu. Tắt.
Bây giờ mới đến phần thí nghiệm. Cậu nhấc vòng tay, đặt sang vị trí thứ hai mươi ở góc xa hơn — hộp dẹt tối. Vị trí thứ hai mươi mốt, vẫn tối. Hai mươi hai, tối. Quay lại vị trí thứ mười bảy, hộp dẹt sáng trở lại, như thể chỉ đúng một ô đó mới đánh thức được nó.
Nếu vị trí quyết định việc kích hoạt, thì còn gì nữa quyết định nội dung? Cậu nhấc vòng tay lên, lật úp — mặt ngoài hướng lên trần, mặt trong có đường xanh mờ úp xuống bàn — rồi đặt lại vào ô mười bảy.
Hộp dẹt sáng. Nhưng giao diện lần này khác hẳn.
Không phải dòng hồ sơ. Mà là một bảng.
Nhiều cột, nhiều dòng, sáng hơn giao diện hồ sơ nhưng vẫn mờ đủ để cậu phải nheo mắt. Cậu nghiêng người sát vào, để ánh sáng yếu ớt của nó in lên mặt.
Cột đầu tiên dài nhất, lặp lại ở mỗi dòng, giống phần đầu của dòng hồ sơ — cùng một mã cá thể mà cậu vẫn chưa đọc được. Cột thứ hai là một nhóm ký hiệu hoàn toàn mới: một vòng tròn, bên trong hai vạch dọc song song, bên cạnh ba vạch ngắn. Cậu chưa gặp nhóm này ở bất kỳ giao diện nào trước đây. Cột thứ ba là chuỗi vạch dài ngắn xen kẽ, giống thanh trạng thái sinh học từng hiện trên hộp dẹt hôm trước — lúc dài, lúc ngắn, không cố định. Và cột thứ tư mang ký hiệu tam giác cắt cạnh, cái mà cậu quen gọi là ký hiệu D, nhưng lần này bên dưới có thêm một vạch ngang — giống hệt biến thể cậu từng thấy khắc trên thân cây bên kia.
Cậu ngồi im một lúc, để mắt trôi từ cột này sang cột khác.
Giao diện này không phải hồ sơ. Đây là một bảng dữ liệu — có cấu trúc, có tổ chức, nhiều trường thông tin, và mỗi dòng đại diện cho một mẩu dữ liệu khác nhau.
Cậu vẽ lại, chậm rãi, từng cột từng ký hiệu, tay giữ nhịp đều để không bỏ sót nét nào. Hai mươi phút sau, trên trang giấy là một bản vẽ thô. Nó không cho cậu biết gì về người chết — không tên, không tuổi, không quê quán. Nhưng nó cho cậu biết một thứ khác: cấu trúc.
Cậu viết vào sổ, từng dòng gạch đầu dòng như một bản báo cáo kỹ thuật gửi cho chính mình:
Giao diện mới (đặt vòng tay úp xuống):
Bảng dữ liệu. Nhiều cột:
- Cột 1: mã cá thể (giống hồ sơ cũ) — không đọc được
- Cột 2: ký hiệu mới (vòng tròn + 2 vạch dọc + 3 vạch ngắn) — chưa hiểu
- Cột 3: thanh trạng thái sinh học (ngắn/dài thay đổi) — chưa hiểu
- Cột 4: biến thể ký hiệu D (tam giác + vạch ngang) — giống dấu hiệu trên cây
Đặt bút xuống, cậu nhìn bản vẽ và để những khả năng lần lượt trôi qua đầu. Có thể đây là dữ liệu nhiệm vụ. Có thể là lịch sử hoạt động. Có thể là trạng thái sức khỏe. Cậu không biết chắc điều nào — nhưng có một điều cậu biết chắc, và chính điều đó làm cậu dừng tay.
Đây là dữ liệu cá nhân. Cậu đang đọc dữ liệu cá nhân của một người đã chết.
Bút rơi khỏi tay, nằm ngang trên trang giấy.
"Mình đang làm gì vậy." Câu hỏi không thốt ra thành tiếng, chỉ nằm lại trong đầu cậu, nặng và lạnh.
Cậu lật sổ về trang đã viết nguyên tắc mấy hôm trước, dòng chữ chính tay cậu: "Chỉ đọc phần liên quan nguyên nhân chết hoặc an toàn. Không đọc phần cá nhân nếu không cần." Cậu đọc lại câu đó một lần, rồi lần nữa. Cậu vừa đọc dữ liệu cá nhân. Cậu biết rõ. Và cậu vẫn đọc.
Tại sao? Vì tò mò. Vì cần dữ liệu. Vì cậu muốn hiểu.
Dưới dòng nguyên tắc cũ, cậu viết thêm một dòng: Đã đọc thêm dữ liệu. Không cần thiết cho nguyên nhân chết. Mình tò mò. Ghi nhận.
Cậu nhìn dòng vừa viết một lúc lâu. "Ghi nhận" là cách nói tử tế của "biết mà vẫn làm". Cậu gạch chân dòng đó, mạnh, như thể một nét mực đậm hơn có thể khiến nó thành lời thú tội thay vì lời bào chữa.
Nhã mở laptop, kéo lại bản ghi hình nhóm khảo sát. Video mờ, ánh sáng kém, hình rung liên tục — cậu đã xem nó nhiều lần đến mức quen với từng khung nhòe. Cậu tạm dừng ở đoạn có ba người, rồi phóng to vào thiết bị trên tay người khảo sát.
Trên thiết bị đó có một ký hiệu cậu từng thấy: tam giác cắt cạnh, ba điểm sáng. Nhưng bây giờ, khi nhìn kỹ hơn, cậu nhận ra một chi tiết mà những lần trước đã bỏ qua.
Bên dưới tam giác, có một vạch ngang.
Một vạch ngang mỏng, dễ chìm vào nhiễu của hình ảnh. Giống hệt biến thể D ở cột thứ tư của bảng dữ liệu. Giống hệt biến thể cậu thấy khắc trên thân cây bên kia, đêm khảo sát quanh hang.
Cậu viết:
Biến thể D (tam giác + vạch ngang) xuất hiện ở ba nơi: - Trong bảng dữ liệu hộp dẹt - Trên cây bên kia (đêm khảo sát quanh hang) - Trên thiết bị khảo sát (bản ghi hình nhóm ba người)
Có thể là: loại nhiệm vụ, cấp bậc, mã khu vực, hoặc mã cá nhân.
Đặt bút xuống, cậu để ba khả năng xếp cạnh nhau trong đầu. Có thể người chết là thành viên của nhóm khảo sát. Có thể người chết làm cùng loại nhiệm vụ với họ. Có thể người chết đang trên đường đến gặp họ thì không đến kịp. Cậu không biết đáp án — nhưng cậu biết chắc một điều: giữa người chết và nhóm ba người trong video có một mối liên hệ, và cái vạch ngang mỏng manh kia là sợi chỉ đầu tiên nối chúng lại.
Buổi tối muộn, cậu bày ba bản ghi chép ra mặt bàn dưới ánh đèn vàng: bản thứ nhất là dòng hồ sơ từ lần mở giao diện đầu tiên, bản thứ hai là tuyến di chuyển từ lần kích hoạt giao diện tuyến, và bản thứ ba là bảng dữ liệu vẽ chiều nay. Ba tờ giấy khác nhau, ba nội dung khác nhau — nhưng khi cậu đặt chúng cạnh nhau, một quy luật hiện lên.
Cả ba đều mang cùng một khung: một phần cố định ở đầu là mã cá thể, một phần biến thiên ở giữa chứa nội dung thật, và một phần cố định ở cuối trông như mã kiểm tra hoặc trạng thái. Đầu giống nhau, đuôi giống nhau, chỉ khúc giữa đổi. Cậu đã nhìn thấy khung này ở đâu đó rồi — không phải bên kia, mà ở đây, trong những gói dữ liệu firmware cậu bóc tách mỗi ngày tại công ty.
Cậu viết:
Hệ thống dữ liệu có cấu trúc giống giao thức: phần mở đầu + nội dung + mã kiểm tra.
Phần mở đầu (cố định): mã cá thể, loại thiết bị.
Nội dung (thay đổi): hồ sơ, tuyến, trạng thái.
Mã kiểm tra (cố định): mã xác nhận.
Nếu đúng, mình có thể giải phần mở đầu trước — vì nó cố định — rồi dùng nó làm chìa khóa bóc tách phần nội dung.
Cậu nhìn dòng cuối một lúc lâu, và trong sự phấn khích của người kỹ sư vừa tìm ra đường vào, có một thứ khác len lỏi: mỗi bước tiến gần hơn đến việc dịch được hệ thống này lại là một bước lùi xa hơn khỏi ranh giới cậu tự vạch ra ban đầu.
Cậu lật sổ về trang nguyên tắc, và viết lại:
Nguyên tắc 1 (cũ): Chỉ đọc phần liên quan nguyên nhân chết hoặc an toàn.
Nguyên tắc 2 (mới): Có thể đọc mã cấu trúc (phần mở đầu) vì cần để giải mã.
Đọc lại hai dòng, cậu thấy rõ điều mình vừa làm. Nguyên tắc 2 không bổ sung cho nguyên tắc 1 — nó nới lỏng nguyên tắc 1, mở một cánh cửa mà hôm trước cậu đã tự đóng. Cậu xé trang giấy đó khỏi sổ.
Rồi viết lại, lần này ngắn hơn, thành thật hơn với chính mình:
Nguyên tắc (sau khi sửa): Mình sẽ đọc thêm một lần nữa. Lần cuối. Sau đó dừng.
Cậu đọc dòng vừa viết. Và cậu biết mình đang nói dối — bởi vì cậu đã nói "lần cuối" hai lần rồi. Lần đầu là "không đọc cá nhân". Lần sau là "không đoán nghĩa quá sâu". Cứ mỗi lần cậu tự dựng một ranh giới, lần kế tiếp cậu lại bước qua nó, và ghi vào sổ như thể việc ghi nhận có thể thay thế cho việc dừng lại.
Cậu biết. Và cậu vẫn viết.
Cuốn sổ gập lại, đèn bàn tắt. Trong bóng tối, cậu nằm xuống giường, mắt mở nhìn lên trần nhà không thấy gì.
"Mình sẽ đọc thêm một lần nữa," cậu nói, khẽ, với căn phòng trống. "Lần cuối thật."
Cậu biết mình đang nói dối.
Thảo luận
Bình luận chương
0 bình luận
Chưa có bình luận nào. Hãy là người đầu tiên bình luận chương này.