Şimdiye Kadar Gördüğüm En Garip Bug
(engineering.gusto.com)Garip bir bug'ın keşfi ve çözüm süreci
- İç araçlar ekibinde nöbet sırasında, Gusto'nun iç yazılımını kullanan kullanıcılar Chrome tarayıcısının çökmesi sorununu yaşadı.
- Bu sorun müşteri hizmetlerinde çeşitli aksamalara yol açtı.
- Sorunu çözmek için deneyimli ekip arkadaşlarından, ürün altyapısı ekibinden ve BT ekibinden yardım alındı.
İlk ipucu
- Etkilenen kullanıcılar arasında ortak bir nokta bulunmaya çalışıldı.
- Tüm Gusto çalışanları etkilenmedi ve müşteriyle doğrudan temas eden yazılımlarda sorun yoktu.
- Diğer iç yazılım web sayfaları normal çalışıyordu.
- Çökme tutarsız biçimde meydana geliyor ve Safari ya da Firefox'ta sorun yaşanmıyordu.
İkinci ipucu
- Sorunun Chrome sürümünden kaynaklanıyor olabileceği varsayıldı.
- Bazı kullanıcılar Chrome sürümünü güncellediğinde sorun çözülmüş gibi görünse de tamamen ortadan kalkmadı.
- Chrome uzantılarının sebep olabileceği düşünüldü, ancak uzantılar olmadan da sorun yeniden üretilebildi.
Bug'ı yeniden üretmenin zorluğu
- Altyapı ekibi tüm mühendislerden sorunu yeniden üretmelerini istedi.
- Türkiye'deki iki mühendis dışında mühendislik ekibinden çökme bildirimi gelmedi.
- Chrome'un çökme raporlama özelliği güvenlik nedeniyle devre dışı olduğundan sorun çözme süreci zorlaştı.
Şanslı dönüm noktası
- Denver'daki bir mühendis, Grammarly masaüstü uygulamasını indirdikten sonra sorunun ortaya çıktığını bildirdi.
- Grammarly uygulaması silinip bilgisayar yeniden başlatıldığında sorunun düzeldiği görüldü.
İlerleme
- Debugging mümkün hale gelince, sorunun kök nedenini bulmak için çeşitli denemeler yapıldı.
- Ana iç uygulama ActiveAdmin tabanlıydı, ancak React kullanan yeni bölümler çökmüyordu.
- Ortak kod bölümleri incelenirken,
My Historyaçılır menüsünün sorunun kaynağı olduğu bulundu.
Sorunun çözümü
loader-spinner.gifgörsel dosyasının soruna yol açtığı doğrulandı.- Bu GIF başka bir görselle değiştirildiğinde sayfa artık çökmüyordu.
- Sorunu Grammarly'nin mi yoksa Chrome'un mu çözdüğü belirsiz olsa da, artık orijinal GIF Chrome'u çöktürmüyor.
Sonuç
- Beklenmedik bir animasyonlu GIF, debugging sürecinin cevabı oldu.
- Sorun merak ve iş birliği sayesinde çözüldü.
- Gusto, iş birliğine açık ve meraklı insanlarla birlikte çalışma fırsatı sunuyor.
GN⁺'ın görüşü
Bu yazıdaki en önemli nokta, beklenmedik bir nedenden kaynaklanan bir bug'ın nasıl bulunup çözüldüğünün ayrıntılı biçimde anlatılması. Yazı, yazılım mühendisliğinin karmaşıklığını ve öngörülemezliğini gösterirken ekip çalışmasının ve ısrarlı problem çözme becerisinin ne kadar önemli olduğunu vurguluyor. Mühendislik ekibinin böylesine zor bir problemi birlikte nasıl çözdüğüne dair ilgi çekici bir örnek sunuyor; bu da onu mühendislik alanına ilgi duyanlar için oldukça çekici bir hikâye haline getiriyor.
1 yorum
Hacker News görüşleri
Belirli bir GIF dosyasının tetiklediği bug karşısında şaşkınlık ve şüphe
Bir üniversite profesörünün araştırma makalesi üzerinde çalışırken yaşadığı altı çizili metin yazdırma sorunu
Grammarly ile ilgili bug deneyiminin paylaşılması
Bug düzeltmesine dair hayal kırıklığının dile getirilmesi
Windows ve Linux dual-boot kullanımında ses sorunu
2023 web ortamında bug ortaya çıkmasının ilginç bulunması
Chrome’un erişilebilirlik araçlarıyla ilgili benzer bug deneyiminin paylaşılması
Sayfa çeviri ayarının yol açtığı kafa karışıklığının paylaşılması
Bir web sitesinin CSS’i nedeniyle Linux masaüstünün çökmesi deneyiminin paylaşılması
Bug’ın çözülebilmesinin önemli bir güvenlik açığına dönüşebileceğine dair görüş