Linux sẽ kỷ niệm 30 năm thành lập vào năm nay. Trong phần hai của cuộc phỏng vấn, chúng tôi kết thúc cuộc trò chuyện với người sáng tạo Linux Linus Torvalds. Nếu bạn chưa có, hãy xem phần một để tìm hiểu tất cả về phát triển Linux kernel và việc tạo hệ thống điều khiển phiên bản Git.
Trong phần thứ hai này, Linus cung cấp cái nhìn sâu sắc và quan điểm có được từ việc quản lý một dự án mã nguồn mở lớn trong ba thập kỷ. Anh ấy cũng nói về công việc của mình tại Linux Foundation và mô tả những gì anh ấy làm trong thời gian rảnh rỗi khi anh ấy không tập trung vào phát triển kernel.
Về điều gì làm nên thành công của một dự án mã nguồn mở, Linus thừa nhận, “Tôi thực sự không biết chìa khóa thành công là gì. Vâng, Linux đã rất thành công, và rõ ràng Git cũng đã bắt đầu thuận lợi, nhưng nó luôn rất khó khăn để thực sự quy điều đó cho một số nguyên nhân sâu xa hơn. Có lẽ tôi vừa gặp may? ” Anh ấy tiếp tục đưa ra ba khuyến nghị thực tế mà anh ấy đã tự làm theo: luôn sẵn sàng hỗ trợ các nhà phát triển khác, cởi mở và trung thực.
Khi mới bắt đầu dự án, tất cả code đều do Linus viết. “Tôi vẫn nhớ những ngày đầu tiên, khi mọi người gửi cho tôi các bản vá, và tôi không thực sự áp dụng chúng dưới dạng bản vá, nhưng tôi đã đọc chúng, tìm ra những gì mọi người muốn làm và sau đó tự mình làm điều đó. Bởi vì điều đó là cách tôi bắt đầu dự án, và đó là cách tôi cảm thấy thoải mái hơn, và theo cách đó tôi biết code tốt hơn. ” Anh ấy giải thích rằng điều quan trọng là phải học cách ủy quyền, “Tôi đã ngừng làm việc đó khá nhanh chóng, bởi vì tôi chỉ lười biếng về cơ bản. Tôi thực sự giỏi đọc các bản vá và hiểu những gì họ đã làm, và sau đó tôi chỉ áp dụng chúng.”
Linus cũng đã làm việc để giữ sự công bằng khi Linux ngày càng phát triển và ngày càng thành công hơn, “Chẳng hạn, tôi rất có ý thức không muốn làm việc cho một công ty Linux. Tôi đã duy trì Linux trong thập kỷ đầu tiên mà nó không phải là công việc của tôi. Đó không phải là vì Tôi nghĩ lợi ích thương mại là sai, nhưng vì tôi muốn đảm bảo rằng mọi người coi tôi là một bên trung lập và không bao giờ cảm thấy như tôi là ‘đối thủ cạnh tranh’. “
Về câu hỏi liệu mã nguồn mở có bền vững hay không, Linus trả lời, “Có. Cá nhân tôi tin chắc 100% rằng không chỉ mã nguồn mở bền vững mà đối với các vấn đề kỹ thuật phức tạp, bạn thực sự cần mã nguồn mở đơn giản vì không gian có vấn đề kết thúc. quá phức tạp để quản lý bên trong một công ty. Ngay cả một công ty công nghệ lớn và có năng lực. “
Cuối cùng, về việc anh ấy sẽ tiếp tục làm việc trên Linux trong bao lâu, Linus nói, “Tôi thực sự thích những gì tôi làm và miễn là tôi cảm thấy tôi thực sự giúp đỡ dự án, tôi sẽ ở lại.” Đọc tiếp cho cuộc phỏng vấn đầy đủ.
Quản lý các dự án nguồn mở
Jeremy Andrews: Gần đây, chúng tôi đã nói chuyện với người sáng tạo Drupal, Dries Buytaert, và ông ấy ghi nhận rất nhiều cảm hứng từ anh cũng như đôi khi được cố vấn và tư vấn trong hơn hai mươi năm qua trong việc giữ cho Drupal CMS được phổ biến. Bạn có thường xuyên giao tiếp với những người bảo trì các dự án mã nguồn mở khác, cung cấp dịch vụ cố vấn hoặc đơn giản là chỉ chia sẻ? Bao lâu thì các nhà bảo trì mã nguồn mở khác liên hệ với bạn để tìm lời khuyên hoặc trợ giúp?
Linus Torvalds: Tôi không biết về những người khác, nhưng không, cá nhân tôi không có xu hướng tương tác nhiều với các dự án mã nguồn mở khác, đơn giản bởi vì tôi là người có xu hướng “nghĩ một chiều”. Tôi nghĩ đó là lý do tại sao tôi vẫn thực hiện bảo trì kernel sau ba thập kỷ: một số người chuyển từ dự án này sang dự án khác, trong khi những người khác (như tôi), cuối cùng lại khá tập trung vào một thứ trong khoảng thời gian dài hơn.
Điều đó nói rằng, thường có rất nhiều sự chồng chéo trong các nhà phát triển, với rất nhiều nhà phát triển làm việc trên nhiều hơn một dự án mã nguồn mở. Và các dự án khác nhau rõ ràng ảnh hưởng lẫn nhau, với tất cả các cơ sở hạ tầng chung. Vì vậy, bạn thực sự có kiểu thụ phấn chéo đó, và bạn kết thúc bằng việc mọi người gặp nhau tại cùng một hội nghị (quay lại khi những điều đó xảy ra), v.v.
Jeremy Andrews: Là người duy trì một dự án mã nguồn mở, một số bài học chính mà bạn đã học được sẽ giúp những người khác quản lý dự án của họ thành công hơn là gì?
Linus Torvalds: Đây là một câu hỏi khó trả lời, bởi vì tôi thực sự không biết chìa khóa thành công là gì. Vâng, Linux đã rất thành công, và rõ ràng Git cũng bắt đầu thuận lợi, nhưng luôn rất khó để thực sự gán điều đó cho một số nguyên nhân sâu xa hơn. Có lẽ tôi vừa gặp may?
Bởi vì may mắn và thời điểm, và ở “đúng nơi vào đúng thời điểm” thực sự là quan trọng. Tôi nghĩ đối với cả Linux và Git, những dự án tôi bắt đầu đều trở thành những dự án mà rất nhiều người cần, ngay cả khi họ thậm chí không nhất thiết biết rằng họ cần chúng. Đó chỉ là may mắn? Có lẽ. Hay là trong số tất cả những người cần những dự án đó, tôi là người duy nhất bước lên và thực hiện công việc, và có quả bóng lăn?
Cái tôi của tôi thích cái sau hơn, nhưng sự trung thực buộc tôi phải nói rằng bạn cũng thực sự muốn may mắn, và bạn cần phải chọn đúng dự án. Cái mà mọi người thực sự cần.
Nhưng nếu chúng ta bỏ qua những loại “câu hỏi lớn” đó, tôi thực sự có một vài điều thực tế và cơ bản mà cá nhân tôi nghĩ là quan trọng nếu bạn là người bảo trì mã nguồn mở.
Điều quan trọng là bạn phải ở đó. Bạn phải ở xung quanh, bạn phải ở đó cho các nhà phát triển khác, và bạn phải ở đó MỌI LÚC. Bạn sẽ gặp phải các vấn đề kỹ thuật, và nó sẽ khiến bạn bực bội. Bạn sẽ làm việc với những người có thể có những ý tưởng rất khác nhau về cách giải quyết những vấn đề kỹ thuật đó. Và các vấn đề kỹ thuật theo một số cách là phần dễ dàng, bởi vì chúng thường có các giải pháp kỹ thuật, và bạn thường có thể nói một cách khách quan rằng “cái này tốt hơn / nhanh hơn / đơn giản hơn / cái gì cũng được”.
Phần khó hơn có thể là bạn sẽ phải tương tác với những người bạn không thích hoặc với những người không thích bạn, và sẽ có những xung đột về tính cách. Sau đó, bạn không thể rơi vào việc “chỉ cho tôi các con số” – mọi người không phải lúc nào cũng hòa hợp và đó không phải là một trò chơi số. Bạn sẽ có những ngày tồi tệ và những người bạn làm việc cùng sẽ có những ngày tồi tệ. Và bạn sẽ phải vượt qua tất cả.
Điều đó không có nghĩa là bạn không thể nghỉ ngơi. Tôi làm việc đó mọi lúc. Nếu tôi bực bội, tôi chỉ cần rời khỏi máy tính, và tôi sẽ đọc một cuốn sách hoặc một cái gì đó. Cố gắng thực hiện một số công việc hiệu quả (hoặc thảo luận) khi bạn đang thất vọng và tức giận là không tốt. Và tôi rõ ràng không phải lúc nào cũng làm tốt điều này, và tôi đã chọc giận mọi người và sử dụng ngôn từ quá mạnh. Tôi nghĩ rằng tôi đang làm tốt hơn về điều đó, nhưng một cách để tôi làm tốt hơn về điều đó theo nghĩa đen là bỏ đi nhiều hơn – cố gắng chủ động thông báo rằng “Tôi đang ở trong tâm trạng tồi tệ” và chỉ cần rời khỏi máy tính.
Vì vậy, bạn không cần phải ở đó “mọi lúc” theo nghĩa là nó phải liên tục. Nghỉ ngày nào cũng được. Nghỉ một tuần có thể có nghĩa là bạn cần cho mọi người biết. Nghỉ một tháng? Tại thời điểm đó, bạn thực sự phải có kế hoạch bảo trì, và trong ba thập kỷ, điều đó đã xảy ra đúng hai lần: một lần khi kernel.org bị xâm nhập và mọi người dành nhiều thời gian để đảm bảo rằng mọi thứ đều ổn, và lần thứ hai khi tôi tạm nghỉ để cố gắng đảm bảo rằng tôi đã kiểm soát được hành vi của mình.
Điều tôi muốn nói là duy trì một dự án lớn là một khối lượng công việc hợp lý và đó là điều bạn cần tiếp tục làm trong một thời gian dài. Nó không phải là tất cả vui vẻ. Thật thú vị. Đó là thử thách theo những cách tốt nhất. Tôi đã không cảm thấy nhàm chán khi trở thành một người bảo trì kernel. Nhưng nó cũng không phải là tất cả hoa hồng. Không phải ai cũng muốn làm điều đó.
Điều quan trọng khác là bạn phải cởi mở. Và ý tôi là theo nhiều cách. Thật dễ dàng để tạo ra một số “bè phái” của mọi người, nơi bạn có một nhóm bên trong thảo luận về mọi thứ một cách riêng tư, và sau đó bạn thực sự chỉ thấy kết quả cuối cùng (hoặc công việc ngoài lề) một cách công khai, bởi vì tất cả những thứ quan trọng đã xảy ra bên trong một công ty hoặc trong một nhóm người cốt lõi và những người bên ngoài gặp khó khăn trong việc xâm nhập vào nhóm đó và thậm chí thường khó nhìn thấy những gì đang diễn ra trong nhóm cốt lõi đó vì nó quá riêng tư và độc quyền.
Đó là một trong những lý do tôi thực sự thích danh sách gửi thư mở. Không phải một số danh sách “theo lời mời”. Không phải thứ gì đó bạn thậm chí phải đăng ký để tham gia. Thực sự rất cởi mở. Và hầu như tất cả các cuộc thảo luận phát triển nên có ở đó.
Nhưng “cởi mở” cũng quan trọng theo một cách khác – hãy cởi mở với các giải pháp của người khác, và đừng có ý tưởng rất rõ ràng và không linh hoạt về cách mọi thứ nên được thực hiện. Tôi nghĩ một trong những lý do khiến Linux thành công chính là việc tôi thực sự KHÔNG có một kế hoạch lớn và không đặt nhiều kỳ vọng vào việc mọi thứ sẽ đi đến đâu, và vì vậy khi mọi người bắt đầu gửi cho tôi các bản vá hoặc gửi cho tôi yêu cầu về các tính năng, đối với tôi, điều đó thật tuyệt vời và tôi không có định kiến trước về việc Linux phải như thế nào. Kết quả cuối cùng: tất cả những cá nhân (và sau này là các công ty lớn) muốn tham gia vào việc phát triển Linux kernel đều có một thời gian khá dễ dàng để làm điều đó, bởi vì tôi khá cởi mở với Linux khi làm những việc mà bản thân tôi không có hứng thú thực sự ban đầu.
Và cuối cùng, tôi nghĩ rằng “cởi mở” là quan trọng trong cảm giác trung thực. Bạn không muốn chơi trò chính trị sau lưng mọi người. Hãy cởi mở về động lực của bạn, cởi mở về lý do bạn làm mọi việc và những gì bạn làm. Bạn không nhất thiết phải thích tất cả những người bạn làm việc cùng và họ cũng không cần phải thích bạn, nhưng nếu mọi người cởi mở về những gì họ đang hướng tới và những gì họ làm, bạn không nhất thiết phải luôn là những người bạn tốt nhất – điều quan trọng nhất là bạn có thể tin tưởng lẫn nhau.
Bởi vì niềm tin là vấn đề quan trọng. Rất quan trọng.
Jeremy Andrews: Ngoài những gì anh đã đề cập về việc ít lập trình hơn, giao tiếp và lãnh đạo nhiều hơn, có những kỹ năng cụ thể nào anh cần học mà anh thấy khó không? Ví dụ, ủy quyền, trở thành một người viết tốt hơn và các kỹ năng không viết code khác – và nếu vậy, anh đã học cách làm điều này như thế nào? Nó được thực hành, từ sách hay từ những người khác? Đây có phải là một cái gì đó được dạy trong trường học?
Linus Torvalds: Tôi sẽ chỉ bắt đầu bằng cách nói rằng hầu như tất cả quá trình đối với tôi đã tăng lên rất nhiều và là một kinh nghiệm học hỏi. Ba thập kỷ là một khoảng thời gian dài, và rất ít thay đổi xảy ra rất đột ngột, và hầu hết cách chúng ta làm mọi thứ đều phát triển theo một cách rất “hữu cơ”.
Nói cách khác, nó không phải là kết quả của việc lập kế hoạch trước và đọc sách văn bản về quản lý, v.v. Nó hầu như tự diễn ra và bất kỳ cấu trúc nào chúng ta có bây giờ không phải từ một số biểu đồ tổ chức được viết ra, mà là từ mọi người chỉ đơn giản là “tìm thấy vị trí của họ”.
Một kỹ năng mà rõ ràng một số người cảm thấy khó khăn là “buông bỏ sự kiểm soát”. Tôi vẫn nhớ những ngày đầu tiên, khi mọi người gửi cho tôi các bản vá và tôi không thực sự áp dụng chúng dưới dạng bản vá, nhưng tôi đã đọc chúng, tìm ra những gì mọi người muốn làm và sau đó tự mình làm điều đó. Bởi vì đó là cách tôi bắt đầu dự án, và đó là cách tôi cảm thấy thoải mái hơn, và theo cách đó tôi biết code tốt hơn.
Nó chỉ ra rằng đối với tôi, đây không phải là một vấn đề lớn cuối cùng. Tôi đã ngừng làm việc đó khá nhanh chóng, bởi vì về cơ bản tôi chỉ lười biếng. Tôi thực sự giỏi trong việc đọc các bản vá và hiểu những gì họ đã làm, và sau đó tôi chỉ cần áp dụng chúng. Vì vậy, những ngày kỳ quặc kiểm soát của tôi đã khá nhanh chóng kết thúc. Tôi nghĩ rằng tôi đã khá giỏi trong việc tìm kiếm mọi người để tin tưởng, và sau đó làm điều đó – tin tưởng họ và không quản lý vi mô quá mức.
Vì vậy, ủy quyền không phải là một vấn đề lớn, nhưng tôi biết nó có đối với các dự án khác. Một lần nữa, một phần của nó là toàn bộ điều mà mô hình bảo trì của chúng tôi không yêu cầu một số loại tin tưởng tuyệt đối từ trước, điều này thực sự làm cho mọi thứ dễ dàng hơn nhiều.
Kỹ năng giao tiếp rất quan trọng. Tôi thực sự xuất thân từ một gia đình nhà báo (bố mẹ tôi đều là nhà báo, chú tôi là một, ông nội tôi là một nhà thơ và một nhà báo), vì vậy tôi lớn lên trong một gia đình mà việc đọc và viết được coi là điều hiển nhiên từ khi tuổi còn rất trẻ. Và trong khi tiếng Anh là ngôn ngữ thứ ba của tôi, và tôi đã sử dụng khá ổn đối với tôi vào thời điểm tôi bắt đầu sử dụng Linux, và giao tiếp không phải là một vấn đề lớn. Nhưng tôi nhận ra rằng nó rất có thể là một vấn đề lớn, cả vì lý do cá nhân (có lẽ là tính cách) và vì lý do bất đồng ngôn ngữ.
Nhưng nói chung, chủ yếu là tôi vừa học vừa làm. Một lần nữa, hãy nhớ – không có Linux nào xảy ra chỉ sau một đêm. Dự án cách đây ba mươi năm rất khác so với dự án ngày nay.
Jeremy Andrews: Mặc dù mã nguồn mở đã rất thành công, nhưng nhiều người dùng lớn nhất, ví dụ như các tập đoàn, không làm gì hoặc ít để hỗ trợ hoặc đóng góp trở lại cho các dự án mã nguồn mở mà họ dựa vào. Ngay cả những nhà phát triển của các dự án lớn và thành công đáng ngạc nhiên (nếu tính theo số lượng người dùng) cũng có thể may mắn kiếm đủ tiền để mua cà phê trong tuần. Bạn có nghĩ rằng đây là một cái gì đó có thể được giải quyết? Mô hình mã nguồn mở có bền vững không?
Linus Torvalds: Tôi thực sự không có câu trả lời cho điều này, và vì lý do nào đó mà kernel luôn tránh được sự cố. Đúng vậy, có những công ty là “người dùng” thuần túy của Linux, nhưng cuối cùng họ vẫn muốn được hỗ trợ, vì vậy sau đó họ dựa vào các nhà thầu hoặc bản phân phối Linux, và rõ ràng những công ty đó sau đó trở thành một trong những nguồn công việc lớn của nhà phát triển hạt nhân.
Và một số lượng lớn các công ty công nghệ lớn sử dụng kernel sẽ tích cực tham gia vào quá trình phát triển. Đôi khi họ kết thúc bằng nhiều công việc nội bộ và không giỏi trong việc đưa mọi thứ trở lại ngược dòng (tôi sẽ không nêu tên và một số trong số họ thực sự đang cố gắng làm tốt hơn), nhưng điều đó thực sự rất đáng khích lệ là có rất nhiều công ty lớn đang rất công khai tham gia vào quá trình phát triển nhân thượng nguồn (upstream kernel development), và là những phần chính của cộng đồng.
Vì vậy, vì một số lý do, cộng đồng phát triển hạt nhân đã khá thành công trong việc tích hợp với tất cả các lợi ích thương mại. Tất nhiên, một số điều đó đã được lưu ý rất nhiều: Linux luôn mở cửa cho người dùng thương mại, và tôi đã tránh một cách có ý thức toàn bộ tư tưởng chống lại công ty mà bạn chắc chắn có thể tìm thấy trong một số nhóm “Phần mềm miễ phí”. Tôi nghĩ GPLv2 là một giấy phép tuyệt vời, nhưng đồng thời tôi cũng chống lại một số hình thức cực đoan của “Phần mềm miễn phí”, và tôi – và Linux – là một phần của toàn bộ việc đổi thương hiệu để sử dụng ” Mã nguồn mở”.
Bởi vì thành thật mà nói, một số dư âm gần như tôn giáo của FSF (Free Software Foundation) là bổ ích, và một bộ phận nhất định của cộng đồng đang tích cực loại bỏ việc sử dụng thương mại.
Và tôi nói điều đó với tư cách là một người luôn cảnh giác với việc quá bị vấy bẩn bởi các lợi ích thương mại. Ví dụ, tôi rất có ý thức không muốn làm việc cho một công ty Linux. Tôi đã duy trì Linux trong thập kỷ đầu tiên mà nó không phải là công việc của tôi. Đó không phải vì tôi nghĩ lợi ích thương mại là sai, mà vì tôi muốn đảm bảo rằng mọi người coi tôi là một bên trung lập, và không bao giờ cảm thấy tôi là “đối thủ cạnh tranh”.
Nhưng tôi nghĩ rằng một số dự án có thể đã tự bắn vào chân mình bằng cách hơi phản thương mại và khiến các công ty thực sự khó tham gia.
Và không, làm việc với các công ty không phải lúc nào cũng dễ dàng. Chúng tôi có một số nhà bảo trì kernel đã rất tích cực trong việc cố gắng giúp dạy các công ty cách làm việc với mã nguồn mở: đó là một trong những điều mà Linux Foundation thực hiện (không chỉ về mặt kỹ thuật mà còn giảng dạy về các vấn đề pháp lý, v.v.), và ngoài việc là một trong những người bảo trì kernel chính, Greg KH còn rất tích cực trong lĩnh vực đó. Vì vậy, nó cần một số nỗ lực.
Nhưng nó có bền vững không? Có. Cá nhân tôi 100% tin rằng không chỉ mã nguồn mở bền vững, mà đối với các vấn đề kỹ thuật phức tạp, bạn thực sự cần mã nguồn mở đơn giản vì không gian vấn đề cuối cùng quá phức tạp để quản lý bên trong một công ty. Ngay cả một công ty công nghệ lớn và có năng lực.
Nhưng nó đòi hỏi một sự cởi mở nhất định cho cả hai bên. Không phải tất cả các công ty đều sẽ là đối tác tốt và một số nhà phát triển không nhất thiết muốn làm việc với các công ty lớn.
Jeremy Andrews: Một chủ đề phổ biến mà chúng tôi đã thấy khi nói chuyện với những người bảo trì mã nguồn mở dài hạn là bị kiệt sức, một phần do áp lực liên tục của việc duy trì các dự án quá công khai và yêu cầu liên tục từ người dùng như thể bạn nợ họ một thứ gì đó. Anh đã trải nghiệm điều này chưa? Làm thế nào để anh đối phó với điều này và tránh kiệt sức? Anh đã bao giờ nghĩ đến việc bỏ phát triển kernel chưa?
Linus Torvalds: Chà, tôi đã ám chỉ đến vấn đề này trong câu hỏi “những bài học quan trọng” trước đó của anh.
Bởi vì vâng, đó là một áp lực. Và vâng, tôi cũng đã có lúc chán ngấy.
Đồng thời, ít nhất đối với cá nhân tôi, những câu nói “Ok, đủ rồi” nói chung là “Đủ rồi cho HÔM NAY”. Tôi căng thẳng, tôi bực mình. Tôi rõ ràng là đã bùng nổ với mọi người, và nó không đẹp khi nó xảy ra (và tôi thực sự đã cố gắng tích cực để đảm bảo nó không xảy ra lần nữa). Và bạn rõ ràng không thấy những trường hợp mà tôi bỏ đi vì bực tức về điều gì đó hoặc ai đó.
Nhưng.
Tôi đi ra ngoài, đọc một cuốn sách, có thể lái xe xung quanh một chút nếu trời đẹp, hãy nghỉ ngơi. Và tôi vượt qua nó. Và tôi trở lại vào ngày hôm sau, bởi vì cuối cùng, tôi thực sự tận hưởng những gì tôi làm. Tôi đã chán muốn rơi nước mắt nếu không có sự phát triển của kernel.
Vì vậy, ngay cả khi tôi đi nghỉ (tôi cố gắng đi lặn biển vài lần một năm, mặc dù đại dịch rõ ràng là điều đó chưa xảy ra vào năm ngoái), tôi vẫn mang theo máy tính xách tay để có thể theo kịp. Tôi cho mọi người biết rằng tôi không rảnh như thường lệ, nhưng đặc biệt khi tôi có thể xếp nó đến cuối cửa sổ phát triển, thì đó thường không phải là vấn đề lớn. Tôi rất hiếm khi hoàn toàn không có mạng Internet, mặc dù điều đó cũng đã xảy ra một vài lần (một lần nữa – lặn với bình dưỡng khí đôi khi có nghĩa là “vị trí kỳ lạ không có internet” ngay cả những ngày này), vì vậy tôi đã vài lần hoàn toàn không tham gia nguyên tuần.
Và tôi rất thích ở trên liveaboard, thực hiện năm lần lặn mỗi ngày trong một tuần, và thậm chí không thể đọc email theo đúng nghĩa đen. Tôi đã thực hiện điều đó ba lần trong năm năm qua, tôi nghĩ vậy. Nó thật hấp dẫn.
Nhưng sau đó tôi quay lại, và tôi thực sự rất vui khi được trở lại.
Jeremy Andrews: 30 năm là một khoảng thời gian dài, và trong khi tôi hiểu rằng không thể đoán trước được tương lai, tôi vẫn muốn hỏi: Anh thấy Linux ở đâu trong 30 năm nữa? Và anh hình dung mình thế nào lúc đó?
Linus Torvalds: Đây là một câu hỏi mà tôi không thể trả lời được, và không phải vì tôi đang cố gắng loại bỏ nó, mà đơn giản vì đó không phải là cách tôi làm việc và không phải cách tôi nghĩ về dự án.
Tôi không có “kế hoạch 30 năm”. Tôi thậm chí không có kế hoạch 5 năm. Trên thực tế, tôi không có kế hoạch trước nhiều hơn một hoặc hai bản phát hành (rõ ràng là chỉ vài tháng).
Là một kỹ sư, tôi có quan điểm mạnh mẽ rằng “chi tiết là vấn đề”. Chi tiết gần như là điều duy nhất quan trọng. Nếu bạn hiểu đúng chi tiết, phần còn lại sẽ làm theo.
Điều đó nghe có vẻ hơi kỳ quặc, vì tôi đã nói về “khẩu vị tốt”, và tôi chắc chắn rất ghi nhận rằng triết lý unix (“mọi thứ là một tập tin” là một trong những trụ cột cốt lõi) là một trong những quyền.
Và trong Git, tôi cũng rất muốn có một số “thiết kế” tổng thể, và có rất nhiều khái niệm lớn bao quát trong Git (“mọi thứ là một đối tượng bất biến” có lẽ là Git tương đương với Unix).
Nhưng những thứ “thiết kế cấp cao” tuyệt vời đó chủ yếu là để cung cấp cho bạn một loại kết quả cuối cùng gắn kết và cung cấp cho cộng đồng một loại “la bàn thiết kế”. Cuối cùng thì chúng không thực sự là thứ quan trọng nhất. Thực tế là phức tạp và thường xấu xí, và thiết kế lớn cấp cao không thể cản trở các chi tiết, và tất cả các trường hợp đặc biệt mà bạn thực sự cần trong thực tế.
Vì vậy, tôi chỉ muốn nói rằng tôi là một “kỹ sư plodding”. Tôi nhìn vào những gì đang diễn ra ngay bây giờ, tôi nhìn vào những vấn đề mà chúng tôi gặp phải hiện tại, và tôi không thực sự lên kế hoạch cho tương lai ngoài việc chỉ biết rằng “Tôi phải duy trì kết quả cuối cùng”, vì vậy tôi muốn đảm bảo rằng công việc chúng ta làm hôm nay sẽ không phải là vấn đề lớn vào ngày mai.
Loại câu trả lời đó ở phần cuối cùng của câu hỏi của bạn: Tôi thấy mình đang ở xung quanh. Không phải trong 30 năm nữa, nhưng tôi tận hưởng những gì tôi làm, và miễn là tôi cảm thấy mình thực sự đang giúp đỡ dự án, tôi sẽ ở bên cạnh.
Jeremy Andrews: Anh có lời khuyên nào dành cho các nhà phát triển nguồn mở đang tìm cách huy động tiền để hỗ trợ các nỗ lực phát triển nguồn mở của họ không?
Linus Torvalds: Đây là câu hỏi đầu tiên mà tôi thực sự không có câu trả lời nào cả.
Tôi bắt đầu nghĩ về Linux hoàn toàn như một sở thích trong một thời gian dài, và chưa bao giờ nghĩ rằng nó thực sự sẽ là công việc của tôi. Công việc đầu tiên trong ngành của tôi (bên ngoài học viện, nơi mà vài năm đầu đã xảy ra) không liên quan đến Linux và tôi đã ký hợp đồng một cách rõ ràng rằng công việc Linux của tôi không phải là công việc của công ty (Transmeta đã sử dụng Linux, nhưng điều đó không thực sự công việc của tôi, ngay cả khi cuối cùng tôi cũng giải quyết một số vấn đề Linux mà Transmeta gặp phải trong nội bộ – chủ yếu là các vấn đề SMP ban đầu).
Trên thực tế, đối với tôi Linux không hoạt động nhiều đến mức tôi đã dự định nghỉ việc một năm không lương ở Transmeta để ra mắt bản phát hành Linux 2.6 (thành thật mà nói, bây giờ tôi không chắc phiên bản chính xác là gì vì cũng khá lâu rồi. Tôi nghĩ đó là khi có một số căng thẳng trong những ngày 2.5.x và tôi cảm thấy mình cần phải tập trung toàn thời gian để đạt được 2.6). Đó là khi OSDL ra đời (Open Source Development Labs – sau này trở thành Linux Foundation), để tôi thực sự có thể được trả tiền để làm Linux mà không cần làm việc cho một công ty Linux thương mại.
Vì vậy, đối với tôi, thập kỷ đầu tiên của Linux, tôi chưa bao giờ cảm thấy việc huy động tiền là một vấn đề – tôi đã làm điều đó bên cạnh công việc chính. Và mười năm sau đó, khi tôi cảm thấy mình phải làm việc toàn thời gian hơn, nó đã trở nên đủ lớn để nó “chỉ xảy ra”.
Nhưng tôi nhận ra rằng điều này thực sự bất thường, và tôi chỉ đơn giản là không có câu trả lời cho câu hỏi của bạn nói chung.
Trừ khi câu trả lời chính xác là “lập kế hoạch cho nó trở thành một sở thích trong một thập kỷ, và nếu nó phát triển lớn đến mức nó không thể là một sở thích nữa, bạn có thể đã giải quyết được vấn đề kinh phí”.
GHI CHÚ! Đây là điểm mà tôi muốn nói rằng tôi đã may mắn như thế nào khi lớn lên ở Phần Lan. Với một hệ thống giáo dục hoàn toàn miễn phí và là một trong những hệ thống tốt nhất trên thế giới, tôi chỉ đơn giản là xuất thân từ một nền tảng hoàn toàn hợp lý khi coi Linux như một sở thích và chỉ cần biết rằng tôi có thể kiếm tiền với tư cách là một nhà phát triển phần mềm thương mại. Tôi bước ra khỏi 8 năm học đại học đẳng cấp thế giới với khoản nợ sinh viên trị giá 7 nghìn đô la – thực sự không đáng lo ngại trong thế giới công nghệ cao.
Tôi rất nhận ra rằng rất nhiều người ở Mỹ không thực sự hiểu về loại tự do mang lại cho bạn trong cuộc sống. Bạn thực sự có thể chọn chỉ làm những gì bạn thích làm, bởi vì bạn có đủ khả năng.
Linux Foundation
Jeremy Andrews: Anh đã tham gia vào việc thành lập Linux Foundation như thế nào? Vai trò của anh là gì? Foundation có tác động đến hạt nhân ngoài việc cho phép bạn được trả tiền mà không cần làm việc cho một công ty Linux thương mại không?
Linus Torvalds: Tôi chẳng liên quan gì đến việc tạo OSDL (Open Source Development Labs) (và sau đó là Linux Foundation). Tôi thực sự chỉ là một nhân viên, mặc dù là một nhân viên cấp cao với danh hiệu “hội viên”.
OSDL bắt đầu như một tổ hợp công nghiệp phi lợi nhuận để các công ty làm mọi việc cùng nhau – đặc biệt là cộng tác về các khả năng của doanh nghiệp – và với trọng tâm ban đầu là có một cung cấp tài nguyên máy móc dành cho các nhà phát triển (ví dụ: loại phần cứng mà các nhà phát triển sẽ không có nếu không có quyền truy cập vào). Tất cả điều này bắt đầu trước khi tôi được họ tuyển dụng, và hoàn toàn độc lập với điều đó.
Sau đó, nó trở thành Linux Foundation khi OSDL hợp nhất với một tổ chức phi lợi nhuận khác: Free Standards Group. Phần cứng đã trở thành phụ, và phần “hợp tác trong ngành” trở thành điều chính. Một lần nữa, khi đó tôi đã được họ tuyển dụng, đây không phải là điều mà cá nhân tôi là một phần của nó: tôi đã rất có ý thức tập trung rất nhiều vào khía cạnh phát triển hạt nhân kỹ thuật.
LF (Linux Foundation) làm rất nhiều việc khác ngoài việc chỉ hỗ trợ một số nhà phát triển chính như tôi và Greg KH. Trên thực tế, nó làm được nhiều điều và bạn nên tra cứu trang web LF (hoặc trang Wikipedia) để xem. LF làm rất nhiều thứ liên quan đến cơ sở hạ tầng: một số kỹ thuật (như kernel.org), nhưng phần lớn là các “hỗ trợ” khác như tổ chức hội nghị, có nhiều nhóm làm việc cho các đối tác trong ngành, và những thứ tương tự.
Vì vậy, về cơ bản LF hỗ trợ cơ sở hạ tầng và rất nhiều dự án khác nhau cho nhiều thứ khác nhau xung quanh Linux. Và tôi chỉ là một nhân viên với một hợp đồng lao động khá bất thường, về cơ bản nói rằng mọi thứ tôi làm phải là mã nguồn mở, và rằng LF không thể cho tôi biết phải làm gì với Linux. Tôi rất vui, và hóa ra các công ty thành viên dường như cũng rất vui, bởi vì họ đều biết rằng tôi hoàn toàn không đứng ngoài mọi hoạt động chính trị của công ty.
Những sở thích khác
Jeremy Andrews: Điều gì đã đưa anh đến Mỹ? Anh có bỏ lỡ, và đã cân nhắc trở lại Phần Lan, hay nơi khác chưa?
Linus Torvalds: Tôi chuyển đến Mỹ vào năm 97, và một phần là tôi còn khá trẻ, và tôi nhận được lời đề nghị từ một công ty khởi nghiệp làm những điều rất thú vị trong một lĩnh vực mà tôi rất quen thuộc (Kiến trúc 80386 – khám phá nó là lý do tại sao Linux được bắt đầu ngay từ đầu).
Và Phần Lan vào thời điểm đó rất thiên về công nghệ cao, nhưng lại bị chi phối bởi công nghệ điện thoại di động (Nokia là người Phần Lan, và vào thời điểm đó là công ty điện thoại di động lớn nhất thế giới và là công ty lớn nhất ở Phần Lan với tỷ suất lợi nhuận khá lớn).
Tôi không quan tâm đến điện thoại (đây là trước khi chúng lớn lên và trở thành những chiếc máy tính nhỏ – mọi người thực sự sử dụng những thứ đó để nói chuyện với nhau, nếu bạn có thể tin được). Và nước Mỹ có vẻ thú vị, và tôi chuyển đến đây cùng vợ và con gái 10 tuần tuổi của chúng tôi (vào thời điểm đó).
Chuyển đến một quốc gia khác khi bạn vừa có con đầu lòng và bạn không có gia đình nào khác ở bên cạnh để hỗ trợ có thể không phải là điều khôn ngoan nhất nên làm. Nhưng này, chúng tôi còn trẻ, chúng tôi đã áp dụng cách tiếp cận “hãy thử xem” mọi thứ, và tất cả đều thành công. Tôi vẫn nhớ cách chúng tôi di chuyển vào tháng 2, và trời lạnh (khoảng -20 ° C, tức là khoảng 0 F) khi chúng tôi rời đi, và chúng tôi bước xuống máy bay và trời nắng và gió mát 70 ° F khi chúng tôi đã đến SFO.
Thật là thú vị. Những ngày đó Mỹ là quê hương, và vâng, tôi nhớ một số vùng của Phần Lan. Hệ thống giáo dục của Mỹ là một thảm họa. Bạn phải di chuyển đến đúng khu vực để có được một trường học tốt hoặc trung học phổ thông, và bạn phải trả những khoản tiền khổng lồ cho một trường đại học tốt. Đó là một sự ô nhục. Hệ thống chăm sóc sức khỏe cũng vậy. Và bầu không khí chính trị ở Mỹ đã đi từ “hơi kỳ lạ” đến hết sức đáng sợ. Ở Finland? Mọi thứ chủ yếu là JustWork ™.
Nhưng này, cũng có những lợi thế, và đó không chỉ là thời tiết (vâng, sau đó chúng tôi chuyển đến Portland, HOẶC, và thời tiết ở đây không đẹp như ở Vùng Vịnh, nhưng hãy tin tôi – thời tiết là vẫn tốt hơn rất nhiều so với Phần Lan). Và chúng tôi đã ở đây quá lâu và con chúng tôi không nói được tiếng Phần Lan (cả tôi và vợ tôi đều thuộc nhóm thiểu số nói tiếng Thụy Điển ở Phần Lan, vì vậy chúng tôi nói tiếng Thụy Điển ở nhà), và chúng tôi có bạn bè và mối quan hệ xã hội ở đây Mỹ. Và bạn có thể bỏ qua phần lớn những thất bại của xã hội Hoa Kỳ miễn là bạn có một công việc tốt.
Chúng tôi đã cân nhắc việc chuyển trở lại? Vài lần. Đầu tiên khi bọn trẻ bắt đầu đi học. Sau đó, khi những đứa trẻ bắt đầu học trung học. Sau đó, đại học. Anh hình dung rồi chứ? Và khi có vẻ như Trump có thể tái đắc cử.
Jeremy Andrews: Phần lớn thế giới đã cẩn thận theo dõi cuộc bầu cử đó và lo lắng về ý nghĩa của nó. Và thậm chí, khi biết rằng khoảng 70 triệu người Mỹ ủng hộ cuộc bầu cử lại của ông (Trump), có những điềm báo cho tương lai. Bạn xử lý các cuộc trò chuyện với những người ủng hộ Trump tái đắc cử như thế nào?
Linus Torvalds: Hệ thống chính trị Hoa Kỳ nói chung làm tôi lo lắng, và chủ nghĩa ngoại lệ và chủ nghĩa dân tộc của Mỹ thật đáng buồn và đáng sợ. Đặc biệt khi đó là những người thực sự không biết họ đang nói về cái gì và chưa bao giờ sống ở nước ngoài.
Mỹ là một đất nước đáng yêu về nhiều mặt, và nó cũng là một đất nước rất đa dạng với nhiều nền văn hóa và con người (và thiên nhiên) khác nhau, và tôi thích điều đó. Trên thực tế, đó có lẽ sẽ là phần khó nhất đối với tôi nếu tôi quay lại Phần Lan – Phần Lan là một đất nước rất tốt đẹp, lành mạnh và an toàn, nhưng nó cũng là một đất nước rất nhỏ và rất đồng nhất.
Nhưng “Rah rah, America # 1!” điều này cũng có thể rất khó chịu. Bạn nhìn thấy những chiếc xe tải khổng lồ này với cờ Mỹ, và đôi lúc chả có ý nghĩa gì cả.
Và đôi khi đó là những người có học. Trước khi Trump đắc cử, tôi đã nói chuyện với một bác sĩ y khoa hoàn toàn tốt bụng này, người hoàn toàn tin tưởng rằng hệ thống chăm sóc sức khỏe của Hoa Kỳ là tốt nhất trên thế giới. Ông nói điều này dù chưa từng sống ở bất kỳ nơi nào khác, và không thể thừa nhận rằng các quốc gia khác thực sự có dịch vụ chăm sóc sức khỏe tốt hơn – ngay cả khi thảo luận về điều này với một người nào đó thực sự đã tận mắt chứng kiến dịch vụ chăm sóc sức khỏe tốt hơn đó theo đúng nghĩa đen. Đây là một người có học thức cao, đã trải qua nhiều năm trường y, và vẫn có câu “Mỹ, f * ck yeah!” tâm lý.
Và vâng, anh ấy là một người ủng hộ Trump.
Đừng hiểu sai ý tôi – chủ nghĩa dân tộc tồn tại ở khắp mọi nơi, kể cả châu Âu. Kể cả Phần Lan. Nhưng phiên bản Hoa Kỳ của nó có vẻ khá độc.
Và thành thật mà nói, đó là một trong những lý do tôi sống ở bờ Tây. Oregon hầu hết rất tự do, ít nhất là ở bất kỳ trung tâm dân cư nào (miền Đông Oregon rất khác biệt, nhưng hầu như không có ai thực sự sống ở đó – diện tích lớn, dân số rất nhỏ). Vì vậy, khu vực tôi sống, bạn chắc chắn không nhìn thấy cờ liên minh (hoặc cờ Trump) rất thường xuyên, mặc dù bạn có thấy một người thường xuyên lái xe tải lớn từ nơi khác đến.
Điều đó nói rằng, tôi thực sự nghĩ rằng Hoa Kỳ đang thay đổi. Tính đến nay chúng tôi đã sống ở đây gần 25 năm, và có vẻ như nó đã thay đổi ngay cả trong thời gian đó. Tính tôn giáo đang giảm dần, mặc dù rõ ràng vẫn còn rất nhiều vấn đề về nơi bạn sống. Và theo nhiều cách, rõ ràng Hoa Kỳ đã loại bỏ rất nhiều chính sách đàn áp xã hội (tức là toàn bộ hợp pháp hóa hôn nhân đồng tính, chấm dứt chiến tranh chống ma túy một cách hiệu quả, v.v.). Vì vậy, về tổng thể, tôi khá lạc quan và tôi nghĩ rằng hiện tượng Trump có thể (hy vọng) chỉ là kết quả của những thay đổi tích cực tổng thể đó.
Jeremy Andrews: Sở thích và thú vui của anh ngoài Linux kernel là gì? Anh sẽ làm gì khi không tập trung vào phát triển kernel?
Linus Torvalds: Tôi đã đề cập đến hai sở thích một vài lần: Tôi đọc rất nhiều (không có gì nghiêm trọng, nó có xu hướng là tưởng tượng ngẫu nhiên hoặc khoa học viễn tưởng của tôi), và khi tôi đi du lịch, tôi cố gắng lặn biển Càng nhiều càng tốt.
Và tôi thực sự có một cuộc sống gia đình khá bình thường. Tôi có ba cô con gái, nhưng chúng đã lớn hơn và đã bay đi gần hết. Đứa trẻ nhất vẫn đang học đại học và sẽ về nhà vào mùa hè, đứa giữa đang làm một số việc tốt nghiệp và sẽ không về nhà vào mùa hè, và đứa lớn nhất đang làm việc ở bên kia đất nước. Chúng tôi vẫn cố gắng thực hiện các kỳ nghỉ gia đình (nhưng chỉ có người ở giữa từng được chứng nhận lặn biển – Tôi đã cố gắng với tất cả chúng, nhưng nó là như vậy), nhưng năm ngoái thực sự không tuyệt vời.
Vì vậy, những ngày này, chủ yếu là tôi, vợ tôi, hai con chó của chúng tôi và một con mèo. Tôi đã tiêm liều vắc-xin đầu tiên và mong được cố gắng trở lại cuộc sống bình thường hơn một chút trong vài tháng nữa.
Jeremy Andrews: Là một người ham đọc sách khoa học viễn tưởng luôn tìm kiếm những cuốn sách mới, tôi rất tò mò muốn biết liệu có tác giả hoặc bộ truyện nào mà anh yêu thích hơn những tác giả khác không? Có những cuốn sách hay nào đáng để nhắc đến mà thỉnh thoảng anh vẫn nghĩ đến không?
Linus Torvalds: Thành thật mà nói, tôi là kiểu người “đọc là quên” – tôi chủ yếu đọc những thứ ngẫu nhiên rất dễ quên, chắc chắn không phải những thứ bạn nghĩ đến sau đó. Những thứ như bộ Miles Vorkosigan của Lois McMaster Bujold theo tiêu chuẩn của tôi là khá cao – tôi nghĩ rằng tôi đã dành một năm để đọc miễn phí hoặc kindle scsi giá 99¢ và tiểu thuyết giả tưởng của các tác giả ngẫu nhiên vô danh với có vấn đề biên tập. Có lẽ chủ yếu là giả tưởng, phần lớn là vì nó dễ tìm hơn (và tôi thấy khoa học viễn tưởng tồi tệ khó chịu hơn nhiều so với giả tưởng tệ hại).
Về khía cạnh “vô giá trị” của tưởng tượng, tôi nghĩ Brandon Sanderson và có lẽ Robin Hobb nổi bật. Nhưng đối với mỗi Sanderson, có lẽ có năm mươi câu chuyện về kiếm và ma thuật ngẫu nhiên đáng quên.
Có một vài điều tôi quay lại và tôi nghĩ rằng tôi đã đọc lại Dune saga khoảng một lần mỗi thập kỷ. Đó là một trong (rất ít) những thứ đã vượt qua thử thách của thời gian và thực sự già đi. Tôi nhớ đã yêu Heinlein khi còn là một thiếu niên, và bây giờ tôi chỉ thu mình lại với điều đó.
Vì vậy, không, đừng quá quan tâm đến việc đọc của tôi. Đối với tôi, đọc sách là một việc tôi làm để thư giãn, và không bao giờ là quá cao hay quá nghiêm túc.
Jeremy Andrews: Tôi thấy một cuộc phỏng vấn thú vị trước đây, cung cấp rất nhiều thông tin cơ bản về việc lặn của anh. Anh vẫn sử dụng và đóng góp cho Subsurface, chương trình divelog mà anh đã bắt đầu chứ?
Linus Torvalds: Tôi vẫn sử dụng nó, mặc dù vì những lý do rõ ràng mà tôi đã không sử dụng nó trong năm ngoái. Suburface hơi giống ‘Git’ ở chỗ nó không phải là thứ tôi muốn viết, mà là thứ tôi viết vì tôi cần nó. Và giống như Git, tôi đã tìm thấy một người bảo trì cho nó, và Dirk Hohndel đã duy trì nó trong một thời gian dài và coi nó là một thứ gì đó hơn nhiều so với đối với tôi (với sự hỗ trợ cho Windows, MacOS, iOS và Android, không chỉ hỗ trợ Linux ban đầu của tôi).
Và không có bất kỳ cuộc lặn nào, tôi không có động lực để làm việc nhiều về nó, mặc dù tôi đã giúp khắc phục một số vấn đề được báo cáo trong năm qua.
Liều vắc-xin thứ hai của tôi là một vài tuần nữa, và tôi sẽ đi lặn trở lại sau một vài tháng. Vì vậy, điều đó có thể khiến tôi khắc phục một số vấn đề khác.
Jeremy Andrews: Cảm ơn anh. Toàn bộ sự nghiệp của tôi đã phát triển từ “sở thích” của anh, cả trực tiếp thông qua việc sử dụng Linux và gián tiếp thông qua vô số dự án khác tồn tại nhờ Linux và Git. Tôi rất biết ơn khi biết rằng thông qua tất cả những điều này, anh vẫn cảm thấy thích thú với những gì mình đang làm. Tôi rất vui vì anh đang được tiêm chủng đầy đủ. Và tôi chân thành đánh giá cao rằng anh đã bỏ rất nhiều thời gian của mình để trả lời thấu đáo và sâu sắc tất cả những câu hỏi này! Một lần nữa, xin cảm ơn!