Yazar | Kent Sia
Çevirmen | Mingming, sorumlu editör | Xi Yan
Üretildi | CSDN (ID: CSDNnews)
Programcılar, kimileri onlara kodlayıcılar, geliştiriciler diyebilir, bunlar bilgisayar yazılımı geliştirerek geçimini sağlayan bir grup insan ve aynı zamanda gelecekte dünyadaki en önemli canlılar. Dünya, dünyanın nasıl çalıştığını tanımlamak için bilgisayarlara ne kadar çok güvenirse, programcı o kadar güçlü hale gelir. Tanrı'nın Muhafızını Çağır (Harry Potter büyüsü)
Çok mu geliyor?
Ben bir programcıyım ve uzun yıllardır ekip lideri ve teknik liderim. İnsanlar genellikle programcı olmanın sadece kod yazmaktan ibaret olduğunu düşünür. Ancak, işte, aşağıdaki durumlarda işler kolayca çok karmaşık hale gelebilir:
Üst yönetime karşı sorumlusunuz
Yönetmen gereken büyük bir ekibin var
Birden fazla projeyle uğraşmanız gerekiyor
Müşterileriniz ne istediklerini bilmiyor
Zaman planınız dağınık, vb.
Çoğu programcı iletişimde iyi değildir. Programcılar yukarıdaki durumla karşılaştıklarında paniğe kapıldıklarında, bazı insanlar kaçınma eğilimindedir, bazı aptalca şeyler söyler veya hatalarını örtbas etmek için boş sözler verir.
İşte yukarıdaki durumla karşılaştığımda sık sık duyduğum bazı kelimeler. Eminim bunu çalışma ortamınızda duymuşsunuzdur veya bazılarını kendiniz söylemiş olabilirsiniz.
Programcılar olarak, proje süresini ve iş yükünü tahmin etmekte çok kötüyuz. Sık sık müşterilerin ihtiyaçlarını anlamaya çalışıyoruz, ancak talebin yönü her gün değişiyor ve kısa teslim süreleri ve projeleri tamamlamak için kaynak yetersizliği ile karşı karşıyayız. Ayrıca, tüm geliştirme süreci boyunca önceden tahmin etmediğimiz, görevin zamanını ve diğer maliyetlerini de sıklıkla küçümsüyoruz.
"Bir programcının bir ayda yapabildiğini, iki programcı iki ayda yapabilir."
- Fred Brooks
Bir ekip bir veya daha fazla programcıdan oluştuğunda, eldeki görevi tamamlamak için iletişim kurmalı, işbirliği yapmalı, kod entegrasyonu gerçekleştirmeli ve kod incelemeleri gerçekleştirmelidir. Tüm bu iletişimler, programcıların sayısının artmasıyla katlanarak artmış ve proje gecikmelerinde bir etken haline gelmiştir.
Gerçek: Henüz başlamamış olabilir.
Test uzmanı veya QA iseniz, bu ifadeyi sık sık duyabilirsiniz. Programcılar bu dünyada mükemmel bir yazılım olmadığına inanıyor.
Zaman, yazılım geliştirmenin özüdür ve çoğu zaman her şeyi tamamlamak için zamanımız olmaz. Planı ertelemenizi ve daha sonra düzeltmenizi ve proje üretime geçtikten sonra bazı yamalar yayınlamanızı söyleyebiliriz. Bununla birlikte, çoğu durumda, daha fazlası yoktur.
Gerçek: Gelecekte asla ortaya çıkmayacak veya üretimde daha büyük sorunlara neden olmanın etkisini küçümsemeyecek.
Tüm programcılar test etmede iyi değildir ve çoğu programcı test etmede iyi değildir. Bence bu aynı zamanda testçilerin ve QA'nın varlığının nedeni. Kötü programcılar genellikle hataları düzeltmekte zorlanırlar. Hatanın temel nedenini anlamıyorlar veya eksik düzeltme yeni sorunlara yol açıyor.
Gerçek: Düzeltmeden sonra çalışmaz veya bir hata giderilir ve yeni bir hata oluşturulur.
Garip, bilgisayarımda çalışıyor
Bu sık sık duyduğum bir cümle. Genellikle dağıtımdan sonra bir arıza meydana geldiğinde veya programcının hatanın nedeni hakkında hiçbir fikri olmadığında söylenir. Windows ve Linux gibi farklı işletim sistemleriyle uyumlu olmayan bazı komutlar veya sözdizimlerinden kaynaklanıyor olabilir.
Gerçek: Diğer şeyler bozuldu, yanlış sürüm uygulandı veya sorun tam olarak düzeltilmedi.
İş sonsuzdur Bazen programcı birçok görevi yerine getirmiş olsa bile, yine de amirden / yönetimden daha fazla görev alır. Bu talebi hiç bilmiyor veya kabul etmemiş gibi davranma eğilimindeyiz. Bu, geliştiricilerin yorgun veya tembel olduklarının bir işareti olabilir, sadece işleri uzaklaştırmak istiyorlar.
Diğer durumlarda, programcılar gelişimin sınırlarını gözden kaçırabilir ve daha önce hiç görmedikleri gibi davranabilirler.
Gerçek: Bunu biliyoruz, ancak bilmek istemiyoruz. Bunu nasıl özleyebilirim?
Bu cümle, bir ekibin birden fazla üyesi birlikte çalıştığında çok yaygındır. Genellikle bir projeyi tamamlamak için yeterli zamanımız olmaz. Yeni bir özelliğin acilen geliştirilmesi gerektiğinde, programcılar testi görmezden gelme ve kodu doğrudan dağıtma eğilimindedir. Ayrıca, programcıların diğer hizmetler üzerindeki etkisini düşünmeden veya anlamadan kodu zorladığı ve sonunda kodu kırdığı bu tür durumlarla da karşılaştık.
Gerçek: Biri kodunuzu karıştırdı veya dün başka değişiklikler yaptığınızı unuttunuz.
"Ben değilim! O ben değilim!" Bu ifadeyi, programcılar yaptıkları her şeyi inkar etmeye çalıştıklarında sık sık duyuyorum. Bu birçok insanın doğasıdır. Hatalar veya arızalar meydana geldiğinde, programcılar yazdıkları kod dışında herhangi bir şeyi suçlamaya başlarlar.
Gerçek bir lider, bir soruna işaret etmeden önce bir başparmak gösterecektir.
Bazı durumlarda ekip lideri, kendisini değil başkalarını suçlayan kişidir. Büyük bir lider olmak istiyorsanız, bunu yapmamanızı öneririm, sorumluluk almalı ve başkalarına kredi vermelisiniz. Hataları kabul etmeye cesaret etmekten utanmaz.
Gerçek: Bunu ne zaman yazdığımı veya bu hatayı nasıl yaptığımı hatırlamıyorum ?!
Bu yalnızca geçici bir çözümdür ve üretimde kullanılmayacaktır.
Proje geliştirmenin ortasında kaliteyi garanti etmek zordur. Sık sık bir ikilem içindeyiz: Tüm programı yeniden mi yazmalıyız yoksa sadece hızlı bir düzeltme yapıp önce çalışmasına izin vermeli miyiz?
Bu zor bir karardır. Kusurlu bir projenin yeniden geliştirilip geliştirilmeyeceği ilerlemeyi geciktirebilir ve hataları düzeltmek için acele etmek iyi bir tasarım değildir. Özellikle sabırsız müşterilerle, testçilerle veya meslektaşlarla karşılaştığınızda, onlara bunun geçici olduğunu söylemekten ve daha sonra unutacaklarını ummaktan başka seçeneğimiz yok.
Gerçek: Başka bir değişiklik yapmak istediğinizde veya bir sorun ortaya çıktığında, geçici bir çözümün kalıcı bir çözüm olduğunu göreceksiniz.
Biz programcılar başkalarının iyi belgeler yazmasını isteriz, ancak belge yazmaktan nefret ederiz.
Dick Brandon en iyi şekilde ifade etti:
"Belgeleme seks gibidir. İyi olduğunda, çok güzeldir. Kötü olduğunda, hiç yoktan iyidir."
Dick Brandon
Açıkçası, programcılar genellikle yazma konusunda iyi değildir ve ilk cümleyi yazmaya başlaması uzun zaman alır. Teknolojideki ve iş süreçlerindeki hızlı değişikliklerle, programcıların aynı anda kod değişiklikleriyle uğraşması ve belge güncellemelerini sürdürmesi zordur.
Gerçek: Belge teslimi uzun zaman alıyor.
Umarım bu makale hoşuna gider. Kimin haklı kimin yanlış olduğunu göstermeye çalışmıyorum. Her şeyin her zaman iki taraflı olduğunu da unutmamalıyız.
İlginç siyah kelimeler duyduysanız, lütfen bunları yorumlarda paylaşın.
Okuduğunuz için teşekkürler!
Orijinal bağlantı:
https://medium.com/swlh/decode-your-programmers-language-31f45877b960
Bu makale bir CSDN çeviri makalesidir, lütfen yeniden basımın kaynağını belirtin.