Kỷ Luật Khó Nhất Là Không Làm Gì Cả

Kỹ năng khó học nhất mà tôi phải rèn trong suốt dự án này không hề mang tính kỹ thuật. Đó là học cách ngồi yên không động tay. Để mặc một thứ chạy mà không can thiệp — từ chối thò tay vào để “giúp đỡ” — hóa ra lại khó với tôi hơn bất kỳ con bug nào tôi từng truy lùng. Hóa ra tôi giỏi viết code hơn nhiều so với việc đừng đụng vào nó.

Điều này nghe có vẻ tầm thường cho đến khi bạn thực sự trải qua nó. Trong một thời gian dài, không làm gì cả là điều khó khăn nhất và quan trọng nhất mà tôi được yêu cầu phải làm, và tôi làm điều đó cực kỳ tệ.

Cơn thôi thúc can thiệp

Đây là hình hài của vấn đề. Tôi sẽ cho một thứ gì đó chạy — một tiến trình dài mà toàn bộ ý nghĩa của nó là phải diễn ra qua thời gian — và chỉ trong vài phút, tôi bắt đầu chăm chú nhìn nó theo cái cách người ta canh một ấm nước đang sôi. Và ngay khoảnh khắc nó trông có vẻ tệ, mỗi đợt sụt giảm sớm, mỗi đoạn xấu xí, mỗi quãng mà các con số chùng xuống theo kiểu tôi không thích, tôi cảm thấy một nhu cầu gần như mang tính thể chất là phải dừng nó lại, thay đổi cái gì đó, rồi bắt đầu lại từ đầu.

Sự chờ đợi cảm giác như lãng phí. Ngồi đó trong khi một lần chạy trông chẳng có gì hứa hẹn cảm giác như vô trách nhiệm, gần như lười biếng, như thể tôi đang để mặc một vấn đề mưng mủ mà một người có năng lực hẳn đã sửa rồi. Thế là tôi can thiệp. Liên tục.

Mỗi lần can thiệp là một cú overfit nho nhỏ

Điều mà tôi mất một khoảng thời gian đáng xấu hổ mới hiểu được là bản chất thật sự của những lần can thiệp đó. Khi tôi thò tay vào và thay đổi điều gì đó để phản ứng với một đoạn ngắn đầy nhiễu, tôi không hề đang sửa một vấn đề. Tôi đang ép các quyết định của chính mình khớp với sự ngẫu nhiên.

Tôi đang tinh chỉnh toàn bộ tiến trình để chiều theo vài cái dao động cuối cùng mà tình cờ tôi đang nhìn vào — những dao động mà, trong một khung thời gian ngắn như vậy, gần như chẳng mang chút thông tin thực nào về bất cứ điều gì. Mỗi cái “sửa” nho nhỏ chính là tôi đang overfit bằng tay: bẻ cong công việc để khớp với cái nhiễu gần nhất, đúng cái lỗi mà tôi biết phải tránh trong code, vậy mà lại phạm phải bằng chính những ngón tay không yên của mình. Tôi đã dựng nên những hàng phòng thủ cẩn thận chống lại overfitting trong phần mềm của mình, rồi lại để toang cái lỗ hổng lớn nhất ngay trong chính bản thân mình.

Trong ngắn hạn, nhiễu trông giống tín hiệu

Điều khiến cái bẫy này hiệu nghiệm đến vậy là, trong một khoảng đủ ngắn, nhiễu là kẻ mạo danh hoàn hảo của tín hiệu. Một đoạn xấu ngẫu nhiên trông y hệt một vấn đề thực sự. Một đoạn tốt ngẫu nhiên trông y hệt thành công. Ngay tại khoảnh khắc đó, không có cách nào phân biệt chúng bằng cách nhìn chằm chằm kỹ hơn — mà nhìn chằm chằm kỹ hơn lại chính là toàn bộ chiến lược của tôi.

Thế nên gần như mọi phản ứng sớm của tôi đều là phản ứng trước một cú tung đồng xu mà tôi đã ngộ nhận thành một phán quyết. Tôi thấy vài kết quả xấu liên tiếp, kết luận rằng cách tiếp cận đã hỏng, rồi đập bỏ nó — trong khi sự thật trung thực là vài kết quả xấu liên tiếp chính xác là điều bạn nên kỳ vọng sẽ thấy đôi lúc, ngay cả từ một thứ đang hoạt động tốt. Tôi đang đọc ra ý nghĩa từ những hạt nhiễu vô nghĩa.

Con bug thực sự là sự lo âu của tôi

Cuối cùng tôi phải thừa nhận khuyết tật thật sự nằm ở đâu. Nó không nằm trong các lần chạy. Nó nằm trong chính tôi — cụ thể là ở chỗ tôi không có khả năng phân biệt giữa “cái này không hoạt động” và “cái này chưa kể xong cho tôi nghe điều gì cả”. Hai trạng thái đó nhìn từ bên ngoài giống hệt nhau, và tôi không có đủ kiên nhẫn để mặc cho cái này dần ngã ngũ thành cái kia.

Bên dưới nó là một nhu cầu được cảm thấy mình bận rộn, được thấy rõ là mình đang làm gì đó, được chuyển hóa sự khó chịu của mình thành hành động. Và nhu cầu đó không hề trung tính. Nó đang chủ động làm hỏng chính những thí nghiệm mà tôi đang chạy, bởi vì các thí nghiệm cần thời gian và sự tĩnh lặng thì mới có ý nghĩa, mà tôi thì cứ liên tục chẳng cho chúng cái nào.

Cam kết trước với sự kiên nhẫn

Cách sửa, khi cuối cùng tôi tìm ra, mang tính quy trình hơn là khôn khéo, và có chút làm người ta khiêm tốn lại bởi sự thẳng thừng của nó. Trước khi bắt đầu một thứ gì đó, tôi sẽ quyết định trước rằng nó được phép chạy bao lâu, và điều gì mới thực sự được tính là bằng chứng cho hướng này hay hướng kia. Và rồi — đây mới là phần khó — tôi sẽ giữ đúng điều đó, và từ chối cho phép bản thân đụng vào nó dựa trên những gì đoạn giữa trông như thế nào.

Mục đích là lấy quyết định ra khỏi tay sự lo âu nhất thời của tôi và đặt nó vào tay một phiên bản điềm tĩnh hơn của tôi, người đã suy nghĩ về nó từ trước. Cái phiên bản tôi đang theo dõi lần chạy theo thời gian thực, cảm thấy ngứa ngáy muốn can thiệp, đã nhiều lần chứng minh rằng anh ta không thể được tin tưởng để nắm các nút điều khiển.

Không làm gì cả cũng là làm một điều gì đó

Cách diễn giải lại có ích nhất là nhận ra rằng sự kiềm chế không phải là sự nhàn rỗi. Lựa chọn không can thiệp — khi mà can thiệp sẽ làm hỏng phép đo — tự thân nó là một kỷ luật chủ động, có chủ đích, và thực sự khó khăn. Nó chỉ trông như không làm gì cả. Nhìn từ bên trong, giữ mình bất động trong khi mọi bản năng đều gào thét đòi bạn phải hành động là một trong những công việc khó khăn nhất tồn tại trên đời.

Phần lớn công việc thực sự trong dự án này hóa ra vô hình theo đúng kiểu như vậy: không phải những lần sửa lỗi đầy kịch tính, mà là cái hành động lặng lẽ, không hào nhoáng của việc không hành động khi mà hành động chỉ làm mọi thứ tệ hơn.

Bài học sâu xa hơn

Điều này dần dần thay đổi cách tôi nghĩ về chính khái niệm tiến bộ. Một phần lớn những gì tôi từng tính là “năng suất” thời kỳ đầu — những lần khởi động lại, những lần tinh chỉnh, sự loay hoay liên tục — chỉ là sự lo âu được chuyển hóa thành chuyển động. Nó cảm giác như công việc. Nhưng phần lớn trong đó thực ra là sự phá hoại, được hóa trang thành sự cần mẫn.

Tiến bộ thực sự, dần dần tôi nhận ra, nhìn từ bên ngoài thường giống như đang chờ đợi. Giống như để bằng chứng tích lũy theo nhịp độ riêng của nó thay vì đòi hỏi nó phải đến theo cái lịch trình cảm xúc của tôi. Học cách tĩnh lặng — để mặc một thứ chạy đủ lâu để nó thực sự có ý nghĩa trước khi tôi đưa ra phán xét về nó — hóa ra cũng quan trọng như bất kỳ kỹ thuật nào tôi nhặt nhạnh được trên đường. Thị trường sẽ chẳng bao giờ tưởng thưởng cho tôi vì sự bận rộn. Chỉ thi thoảng, vì sự đúng đắn, và để đúng thì thường trước hết phải kiên nhẫn.

— Không tín hiệu, không lợi nhuận, không phải lời khuyên đầu tư.