Dan.
Tüm yazılar

Gece 3'te Hata Ayıklama

Gece yarısından sonra özel bir delilik baş gösterir. Hata takip sisteminizde üç açık sekme var, kahveniz soğumuş ve bir şekilde — bir şekilde — çözüme ramak kaldığına hâlâ inanıyorsunuz.

Masum bir şekilde başlar. Saat 22:00'de bırakmanız gerekiyordu. Kendinize söz vermiştiniz. Hatta bunu yüksek sesle bile söylediniz: "Sadece şu bir şeyi düzelteceğim." Meşhur son sözler. O bir şey iki şeye dönüştü; şimdi saat 03:00 ve o zamandan beri sektörü terk etmiş birinin altı yıl önceki Stack Overflow yorumunu okuyorsunuz.

Gece 03:00'teki Beyin Bambaşka Bir Canavardır

İşin kimsenin size söylemediği kısmı şu: Gece 03:00'teki beyniniz tuhaftır. Kendini sorgulamayı bırakacak kadar yorulmuştur; bu da öğlen aptalca bulup görmezden geleceğiniz fikirleri denemeye başlamanız anlamına gelir. Ve bazen — sinir bozucu biçimde — işe yararlar.

Bir keresinde bir yarış koşulunu (race condition) dört saat boyunca ayıkladım, mantıklı olan her şeyi denedim, vazgeçtim, tavana baktım ve ardından o kadar lanetli bir düzeltme yazdım ki boş dairemde yüksek sesle güldüm. Kusursuz çalıştı. please don't ask mesajıyla commit'ledim ve yattım.

"En iyi hata ayıklama oturumları, aptal görünmekten korkmayacak kadar yorgun olduğunuzda gerçekleşir."

Ritüeller

Her gece geç saate kadar kod yazan kişinin ritüelleri vardır. Benimkiler şöyle bir şey:

console.log("WHY") taşıyıcı bir yapı görevi görür. Onu atlamayın.

O An

Ve sonra oluyor. O an. Görüyorsunuz — eksik bir noktalı virgül, bir tane yanılma hatası (off-by-one), data adındaki bir değişkenin yine data adındaki başka bir değişkeni gölgelemesi — ve her şey utanç verici bir basitliğe çöküveriyor. Akşamınızı yiyen hata, üç karakter uzunluğundaydı.

Düzeltiyorsunuz. Testleri çalıştırıyorsunuz. Yeşil. Hepsi yeşil. Karanlıkta yumruğunuzu kaldırıyorsunuz; kimsenin olmadığı bir stadyumda kazanan golü atsaydınız yapardınız tam olarak bunu.

Gece 03:00'te commit mesajı şiirsel oluyor. "fix: o şeyi çöz". Gelecekteki siz bunun için sorular soracak.

Neden Yapıyoruz Bunu

Bunu çok düşündüm. Neden uyanık kalıyoruz? Son tarih her zaman gerçek değil. Hata sabah da orada olacak, büyük ihtimalle uykudan sonra daha belirgin olacak.

Bence sessizlik yüzünden. Dışarıdaki dünya uykuya dalmış; sadece siz ve makine varsınız, müzakere ediyorsunuz. Slack bildirimi yok, toplantı yok, bağlam değiştirme yok. Sadece saf, tuhaf, odaklanmış bir akış — o akış çoğunlukla umutsuzluk olsa bile.

Gece 03:00'te yazdığınız kodda aynı zamanda derin kişisel bir şey var. Gün ışığında göndereceğiniz her şeyden daha ham ve daha dürüst. Üzerinde parmak izleri var.

Öyleyse geç gecelere, soğumuş kahvelere, lanetli düzeltmelere ve kimsenin hiçbir zaman sorgulamayacağı commit'lere şerefe. Hatalarınız sığ olsun ve uykunuz — er ya da geç — derin.