Cách thiết lập chương trình mã nguồn mở
Ở đây, chúng tôi thảo luận về những cân nhắc chính để thiết lập một chương trình mã nguồn mở.
"Mã nguồn mở" nghĩa là gì?
Chương trình mã nguồn mở nhiều hơn quyền truy nhập công cộng vào cơ sở mã. Đó là về việc mở một dự án sống để tham gia từ bất kỳ ai muốn tham gia. Khi được thực hiện đúng cách cho một dự án thích hợp, một chương trình nguồn mở có thể giúp thúc đẩy những cải tiến đáng kể về chất lượng sản phẩm của bạn.
Một trong những lý do chính khiến các công ty mở dự án mã nguồn là họ muốn cộng đồng tham gia. Các dự án phổ biến nhận được những đóng góp đáng kể từ cộng đồng và họ nhận được miễn phí.
Nó không nhất thiết phải ra khỏi lòng vịt. Mọi người và tổ chức tiêu thụ dự án vì họ thấy lợi ích cá nhân hoặc doanh nghiệp. Khi dự án không đáp ứng nhu cầu hoặc kỳ vọng của họ, họ có thể sử dụng cơ hội để giải quyết lỗi hoặc thêm tính năng. Thay vì giữ lại những cải tiến này trong các nhánh riêng tư, chúng bắt buộc phải đóng góp những thay đổi đó trở lại kho lưu trữ nguồn để trở thành một phần của đường cơ sở dự án. Chu kỳ cải tiến đức hạnh này là lý do tại sao nhiều doanh nghiệp sản xuất phần sử dụng mô hình mã nguồn mở.
Mục tiêu nguồn mở
Để rút lại, có ba chiều để tham gia vào phần mềm mã nguồn mở:
- người tiêu dùng, những người nghiên cứu hoặc sử dụng các kho lưu trữ của người khác.
- đóng góp, những người đang tích cực tham gia vào việc cải thiện kho lưu trữ của người khác.
- sản xuất, người xây dựng và duy trì kho lưu trữ của riêng mình được mở cho người khác.
Khi các tổ chức suy nghĩ sâu sắc hơn về những gì họ muốn thoát ra khỏi mỗi chiều, đó là một biện pháp tốt để chứng khoán mà họ đang ở hiện tại. Có năm cấp độ quy trình trong mỗi chiều.
- thể, không có quy trình tại chỗ. Thành công phụ thuộc vào nỗ lực cá nhân.
- quản lý, vốn có một quy trình được lập tài liệu một phần. Thành công phụ thuộc vào kỷ luật.
- định nghĩa, trong đó có một quy trình tài liệu, tiêu chuẩn hóa và tích hợp. Thành công phụ thuộc vào tự động hóa.
- được, vốn có một quy trình được quản lý định lượng. Thành công phụ thuộc vào việc đo lường các chỉ số dựa trên các mục tiêu kinh doanh.
- tốitối ưu hóa , có một quy trình được cải thiện liên tục và đáng tin cậy thông qua các thay đổi tăng dần và sáng tạo. Thành công phụ thuộc vào việc giảm rủi ro thay đổi.
Để hiểu rõ hơn về vị trí của tổ chức bạn, hãy xem bài đánh giá tự mã nguồn mở.
Bạn nên mở mã nguồn là gì?
Nhiều dự án không phải dành cho sự vĩ đại mã nguồn mở. Mặc dù tiêu chí của bạn có thể khác nhau dựa trên các mục tiêu và mức quy trình của công ty bạn, dưới đây là một số tiêu chí được đề xuất cần xem xét trước khi mở dự án:
Dự án của bạn có chứa tài sản trí tuệ mà bạn muốn bảo vệ không? Nếu vậy, sau đó mở nguồn của nó sẽ cho đi giá trị của nó. Không mở mã nguồn những loại dự án trừ khi bạn cảm thấy lợi ích lớn hơn những rủi ro.
Dự án có ở trạng thái ổn định với chất lượng mã tốt không? Dự án không nhất thiết phải hoàn hảo, nhưng những người đóng góp tiềm năng có thể từ bỏ nếu dự án đang trong tình thế khủng khiếp để bắt đầu.
Dự án của bạn có hữu ích cho những người bên ngoài công ty của bạn không? Nếu không, thì có thể bạn không nhận được bất kỳ sự tham gia nào.
Những người bên ngoài công ty của bạn có thể đóng góp không? Họ cần truy cập vào tất cả các phụ thuộc dự án, quy trình xây dựng và bất kỳ điều gì khác là cần thiết để chạy dự án. Nếu họ không thể chạy nó, họ không thể đóng góp.
Nhóm của bạn có băng thông để hỗ trợ chương trình mã nguồn mở không? Nếu không, hãy chờ cho đến khi bạn làm vậy. Nếu bạn mở một dự án nguồn và không hỗ trợ dự án đó, bạn có thể mất cơ hội xây dựng một cộng đồng tin cậy.
Những câu hỏi này chỉ là một vài trong số những cân nhắc phổ biến nhất. Tổ chức của bạn có thể gặp các vấn đề về kinh doanh hoặc tuân thủ khác cần ghi nhớ.
Thiết kế chương trình nguồn mở
Chạy chương trình mã nguồn mở tương tự như chạy chương trình InnerSource nhưng đối với đối tượng công khai. Kết quả là, có một vài cân nhắc nhiều hơn.
Đặt ra kỳ vọng của cộng đồng
Các tệp như README.md và CONTRIBUTING.md còn quan trọng hơn vì chúng đang được tiếp xúc với những người không có ngữ cảnh tổ chức của bạn. Họ cần được đánh giá từ góc nhìn của một người bên ngoài công ty để đảm bảo sự rõ ràng.
Ngoài ra, quy tắc ứng xử của bạn là một chính sách quan trọng cần thể hiện. Tiêu chuẩn là để thêm một tập tin CODE_OF_CONDUCT.md vào gốc của kho lưu trữ của bạn và sử dụng nó để giải thích hành vi mong đợi từ người tham gia trong cộng đồng của bạn. Nhiều nhóm trong tổ chức của bạn nên xem lại tài liệu này, bao gồm cả nhóm pháp lý của bạn. May mắn thay, có rất nhiều quy tắc ứng xử tiêu chuẩn có sẵn từ đó để bắt đầu. Nhiều dự án sử dụng các mã này as-is sửa đổi. Tìm hiểu thêm trong Hướng hướng dẫn mã nguồn mở về hành vi ứng xử.
Chuẩn bị nhân viên để duy trì một kho
Nhân viên có thể không có kinh nghiệm làm việc với cộng đồng nguồn mở. Để giúp họ chuẩn bị, chúng tôi khuyên bạn nên cung cấp một bộ hướng dẫn bao gồm những điều quan trọng mà mọi người nên biết trước khi bắt đầu. Các hướng dẫn này nên được đăng lên một kho nội bộ hoặc cổng thông tin thường xuyên được duy trì và chỉ nhân viên công ty mới có thể truy cập. Các hướng dẫn sau đây là một vài trong số những hướng dẫn quan trọng nhất:
Một "Chúng tôi có nên mở nguồn dự án này không?" hướng dẫn cung cấp một khuôn khổ để quyết định một dự án ứng cử viên có nên được mở nguồn mở hay không. Hướng dẫn này có thể được cấu trúc dưới dạng lưu đồ, tập hợp các câu hỏi hoặc danh sách các điều cần cân nhắc.
Danh kiểm tra thiết gồm tất cả các mục công việc mà nhóm cần hoàn thành trước và sau khi khởi chạy dự án có nguồn mở. Danh sách này nên bao gồm việc phê duyệt cho dự án mã nguồn mở, đánh giá mã để đảm bảo dữ liệu nhạy cảm được loại bỏ trước khi dự án phát hành, thương hiệu hoặc tìm kiếm dự án mã nguồn mở để đảm bảo không có xung đột đặt tên, v.v.
Danh hệ cho những người chủ cấu trong tổ chức của bạn có thể cần được liên hệ trong trường hợp cần hỗ trợ trực tiếp từ người duy trì. Danh sách này nên bao gồm những người từ bảo mật phần mềm, bảo mật trang web, pháp lý, quan hệ công chúng, v.v.
Một liên kết đến một kho bắt có thể được nhân bản như là một điểm khởi đầu. Nó nên chứa một mẫu README, giấy phép, quy tắc ứng xử, hướng dẫn đóng góp và bất kỳ tệp hỗ trợ nào khác mà mọi dự án nguồn mở từ công ty của bạn cần có. Nó không nên chứa bất cứ điều gì bạn sẽ không muốn vô tình đẩy đến một đối tượng công cộng.
Một dẫn của người duy trì giải thích trách nhiệm mà một người duy trì có trong việc giữ cho kho chứa khỏe mạnh. Các trách nhiệm này bao gồm luôn cập nhật tài liệu lưu trữ, đảm bảo các vấn đề và yêu cầu kéo nhận được sự chú ý của đúng người một cách kịp thời, v.v.
Hướng dẫn liên lạc cung cấp hướng dẫn người duy trì kho chứa cho một số chủ đề bạn không muốn đưa vào các tệp công khai như
README.md,CONTRIBUTING.md, hoặcCODE_OF_CONDUCT.md. Những chủ đề này có thể là các chủ đề kinh doanh nhạy cảm, chẳng hạn như không thảo luận về các đối thủ cạnh tranh; hoặc nhiều chủ đề ứng xử chung chung hơn, chẳng hạn như làm thế nào để nhận ra một cách thích hợp những người đóng góp hàng đầu.Câu hỏi thường nội bộ cung cấp câu trả lời được phê duyệt cho các câu hỏi thường gặp. Danh sách này đặc biệt hữu ích nếu có tinh tế pháp lý đối với các chủ đề mà công ty của bạn có thể thảo luận trong quá trình duy trì chương trình mã nguồn mở.
Chính sách cấp phép liệt kê những giấy phép nào đã được bộ phận pháp lý phê duyệt hoặc bác bỏ để tiêu thụ hoặc đóng góp nguồn mở.