Nhược điểm của phần mềm nguồn mở
CyanogenMod đã chết, bị giết bởi công ty mẹ Cyanogen. Cộng đồng đang cố gắng nhặt các mảnh và tạo ra một dự án mới, LineageOS, dựa trên mã. Nhưng đó là một lời nhắc nhở rằng phần mềm nguồn mở không phải là tất cả ánh nắng mặt trời, cầu vồng và sự ổn định: trên thực tế, nó thường có thể rất lộn xộn.
Ngay cả khi một dự án là nguồn mở, nó thậm chí không nhất thiết phải đáp ứng với cộng đồng, ít hơn một phần mềm đáng tin cậy mà bạn có thể phụ thuộc. Các dự án khác nhau: Một số được điều hành bởi một hoặc hai nhà phát triển như một sở thích, một số khác tập hợp các nhà phát triển được trả tiền bởi nhiều tập đoàn lớn, trong khi những người khác được điều hành bởi một công ty mẹ. Mỗi tình huống có vấn đề và kịch tính riêng..
Chúng tôi yêu thích phần mềm nguồn mở - đừng hiểu sai về chúng tôi - nhưng nó đưa ra một số thách thức nhất định. Chúng ta hãy xem một vài.
Nguồn mở thường gặp phải sự chậm trễ và tốc độ phát triển của sông băng
Nhiều dự án nguồn mở dường như bị tốc độ phát triển chậm, trong đó các phiên bản mới bị trì hoãn vô tận, các tính năng mới đến chậm nếu có, và rất khó để ưu tiên các tính năng khó nhưng quan trọng.
Chỉ cần nhìn vào những nỗ lực của Ubuntu để khởi chạy máy tính để bàn Unity 8 và máy chủ hiển thị Mir của nó, cho phép tầm nhìn của nó về hội tụ trực tuyến. Phiên bản mới này của máy tính để bàn Linux được cho là ổn định từ nhiều năm trước, nhưng vẫn không có. Dự án đã di chuyển với tốc độ chóng mặt, đến nỗi Canonical đã bị Microsoft đánh bại, hãng đã tuyên bố tầm nhìn của chính mình - được cung cấp bởi điện thoại thông minh trước Windows 10 - và được giao trên đó. Canonical vẫn chưa đưa ra tầm nhìn đã hứa từ lâu. Có lẽ nó sẽ ổn định trong một vài năm nữa.
Mozilla cũng gặp một số khó khăn trong việc ưu tiên. Họ vẫn chưa cung cấp các tính năng đa quy trình và hộp cát trong Firefox. Đây là những yếu tố quan trọng để giữ an toàn cho trình duyệt, ngăn chặn sự cố làm hỏng toàn bộ trình duyệt và sử dụng CPU đa tiến trình tốt hơn. Tất cả các trình duyệt chính khác đã cung cấp các tính năng này, bao gồm cả Internet Explorer bị ghét. Mozilla đã đưa ra dự án Elect Electysisysis để bổ sung các tính năng này, nhưng đã tạm dừng nó vào năm 2011 vì quá khó khăn. Mozilla sau đó đã phải khởi động lại nó vào năm 2013. Tính năng này có vẻ sẽ được thiết lập vào năm 2017 - điều này thực sự rất muộn. Trong khi đó, Mozilla đã lãng phí thời gian làm việc trên Firefox OS, một hệ điều hành điện thoại thông minh bị lỗi.
Khi một dự án sử dụng rất nhiều nhà phát triển tình nguyện, có thể gặp khó khăn trong việc tìm người để thực hiện công việc khó khăn không thú vị để làm.
Bộ phim truyền hình nội bộ bắt đầu Dĩa, dĩa và nhiều dĩa khác
Mã nguồn của dự án nguồn mở có sẵn cho bất kỳ ai thay đổi. Đó là điểm! Nếu một dự án nguồn mở thay đổi theo cách bạn không thích, thì bạn - hoặc cộng đồng - có thể lấy mã nguồn cũ đó và tiếp tục làm việc với tư cách là một dự án mới. Nhưng các dự án cộng đồng thường bị cuốn vào bộ phim truyền hình nội bộ đến mức chúng khiến mọi thứ bị chia tách thành nhiều dự án, gây nhầm lẫn và khiến người dùng xa lánh.
Ví dụ: khi Gnome 3 ra mắt và nhiều người dùng Gnome 2 không hài lòng, không có một con đường rõ ràng ngay lập tức. Các nhà phát triển đã phải phân tách mã Gnome vào các dự án khác như MATE và Cinnamon. Một môi trường máy tính để bàn biến thành ba và tài nguyên phát triển nằm rải rác hơn giữa các dự án. Do đó, cộng đồng phải mất một thời gian để các dự án mới này được triển khai.
Tương tự, cộng đồng OpenOffice không hài lòng khi Oracle mua lại Sun. Oracle thậm chí đã đổi tên ngắn gọn bộ công cụ văn phòng độc quyền, không phải nguồn mở của mình thành StarTech thành Văn phòng mở Oracle Oracle. Cộng đồng đã phải tạo ra một ngã ba mới, LibreOffice, dựa trên mã OpenOffice. Nó đã trở thành bộ phần mềm văn phòng nguồn mở thực tế cho nhiều người, nhưng những người khác vẫn sử dụng OpenOffice vì họ không biết về ngã ba tốt hơn và bộ phim truyền hình xung quanh nó. OpenOffice chỉ có rất nhiều nhận dạng tên được xây dựng.
Và, tất nhiên, có CyanogenMod. Cyanogen Inc vừa rút phích cắm trên các dịch vụ trực tuyến của CyanogenMod - có nghĩa là họ thà giết ROM Android của bên thứ ba phổ biến hơn là giao nó cho cộng đồng, thay vào đó buộc cộng đồng phải tạo ra một nhánh mới của CyanogenMod có tên LineageOS. Tại sao Cyanogen không bàn giao dự án CyanogenMod cho cộng đồng? Câu trả lời dường như là kịch nội bộ (bạn có thấy một mô hình ở đây không?). Cyanogen là công ty mà Giám đốc điều hành đã hứa rằng họ sẽ đặt một viên đạn thông qua người đứng đầu Google, sau tất cả. Cuối cùng, nó đã đặt một viên đạn xuyên qua đầu của CyanogenMod.
Tất cả điều này chỉ làm tổn thương người dùng của CyanogenMod, người đã nhận được rất ít thông báo trước khi các máy chủ và dịch vụ của CyanogenMod sẽ ngừng hoạt động. Điện thoại sẽ tiếp tục hoạt động, nhưng các cập nhật tiện lợi và các dịch vụ khác sẽ tan thành mây khói gần như chỉ sau một đêm. Người dùng chỉ cần hy vọng dự án LineageOS sẽ nhanh chóng trở thành một sự thay thế.
Không phải tất cả các dự án nguồn mở đều do cộng đồng cung cấp
Các dự án nguồn mở không phải luôn luôn được thúc đẩy bởi cộng đồng. Nói một chương trình là nguồn mở chỉ có nghĩa là mã có sẵn để làm những gì bạn thích. Công ty phát triển phần mềm không nhất thiết phải chạy nó như một dự án cộng đồng, hoặc họ có thể có hứng thú sử dụng dự án để quảng bá phần mềm khác của họ.
CyanogenMod là một ví dụ tốt về điều này. Khi Cyanogen Inc. xuất hiện, họ không thực sự quan tâm đến CyanogenMod. Mục tiêu mới của Cyanogen đã trở thành tiếp thị nền tảng HĐH Cyanogen cho các nhà sản xuất, giao dịch trên sự công nhận tên tuổi lớn của CyanogenMod sau khi giết chết dự án. Có lẽ đó chỉ là nơi có tiền.
Oracle không bao giờ quan tâm đến OpenOffice, nhưng ban đầu muốn sử dụng tên của nó để thúc đẩy doanh số của bộ phần mềm văn phòng độc quyền StarOffice của mình bằng cách đặt tên thương hiệu với tên của Office Open Office. Sau đó, nó đã quyên tặng dự án cho Apache sau khi hầu hết các nhà phát triển tình nguyện rời đi.
Google cũng không thực sự quan tâm đến Android như một dự án nguồn mở đầy đủ, đó là lý do tại sao ngày càng nhiều phần của Dự án mã nguồn mở Android Android (hay AOSP Lỗi) bị bỏ lại phía sau. Google muốn giữ cho Android mở để các nhà sản xuất dễ dàng tùy chỉnh, nhưng các ứng dụng nguồn mở như bàn phím và trình quay số đang ngày càng trở nên lỗi thời. Trên thiết bị Android dành cho người tiêu dùng, Google chỉ gói một bàn phím nguồn, trình quay số và các ứng dụng khác. Google dường như đã cam kết với lõi nguồn mở Android, nhưng không phải toàn bộ hệ điều hành nguồn mở mà mọi người có thể sử dụng mà không cần phần mềm và dịch vụ của Google. Xét cho cùng, việc cải thiện Dự án mã nguồn mở Android chỉ giúp Fire OS của Amazon, đối thủ cạnh tranh với các thiết bị Android của Google. Ý của nó là gì?
Nguồn mở có thể thiếu nhân lực nghiêm trọng, mặc dù được sử dụng bởi hàng triệu người
Nếu một dự án là nguồn mở, bất kỳ ai cũng có thể sử dụng nó mà không cần đóng góp - ngay cả các công ty lớn. Điều này dẫn đến các vấn đề khi một dự án quan trọng, được sử dụng rộng rãi thiếu nhân lực và kinh phí trầm trọng.
Chúng tôi đã thấy kết quả của việc này với lỗ hổng bảo mật Heartbleed vào năm 2014. Heartbleed đã khai thác lỗ hổng trong OpenSSL. OpenSSL là một thư viện mã hóa quan trọng được sử dụng bởi nhiều công ty công nghệ khổng lồ và hàng trăm ngàn máy chủ web. Nhưng nó chỉ có một nhân viên toàn thời gian không có việc làm bên ngoài và 2000 đô la một năm quyên góp. Dự án đã lấy thêm tiền từ các hợp đồng hỗ trợ và tư vấn thương mại, nhưng chỉ một nhân viên toàn thời gian có vẻ thấp đến kinh ngạc đối với một cơ sở hạ tầng quan trọng được sử dụng bởi các tập đoàn hàng tỷ đô la như Google và Facebook.
Heartbleed đã thu hút sự chú ý của phần mềm quan trọng này, vì vậy các công ty công nghệ lớn đã cam kết kiếm tiền hàng năm để tài trợ cho sự phát triển của OpenSSL và các dự án quan trọng khác như là một phần của Sáng kiến cơ sở hạ tầng lõi Core..
Chắc chắn có một kết quả tốt cho câu chuyện đặc biệt này - nhưng chỉ vì có quá nhiều sự chú ý được thu hút vào nó. Khi bạn dựa vào một dự án nguồn mở để kích hoạt cơ sở hạ tầng của mình, thật dễ dàng để kết thúc tùy thuộc vào nó và cho rằng người khác đang duy trì nó đủ tốt. Dự án nguồn mở quan trọng nào khác đang bị thiếu hụt trầm trọng? Chúng tôi có thể không nhận thấy cho đến khi có một vấn đề lớn khác.
Tín dụng hình ảnh: snoopsmaus