Eski bakım, geliştiricinin iyi uygulama arzusunu oluşturur
Yalnızca bir lider geliştiricinin bakış açısını eklemek istiyorum, çünkü bir geliştirici olarak eski kodu korumak istememeyi değil, bir lider geliştirici olarak katılıyorum Hiçbir geliştiricinin bundan kaçınmasını savunmuyorum.
Durumumu ortaya koymak için pratik bir örnek kullanacağım. Bir danışman olarak, genellikle kod kalitesi sorunları olan bir şirkete / projeye gönderilirim, burada işim işleri doğru yapmaktır. Tahmin edebileceğiniz gibi, kötü kod çok sayıda eski bakıma yol açar.
Kötü kod yazan geliştiricilerin iki kamptan birinde olması benim en önemli deneyimimdi:
- Daha iyisini bilmeyenler
- Doğru şeyi yaptıklarını düşünenler
Eski grubun üstesinden gelmek kolaydır, çünkü hemen gelişecekler onlara iyi bir uygulama gösterdiğinde. Bununla birlikte, ikinci grubu ikna etmek çok daha zordur, çünkü kısa vadede genellikle daha fazla çaba gerektiren iyi uygulamanın faydasını görmezler. Uzun vadede kâr payını geri ödüyor, ancak ikinci grup genellikle bu noktayı gözden kaçırıyor.
İkinci kampta bulunan ilgilendiğim hemen hemen her geliştirici, projeden projeye atlamayı başaran geliştiricilerdi kendi kodlarının bakımını atlamak . Kusurlu tasarım kararlarının sonuçlarıyla hiçbir zaman karşılaşmadıkları için, bu sorunların, uygulama ilk geliştirilirken ortaya çıkmadan önce ortaya çıkmasını engellemeye asla teşvik edilmediler.
Çözüm basit: geliştiriciler sahipliği almalıdır . Hatalı kod yazarsanız, ortaya çıkan hatalarla ilgilenirsiniz. Zamanınızı hataları düzeltmek için harcamak istemiyorsanız, o zaman onları üretmeyen kod yazmak size kalmıştır.
Bu, geliştiricilerin ona karşı zorlanmak yerine kendilerini geliştirmeleri için çok basit bir teşvik oluşturur. iradeleri ve neden daha iyi bir yaklaşım olduğunu anlamadıkları için.
Bundan çıkarmanızı istediğim şey, geliştiricilerin neden iyi uygulamaya ihtiyaç duyduklarını hatırlamaları için eski bakımın şart olduğudur .
Bir benzetme olarak, siperde olan bir general adamları, ülkenin diğer tarafındaki bir sarayda rahatça oturan bir generalden daha iyi kararlar alacaklardır (askerler için). Bir geliştiricinin, genel olduklarında (= yeni uygulamayı oluştururken) tasarım kararlarının etkisini bilmeleri için ellerini kirletmesi gerekir.
Başkalarının peşinden gitmek
Bununla birlikte, kendi böceklerinizle değil, sizden önce gelen insanlarla karşı karşıyasınız. Şu anda aynı gemideyim ve bunun savunulabilir bir durum olmadığı konusunda sizinle aynı fikirdeyim.
Hiç kimse eski bakımı sevmiyor ve görünüşe göre yöneticiniz yalnızca eski bakımı nasıl yaptığınızı dikkate almadı hem de moralinizi ve kişisel kariyer gelişiminizi etkiler.
3 yılımı eski bakım için harcadım, ancak evden çok gevşek bir çalışma ile rahat bir işti. İş / yaşam dengesi kötü olmasa da, sektöre ilişkin güncel bilgiler kazanmadığım için kariyerimin durduğunu anlamam biraz zaman aldı. Bu işten 5 yıl sonra kovulmuş olsaydım, becerilerim diğer şirketler için o kadar eski olurdu ki, kaybedilen zamanı telafi etmek için uğraşmam gerekirdi.
Öte yandan, birisinin bu projeyi desteklemesi gerekiyor. Yani "ben değilim" yaklaşımını benimseyemezsiniz, çünkü her geliştirici aynı "ben değilim" yaklaşımını öne çıkarır ve ardından yönetim, kısa çöpü çekecek birini atamakla yükümlüdür (bu, başlamak için bu konum).
Sorunu ele alma
Yöneticinize yaklaşın ve ona eski projenin destek gerektirdiğini anladığınız halde, hiçbir şey yapmamanız ancak eski kodla uğraşmamanızın moral kaybı olduğunu açıklayın. Yöneticinizin sizi farklı (eski olmayan) bir yarı zamanlı projeye atamayı düşünüp düşünmediğini sorun.
Tecrübelerime göre, mantıklı yöneticilerin çoğu bunu anlayacak (muhtemelen siz bu işe atandınız çünkü hepsinden ayrılan diğer 5 geliştirici aynı noktayı tartıştılar) ve sizi korumanın faydasını görecek (zaten bilen biri eski projeyi yarı zamanlı olarak terk etmenize ve eski projeyi bilmeyen yeni bir geliştirici bulmaya ihtiyaç duymanıza karşılık, projede yarı zamanlı.
Ama aynı deneyimime göre, Çalışanların morali, daha sıkı bir "yapmanı söylediğimizi yap" yaklaşımını uyguladıkları öncelikler listesinde oldukça düşüktür.
Burada verebileceğim tek tavsiye, böylesine zehirli bir ortam bırakmaktır. İş memnuniyetinize (makul ölçüde) değer vermeyen bir şirket için nefret ettiğiniz bir işte çalışmakla kariyerinizin boşa gitmesine izin vermeyin.