
Bir Programlama Dilini Nasıl Öldürürsünüz?
“Eğer ilgilendiğiniz dilin istikrarlı ve yeni bir sürümü yayınlandıysa ve bu dilin yetenekleri gereksinimlerinizi karşılıyorsa, o dil ölmemiştir”
Katiller Nerede?
Programlama dilleri bildiğiniz gibi biyolojik varlıklar değillerdir,
insanlar tarafından insanlar tarafından kullanılmak üzere yaratılmışlardır, dolayısıyla dilin yok olmasından bahsediyorsak
bu bir cinayet olmalı çünkü doğal bir süreç değildir.
Peki dışarıda katiller var, kim bunlar? Dilin yaratıcıları mı? Yoksa
dile katkıda bulunanlar mı? Ya da dili kullanan diğer geliştiriciler mi?
Ölmenin Tanımı
Yukarıda da belirttiğim gibi, programlama dilleri biyolojik bir şey değildir, dolayısıyla bilgisayarlar onları işleyebildiği sürece (güncel teknolojilerle) varlıklarını sürdüreceklerdir. Diğer tüm nedenler dilin ölümüyle ilişkilendirilemez, çünkü hala onunla çalışabilirsiniz ve donanımınız hala bir programlama dili aracılığıyla ona söylediğiniz komutları yürütebilir.
“Yani, eğer bahsettiğimiz dil hala geliştiriliyorsa ve yeni sürümler yayınlanıyorsa (tıpkı PHP gibi), o zaman oldukça canlı bir dildir.”
Kelimenin tam anlamıyla “ölmekte olan” dil, uzun süredir güncellenmeyen, yeni bir donanım veya işletim sisteminde çalışmayan veya çalıştırılması zor olan dildir.
Bütün bunlar göz önüne alındığında ve dil ölmemişse daha az tercih edilen bir dil haline gelmiş olabilir.

Katiller
# 1. Perde — Bağnaz Geliştiriciler
Bu adamlar dilin fanatikleri ve bağımlıları. Dili kelimenin tam anlamıyla her şey için kullanmaya zorluyorlar.
Gerçek hayatta, her dil kendi kullanım durumlarına odaklanarak sorunları çözmek için tasarlanmıştır. Bu, her dilin özel kullanım durumları için en iyi? dil olduğu ve dillerin her birinin bazı kullanım durumları için sadece zaman kaybı? olduğu anlamına gelir.
Sorunu, kullanım senaryonuza uygun olmayan bir dille zorladığınızda, büyük ihtimalle kötü bir şekilde, standartlarının dışında, diğer geliştiricilerin zor anlayabileceği şekilde kodlamaya başlayacaksınız ve hatta sizin için daha iyi olan kalıpları uygulamak için işleri mahvedebileceksiniz.
# 2. Perde — Kötüye Kullanıma Eğilimli Programlama Dili
Bazı ürünleri yayınlamayı kolaylaştıran dilin öğrenilmesi en zor dil olduğuna inanıyorum. Çünkü bu dil muhtemelen kötüye kullanılmaya müsaittir, PHP’yi tekrar düşünün, yapmak istediğiniz şeyi yapmanın neredeyse sınırsız yolu vardır.
Kendi standartlarınızı ve kendi yapınızı kurarken diğer geliştiriciler ve hatta bir noktada sizin için bile anlaşılmasını kolaylaştırmak için düşünmek daha iyidir. Zayıf bir sistem türü kesinlikle çalışma zamanı hatalarını artıracaktır.
Peki dilin suçu mu? Otoyolun ortasında yürürken bir araba çarptığında “Burada Yürümeyin, Sadece Arabalar!” gibi tabelalar koymadıkları için arabayı, yolu veya yerel yönetimi suçlayabilir misiniz? Tamam, “Tabelalar işe yaramaz, onlara ihtiyacımız yok” demiyorum, ancak yalnızca görevinizi tamamlamak için kod yazmamalısınız. Bunu sürdürmek zor olacak, herkes için acı verici olacak. Uzun lafın kısası, çöp.
Elbette, tür güvenli dillerle çalışmak daha güvenlidir, kendinizi geliştirmek için daha fazla fırsat sunarlar. Bu yüzden çalıştırılması kolay diller daha fazla uzmanlık gerektirir, kolayca yapabilseniz bile kod tabanınızı bozmazsınız.
# 3. Perde — Kızgın Geliştiriciler
Bu katil geliştiricilerin sayısı çok fazla olursa ve kod tabanları dil topluluğuna yeterince yayılırsa, bu durum diğer geliştiricileri olumsuz etkileyecektir.
Çünkü gün geçtikçe kötü kod tabanlarıyla karşı karşıya kalıyorsunuz. Açık kaynaklı katkı beyniniz için acı verici olacak veya belki de toplulukta trend olan üçüncü taraf paketlerinin çoğu iyi yazılmamış ve bunları kullanmaktan emin değilsiniz ancak kullanmak için daha iyi bir seçeneğiniz yok.
Bu nedenler buzdağının sadece görünen kısmı ve diğer geliştiricilerin o belirli dil hakkında kin duymasına neden olacak.
Tüm bu nedenler hakkında uzayıp gidebiliriz, ancak anlayabileceğiniz gibi, bu nedenlerin hiçbiri dilin kendisiyle ilgili değildir. Dil, sorunları çözmek için kullandığınız bir araçtır. En iyi dil ile berbat edebilirsiniz veya en kötü dil ile muhteşem şeyler yapabilirsiniz.
Size “Bu en iyi araç, öğrenip kullanmalısın!” ya da “Bu ölü bir araç, kullanma!” diyen kişilere aldırmayın. Bu tür sözler objektif değildir ve gerçeği yansıtmaz.
Kullanmaktan hoşlandığınız herhangi bir dili öğrenin ve onu çok iyi öğrenin, alacağınız gerçek deneyim en iyi uygulamalar, standartlar, kalıplar, kavramlar olacaktır…
Bu kavramlar bir dile özgü değildir ve bir dilden diğerine kolayca aktarılabilir. Doğru aracı kullanın ve kullandığınız hiçbir aracı İsviçre çakınız yapmayın, size yeni bakış açıları kazandıran yeni araçları deneyin.
Popüler dillerin çoğu bizim ömrümüzden daha uzun süre var olacak. Rahat olun ve gerçek sorunlara odaklanın. Tebrikler!
Kredilerden Sonra
Sonuçta, teknolojiyi her iki tarafta da değiştirenlerin biz olduğumuzu öğreniyoruz. Kendinizi bir geliştirici olarak hayal edin, sizi rahat hissettiren şey nedir? ASMR’mizi yazmama izin verin; güncel kod tabanını, iyi test edilmiş, yüksek kapsamı, kullanım dışı bırakılmış veya popüler olmayan üçüncü taraf bağımlılıkları olmadan, eski kodlar olmadan, SOLID gibi prensipleri önemseyen biri tarafından kodlanmış ve kod parçalarının ne işe yaradığını kolayca tahmin edebilirsiniz çünkü sizden önceki geliştiriciler standartları takip etmek için çok uğraştılar.
Açıkçası yukarıda hayal ettiğimiz gibi bir kod tabanı ütopya değil ama önemli olan sürdürülebilirlik, kod tabanını sürdürülebilir tutmanız gerekiyor.
Yuvarlanan taş yosun tutmaz.
Atolye15’te bunu her geçen gün daha fazla yapmaya çalışıyoruz. Özellikle benim için, bunun en büyük nedeninin çoğu zaman acele etmememiz olduğuna inanıyorum. Yani zaman planlaması önemli bir konu, yapılacaklar için kısa tahminlerden bahsetmiyorum, bunun yerine tutarlı tahminlerden bahsediyorum.
Diğer önemli nokta ise “kod incelemeleridir” çünkü eğer kodunuz kötü yazılmış bir koda sahipse veya diğer geliştiriciler tarafından anlaşılması zorsa veya yapmak istediğiniz şeyi yapmanın daha etkili bir yolu varsa, bu konuda geri bildirim veya öneriler alabilirsiniz. Paylaşılan bilgelik sizi her zaman geliştirecek ve size farklı bir bakış açısı kazandıracaktır.
Henüz katil olmayan geliştiricilerle çalışacak kadar şanslı değilseniz, popüler depoların sahip olduğu çekme isteklerine göz atabilirsiniz. Çekme istekleri üzerine tartışmalar ampulünüzü yakabilir.
Dürüst olmak gerekirse, en küçük sorunları veya kötü uygulamaları görmezden gelmeyin; kod tabanı büyüdükçe ve ekibinize yeni geliştiriciler katıldıkça her zaman daha büyük sorunlara yol açacaklardır. Küçük sorunları görmezden geldiğiniz sürece başkalarını cesaretlendireceksiniz ve gelecekte hangi özelliklerin talep edileceğini ve bu geleceğin sizin küçük masum sorunlarınızı nasıl etkileyeceğini garanti edemezsiniz.
Yeni teknolojiler, araçlar, uygulamalar ve diller için ruh sağlığınızı taze tutun. İş arkadaşlarınızla eğlenmeyi unutmayın, pandemiden bu yana bunun önemini daha iyi anlıyoruz. Öğrenme ve araştırma isteği ruh halinize göre iki katına çıkar. Motivasyonunuzu tüketen ve sizi aşağı çeken bir ortamda/projede çalışmayın.
Anlayacağınız üzere, yukarıda bahsettiğim hiçbir şey kullandığınız dille doğrudan ilişkili değil. Bilinen ve kanıtlanmış uygulamalar dahilinde, belirli sorununuz için daha iyi bir çözüm olabilecek yeni şeyler denemeye devam ettiğiniz sürece, her zaman iyi olacaksınız.
Bu benim ilk blog yazımdı, umarım düşüncelerimi açıkça ifade edebilmişimdir.
Kaynak: www.atolye15.com/blog