4.800 GitHub yıldızının güveni sarsmasının nedeni
(medium.com)📌 Temel özet (TL;DR)
- Çin bağlantılı bir GitHub deposunda, kodda, sürümlerde ve etkinlikte hiçbir değişiklik olmadan yıldız sayısının 4.000'den 4.800'e aniden yükseldiği bir vaka tespit edildi
- Bu olay, “GitHub Star = popülerlik/kalite” varsayımının kendisini sorgulatıyor
- Sonuç: GitHub Star sayısı, bir projenin kalitesini veya güvenilirliğini değerlendirmek için uygun bir metrik değil
📉 Ana iddialar ve pratik içgörüler
⭐ 1) Popülerlik rahatlıkla ‘üretilip kurgulanabilir’
- StarScout tabanlı GitHub etkinlik günlüğü analizi sonucunda:
- Yaklaşık 4,5 milyondan fazla şüpheli Star deseni
- Bunların 3,1 milyondan fazlası fiilen sahte Star olarak sınıflandırıldı
- Çok sayıda hesabın kısa süre içinde eşzamanlı olarak Star verdiği tekrar eden örüntüler doğrulandı
- Yani, Star artışı ≠ doğal ilgi artışı olan çok sayıda durum var
Pratik açıdan:
Sırf “bu aralar yükselişte” diye bir bağımlılık eklemek risklidir
💰 2) Bir ‘Star pazarı’ zaten var
- GitHub Star, basit bir ilgi göstergesinin ötesinde, gerçekten alınıp satılan bir pazarlama varlığı gibi işliyor
- Gözlemlenen yapı:
- Doğrudan Star satan satıcılar
- Hesap havuzu (pool) kullanan Star değişim ağları
- Hizmet tanıtım paketlerine dahil edilen Star artırma seçeneği
- Sonuç:
- Popülerlik metrikleri yapısal olarak çarpıtılıyor
- Yeni proje ve kütüphaneleri değerlendirirken gürültü ciddi biçimde artıyor
Pratik açıdan:
Star sayısı yüksek diye bir projeyi “doğrulanmış proje” ilan etmemek gerekir
🛡 3) Star bir ‘güven metriği’ değildir
- Star'ın doğası:
- ✔ görünürlük (Visibility) metriği
- ❌ güven (Trust) metriği değil
- Yalnızca Star sayısına bakarak şunlar değerlendirilemez:
- Güvenlik seviyesi
- Bakım durumu
- Kod kalitesi / teknik borç
- Daha ciddi sorun ise şu:
- Sahte Star ile popülerlik görüntüsü verilip ardından tedarik zinciri saldırılarında (Supply Chain Attack) kötüye kullanılma ihtimali var
Pratik açıdan:
Çok yıldızlı bir kütüphane aslında risk de olabilir
🔎 Pratik güven kontrol listesi (5 dakikada)
Star yerine aşağıdakilere bakın 👇
- Etkinlik ritmi
- Commit, issue ve PR'lar düzenli ve doğal mı
- Belgelendirme durumu
- README gerçekten kullanılabilir düzeyde mi
- Kurulum / örnekler / kısıtlar açık mı
- Mühendislik hijyeni
- Test kodu var mı
- CI/CD yapılandırması mevcut mu
- Gerçek benimsenme metrikleri
- PyPI / npm / Docker pull sayıları
- Gerçek servislerde kullanıldığına dair izler
- Güvenlik duruşu
- OpenSSF Scorecard, güvenlik politikası, zafiyetlere yanıt geçmişi
- Bus Factor
- Aşırı derecede tek bir kişiye bağımlı mı
Bu maddeler Star sayısından çok daha güvenilirdir
📊 Sonuç mesajı (pratik özet)
- GitHub Star bir ilgi sinyalidir, güven sinyali değildir
- Star sayısı rahatlıkla manipüle edilebilir
- Çok sayıda Star, bazı durumlarda bir uyarı sinyali bile olabilir
- Gerçek güven şunlardan doğar:
- Sürekli etkinlik
- Güvenlik pratikleri
- Belgelendirme kalitesi
- Topluluk tepkisi
- Bakım ve işletim yapısı
8 yorum
Star bir ilgi göstergesidir; yani o repoya ilgi duyuyorum ve onunla ilgili etkinlikleri takip edeceğim gibi..?
Geliştirici açısından bakınca, ilginin "çok" değerli olması nedeniyle buna daha fazla önem verme eğilimi var gibi görünüyor.
Benim gibi bir geliştirici için tek bir star bile almak zor da hüzün
GeekNews'te de beğeni suistimali yapanlar var, hıçkırık hıçkırık, bu suistimal gerçekten can sıkıcı.
https://namu.wiki/w/…
SK bile manipülasyon yapacak kadar ileri gittiyse...
Yıl sonu olduğu için... GitHub Star birilerinin KPI’ı değil miydi diye düşünüyorum.
Bu, Goodhart yasasının işlediği bir örnek ama yönetici açısından bakınca sayılarla yönetmek kadar kullanışlı bir şey de yok...
GitHub adlı platformda yıldızların azımsanmayacak bir ağırlığı vardır herhalde; GitHub'ın kötüye kullanım tespitiyle hiç ilgilenmediği mi söylenebilir? Sadece GeekNews'te bile hemen işaretleniyor.
Çevremde de, sosyal medyada da star isteme karşılıklılığı epey oluyor. Kişisel repo'da yüzü aşkın star olsa ne olur, çok da anlamlı mı emin değilim.