Quản trị¶
Những thành viên năng động trong Nhóm nòng cốt đảm nhận nhiều nhiệm vụ để duy trì hoạt động của tổ BeeWare. Đây là một dự án đang không ngừng phát triển, do đó nội dung trang này có thể thay đổi.
Các công việc này bao gồm, nhưng không giới hạn ở, giải quyết các vấn đề, xem xét và hợp nhất mã nguồn, hướng dẫn các thành viên mới, cũng như xây dựng kiến trúc tổng thể cho dự án BeeWare.
Có những người mà chúng ta tin tưởng để đưa ra các quyết định liên quan đến mã nguồn; có những người mà chúng ta tin tưởng để đưa ra các quyết định về mã nguồn và tổ chức; và có một người định hướng tầm nhìn cho toàn bộ tổ chức, đồng thời được giao nhiệm vụ đưa ra quyết định cuối cùng nếu cộng đồng không thể đạt được sự đồng thuận.
Thâm niên trong đội¶
Các cấp bậc trong dự án BeeWare bao gồm:
Con ong, hay ong thợ¶
Bất kỳ thành viên nào trong cộng đồng BeeWare. Do chúng tôi làm việc công khai trên GitHub, bất kỳ ai cũng có thể đề xuất các thay đổi đối với mã nguồn và có mã của mình được hợp nhất. Giới hạn duy nhất đối với khả năng đóng góp của bạn là việc mã của bạn phải được hợp nhất bởi một thành viên trong nhóm có quyền thực hiện việc này.
Người nuôi ong¶
Một thành viên đã được công nhận là người đóng góp đáng tin cậy. Những thành viên này đã chứng tỏ khả năng của mình trong một lĩnh vực cụ thể của dự án BeeWare trong một khoảng thời gian nhất định. Điều này có thể ở khía cạnh kỹ thuật (chuyên môn về JavaScript, Python, Objective-C; kiến thức về GTK+, macOS) hoặc ở khía cạnh khác (quản lý cộng đồng, đánh giá mã nguồn). Các thành viên này cũng có thể được cấp quyền commit cho dự án mà chuyên môn của họ được công nhận.
Chuyên gia nuôi ong cấp cao¶
Các thành viên Apiarists có quyền truy cập cao trên GitHub, đồng thời gánh vác thêm trách nhiệm giám sát toàn bộ dự án. Họ có thể đưa ra các quyết định về kiến trúc, nhưng cuối cùng vẫn phải chịu trách nhiệm trước BDFN.
Nhà độc tài nhân từ tạm thời (BDFN)¶
Theo quan điểm về Nhà độc tài nhân từ suốt đời, trách nhiệm về định hướng và các quyết định của dự án cuối cùng thuộc về BDFN. Việc sử dụng cụm từ "For Now" (Hiện tại) thay vì "For Life" (Suốt đời) là để ám chỉ chủ trương của Django, đó là không giao phó trách nhiệm của người duy trì lõi dự án cho một cá nhân trong suốt cuộc đời của họ. Cuộc sống không chỉ gói gọn trong mã nguồn mở, và việc cân bằng giữa mã nguồn và cuộc sống cùng với sức khỏe tổng thể là điều rất quan trọng cần lưu ý.
Người sáng lập BeeWare là Russell Keith-Magee.
Người sáng lập trại nuôi ong¶
Người đầu tiên đứng trên ngọn đồi và phát hiện ra một con yak cần được cạo lông. Vai trò này không bao giờ thay đổi và tiếp tục mãi mãi; tuy nhiên, nó không tự động mang lại thêm bất kỳ quyền lực nào trong tổ chức. Hiện tại, Người sáng lập trại nuôi ong cũng chính là BDFN; nhưng điều này có thể thay đổi theo thời gian.
Hướng dẫn (không phải quy định chính thức)¶
Giống như bất kỳ dự án nào có nhiều hơn một người có quyền commit, có một số nguyên tắc chung mà nhóm nên tuân thủ:
- Trở thành đại diện tiêu biểu cho dự án trước cộng đồng rộng lớn hơn
- Hãy đối xử với mọi thắc mắc và đóng góp cho bất kỳ dự án BeeWare nào một cách tôn trọng
- Hãy cho rằng ai cũng có ý tốt, ngay cả khi họ chưa chọn từ ngữ một cách khéo léo
- Hãy giả định rằng nếu ai đó làm điều gì đó theo cách "sai", thì đó là do chúng ta đã không truyền đạt quy trình một cách rõ ràng
- Hãy giả định rằng bất kỳ biểu hiện nào của sự tức giận hay thất vọng đều xuất phát từ mong muốn chân thành muốn sử dụng công cụ/thư viện BeeWare
- Khuyến khích các thành viên khác trong cộng đồng thể hiện những lý tưởng này trong các hoạt động giao tiếp của họ, cả trong và ngoài cộng đồng BeeWare
- Không người nuôi ong nào nên tự viết mã của mình
- Trường hợp ngoại lệ: "Có vấn đề nghiêm trọng cần được khắc phục ngay lập tức"
- Ngoại lệ: BDFN (điều này có thể thay đổi trong tương lai)
- Tất cả mã nguồn được gửi để xem xét bởi một thành viên trong nhóm nòng cốt đều phải được một thành viên khác trong nhóm xem xét
- Ngoại lệ: BDFN (điều này có thể thay đổi trong tương lai)
- Tất cả mã nguồn phải vượt qua các bài kiểm tra Tích hợp liên tục trước khi được hợp nhất
- Trường hợp ngoại lệ: mã được biết là có lỗi nhưng cần được đưa vào kho vì những lý do khác
- Trường hợp ngoại lệ: mã nguồn trong kho lưu trữ không có đủ bài kiểm tra CI
- Ngoại lệ: Làm việc và tận tâm còn hơn là hoàn hảo mà không làm gì cả
- Các quy trình phê duyệt nên được tự động hóa bất cứ khi nào có thể
- Điều này bao gồm các bài kiểm tra, kiểm tra cú pháp, kiểm tra chính tả, độ bao phủ mã và nhiều hơn nữa
Trở thành người nuôi ong¶
Việc đưa một Apiarist mới vào đội ngũ hoàn toàn do Ban Lãnh đạo hiện tại quyết định. Mặc dù hiện tại chưa có quy định cụ thể nào về vấn đề này, nhưng nhìn chung, một người sẽ được mời trở thành Apiarist trong một dự án BeeWare nếu họ đã chứng minh được những đóng góp đáng kể cho dự án. Điều này cũng có thể áp dụng cho những người có kiến thức chuyên môn cụ thể (ví dụ: iOS/macOS) mà đội ngũ hiện tại có thể đang thiếu. Việc này cũng không nhất thiết phải dựa trên các cam kết. Bất kỳ ai có thể chứng minh được sự quan tâm sâu sắc đến dự án nói chung đều có thể đề nghị được cấp quyền cam kết cho dự án.
Tất cả những người nuôi ong mới sẽ được “hướng dẫn” (vì chưa tìm được từ nào phù hợp hơn) về các giá trị cốt lõi và hướng dẫn của dự án. Bạn có thể xem tóm tắt về các giá trị cốt lõi trên trang Giới thiệu. Bất kỳ ai gia nhập đội ngũ đều được kỳ vọng sẽ tuân thủ những giá trị này và đóng góp vào các cuộc thảo luận nhằm phát triển các giá trị đó theo thời gian.
Dù là người nuôi ong mới hay đã có kinh nghiệm, không ai được kỳ vọng sẽ là người duy nhất đảm nhận mọi việc. Có rất nhiều người nuôi ong, và còn nhiều người khác nữa sẵn sàng giúp đỡ, tư vấn và hướng dẫn.
"Bit cam kết"?¶
Trong các hệ thống Unix, một bit duy nhất trong tệp được sử dụng để biểu thị quyền thực thi tệp đó. Trong các hệ thống kiểm soát phiên bản, cũng có một bit tương tự để biểu thị khả năng hợp nhất mã nguồn. Khi nói ai đó có "bit commit" nghĩa là người đó có quyền ghi vào kho mã nguồn. Theo thuật ngữ của GitHub, điều này có nghĩa là họ có khả năng hợp nhất các Pull Request và commit mã nguồn trực tiếp vào dự án.