Tôi nên xem cờ cảnh báo nào khi chọn phần mềm nguồn mở? [đóng cửa]


13

Khi so sánh các dự án nguồn mở với phần mềm thương mại hoặc thậm chí các dự án nguồn mở khác, tình huống nào giương cờ đỏ và khiến bạn nhấn nút nhả ra và tìm ở nơi khác?

Câu trả lời:


17

Mã nguồn mở

Nhìn vào trang web của dự án

  • Nhìn vào tài liệu
  • Nhìn vào kho lưu trữ danh sách gửi thư
  • Nhìn vào SCM (svn, git, hg, v.v.)

Khi làm như vậy, chọn các điểm sau ...

  • Phần mềm trưởng thành như thế nào
  • Kích thước cơ sở người dùng là bao nhiêu (nhiều người? 3 người?)
  • Ai là người trong cơ sở người dùng (doanh nghiệp, người dùng gia đình, doanh nghiệp nhỏ, v.v.)
  • Là phát triển hoạt động? Nó đã hoạt động được bao lâu rồi?
  • Các tài liệu lưu trữ danh sách gửi thư cũng rò rỉ rất nhiều thông tin về "tinh thần đồng đội" giữa các nhà phát triển, trong số những thứ khác. Nó trông khỏe mạnh, thù địch, chán vv?
  • Là tài liệu phong nha?
  • Gói / dự án đã được chấp nhận vào bất kỳ Phân phối nào như Fedora, Debian, RHEL, SLES, Ubuntu, v.v.? Nếu vậy - đó là một điều tốt - ít nhất là hơn một người khác ngoài kia có niềm tin vào dự án.
  • Liệu trang web có một hệ thống bán vé thích hợp? Nếu vậy - Có bao nhiêu vé được mở từ 5 năm trước? Đây là một dấu hiệu khác cho thấy dự án "sống" như thế nào.

Ngoài ra, hãy đảm bảo rằng bạn lưu ý Giấy phép theo đó phần mềm được phân phối. Một số có thể không phù hợp với nhu cầu của bạn.

Phần mềm doanh nghiệp

Tôi không có quá nhiều điều để nói ở đây ngoài ...

  • Hãy chắc chắn (đừng hỏi nhân viên bán hàng - anh ta sẽ nói dối) rằng ứng dụng không chạy nhưroot . Đặc biệt nếu nó sẽ lắng nghe trên một cổng TCP / IP. * Nhìn vào danh tiếng của nhà cung cấp
  • Đảm bảo rằng các nhà cung cấp nhận thức được rằng mọi người quản trị sản phẩm này (nghĩa là sẽ không được cấp rootquyền truy cập và vì vậy sản phẩm phải hỗ trợ sudo . Bất kỳ ai tranh luận rằng sudokhông được hỗ trợ thường chỉ là lão hóa, nhưng họ là nhà cung cấp và họ sẽ là những người phải hỗ trợ bạn - bạn không muốn mua sản phẩm và sau đó họ sẽ nói với bạn "Không, bạn không thể sử dụng sudo, bạn phải su để root".
  • Không bao giờ mua bất kỳ phần mềm bảo mật nguồn đóng nào - bao giờ
  • (chủ quan): ... và không bao giờ tin bất cứ điều gì một đại diện bán hàng nói - tất cả họ đều là những kẻ nói dối và rắn, không có ngoại lệ.

Làm thế nào để bạn xác định sự trưởng thành của một chương trình? Nó không giống như số phiên bản có nghĩa là bất cứ điều gì, và rất nhiều dự án nằm ở số phiên bản lẻ trong nhiều năm được sử dụng rộng rãi. (Tôi đang nhìn bạn NetworkManager). Điều gì sẽ là một lá cờ đỏ của non nớt?
jldugger

Đúng, trong khi các số phiên bản có thể có ý nghĩa cụ thể đối với các nhà phát triển, thì đó là một điều bên trong - thế giới bên ngoài chỉ là một dấu hiệu tốt nhất - một phần mềm doanh nghiệp dường như cố gắng khai thác với các bước nhảy số phiên bản lố bịch . Để có được ý tưởng về sự trưởng thành, bạn có thể tìm kiếm ở một vài nơi, cụ thể là hệ thống bán vé - rất nhiều dấu hiệu là một điều tốt - đặc biệt nếu bạn có thể thấy các nhà phát triển đã nỗ lực thực sự trong việc sửa chữa và đóng chúng. Mặt khác, nếu bạn không có vé, hoặc tệ nhất, không có hệ thống bán vé, thì đó không phải là một khởi đầu tốt.
Xerxes

7
  • Thiếu hoạt động. Nếu dự án chưa phát hành mã mới, hãy hiển thị nhiều lỗi không được tiết lộ (hoặc các lỗi rất cũ không có lỗi mới) hoặc có các diễn đàn người dùng có tỷ lệ spam-bài rất cao, đó là mùi chắc chắn của cơ sở phân rã. Các dự án đang hoạt động có các bản phát hành thường xuyên, bản sửa lỗi cho biết các bản mới được mở không vượt quá các bản cũ đã đóng và các diễn đàn người dùng có hoạt động hàng ngày. Tất cả ba trong số này là rất quan trọng để giữ cho mã tồn tại và phát hành tốt, trả lại và gỡ lỗi / tái cấu trúc, tạo thành một vòng lặp hoàn chỉnh.

  • Hoạt động tỷ lệ thuận với kích thước, độ phức tạp và sự trưởng thành của cơ sở mã. Chương trình / dự án càng lớn, các bản phát hành điểm không thường xuyên, nhưng cần có một dòng phát hành điểm nhất quán. Đối với một dự án như Samba, với cơ sở mã phức tạp lớn, dự kiến ​​sẽ phát hành điểm sau một tháng hoặc lâu hơn. Đối với một dự án như gcc, một codebase trưởng thành với các mục tiêu thiết kế bảo thủ hơn, các bản phát hành điểm dài hơn ở giữa, nhưng lớn hơn. Các mục tiêu chuyển động nhanh với số lượng mã rất nhỏ cũng cho thấy các vấn đề tiềm ẩn - có thể là các nhà phát triển vẫn đang chiến đấu với các lỗi hoặc chưa có tất cả các mục tiêu / tính năng được mã hóa.

  • Mã nguồn phải dễ dàng truy cập. Điểm trống, nếu đó là nguồn mở thực sự , sẽ không có bất kỳ cái bắt tay kỳ diệu, các dịch vụ tà thuật hay các câu thần chú dưới ánh nến liên quan để xem mã nguồn. Sẽ không có vấn đề gì nếu nó có thể truy cập thông qua CVS, SVN, Git, Mercurial hoặc thậm chí là chim bồ câu của nhà cung cấp , miễn là bạn có thể truy cập nó mà không cần thỏa thuận cấp phép nhấp chuột. Nếu bạn ký từ bỏ, NDA hoặc đồng ý với một số chương trình cấp phép chưa nghe thấy, bạn không giao dịch với nguồn mở, bạn đang giao dịch với một nhà cung cấp thương mại đã đồng ý mở nguồn của họ cho bạn - với giá .


++ cho các yêu cầu hoạt động.
sh-beta

6

Có rất nhiều, thực sự.

Cấp phép lừa đảo - Quá nhiều giải pháp đang cố gắng làm cho tôi chết và khiến tôi chết. Gói có giá X, nhưng nếu bạn muốn các tùy chọn được quảng cáo 1, 2 và 3, thì sẽ có thêm 500-1500 đô la cho mỗi tùy chọn. Không cám ơn.

Không ai sử dụng nó - Hoặc ít nhất, Google không thể tìm thấy ai nói về nó. Đó là một thương hiệu mới (trong trường hợp này, bạn là một con chuột lang) hoặc tệ đến mức mọi người đều biết rõ hơn

Đó là gốc rễ của một số dĩa - Nếu một cái gì đó đã bị rẽ nhánh nhiều lần, có lẽ đó là một lý do chính đáng cho nó, và một trong những dĩa có lẽ đã giải quyết vấn đề tốt hơn so với nguồn đã làm. Điều tra những người thay thế.

Thiết kế giao diện xấu liên tục - Tôi không chỉ có nghĩa là GUI. Các cờ hoặc tùy chọn CLI điên, không xác định hoặc dán nhãn sai khiến tôi phát điên

Nó không hoạt động - hoặc nó giả vờ rằng một tình huống cần được giải quyết không nên (hoặc không) tồn tại, và do đó không giải quyết nó


1

Tôi cũng sẽ nói thêm rằng tốc độ khuấy mã là nhất quán và được thực hiện bởi nhiều người, không chỉ một số ít. Bạn không muốn một người viết mã bán thời gian khi anh ta hào hứng với dự án của mình sau đó chán nó và để nó cho cộng đồng tiếp tục hỗ trợ. Drupal và Joomla là hai ví dụ điển hình.


1

Nếu bạn đang xem phần mềm cho công ty của bạn, để bán nó, thay đổi nó, v.v ... thì khía cạnh quan trọng nhất là giấy phép. Nhìn vào việc bao gồm busybox trên các bộ định tuyến WLAN và tuân theo các hành động pháp lý, các công ty nghĩ rằng "nguồn mở = làm bất cứ điều gì bạn thích".

Một số điều khác: Tôi cũng đang tìm kiếm ngày cập nhật cuối cùng và một cộng đồng tích cực, vì vậy diễn đàn, có thể các trang khác có phần mềm làm chủ đề.


1

Trên Linux, tôi sẽ kiểm tra xem phần mềm nào được đóng gói bởi bản phân phối của bạn. Phần mềm đóng gói không giới hạn chỉ là mã nguồn mở / GPL - Ubuntu, Gentoo và SLES tối thiểu bao gồm phần mềm sở hữu trong danh sách gói của họ. Mặc dù không có gì đảm bảo rằng các gói này sẽ hoạt động hiệu quả như phần mềm cốt lõi trong bản phân phối - ai đó đã đầu tư thời gian và công sức để chuẩn bị một gói.


1

Tôi chủ yếu nhìn vào sự trưởng thành và hoạt động. Nếu nó xuất hiện hợp lý trưởng thành và dường như có một lượng hoạt động khá (ví dụ như hoạt động diễn đàn hoặc wiki) thì tôi có thể cảm thấy khá thoải mái. Sau đó, tôi biết rằng rất có thể các lỗi sẽ được giải quyết và tôi có thể được giúp đỡ với các vấn đề phát sinh. Tôi sẽ chọn một dự án đang hoạt động không phù hợp với nhu cầu của tôi một cách hoàn hảo, qua một dự án có vẻ như là một trận đấu hoàn hảo nhưng dường như đã chết, bất kỳ ngày nào trong tuần.

Khi đến hạn, nó phụ thuộc khá nhiều vào mục đích sử dụng. Nếu đó là thứ tôi cần tung ra ngay lập tức và không thể cho phép thất bại hoặc gây rắc rối, thì sự trưởng thành rõ ràng sẽ là một yếu tố khá quan trọng. Nếu tôi có thể sống với một vài điều kỳ quặc và nó không quan trọng với một số thời gian chết, thì tôi sẽ nhìn vào triển vọng trong tương lai.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.