𝗧𝗵𝗲 𝗦𝗲𝗰𝗼𝗻𝗱 𝗟𝗮𝗽: 𝗪𝗵𝗮𝘁 𝗛𝗮𝗽𝗽𝗲𝗻𝘀 𝗪𝗵𝗲𝗻 𝗬𝗼𝘂 𝗜𝗺𝗽𝗿𝗼𝘃𝗲 𝘁𝗵𝗲 𝗦𝗮𝗺𝗲 𝗖𝗼𝗻𝘁𝗲𝗻𝘁 𝗧𝘄𝗶𝗰𝗲
I run an automation that improves calculator pages every evening. It adds verified benchmarks, worked examples, and internal links. It has made 43 commits so far.
This week, the automation hit a "second lap." It revisited three pages it had already improved:
• P/E Ratio calculator (improved twice, 34 days apart) • SaaS Valuation calculator (improved twice, 35 days apart) • Book Value calculator (improved twice, 37 days apart)
I wanted to see if a second round of improvements would move the needle. The results were a reality check.
The data from Google Search Console shows the truth:
• P/E Ratio: 711 impressions, 2 clicks • SaaS Valuation: 17 impressions, 0 clicks • Book Value: 0 impressions, 0 clicks
The content is better now. It has specific meta descriptions and accurate benchmarks. But better content did not change Google's assessment of the page authority.
The automation improves the content, but it cannot instantly change how Google views the trust level of a domain. The improved pages are still sitting near the bottom of search results.
Meanwhile, the pages the automation never touched are winning.
A purchase order generator moved up 8 positions in one week. It has 20 clicks. An impression calculator has 1,041 impressions and 10 clicks. Neither page has ever been in the automation queue.
This creates a massive gap. The pages performing best are the ones I haven't touched. The pages I am working on most are barely getting any traffic.
Why is this happening?
- Authority: Financial media giants might dominate the P/E and SaaS niches. No amount of content can beat their established domain trust.
- Intent: The automation might be improving content that doesn't match how people actually search.
- Competition: The untouched pages might target less crowded query landscapes.
I am not stopping the automation. I am setting a checkpoint for July 21. I will check the data again in four weeks. If the second pass moves the rankings, I will report it. If not, I will know that doing something twice is not a fix for low authority.
Are you building programmatic SEO? Are you hitting a wall where good content results in bad rankings? Let's compare notes in the comments.
İkinci Tur: Üç Hesap Makinesi İki Kez İyileştirildi — İşte İlk Turun Geride Bıraktıkları
Yazılım geliştirme nadiren düz bir çizgidir. Genellikle bir döngüden oluşur: bir şeyi yaparsınız, onu iyileştirirsiniz ve sonra tekrar iyileştirirsiniz.
Bu yazıda, üç farklı hesap makinesi projesi üzerinden bu döngünün nasıl işlediğini ve "ilk tur" ile "ikinci tur"un neleri geride bıraktığını inceleyeceğiz.
İlk Tur: "Çalışmasını Sağla" Aşaması
İlk turda odak noktamız sadece işlevselliktir. Kodun nasıl göründüğü veya ne kadar temiz olduğu ikinci plandadır. Önemli olan, kullanıcı bir sayı girdiğinde ve bir işlem seçtiğinde sonucun doğru çıkmasıdır.
Bu aşamada şunları yaptık:
- Temel matematiksel işlemleri tanımladık.
- Kullanıcıdan girdi aldık.
- Sonucu ekrana yazdırdık.
Kod karmaşıktı, çok fazla if-else bloğu vardı ve kod tekrarı fazlaydı. Ama çalışıyordu.
İkinci Tur: "Doğru Hale Getir" Aşaması
İkinci turda, "temiz kod" (clean code) prensiplerini uygulamaya başladık. Kodun okunabilirliğini artırmak ve teknik borcu azaltmak için refaktörleme yaptık.
Neleri değiştirdik?
- Mantığı fonksiyonlara böldük.
- Kod tekrarını azalttık (DRY - Don't Repeat Yourself).
- Değişken isimlerini daha anlamlı hale getirdik.
Kod artık çok daha şıktı. Ancak, hala bazı eksikler vardı.
İşte İlk İki Turun Geride Bıraktıkları
İkinci turdan sonra bile, hala "mükemmel" değildik. İşte ilk iki turda gözden kaçan ve üçüncü turda (yani şu anki aşamada) ele almamız gereken kritik noktalar:
1. Uç Durumlar ve Hata Yönetimi (Edge Cases & Error Handling)
İlk iki turda, kullanıcının her zaman "doğru" veriyi gireceğini varsaydık. Ancak gerçek dünya böyle değildir.
- Sıfıra bölme hatası.
- Geçersiz karakter girişleri (harf girmek gibi).
- Çok büyük sayılarla yapılan işlemler sonucu oluşan taşmalar (overflow).
2. Girdi Doğrulama (Input Validation)
Kullanıcıdan gelen verinin tipini ve aralığını kontrol etmeyi ihmal ettik. Veri temizleme (sanitization) süreci eksikti.
3. Performans ve Ölçeklenebilirlik
Hesaplamalar küçük sayılar için hızlıydı, ancak daha karmaşık fonksiyonlar veya çok büyük veri setleri söz konusu olduğunda algoritma verimsiz kalabiliyordu.
Sonuç
Yazılım geliştirmede "tamamlandı" demek, aslında "şu anki iterasyon için yeterli" demektir. İlk iki tur, temel yapıyı kurmamızı sağladı, ancak gerçek dayanıklılık ve profesyonellik, o geride kalan küçük ama kritik detayları ele aldığımızda ortaya çıkıyor.