Ana içeriğe geç

Maintainer ne yapar?

Maintainer (yürütücü / bakıcı), projenin tüm kodlarını tek başına yazan kişi değildir; projenin yönünü koruyan, iş akışını canlı tutan ve nihai kararları veren kişidir.

Açık kaynakta maintainer'lık, kod yazmaktan ziyade bir editörlük, küratörlük ve koordinasyon görevidir.

Ne zaman?​

  • Bir projenin kurucusu veya sorumlusu olduğunuzda,
  • Katkıcıların PR ve Issue taleplerini yönetirken rolünüzün sınırlarını belirlemek istediğinizde.

Maintainer'ın temel sorumlulukları​

  1. Projenin yönünü ve kapsamını korumak: Projeye gelen her özellik talebini kabul etmek zorunda değilsiniz. Projenin özgün vaadiyle çelişen veya aşırı bakım yükü getiren önerilere saygılı bir şekilde "hayır" diyebilmek maintainer'ın en önemli görevidir.
  2. İş akışını açık tutmak: Gelen PR'ları makul sürelerde incelemek, tıkanıklıkları gidermek ve ana dalı stabil tutmak.
  3. Karar almak: Teknik fikir ayrılıklarında tartışmayı sonsuza kadar uzatmadan projenin ilkelerine uygun kararı vermek.
  4. Katkıcı deneyimini gözetmek: Yeni bir geliştirici katkı sağladığında ona yol göstermek, geri bildirimleri netleştirmek ve topluluğu teşvik etmek.
  5. Her şeyi tek başına yapmamak: Maintainer her hatayı kendisi çözmek zorunda değildir; sorunu netleştirip good first issue veya help wanted etiketiyle topluluğa açabilir.

İyi bir maintainer davranışı örneği​

Bir geliştirici, popüler ama projenin ana amacıyla ilgisiz bir eklenti için 1000 satırlık dev bir PR gönderir.
Maintainer: "Katkınız ve harcadığınız emek için çok teşekkürler! Ancak bu özellik projemizin çekirdek kapsamını aşıyor ve uzun vadeli bakım yükümüzü artıracaktır. Bu işlevin ayrı bir üçüncü parti eklenti veya bağımsız bir kütüphane olarak geliştirilmesini öneriyoruz. Bu nedenle çekirdeğe dahil edemiyoruz." diyerek PR'ı nazikçe kapatır.

Sık yapılan hatalar​

  • Her PR'ı kabul etme baskısı hissetmek: Kimseyi kırmamak için her gelen kodu depoya almak, projeyi birkaç ay içinde bakımsız bir çöp yığınına çevirir.
  • Tükenmişlik (Burnout): Tüm issue'ları tek başına çözmeye çalışıp projeden soğumak.

Daha fazla bilgi​

Açık kaynak iş birliği dinamikleri için Açık kaynak proje ne demektir? rehberine bakın.