Làm thế nào để đánh giá sự tham gia cộng đồng của các dự án mã nguồn mở?
tiêu đề phụ
Tại sao cộng đồng lại quan trọng
Các dự án nguồn mở về cơ bản được thúc đẩy bởi đầu vào của cộng đồng, ngay cả khi hầu hết những người đóng góp không bao giờ viết mã cho dự án cuối cùng. Nhiều dự án nguồn mở được duy trì bởi một nhóm nhỏ các nhà phát triển và khi thực sự viết mã và hướng dẫn dự án, cộng đồng vẫn đóng vai trò cơ bản trong dự án thông qua báo cáo lỗi, phản hồi lộ trình sản phẩm và gửi yêu cầu tính năng.
Chúng tôi tin rằng cộng đồng mang lại giá trị lớn nhất cho các dự án nguồn mở bằng cách giúp họ truyền bá thông tin về dự án một cách hữu cơ, nâng cao danh tiếng của sản phẩm và đảm bảo rằng dự án phát triển theo nhu cầu của người dùng.
tiêu đề phụ
chỉ số nào là quan trọng
Đo lường chính xác thành công cho một thứ gì đó định tính như một cộng đồng là điều khó khăn, đặc biệt là với tất cả các bên liên quan khác nhau và các số liệu liên quan.
Đối với mục tiêu đầu tư Bessemer của chúng tôi, chúng tôi quan tâm nhất đến số lượng người dùng cộng đồng và những người đóng góp, bởi vì họ là nhóm có cái nhìn sâu sắc nhất về quy mô của cộng đồng. Đó là lý do tại sao chúng tôi hiếm khi chú ý đến những con số như Số sao Github, giống như các số liệu phù phiếm khác, có xu hướng tăng đột biến với các thông cáo báo chí lớn và vì chúng không phản ánh mức độ tương tác đang diễn ra nên chúng có một số mức độ lừa dối.
Người dùng và người đóng góp đại diện cho các nhóm tham gia tích cực và phụ thuộc vào dự án, nhưng do hầu hết các dự án đều dựa vào phép đo từ xa bởi người dùng của họ bị giới hạn nên rất khó đo lường người dùng đang hoạt động thực sự.
Mặt khác, những người đóng góp chỉ đại diện cho một phần nhỏ người dùng, nhưng nhóm này dễ đo lường hơn. Những người dùng này có xu hướng tương tác sâu hơn với dự án bằng cách đầu tư thời gian vào việc cung cấp phản hồi dưới dạng nhận xét về vấn đề hoặc thỉnh thoảng đóng góp mã cho dự án. Chúng tôi không sử dụng số lượng người đóng góp để đo lường năng lực phát triển của dự án, thay vào đó, chúng tôi sử dụng nó như một chỉ báo ủy quyền về mức độ áp dụng của dự án.
tiêu đề phụ
Tương tác tối ưu trông như thế nào
Khi thảo luận về các cộng đồng dự án nguồn mở lớn nhất, không thể không bắt gặp các dự án từ những gã khổng lồ công nghệ. Năm dự án nguồn mở hàng đầu mọi thời đại là của Google, Microsoft và Facebook. Các dự án này đóng vai trò cơ bản trong cơ sở hạ tầng đám mây và phát triển phần mềm hiện đại, đồng thời họ đã xây dựng các cộng đồng vô cùng lớn, mỗi cộng đồng có hơn 1.000 người đóng góp mỗi tháng. Thật thú vị, mỗi dự án đã trở thành một hoặc hai trong số các công nghệ phổ biến nhất trong các danh mục tương ứng của chúng, bao gồm VSCode (Lưu ý: trình chỉnh sửa mã đa nền tảng miễn phí mã nguồn mở, IDE được sử dụng rộng rãi), Kubernetes (chương trình điều phối vùng chứa được mã nguồn mở bởi công cụ Google , hỗ trợ triển khai tự động, khả năng mở rộng quy mô lớn, quản lý vùng chứa ứng dụng) và React Native và Flutter (hai trong số các khung giao diện người dùng đa nền tảng phổ biến nhất).
Tuy nhiên, một khi chúng tôi loại bỏ các dự án được hỗ trợ bởi các công ty công nghệ lớn (ít liên quan đến các dự án nguồn mở độc lập) và thay vào đó tập trung vào 10 dự án độc lập hàng đầu liên quan đến các công ty khởi nghiệp thương mại trực thuộc, biểu đồ trông sẽ rất khác:
Xét về mức độ tương tác, dự án Moby (dự án cơ bản đằng sau Docker) và gần đây là Gatsby, cao hơn đáng kể so với mức trung bình của các dự án còn lại trên biểu đồ này. Số lượng người đóng góp trung bình hàng tháng cho phần còn lại của các dự án trong bảng được phân phối từ 200 đến 600, đây chắc chắn là mức cao nhất trong danh mục của nó. Trong số 10.000 dự án hàng đầu mà chúng tôi đã phân tích, chưa đến 5% có hơn 250 người đóng góp mỗi tháng và chỉ 2% liên tục có hơn 250 người đóng góp trong 6 tháng trở lên.
Đo lường hoạt động của cộng tác viên không phải là khoa học, nhưng trong phân tích của chúng tôi, chúng tôi đã tìm thấy một số xu hướng:
Các biến thể khi trưởng thành - Hầu hết các dự án đều trải qua sự phát triển mạnh mẽ trong những năm đầu tiên và sau khi hoạt động cộng đồng ở đỉnh cao, mức độ tham gia giảm dần khi dự án đạt đến độ chín hoàn toàn. Với suy nghĩ này, chúng tôi tính đến độ tuổi và sự trưởng thành của dự án khi đánh giá mức độ tương tác so với điểm chuẩn.
Sự khác biệt theo loại - một số loại dự án (ví dụ: cơ sở dữ liệu) thu hút ít người đóng góp hơn nhiều so với các loại khác (ví dụ: khung giao diện người dùng) có các nhóm nhà phát triển lớn hơn có thể đóng góp để họ đóng góp. Do đó, để so sánh sự khác biệt giữa các dự án, điều quan trọng là phải điều chỉnh các biến này bằng cách phân đoạn chúng theo danh mục phần mềm, sẽ được thảo luận sâu hơn bên dưới.
Sai lệch - Hoạt động của cộng tác viên bị sai lệch nhiều đối với các dự án lớn nhất. Trong khi các dự án lớn nhất thường có hơn 1000 người đóng góp mỗi tháng, rất ít dự án có ít hơn 100 người đóng góp mỗi tháng. Do thiên hướng của chúng tôi đối với các dự án lớn hơn, chúng tôi tập trung nhiều hơn vào các dự án mới đáp ứng các ngưỡng cụ thể phù hợp với giai đoạn và loại của chúng.
Ngoài ra còn có vô số sắc thái đối với một dự án có thể ảnh hưởng đến việc liệu nó có thể thu hút một số lượng lớn người đóng góp hay không, bao gồm dự án được tổ chức tốt như thế nào, mức độ chào đón của nó đối với những người đóng góp mới và mức độ rộng lớn của cộng đồng. Đối với mục đích phân tích, chúng tôi tập trung vào một trong những yếu tố lớn nhất: có bao nhiêu nhà phát triển là người dùng tiềm năng của dự án? Ví dụ: chúng tôi biết rằng nhiều nhà phát triển có khả năng đóng góp cho dự án giao diện người dùng như Font Awesome hơn là số nhà phát triển đóng góp chuyên môn cho ElasticSearch. Do đó, số lượng người đóng góp mà chúng tôi mong đợi cho các dự án cơ sở dữ liệu sẽ thấp hơn đáng kể so với số lượng các dự án giao diện người dùng.
Biểu đồ trên cho thấy mức độ tương tác của dự án theo thời gian, minh họa sự khác biệt về quy mô giữa các dự án giao diện người dùng phổ biến như React Native và Font Awesome cũng như các công cụ phân tích và cơ sở dữ liệu phổ biến như ElasticSearch và Apache Spark.
Mặc dù đây không phải là một hệ thống đánh giá hoàn hảo, nhưng chúng tôi đã cố gắng phát triển một bộ tiêu chuẩn tính đến sự khác biệt của loại dự án bằng cách kết hợp bộ tiêu chuẩn của 10 đến 20 dự án hàng đầu trong bốn loại công nghệ chính (giao diện người dùng, phụ trợ, devop và cơ sở dữ liệu ) điểm chuẩn để giúp chúng tôi so sánh các dự án với các nhà công nghệ có liên quan. Biểu đồ trên cho thấy phạm vi tham gia của cộng tác viên hàng tháng trong các dự án hàng đầu này.
Dưới đây là một số kết luận chúng tôi rút ra từ phân tích của mình:
Biểu đồ này minh họa sự khác biệt rõ rệt giữa số lượng người đóng góp cho các loại dự án khác nhau, với các dự án giao diện người dùng hàng đầu có số lượng người đóng góp trung bình cao nhất, trong khi các dự án cơ sở dữ liệu hàng đầu có số lượng người đóng góp trung bình thấp hơn nhiều.
Mặc dù chúng tôi sử dụng các phạm vi này để cung cấp bối cảnh về cách một số cộng đồng nguồn mở hàng đầu trong mỗi danh mục đang phát triển, nhưng chúng tôi không xem các phạm vi cơ sở này là các quy tắc khó và nhanh xác định thành công.
Để làm cho các điểm chuẩn này được áp dụng rộng rãi hơn, chúng tôi có thể xem xét một số dự án hiện tại, bao gồm Cypress và Netdata mà chúng tôi đã đầu tư, để hiểu kết quả của một số dự án phổ biến so với các điểm chuẩn có liên quan hiện nay.
Điểm chuẩn hàng đầu có thể là một hướng dẫn hữu ích, nhưng rất ít dự án đạt được mức độ tương tác ở quy mô điểm chuẩn. Thành thật mà nói, ở một mức độ nhất định, việc tham gia nhiều hơn không nhất thiết cho thấy rằng một dự án hoặc công ty sẽ thành công về mặt thương mại.
Nếu một số dự án nguồn mở mới nổi có thể duy trì hơn 100 người đóng góp mỗi tháng, thì chúng sẽ nằm trong lĩnh vực hàng đầu của ngành, nếu số lượng người đóng góp hàng tháng vượt quá 250, thì chúng sẽ gần bằng thành tích của các dự án tích cực nhất trong lịch sử. Trên thực tế, chỉ 6% trong số 10.000 dự án hàng đầu duy trì 250 người đóng góp mỗi tháng trong 6 tháng trở lên.
tiêu đề phụ
Tương lai của phần mềm là dựa vào cộng đồng
Chúng ta đang ở giai đoạn mà sự phát triển phần mềm ngày càng được thúc đẩy bởi cộng đồng và ranh giới giữa phần mềm thương mại và phần mềm mã nguồn mở đang bị xóa nhòa. lợi ích chung với công ty và tập trung vào việc làm thế nào để đạt được lợi nhuận. Khi các khoản đầu tư của Bessemer vào các loại công ty này tiếp tục tăng lên, nghiên cứu của chúng tôi về các chỉ số dự án nguồn mở sẽ tiếp tục khi chúng tôi có nhiều nguồn dữ liệu hơn để đưa vào phân tích của mình và tinh chỉnh các chỉ số của chúng tôi tốt hơn.


