Journal
Günlük
Karar günlükleri, perde arkası, ve "neden böyle yaptım" yazıları.
Mimari Kararların Çürüyor Çünkü Onları Hiçbir Şey Çalıştırmıyor
Bir wiki'ye yazılmış mimari karar bir dilektir. Zorlayamadığın sınırlar sessizce aşınır — diyagram kodla örtüşmeyi bırakana dek. Kuralı çalıştırılabilir yap
AI Darboğazı Kaldırmadı, Yerini Değiştirdi
Ucuz kod üretimi, review/entegrasyon/doğrulama yetişemiyorsa çıktıyı artırmaz. Darboğaz yalnızca aşağı kayar — ve asıl iş artık orada
Kararsız Testler: Retry Çözüm Değil
AI test yazmayı neredeyse bedava yaptı, kararsız süitler patladı. Retry ve quarantine neden bir koşu bandı ve kararsızlığı deterministik olarak ne yakalar
Şema Evrimi: Sözleşmeyi Kırmadan Değiştirmek
Bir mesajın data şekli, servisler arası bir sözleşmedir ve onu atomik değiştiremezsin. Kural: additive güvenli, kırıcı değişiklik yeni bir kimlik ister — ve önce tüketiciler yükseltir
Katmanlı Mimari mi, Clean Architecture mı?
Klasik katmanlı yapı çoğu projeye yeterken neden soyutlama katmanlarında boğuluyoruz; Clean Architecture gerçekten ne zaman değer katar.
Vibe Coding ile Production'a Çıkılır mı?
Vibe coding bir ilk sürümün maliyetini düşürür, yanlış olmanın maliyetini değil. O fatura build'de değil, production'da çıkar — ve onu kimin elinde çıkardığına bağlıdır.
"İleride Lazım Olur" Kodunun Production Faturası
YAGNI'yi pratikte uygulamak: bugün gerekmeyen esnekliği eklemenin bakım, okunabilirlik ve hata yüzeyi olarak geri ödenen bedeli.
Mikroservise Ne Zaman Geçerim?
Monolitten dağıtık mimariye geçişi haklı çıkaran ölçülmüş sinyaller — ve geçiş için henüz erken olduğunu söyleyen yaygın yanlış gerekçeler.
Gitflow mu, GitHub Flow mu? Neye Göre Seçiyorum?
Branch stratejisi seçimini ürün modeli, sürüm sayısı ve deploy ritmine göre yapmanın pratik kriterleri — ve iki modelin yanlış yerde nasıl kırıldığı.
Projelere Neden Modüler Monolit ile Başlıyorum?
Mikroservislere atlamadan önce tek deploy edilebilir bir uygulamada net modül sınırları kurmanın gerekçesi — ve bu kararı ne zaman bıraktığım.
Trunk-Based Development'a Ne Zaman Geçiyorum?
Yüksek frekanslı deploy yapan ekiplerde release branch'lerinin neden kırıldığı ve trunk-based'in ne kadarının disiplin olduğu — geçtiğim ve geçmediğim eşikler.
Neden Boring Architecture'ı Tercih Ediyorum
Yeni teknoloji peşinde koşmak yerine kanıtlanmış aletleri seçmenin pragmatik gerekçesi. Bu bir korkaklık değil, bir bütçe kararı.
AI-Assisted Engineering Workflow'um
Claude Code ve benzeri ajanları üretim kodunda güvenle kullanmak için takip ettiğim yedi kural — bir alaycı değil, bir disiplin manifestosu.